Built motion from commit 43538d75.|2.5.35
[motion2.git] / server / api / jscriptyProject / jscriptyProject.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0xf84a=['updatedAt','body','UserProfileSection','userProfileId','update','getSessions','findOne','JscriptySessionReport','pick','ProjectId','findAll','getAnswers','JscriptyAnswerReport','number','fromCharCode','apply','toString','indexOf','getSummary','starttime','parse','JscriptyQuestionReport','questionId','question','format','YYYY-MM-DD\x20HH:mm:ss','SessionId','answer','push','/tmp/Jscripty_Project_%d_Summary_%s.csv','setHeader','Content-disposition','attachment;\x20filename=','Jscripty_Project_%d_Summary_%s.csv','text/csv','download','zip-dir','fast-json-patch','request-promise','moment','mustache','util','sox','to-csv','ejs','fs-extra','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','offset','undefined','limit','count','reject','save','then','get','Projects','UserProfileResource','end','name','send','index','map','rawAttributes','fieldName','key','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','filter','where','merge','type','VIRTUAL','options','JscriptyProject','include','rows','catch','show','params','keys','includeAll','find','create','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','autoAssociation','error','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','omit','createdAt'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0xf84a,0x97));var _0xaf84=function(_0x392877,_0x1370ab){_0x392877=_0x392877-0x0;var _0x15aa44=_0xf84a[_0x392877];return _0x15aa44;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0xaf84('0x0'));var jsonpatch=require(_0xaf84('0x1'));var rp=require(_0xaf84('0x2'));var moment=require(_0xaf84('0x3'));var BPromise=require('bluebird');var Mustache=require(_0xaf84('0x4'));var util=require(_0xaf84('0x5'));var path=require('path');var sox=require(_0xaf84('0x6'));var csv=require(_0xaf84('0x7'));var ejs=require(_0xaf84('0x8'));var fs=require('fs');var fs_extra=require(_0xaf84('0x9'));var _=require('lodash');var squel=require(_0xaf84('0xa'));var crypto=require(_0xaf84('0xb'));var jsforce=require(_0xaf84('0xc'));var deskjs=require(_0xaf84('0xd'));var toCsv=require('to-csv');var querystring=require(_0xaf84('0xe'));var Papa=require(_0xaf84('0xf'));var Redis=require(_0xaf84('0x10'));var authService=require(_0xaf84('0x11'));var qs=require(_0xaf84('0x12'));var as=require(_0xaf84('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')('api');var utils=require('../../config/utils');var config=require(_0xaf84('0x14'));var licenseUtil=require(_0xaf84('0x15'));var db=require(_0xaf84('0x16'))['db'];function respondWithStatusCode(_0x4124c4,_0x1e8bff){_0x1e8bff=_0x1e8bff||0xcc;return function(_0x1024af){if(_0x1024af){return _0x4124c4[_0xaf84('0x17')](_0x1e8bff);}return _0x4124c4[_0xaf84('0x18')](_0x1e8bff)['end']();};}function respondWithResult(_0x26673f,_0x387c02){_0x387c02=_0x387c02||0xc8;return function(_0x4fb427){if(_0x4fb427){return _0x26673f[_0xaf84('0x18')](_0x387c02)[_0xaf84('0x19')](_0x4fb427);}};}function respondWithFilteredResult(_0x48e183,_0x1230fb){return function(_0x3ee365){if(_0x3ee365){var _0x178ad0=typeof _0x1230fb[_0xaf84('0x1a')]===_0xaf84('0x1b')&&typeof _0x1230fb[_0xaf84('0x1c')]===_0xaf84('0x1b');var _0xeffecc=_0x3ee365[_0xaf84('0x1d')];var _0x500c2b=_0x178ad0?0x0:_0x1230fb[_0xaf84('0x1a')];var _0x4585ec=_0x178ad0?_0x3ee365[_0xaf84('0x1d')]:_0x1230fb[_0xaf84('0x1a')]+_0x1230fb[_0xaf84('0x1c')];var _0x2d0f5e;if(_0x4585ec>=_0xeffecc){_0x4585ec=_0xeffecc;_0x2d0f5e=0xc8;}else{_0x2d0f5e=0xce;}_0x48e183[_0xaf84('0x18')](_0x2d0f5e);return _0x48e183['set']('Content-Range',_0x500c2b+'-'+_0x4585ec+'/'+_0xeffecc)['json'](_0x3ee365);}return null;};}function patchUpdates(_0x4bba40){return function(_0x4fd425){try{jsonpatch['apply'](_0x4fd425,_0x4bba40,!![]);}catch(_0x472deb){return BPromise[_0xaf84('0x1e')](_0x472deb);}return _0x4fd425[_0xaf84('0x1f')]();};}function saveUpdates(_0x56f169,_0x20f79f){return function(_0x10d7ca){if(_0x10d7ca){return _0x10d7ca['update'](_0x56f169)[_0xaf84('0x20')](function(_0x1c797c){return _0x1c797c;});}return null;};}function removeEntity(_0x1e7756,_0x228199){return function(_0x70a624){if(_0x70a624){return _0x70a624['destroy']()[_0xaf84('0x20')](function(){var _0x120c43=_0x70a624[_0xaf84('0x21')]({'plain':!![]});var _0x5b2e54=_0xaf84('0x22');return db[_0xaf84('0x23')]['destroy']({'where':{'type':_0x5b2e54,'resourceId':_0x120c43['id']}})[_0xaf84('0x20')](function(){return _0x70a624;});})[_0xaf84('0x20')](function(){_0x1e7756[_0xaf84('0x18')](0xcc)[_0xaf84('0x24')]();});}};}function handleEntityNotFound(_0x3f07c3,_0x2991f2){return function(_0x3b1dec){if(!_0x3b1dec){_0x3f07c3[_0xaf84('0x17')](0x194);}return _0x3b1dec;};}function handleError(_0x4d861,_0x3eae33){_0x3eae33=_0x3eae33||0x1f4;return function(_0x4116e9){logger['error'](_0x4116e9['stack']);if(_0x4116e9[_0xaf84('0x25')]){delete _0x4116e9['name'];}_0x4d861[_0xaf84('0x18')](_0x3eae33)[_0xaf84('0x26')](_0x4116e9);};}exports[_0xaf84('0x27')]=function(_0x3d3aa1,_0x26b6f8){var _0x3b2f9d={},_0x17abde={},_0xe9811f={'count':0x0,'rows':[]};var _0xe0d5b5=_[_0xaf84('0x28')](db['JscriptyProject'][_0xaf84('0x29')],function(_0x1ea648){return{'name':_0x1ea648[_0xaf84('0x2a')],'type':_0x1ea648['type'][_0xaf84('0x2b')]};});_0x17abde[_0xaf84('0x2c')]=_[_0xaf84('0x28')](_0xe0d5b5,_0xaf84('0x25'));_0x17abde['query']=_['keys'](_0x3d3aa1[_0xaf84('0x2d')]);_0x17abde[_0xaf84('0x2e')]=_[_0xaf84('0x2f')](_0x17abde['model'],_0x17abde['query']);_0x3b2f9d[_0xaf84('0x30')]=_['intersection'](_0x17abde[_0xaf84('0x2c')],qs['fields'](_0x3d3aa1[_0xaf84('0x2d')][_0xaf84('0x31')]));_0x3b2f9d[_0xaf84('0x30')]=_0x3b2f9d[_0xaf84('0x30')][_0xaf84('0x32')]?_0x3b2f9d['attributes']:_0x17abde[_0xaf84('0x2c')];if(!_0x3d3aa1[_0xaf84('0x2d')][_0xaf84('0x33')](_0xaf84('0x34'))){_0x3b2f9d[_0xaf84('0x1c')]=qs[_0xaf84('0x1c')](_0x3d3aa1[_0xaf84('0x2d')][_0xaf84('0x1c')]);_0x3b2f9d['offset']=qs['offset'](_0x3d3aa1[_0xaf84('0x2d')][_0xaf84('0x1a')]);}_0x3b2f9d[_0xaf84('0x35')]=qs[_0xaf84('0x36')](_0x3d3aa1['query'][_0xaf84('0x36')]);_0x3b2f9d['where']=qs[_0xaf84('0x2e')](_['pick'](_0x3d3aa1[_0xaf84('0x2d')],_0x17abde[_0xaf84('0x2e')]),_0xe0d5b5);if(_0x3d3aa1[_0xaf84('0x2d')][_0xaf84('0x37')]){_0x3b2f9d[_0xaf84('0x38')]=_[_0xaf84('0x39')](_0x3b2f9d[_0xaf84('0x38')],{'$or':_[_0xaf84('0x28')](_0xe0d5b5,function(_0x261a09){if(_0x261a09[_0xaf84('0x3a')]!==_0xaf84('0x3b')){var _0x377a81={};_0x377a81[_0x261a09['name']]={'$like':'%'+_0x3d3aa1[_0xaf84('0x2d')]['filter']+'%'};return _0x377a81;}})});}_0x3b2f9d=_[_0xaf84('0x39')]({},_0x3b2f9d,_0x3d3aa1[_0xaf84('0x3c')]);var _0x733b09={'where':_0x3b2f9d['where']};return db[_0xaf84('0x3d')]['count'](_0x733b09)[_0xaf84('0x20')](function(_0x15f716){_0xe9811f[_0xaf84('0x1d')]=_0x15f716;if(_0x3d3aa1[_0xaf84('0x2d')]['includeAll']){_0x3b2f9d[_0xaf84('0x3e')]=[{'all':!![]}];}return db[_0xaf84('0x3d')]['findAll'](_0x3b2f9d);})[_0xaf84('0x20')](function(_0x863233){_0xe9811f[_0xaf84('0x3f')]=_0x863233;return _0xe9811f;})[_0xaf84('0x20')](respondWithFilteredResult(_0x26b6f8,_0x3b2f9d))[_0xaf84('0x40')](handleError(_0x26b6f8,null));};exports[_0xaf84('0x41')]=function(_0x3c1df3,_0x42b117){var _0x67089b={'raw':![],'where':{'id':_0x3c1df3[_0xaf84('0x42')]['id']}},_0x2489bf={};_0x2489bf[_0xaf84('0x2c')]=_[_0xaf84('0x43')](db['JscriptyProject'][_0xaf84('0x29')]);_0x2489bf[_0xaf84('0x2d')]=_[_0xaf84('0x43')](_0x3c1df3[_0xaf84('0x2d')]);_0x2489bf[_0xaf84('0x2e')]=_[_0xaf84('0x2f')](_0x2489bf[_0xaf84('0x2c')],_0x2489bf[_0xaf84('0x2d')]);_0x67089b['attributes']=_[_0xaf84('0x2f')](_0x2489bf[_0xaf84('0x2c')],qs['fields'](_0x3c1df3['query'][_0xaf84('0x31')]));_0x67089b['attributes']=_0x67089b['attributes'][_0xaf84('0x32')]?_0x67089b['attributes']:_0x2489bf['model'];if(_0x3c1df3[_0xaf84('0x2d')][_0xaf84('0x44')]){_0x67089b[_0xaf84('0x3e')]=[{'all':!![]}];}_0x67089b=_[_0xaf84('0x39')]({},_0x67089b,_0x3c1df3[_0xaf84('0x3c')]);return db[_0xaf84('0x3d')][_0xaf84('0x45')](_0x67089b)[_0xaf84('0x20')](handleEntityNotFound(_0x42b117,null))[_0xaf84('0x20')](respondWithResult(_0x42b117,null))[_0xaf84('0x40')](handleError(_0x42b117,null));};exports[_0xaf84('0x46')]=function(_0x167fa3,_0x46f95a){return db[_0xaf84('0x3d')][_0xaf84('0x46')](_0x167fa3['body'],{})[_0xaf84('0x20')](function(_0x3aef01){var _0x5bdd12=_0x167fa3['user'][_0xaf84('0x21')]({'plain':!![]});if(!_0x5bdd12)throw new Error(_0xaf84('0x47'));if(_0x5bdd12[_0xaf84('0x48')]==='user'){var _0x45d561=_0x3aef01['get']({'plain':!![]});var _0x1cb252=_0xaf84('0x22');return db['UserProfileSection'][_0xaf84('0x45')]({'where':{'name':_0x1cb252,'userProfileId':_0x5bdd12['userProfileId']},'raw':!![]})[_0xaf84('0x20')](function(_0x2dbc82){if(_0x2dbc82&&_0x2dbc82[_0xaf84('0x49')]===0x0){return db['UserProfileResource'][_0xaf84('0x46')]({'name':_0x45d561['name'],'resourceId':_0x45d561['id'],'type':_0x2dbc82[_0xaf84('0x25')],'sectionId':_0x2dbc82['id']},{})[_0xaf84('0x20')](function(){return _0x3aef01;});}else{return _0x3aef01;}})[_0xaf84('0x40')](function(_0x3f91ff){logger[_0xaf84('0x4a')](_0xaf84('0x4b'),_0x3f91ff);throw _0x3f91ff;});}return _0x3aef01;})['then'](respondWithResult(_0x46f95a,0xc9))[_0xaf84('0x40')](handleError(_0x46f95a,null));};exports[_0xaf84('0x4c')]=function(_0x231ac3,_0x325150){var _0x2b8d37={'where':{'id':_0x231ac3[_0xaf84('0x42')]['id']}},_0x32ed29={};_0x32ed29[_0xaf84('0x2c')]=_[_0xaf84('0x43')](db[_0xaf84('0x3d')]['rawAttributes']);_0x2b8d37[_0xaf84('0x30')]=_['intersection'](_0x32ed29['model'],qs['fields'](_0x231ac3[_0xaf84('0x2d')]['fields']));_0x2b8d37[_0xaf84('0x30')]=_0x2b8d37['attributes']['length']?_0x2b8d37['attributes']:_0x32ed29['model'];if(_0x231ac3[_0xaf84('0x2d')][_0xaf84('0x44')]){_0x2b8d37['include']=[{'all':!![]}];}_0x2b8d37=_[_0xaf84('0x39')]({},_0x2b8d37,_0x231ac3['options']);return db[_0xaf84('0x3d')][_0xaf84('0x45')](_0x2b8d37)['then'](handleEntityNotFound(_0x325150,null))[_0xaf84('0x20')](function(_0x57b2b2){if(_0x57b2b2){var _0x23dfa4=_0x57b2b2[_0xaf84('0x21')]({'plain':!![]});_0x23dfa4=qs[_0xaf84('0x4d')](_0x23dfa4,['id',_0xaf84('0x4e'),_0xaf84('0x4f')]);_0x231ac3[_0xaf84('0x50')]=_[_0xaf84('0x4d')](_0x231ac3[_0xaf84('0x50')],['id',_0xaf84('0x4e'),_0xaf84('0x4f')]);return db[_0xaf84('0x3d')][_0xaf84('0x46')](_[_0xaf84('0x39')](_0x23dfa4,_0x231ac3[_0xaf84('0x50')]),{'include':_0x231ac3[_0xaf84('0x2d')][_0xaf84('0x44')]?[{'all':!![]}]:undefined})[_0xaf84('0x20')](function(_0x336325){var _0x16c60e=_0x231ac3['user'][_0xaf84('0x21')]({'plain':!![]});if(!_0x16c60e)throw new Error(_0xaf84('0x47'));if(_0x16c60e['role']==='user'){var _0x4a70aa=_0x336325['get']({'plain':!![]});var _0x33cf63=_0xaf84('0x22');return db[_0xaf84('0x51')][_0xaf84('0x45')]({'where':{'name':_0x33cf63,'userProfileId':_0x16c60e[_0xaf84('0x52')]},'raw':!![]})[_0xaf84('0x20')](function(_0x178f3d){if(_0x178f3d&&_0x178f3d['autoAssociation']===0x0){return db[_0xaf84('0x23')][_0xaf84('0x46')]({'name':_0x4a70aa['name'],'resourceId':_0x4a70aa['id'],'type':_0x178f3d[_0xaf84('0x25')],'sectionId':_0x178f3d['id']},{})[_0xaf84('0x20')](function(){return _0x336325;});}else{return _0x336325;}})[_0xaf84('0x40')](function(_0x1d4934){logger['error'](_0xaf84('0x4b'),_0x1d4934);throw _0x1d4934;});}return _0x336325;});}})[_0xaf84('0x20')](respondWithResult(_0x325150,0xc9))[_0xaf84('0x40')](handleError(_0x325150,null));};exports[_0xaf84('0x53')]=function(_0x551695,_0x17ac57){if(_0x551695[_0xaf84('0x50')]['id']){delete _0x551695[_0xaf84('0x50')]['id'];}return db[_0xaf84('0x3d')][_0xaf84('0x45')]({'where':{'id':_0x551695[_0xaf84('0x42')]['id']}})[_0xaf84('0x20')](handleEntityNotFound(_0x17ac57,null))['then'](saveUpdates(_0x551695[_0xaf84('0x50')],null))[_0xaf84('0x20')](respondWithResult(_0x17ac57,null))[_0xaf84('0x40')](handleError(_0x17ac57,null));};exports['destroy']=function(_0x362521,_0x22effa){return db[_0xaf84('0x3d')][_0xaf84('0x45')]({'where':{'id':_0x362521[_0xaf84('0x42')]['id']}})[_0xaf84('0x20')](handleEntityNotFound(_0x22effa,null))[_0xaf84('0x20')](removeEntity(_0x22effa,null))[_0xaf84('0x40')](handleError(_0x22effa,null));};exports[_0xaf84('0x54')]=function(_0x2c27ed,_0x2b2f13,_0x331e33){var _0x93793b={'raw':!![],'where':{}};var _0x2481e8={};var _0x1981cb={'count':0x0,'rows':[]};return db[_0xaf84('0x3d')][_0xaf84('0x55')]({'where':{'id':_0x2c27ed[_0xaf84('0x42')]['id']}})[_0xaf84('0x20')](handleEntityNotFound(_0x2b2f13,null))['then'](function(_0x1ba716){if(_0x1ba716){_0x2481e8[_0xaf84('0x2c')]=_['keys'](db[_0xaf84('0x56')]['rawAttributes']);_0x2481e8[_0xaf84('0x2d')]=_[_0xaf84('0x43')](_0x2c27ed[_0xaf84('0x2d')]);_0x2481e8[_0xaf84('0x2e')]=_[_0xaf84('0x2f')](_0x2481e8[_0xaf84('0x2c')],_0x2481e8['query']);_0x93793b[_0xaf84('0x30')]=_[_0xaf84('0x2f')](_0x2481e8[_0xaf84('0x2c')],qs[_0xaf84('0x31')](_0x2c27ed[_0xaf84('0x2d')][_0xaf84('0x31')]));_0x93793b[_0xaf84('0x30')]=_0x93793b[_0xaf84('0x30')][_0xaf84('0x32')]?_0x93793b[_0xaf84('0x30')]:_0x2481e8[_0xaf84('0x2c')];if(!_0x2c27ed[_0xaf84('0x2d')][_0xaf84('0x33')]('nolimit')){_0x93793b[_0xaf84('0x1c')]=qs['limit'](_0x2c27ed[_0xaf84('0x2d')][_0xaf84('0x1c')]);_0x93793b[_0xaf84('0x1a')]=qs[_0xaf84('0x1a')](_0x2c27ed[_0xaf84('0x2d')][_0xaf84('0x1a')]);}_0x93793b[_0xaf84('0x35')]=qs['sort'](_0x2c27ed[_0xaf84('0x2d')][_0xaf84('0x36')]);_0x93793b['where']=qs[_0xaf84('0x2e')](_[_0xaf84('0x57')](_0x2c27ed['query'],_0x2481e8['filters']));_0x93793b[_0xaf84('0x38')][_0xaf84('0x58')]=_0x1ba716['id'];if(_0x2c27ed[_0xaf84('0x2d')][_0xaf84('0x37')]){_0x93793b[_0xaf84('0x38')]=_[_0xaf84('0x39')](_0x93793b['where'],{'$or':_[_0xaf84('0x28')](_0x93793b[_0xaf84('0x30')],function(_0x8467b0){var _0x47e27b={};_0x47e27b[_0x8467b0]={'$like':'%'+_0x2c27ed[_0xaf84('0x2d')][_0xaf84('0x37')]+'%'};return _0x47e27b;})});}_0x93793b=_[_0xaf84('0x39')]({},_0x93793b,_0x2c27ed[_0xaf84('0x3c')]);return db[_0xaf84('0x56')][_0xaf84('0x1d')]({'where':_0x93793b[_0xaf84('0x38')]})[_0xaf84('0x20')](function(_0x270406){_0x1981cb[_0xaf84('0x1d')]=_0x270406;if(_0x2c27ed['query'][_0xaf84('0x44')]){_0x93793b[_0xaf84('0x3e')]=[{'all':!![]}];}return db[_0xaf84('0x56')][_0xaf84('0x59')](_0x93793b);})[_0xaf84('0x20')](function(_0x4f28cc){_0x1981cb[_0xaf84('0x3f')]=_0x4f28cc;return _0x1981cb;});}})[_0xaf84('0x20')](respondWithFilteredResult(_0x2b2f13,_0x93793b))[_0xaf84('0x40')](handleError(_0x2b2f13,null));};exports[_0xaf84('0x5a')]=function(_0x519105,_0x281f58,_0x207f4f){var _0x2ec4e8={'raw':!![],'where':{}};var _0x21be53={};var _0x641d7d={'count':0x0,'rows':[]};return db[_0xaf84('0x3d')]['findOne']({'where':{'id':_0x519105[_0xaf84('0x42')]['id']}})[_0xaf84('0x20')](handleEntityNotFound(_0x281f58,null))[_0xaf84('0x20')](function(_0x1dca82){if(_0x1dca82){_0x21be53['model']=_[_0xaf84('0x43')](db['JscriptyAnswerReport']['rawAttributes']);_0x21be53[_0xaf84('0x2d')]=_['keys'](_0x519105[_0xaf84('0x2d')]);_0x21be53[_0xaf84('0x2e')]=_['intersection'](_0x21be53[_0xaf84('0x2c')],_0x21be53[_0xaf84('0x2d')]);_0x2ec4e8['attributes']=_[_0xaf84('0x2f')](_0x21be53[_0xaf84('0x2c')],qs[_0xaf84('0x31')](_0x519105[_0xaf84('0x2d')]['fields']));_0x2ec4e8['attributes']=_0x2ec4e8['attributes'][_0xaf84('0x32')]?_0x2ec4e8['attributes']:_0x21be53[_0xaf84('0x2c')];if(!_0x519105[_0xaf84('0x2d')][_0xaf84('0x33')](_0xaf84('0x34'))){_0x2ec4e8[_0xaf84('0x1c')]=qs[_0xaf84('0x1c')](_0x519105[_0xaf84('0x2d')][_0xaf84('0x1c')]);_0x2ec4e8['offset']=qs[_0xaf84('0x1a')](_0x519105[_0xaf84('0x2d')][_0xaf84('0x1a')]);}_0x2ec4e8['order']=qs['sort'](_0x519105[_0xaf84('0x2d')][_0xaf84('0x36')]);_0x2ec4e8[_0xaf84('0x38')]=qs[_0xaf84('0x2e')](_[_0xaf84('0x57')](_0x519105[_0xaf84('0x2d')],_0x21be53[_0xaf84('0x2e')]));_0x2ec4e8[_0xaf84('0x38')][_0xaf84('0x58')]=_0x1dca82['id'];if(_0x519105['query'][_0xaf84('0x37')]){_0x2ec4e8['where']=_['merge'](_0x2ec4e8[_0xaf84('0x38')],{'$or':_['map'](_0x2ec4e8['attributes'],function(_0x457302){var _0x232e90={};_0x232e90[_0x457302]={'$like':'%'+_0x519105['query'][_0xaf84('0x37')]+'%'};return _0x232e90;})});}_0x2ec4e8=_['merge']({},_0x2ec4e8,_0x519105[_0xaf84('0x3c')]);return db[_0xaf84('0x5b')][_0xaf84('0x1d')]({'where':_0x2ec4e8[_0xaf84('0x38')]})['then'](function(_0x4b5b8c){_0x641d7d[_0xaf84('0x1d')]=_0x4b5b8c;if(_0x519105[_0xaf84('0x2d')][_0xaf84('0x44')]){_0x2ec4e8[_0xaf84('0x3e')]=[{'all':!![]}];}return db[_0xaf84('0x5b')][_0xaf84('0x59')](_0x2ec4e8);})[_0xaf84('0x20')](function(_0x28f69d){_0x641d7d[_0xaf84('0x3f')]=_0x28f69d;return _0x641d7d;});}})[_0xaf84('0x20')](respondWithFilteredResult(_0x281f58,_0x2ec4e8))[_0xaf84('0x40')](handleError(_0x281f58,null));};function char(_0x452ccb){return _0xaf84('0x5c')===typeof _0x452ccb?String[_0xaf84('0x5d')][_0xaf84('0x5e')](null,arguments):_0x452ccb;}function needsEncapsulation(_0x2d2ccd){return!!_0x2d2ccd&&(_0x2d2ccd[_0xaf84('0x5f')]()['indexOf'](char(0xd))>=0x0||_0x2d2ccd[_0xaf84('0x5f')]()[_0xaf84('0x60')](char(0xa))>=0x0||_0x2d2ccd[_0xaf84('0x5f')]()[_0xaf84('0x60')](char(0x2c))>=0x0||_0x2d2ccd['toString']()['indexOf'](char(0x22))>=0x0);}function encapsulate(_0x358524){var _0xe132d3=char(0x22),_0x4e8546='\x5c'+char(0x22),_0x407a05=_0x358524[_0xaf84('0x5f')]()['replace'](new RegExp(_0xe132d3,'g'),_0x4e8546);return _0xe132d3+_0x407a05+_0xe132d3;}exports[_0xaf84('0x61')]=function(_0x415705,_0xdb351,_0x38b600){var _0x873e69,_0x1bc598;var _0x4d7b08={'where':{'ProjectId':_0x415705['params']['id']}};if(_0x415705[_0xaf84('0x2d')]['startTime']){_0x4d7b08[_0xaf84('0x38')][_0xaf84('0x62')]=JSON[_0xaf84('0x63')](_0x415705[_0xaf84('0x2d')]['startTime']);}return db[_0xaf84('0x56')][_0xaf84('0x59')](_0x4d7b08)[_0xaf84('0x20')](handleEntityNotFound(_0xdb351,null))[_0xaf84('0x20')](function(_0x5a8578){if(_0x5a8578){_0x873e69=_0x5a8578;return db[_0xaf84('0x64')][_0xaf84('0x59')]({'where':{'SessionId':{'$in':_['map'](_0x873e69,'id')},'ProjectId':_0x415705['params']['id']},'order':'-createdAt'});}})[_0xaf84('0x20')](handleEntityNotFound(_0xdb351,null))[_0xaf84('0x20')](function(_0x5e69b4){if(_0x5e69b4){_0x1bc598=_0x5e69b4;var _0x3be43f={};for(var _0x12ed45=0x0,_0x1bef7a=_0x1bc598[_0xaf84('0x32')];_0x12ed45<_0x1bef7a;_0x12ed45++){if(!_0x3be43f[_0xaf84('0x33')](_0x1bc598[_0x12ed45]['questionId'])){_0x3be43f[_0x1bc598[_0x12ed45][_0xaf84('0x65')]]=needsEncapsulation(_0x1bc598[_0x12ed45]['question'])?encapsulate(_0x1bc598[_0x12ed45][_0xaf84('0x66')]):_0x1bc598[_0x12ed45]['question'];}}var _0x20f524=[],_0x583014={};for(var _0x2a1ba7=0x0,_0x397750=_0x873e69['length'];_0x2a1ba7<_0x397750;_0x2a1ba7++){_0x583014={'ProjectId':_0x415705[_0xaf84('0x42')]['id'],'SessionId':_0x873e69[_0x2a1ba7]['id'],'StartTime':moment(_0x873e69[_0x2a1ba7][_0xaf84('0x62')])[_0xaf84('0x67')](_0xaf84('0x68'))};for(var _0x53b9df=0x0,_0x2a065f=_0x1bc598[_0xaf84('0x32')];_0x53b9df<_0x2a065f;_0x53b9df++){if(_0x1bc598[_0x53b9df][_0xaf84('0x69')]==_0x873e69[_0x2a1ba7]['id']&&_0x3be43f[_0xaf84('0x33')](_0x1bc598[_0x53b9df]['questionId'])){_0x583014[_0x3be43f[_0x1bc598[_0x53b9df][_0xaf84('0x65')]]]=_0x1bc598[_0x53b9df][_0xaf84('0x6a')];}}for(var _0x512ea0 in _0x3be43f){if(!_0x583014[_0xaf84('0x33')](_0x3be43f[_0x512ea0])){_0x583014[_0x3be43f[_0x512ea0]]=null;}}_0x20f524[_0xaf84('0x6b')](_0x583014);}return _0x20f524;}})[_0xaf84('0x20')](function(_0x102256){if(!_['isEmpty'](_0x102256)){var _0x3d726a=toCsv(_0x102256);var _0x395f08=Date['now']();fs['writeFileSync'](util[_0xaf84('0x67')](_0xaf84('0x6c'),_0x415705[_0xaf84('0x42')]['id'],_0x395f08),_0x3d726a);_0xdb351[_0xaf84('0x6d')](_0xaf84('0x6e'),_0xaf84('0x6f')+util[_0xaf84('0x67')](_0xaf84('0x70'),_0x415705[_0xaf84('0x42')]['id'],_0x395f08));_0xdb351['setHeader']('Content-type',_0xaf84('0x71'));return _0xdb351[_0xaf84('0x72')](util[_0xaf84('0x67')](_0xaf84('0x6c'),_0x415705[_0xaf84('0x42')]['id'],_0x395f08));}else{return _0xdb351['sendStatus'](0xcc);}})['catch'](handleError(_0xdb351,null));};