Built motion from commit (unavailable).|2.2.0
[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 _0x2889=['getSessions','findOne','JscriptySessionReport','findAll','rows','JscriptyAnswerReport','ProjectId','number','fromCharCode','indexOf','toString','replace','JscriptyQuestionReport','-createdAt','questionId','question','starttime','YYYY-MM-DD\x20HH:mm:ss','answer','push','isEmpty','now','writeFileSync','format','/tmp/Jscripty_Project_%d_Summary_%s.csv','Content-disposition','attachment;\x20filename=','Jscripty_Project_%d_Summary_%s.csv','setHeader','Content-type','text/csv','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','to-csv','squel','crypto','jsforce','desk.js','querystring','ioredis','../../config/logger','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','json','count','offset','set','Content-Range','apply','save','update','destroy','then','get','Projects','UserProfileResource','error','stack','name','index','JscriptyProject','rawAttributes','keys','query','dateStart','dateEnd','filters','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','limit','order','sort','where','pick','add','day','merge','map','key','VIRTUAL','field','filter','options','catch','show','params','includeAll','include','find','create','body','user','role','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','createdAt','updatedAt','Unable\x20to\x20retrieve\x20the\x20current\x20user'];(function(_0x1486e5,_0x39684f){var _0x29d89b=function(_0x4a0a80){while(--_0x4a0a80){_0x1486e5['push'](_0x1486e5['shift']());}};_0x29d89b(++_0x39684f);}(_0x2889,0x96));var _0x9288=function(_0x562b10,_0x559d54){_0x562b10=_0x562b10-0x0;var _0x560735=_0x2889[_0x562b10];return _0x560735;};'use strict';var pdf=require(_0x9288('0x0'));var emlformat=require(_0x9288('0x1'));var rimraf=require(_0x9288('0x2'));var zipdir=require(_0x9288('0x3'));var jsonpatch=require(_0x9288('0x4'));var rp=require(_0x9288('0x5'));var moment=require(_0x9288('0x6'));var BPromise=require(_0x9288('0x7'));var Mustache=require(_0x9288('0x8'));var util=require(_0x9288('0x9'));var path=require(_0x9288('0xa'));var sox=require('sox');var csv=require(_0x9288('0xb'));var ejs=require('ejs');var fs=require('fs');var _=require('lodash');var squel=require(_0x9288('0xc'));var crypto=require(_0x9288('0xd'));var jsforce=require(_0x9288('0xe'));var deskjs=require(_0x9288('0xf'));var toCsv=require(_0x9288('0xb'));var querystring=require(_0x9288('0x10'));var Papa=require('papaparse');var Redis=require(_0x9288('0x11'));var qs=require('../../components/parsers/qs');var logger=require(_0x9288('0x12'))('api');var utils=require(_0x9288('0x13'));var config=require(_0x9288('0x14'));var db=require(_0x9288('0x15'))['db'];function respondWithStatusCode(_0x216ccf,_0x28e8de){_0x28e8de=_0x28e8de||0xcc;return function(_0xb9fe8){if(_0xb9fe8){return _0x216ccf[_0x9288('0x16')](_0x28e8de);}return _0x216ccf[_0x9288('0x17')](_0x28e8de)[_0x9288('0x18')]();};}function respondWithResult(_0x13f43a,_0x4b69e0){_0x4b69e0=_0x4b69e0||0xc8;return function(_0x5272f4){if(_0x5272f4){return _0x13f43a['status'](_0x4b69e0)[_0x9288('0x19')](_0x5272f4);}};}function respondWithFilteredResult(_0x530d88,_0x404a0c){return function(_0x50d9b2){if(_0x50d9b2){var _0x433140=_0x50d9b2[_0x9288('0x1a')],_0x451336=_0x404a0c[_0x9288('0x1b')],_0x196a56=_0x404a0c[_0x9288('0x1b')]+_0x404a0c['limit'],_0x41be32;if(_0x196a56>=_0x433140){_0x196a56=_0x433140;_0x41be32=0xc8;}else{_0x41be32=0xce;}_0x530d88['status'](_0x41be32);return _0x530d88[_0x9288('0x1c')](_0x9288('0x1d'),_0x451336+'-'+_0x196a56+'/'+_0x433140)[_0x9288('0x19')](_0x50d9b2);}return null;};}function patchUpdates(_0x17a9e4){return function(_0xd1285){try{jsonpatch[_0x9288('0x1e')](_0xd1285,_0x17a9e4,!![]);}catch(_0x4d3fcf){return BPromise['reject'](_0x4d3fcf);}return _0xd1285[_0x9288('0x1f')]();};}function saveUpdates(_0x5c540f,_0x50129a){return function(_0x1febe1){if(_0x1febe1){return _0x1febe1[_0x9288('0x20')](_0x5c540f)['then'](function(_0x2cbfe7){return _0x2cbfe7;});}return null;};}function removeEntity(_0x27a3cc,_0x151cea){return function(_0x1c59a7){if(_0x1c59a7){return _0x1c59a7[_0x9288('0x21')]()[_0x9288('0x22')](function(){var _0x2c19a9=_0x1c59a7[_0x9288('0x23')]({'plain':!![]});var _0x1ce242=_0x9288('0x24');return db[_0x9288('0x25')]['destroy']({'where':{'type':_0x1ce242,'resourceId':_0x2c19a9['id']}})[_0x9288('0x22')](function(){return _0x1c59a7;});})[_0x9288('0x22')](function(){_0x27a3cc['status'](0xcc)[_0x9288('0x18')]();});}};}function handleEntityNotFound(_0xbf7c16,_0x457020){return function(_0x5ceb4c){if(!_0x5ceb4c){_0xbf7c16[_0x9288('0x16')](0x194);}return _0x5ceb4c;};}function handleError(_0x387f62,_0x29a46f){_0x29a46f=_0x29a46f||0x1f4;return function(_0x3cb4af){logger[_0x9288('0x26')](_0x3cb4af[_0x9288('0x27')]);if(_0x3cb4af['name']){delete _0x3cb4af[_0x9288('0x28')];}_0x387f62[_0x9288('0x17')](_0x29a46f)['send'](_0x3cb4af);};}exports[_0x9288('0x29')]=function(_0x1bc1df,_0x5e98f4){var _0x529f9={},_0x7cd875={},_0x5c1347={'count':0x0,'rows':[]};var _0x1253d1=db[_0x9288('0x2a')][_0x9288('0x2b')];_0x7cd875['model']=_[_0x9288('0x2c')](_0x1253d1);var _0x4c5a39={'dateStart':_0x1bc1df[_0x9288('0x2d')][_0x9288('0x2e')],'dateEnd':_0x1bc1df[_0x9288('0x2d')][_0x9288('0x2f')]};delete _0x1bc1df[_0x9288('0x2d')][_0x9288('0x2e')];delete _0x1bc1df[_0x9288('0x2d')]['dateEnd'];_0x7cd875[_0x9288('0x2d')]=_['keys'](_0x1bc1df[_0x9288('0x2d')]);_0x7cd875[_0x9288('0x30')]=_[_0x9288('0x31')](_0x7cd875[_0x9288('0x32')],_0x7cd875['query']);_0x529f9[_0x9288('0x33')]=_['intersection'](_0x7cd875['model'],qs[_0x9288('0x34')](_0x1bc1df[_0x9288('0x2d')][_0x9288('0x34')]));_0x529f9[_0x9288('0x33')]=_0x529f9[_0x9288('0x33')][_0x9288('0x35')]?_0x529f9[_0x9288('0x33')]:_0x7cd875[_0x9288('0x32')];if(!_0x1bc1df['query'][_0x9288('0x36')](_0x9288('0x37'))){_0x529f9['limit']=qs[_0x9288('0x38')](_0x1bc1df[_0x9288('0x2d')][_0x9288('0x38')]);_0x529f9[_0x9288('0x1b')]=qs[_0x9288('0x1b')](_0x1bc1df[_0x9288('0x2d')][_0x9288('0x1b')]);}_0x529f9[_0x9288('0x39')]=qs[_0x9288('0x3a')](_0x1bc1df['query'][_0x9288('0x3a')]);_0x529f9[_0x9288('0x3b')]=qs['filters'](_[_0x9288('0x3c')](_0x1bc1df['query'],_0x7cd875['filters']));if(_0x4c5a39[_0x9288('0x2e')]){if(_0x4c5a39[_0x9288('0x2f')]){_0x4c5a39['dateEnd']=moment(_0x4c5a39[_0x9288('0x2f')])[_0x9288('0x3d')](0x1,_0x9288('0x3e'));}else{_0x4c5a39['dateEnd']=moment(_0x4c5a39[_0x9288('0x2e')])[_0x9288('0x3d')](0x1,_0x9288('0x3e'));}_['merge'](_0x529f9[_0x9288('0x3b')],{'createdAt':{'$gte':_0x4c5a39[_0x9288('0x2e')],'$lte':_0x4c5a39[_0x9288('0x2f')]}});}if(_0x1bc1df[_0x9288('0x2d')]['filter']){_0x529f9[_0x9288('0x3b')]=_[_0x9288('0x3f')](_0x529f9['where'],{'$or':_[_0x9288('0x40')](_0x1253d1,function(_0xf6f8e6){if(_0xf6f8e6['type'][_0x9288('0x41')]!==_0x9288('0x42')){var _0xc81a2={};_0xc81a2[_0xf6f8e6[_0x9288('0x43')]]={'$like':'%'+_0x1bc1df[_0x9288('0x2d')][_0x9288('0x44')]+'%'};return _0xc81a2;}})});}_0x529f9=_['merge']({},_0x529f9,_0x1bc1df[_0x9288('0x45')]);var _0x2bd785={'where':_0x529f9[_0x9288('0x3b')]};return db[_0x9288('0x2a')]['count'](_0x2bd785)[_0x9288('0x22')](function(_0x172131){_0x5c1347[_0x9288('0x1a')]=_0x172131;if(_0x1bc1df['query']['includeAll']){_0x529f9['include']=[{'all':!![]}];}return db[_0x9288('0x2a')]['findAll'](_0x529f9);})[_0x9288('0x22')](function(_0x2c5295){_0x5c1347['rows']=_0x2c5295;return _0x5c1347;})[_0x9288('0x22')](respondWithFilteredResult(_0x5e98f4,_0x529f9))[_0x9288('0x46')](handleError(_0x5e98f4,null));};exports[_0x9288('0x47')]=function(_0x26cf17,_0x42237f){var _0xb286f0={'raw':![],'where':{'id':_0x26cf17[_0x9288('0x48')]['id']}},_0x5bfee2={};_0x5bfee2[_0x9288('0x32')]=_['keys'](db[_0x9288('0x2a')]['rawAttributes']);_0x5bfee2[_0x9288('0x2d')]=_['keys'](_0x26cf17[_0x9288('0x2d')]);_0x5bfee2['filters']=_[_0x9288('0x31')](_0x5bfee2[_0x9288('0x32')],_0x5bfee2['query']);_0xb286f0[_0x9288('0x33')]=_[_0x9288('0x31')](_0x5bfee2[_0x9288('0x32')],qs[_0x9288('0x34')](_0x26cf17[_0x9288('0x2d')][_0x9288('0x34')]));_0xb286f0[_0x9288('0x33')]=_0xb286f0['attributes'][_0x9288('0x35')]?_0xb286f0[_0x9288('0x33')]:_0x5bfee2[_0x9288('0x32')];if(_0x26cf17[_0x9288('0x2d')][_0x9288('0x49')]){_0xb286f0[_0x9288('0x4a')]=[{'all':!![]}];}_0xb286f0=_['merge']({},_0xb286f0,_0x26cf17[_0x9288('0x45')]);return db[_0x9288('0x2a')][_0x9288('0x4b')](_0xb286f0)[_0x9288('0x22')](handleEntityNotFound(_0x42237f,null))[_0x9288('0x22')](respondWithResult(_0x42237f,null))[_0x9288('0x46')](handleError(_0x42237f,null));};exports['create']=function(_0x3f2f5d,_0x3a751d){return db[_0x9288('0x2a')][_0x9288('0x4c')](_0x3f2f5d[_0x9288('0x4d')],{})[_0x9288('0x22')](function(_0x3fadc3){var _0x335787=_0x3f2f5d[_0x9288('0x4e')][_0x9288('0x23')]({'plain':!![]});if(!_0x335787)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x335787[_0x9288('0x4f')]===_0x9288('0x4e')){var _0xf03e=_0x3fadc3['get']({'plain':!![]});var _0x305c17=_0x9288('0x24');return db[_0x9288('0x50')][_0x9288('0x4b')]({'where':{'name':_0x305c17,'userProfileId':_0x335787[_0x9288('0x51')]},'raw':!![]})[_0x9288('0x22')](function(_0x421e52){if(_0x421e52&&_0x421e52[_0x9288('0x52')]===0x0){return db['UserProfileResource'][_0x9288('0x4c')]({'name':_0xf03e[_0x9288('0x28')],'resourceId':_0xf03e['id'],'type':_0x421e52[_0x9288('0x28')],'sectionId':_0x421e52['id']},{})[_0x9288('0x22')](function(){return _0x3fadc3;});}else{return _0x3fadc3;}})[_0x9288('0x46')](function(_0x7b797b){logger[_0x9288('0x26')](_0x9288('0x53'),_0x7b797b);throw _0x7b797b;});}return _0x3fadc3;})[_0x9288('0x22')](respondWithResult(_0x3a751d,0xc9))[_0x9288('0x46')](handleError(_0x3a751d,null));};exports[_0x9288('0x54')]=function(_0x23748a,_0xd2976c){var _0x1b4a4f={'raw':![],'where':{'id':_0x23748a[_0x9288('0x48')]['id']}},_0x351b6a={};_0x351b6a['model']=_[_0x9288('0x2c')](db['JscriptyProject'][_0x9288('0x2b')]);_0x1b4a4f[_0x9288('0x33')]=_[_0x9288('0x31')](_0x351b6a[_0x9288('0x32')],qs['fields'](_0x23748a[_0x9288('0x2d')][_0x9288('0x34')]));_0x1b4a4f[_0x9288('0x33')]=_0x1b4a4f[_0x9288('0x33')]['length']?_0x1b4a4f[_0x9288('0x33')]:_0x351b6a[_0x9288('0x32')];if(_0x23748a[_0x9288('0x2d')][_0x9288('0x49')]){_0x1b4a4f['include']=[{'all':!![]}];}_0x1b4a4f=_[_0x9288('0x3f')]({},_0x1b4a4f,_0x23748a['options']);return db[_0x9288('0x2a')][_0x9288('0x4b')](_0x1b4a4f)[_0x9288('0x22')](handleEntityNotFound(_0xd2976c,null))[_0x9288('0x22')](function(_0xb827ca){if(_0xb827ca){var _0x49219d=_0xb827ca[_0x9288('0x23')]({'plain':!![]});_0x49219d=qs['omit'](_0x49219d,['id',_0x9288('0x55'),_0x9288('0x56')]);_0x23748a[_0x9288('0x4d')]=_['omit'](_0x23748a[_0x9288('0x4d')],['id',_0x9288('0x55'),_0x9288('0x56')]);return db['JscriptyProject'][_0x9288('0x4c')](_[_0x9288('0x3f')](_0x49219d,_0x23748a['body']),{'include':_0x23748a[_0x9288('0x2d')][_0x9288('0x49')]?[{'all':!![]}]:undefined})[_0x9288('0x22')](function(_0x506779){var _0x5b6b15=_0x23748a[_0x9288('0x4e')]['get']({'plain':!![]});if(!_0x5b6b15)throw new Error(_0x9288('0x57'));if(_0x5b6b15[_0x9288('0x4f')]==='user'){var _0x15e883=_0x506779[_0x9288('0x23')]({'plain':!![]});var _0x23e55e=_0x9288('0x24');return db['UserProfileSection'][_0x9288('0x4b')]({'where':{'name':_0x23e55e,'userProfileId':_0x5b6b15[_0x9288('0x51')]},'raw':!![]})[_0x9288('0x22')](function(_0x2102d0){if(_0x2102d0&&_0x2102d0[_0x9288('0x52')]===0x0){return db[_0x9288('0x25')][_0x9288('0x4c')]({'name':_0x15e883['name'],'resourceId':_0x15e883['id'],'type':_0x2102d0[_0x9288('0x28')],'sectionId':_0x2102d0['id']},{})[_0x9288('0x22')](function(){return _0x506779;});}else{return _0x506779;}})[_0x9288('0x46')](function(_0x5f5baf){logger[_0x9288('0x26')](_0x9288('0x53'),_0x5f5baf);throw _0x5f5baf;});}return _0x506779;});}})[_0x9288('0x22')](respondWithResult(_0xd2976c,0xc9))[_0x9288('0x46')](handleError(_0xd2976c,null));};exports[_0x9288('0x20')]=function(_0x307059,_0x21aca7){if(_0x307059[_0x9288('0x4d')]['id']){delete _0x307059['body']['id'];}return db[_0x9288('0x2a')][_0x9288('0x4b')]({'where':{'id':_0x307059[_0x9288('0x48')]['id']}})[_0x9288('0x22')](handleEntityNotFound(_0x21aca7,null))[_0x9288('0x22')](saveUpdates(_0x307059[_0x9288('0x4d')],null))[_0x9288('0x22')](respondWithResult(_0x21aca7,null))[_0x9288('0x46')](handleError(_0x21aca7,null));};exports['destroy']=function(_0x371f7b,_0x1b2b69){return db['JscriptyProject']['find']({'where':{'id':_0x371f7b[_0x9288('0x48')]['id']}})['then'](handleEntityNotFound(_0x1b2b69,null))[_0x9288('0x22')](removeEntity(_0x1b2b69,null))[_0x9288('0x46')](handleError(_0x1b2b69,null));};exports[_0x9288('0x58')]=function(_0x5c585c,_0x14397e,_0x3741f5){var _0x861fc5={'raw':!![],'where':{}};var _0x1ee59c={};var _0x354bc4={'count':0x0,'rows':[]};return db['JscriptyProject'][_0x9288('0x59')]({'where':{'id':_0x5c585c[_0x9288('0x48')]['id']}})[_0x9288('0x22')](handleEntityNotFound(_0x14397e,null))['then'](function(_0x320524){if(_0x320524){_0x1ee59c[_0x9288('0x32')]=_[_0x9288('0x2c')](db[_0x9288('0x5a')][_0x9288('0x2b')]);_0x1ee59c[_0x9288('0x2d')]=_['keys'](_0x5c585c[_0x9288('0x2d')]);_0x1ee59c[_0x9288('0x30')]=_[_0x9288('0x31')](_0x1ee59c[_0x9288('0x32')],_0x1ee59c['query']);_0x861fc5['attributes']=_[_0x9288('0x31')](_0x1ee59c[_0x9288('0x32')],qs['fields'](_0x5c585c[_0x9288('0x2d')]['fields']));_0x861fc5['attributes']=_0x861fc5[_0x9288('0x33')][_0x9288('0x35')]?_0x861fc5[_0x9288('0x33')]:_0x1ee59c[_0x9288('0x32')];if(!_0x5c585c['query'][_0x9288('0x36')](_0x9288('0x37'))){_0x861fc5[_0x9288('0x38')]=qs[_0x9288('0x38')](_0x5c585c[_0x9288('0x2d')][_0x9288('0x38')]);_0x861fc5['offset']=qs[_0x9288('0x1b')](_0x5c585c[_0x9288('0x2d')][_0x9288('0x1b')]);}_0x861fc5['order']=qs[_0x9288('0x3a')](_0x5c585c[_0x9288('0x2d')]['sort']);_0x861fc5[_0x9288('0x3b')]=qs[_0x9288('0x30')](_[_0x9288('0x3c')](_0x5c585c[_0x9288('0x2d')],_0x1ee59c[_0x9288('0x30')]));_0x861fc5[_0x9288('0x3b')]['ProjectId']=_0x320524['id'];if(_0x5c585c[_0x9288('0x2d')][_0x9288('0x44')]){_0x861fc5['where']=_[_0x9288('0x3f')](_0x861fc5[_0x9288('0x3b')],{'$or':_[_0x9288('0x40')](_0x861fc5[_0x9288('0x33')],function(_0x4ad07f){var _0x4ace76={};_0x4ace76[_0x4ad07f]={'$like':'%'+_0x5c585c[_0x9288('0x2d')][_0x9288('0x44')]+'%'};return _0x4ace76;})});}_0x861fc5=_['merge']({},_0x861fc5,_0x5c585c['options']);return db[_0x9288('0x5a')]['count']({'where':_0x861fc5['where']})['then'](function(_0x33886e){_0x354bc4[_0x9288('0x1a')]=_0x33886e;if(_0x5c585c[_0x9288('0x2d')][_0x9288('0x49')]){_0x861fc5[_0x9288('0x4a')]=[{'all':!![]}];}return db[_0x9288('0x5a')][_0x9288('0x5b')](_0x861fc5);})[_0x9288('0x22')](function(_0x2f571b){_0x354bc4[_0x9288('0x5c')]=_0x2f571b;return _0x354bc4;});}})[_0x9288('0x22')](respondWithFilteredResult(_0x14397e,_0x861fc5))['catch'](handleError(_0x14397e,null));};exports['getAnswers']=function(_0x150086,_0x2a81fd,_0x4776fb){var _0x499ec7={'raw':!![],'where':{}};var _0x1e081d={};var _0x4afcf6={'count':0x0,'rows':[]};var _0xef1e26={'dateStart':_0x150086['query'][_0x9288('0x2e')],'dateEnd':_0x150086['query']['dateEnd']};delete _0x150086['query'][_0x9288('0x2e')];delete _0x150086[_0x9288('0x2d')][_0x9288('0x2f')];return db[_0x9288('0x2a')]['findOne']({'where':{'id':_0x150086[_0x9288('0x48')]['id']}})[_0x9288('0x22')](handleEntityNotFound(_0x2a81fd,null))[_0x9288('0x22')](function(_0x5abc8f){if(_0x5abc8f){_0x1e081d[_0x9288('0x32')]=_[_0x9288('0x2c')](db[_0x9288('0x5d')]['rawAttributes']);_0x1e081d['query']=_[_0x9288('0x2c')](_0x150086['query']);_0x1e081d[_0x9288('0x30')]=_[_0x9288('0x31')](_0x1e081d['model'],_0x1e081d[_0x9288('0x2d')]);_0x499ec7[_0x9288('0x33')]=_[_0x9288('0x31')](_0x1e081d[_0x9288('0x32')],qs[_0x9288('0x34')](_0x150086[_0x9288('0x2d')][_0x9288('0x34')]));_0x499ec7['attributes']=_0x499ec7[_0x9288('0x33')][_0x9288('0x35')]?_0x499ec7[_0x9288('0x33')]:_0x1e081d[_0x9288('0x32')];if(!_0x150086[_0x9288('0x2d')][_0x9288('0x36')](_0x9288('0x37'))){_0x499ec7[_0x9288('0x38')]=qs[_0x9288('0x38')](_0x150086[_0x9288('0x2d')][_0x9288('0x38')]);_0x499ec7[_0x9288('0x1b')]=qs['offset'](_0x150086['query'][_0x9288('0x1b')]);}_0x499ec7['order']=qs['sort'](_0x150086['query']['sort']);_0x499ec7[_0x9288('0x3b')]=qs[_0x9288('0x30')](_[_0x9288('0x3c')](_0x150086[_0x9288('0x2d')],_0x1e081d[_0x9288('0x30')]));_0x499ec7[_0x9288('0x3b')][_0x9288('0x5e')]=_0x5abc8f['id'];if(_0xef1e26['dateStart']){if(_0xef1e26[_0x9288('0x2f')]){_0xef1e26[_0x9288('0x2f')]=moment(_0xef1e26[_0x9288('0x2f')])[_0x9288('0x3d')](0x1,'day');}else{_0xef1e26[_0x9288('0x2f')]=moment(_0xef1e26['dateStart'])[_0x9288('0x3d')](0x1,_0x9288('0x3e'));}_[_0x9288('0x3f')](_0x499ec7[_0x9288('0x3b')],{'createdAt':{'$gte':_0xef1e26['dateStart'],'$lte':_0xef1e26[_0x9288('0x2f')]}});}if(_0x150086[_0x9288('0x2d')][_0x9288('0x44')]){_0x499ec7[_0x9288('0x3b')]=_[_0x9288('0x3f')](_0x499ec7[_0x9288('0x3b')],{'$or':_['map'](_0x499ec7[_0x9288('0x33')],function(_0x3e0b8b){var _0x3790fa={};_0x3790fa[_0x3e0b8b]={'$like':'%'+_0x150086['query'][_0x9288('0x44')]+'%'};return _0x3790fa;})});}_0x499ec7=_['merge']({},_0x499ec7,_0x150086[_0x9288('0x45')]);return db[_0x9288('0x5d')]['count']({'where':_0x499ec7[_0x9288('0x3b')]})[_0x9288('0x22')](function(_0x46b428){_0x4afcf6['count']=_0x46b428;if(_0x150086['query'][_0x9288('0x49')]){_0x499ec7['include']=[{'all':!![]}];}return db[_0x9288('0x5d')][_0x9288('0x5b')](_0x499ec7);})[_0x9288('0x22')](function(_0x327a2c){_0x4afcf6[_0x9288('0x5c')]=_0x327a2c;return _0x4afcf6;});}})[_0x9288('0x22')](respondWithFilteredResult(_0x2a81fd,_0x499ec7))[_0x9288('0x46')](handleError(_0x2a81fd,null));};function char(_0x34b119){return _0x9288('0x5f')===typeof _0x34b119?String[_0x9288('0x60')][_0x9288('0x1e')](null,arguments):_0x34b119;}function needsEncapsulation(_0xc4563){return!!_0xc4563&&(_0xc4563['toString']()[_0x9288('0x61')](char(0xd))>=0x0||_0xc4563[_0x9288('0x62')]()[_0x9288('0x61')](char(0xa))>=0x0||_0xc4563[_0x9288('0x62')]()[_0x9288('0x61')](char(0x2c))>=0x0||_0xc4563['toString']()[_0x9288('0x61')](char(0x22))>=0x0);}function encapsulate(_0x56a10c){var _0x12add4=char(0x22),_0x36966e='\x5c'+char(0x22),_0x13d257=_0x56a10c[_0x9288('0x62')]()[_0x9288('0x63')](new RegExp(_0x12add4,'g'),_0x36966e);return _0x12add4+_0x13d257+_0x12add4;}exports['getSummary']=function(_0x6658bd,_0x2f43a9,_0xbe8cc7){var _0x17cf70,_0x47e825;var _0x4f97a4={'dateStart':_0x6658bd['query'][_0x9288('0x2e')],'dateEnd':_0x6658bd[_0x9288('0x2d')][_0x9288('0x2f')]};delete _0x6658bd['query']['dateStart'];delete _0x6658bd[_0x9288('0x2d')]['dateEnd'];if(_0x4f97a4['dateStart']){if(_0x4f97a4[_0x9288('0x2f')]){_0x4f97a4[_0x9288('0x2f')]=moment(_0x4f97a4[_0x9288('0x2f')])['add'](0x1,_0x9288('0x3e'));}else{_0x4f97a4[_0x9288('0x2f')]=moment(_0x4f97a4[_0x9288('0x2e')])[_0x9288('0x3d')](0x1,_0x9288('0x3e'));}}return db['JscriptySessionReport'][_0x9288('0x5b')]({'where':{'ProjectId':_0x6658bd[_0x9288('0x48')]['id'],'starttime':{'$gte':_0x4f97a4[_0x9288('0x2e')],'$lte':_0x4f97a4[_0x9288('0x2f')]}}})[_0x9288('0x22')](handleEntityNotFound(_0x2f43a9,null))[_0x9288('0x22')](function(_0xa8c534){if(_0xa8c534){_0x17cf70=_0xa8c534;return db[_0x9288('0x64')][_0x9288('0x5b')]({'where':{'SessionId':{'$in':_['map'](_0x17cf70,'id')},'ProjectId':_0x6658bd[_0x9288('0x48')]['id']},'order':_0x9288('0x65')});}})[_0x9288('0x22')](handleEntityNotFound(_0x2f43a9,null))[_0x9288('0x22')](function(_0x4a0044){if(_0x4a0044){_0x47e825=_0x4a0044;var _0x5cd92d={};for(var _0x186e38=0x0,_0x53d7cc=_0x47e825[_0x9288('0x35')];_0x186e38<_0x53d7cc;_0x186e38++){if(!_0x5cd92d['hasOwnProperty'](_0x47e825[_0x186e38][_0x9288('0x66')])){_0x5cd92d[_0x47e825[_0x186e38][_0x9288('0x66')]]=needsEncapsulation(_0x47e825[_0x186e38][_0x9288('0x67')])?encapsulate(_0x47e825[_0x186e38][_0x9288('0x67')]):_0x47e825[_0x186e38][_0x9288('0x67')];}}var _0x1b70d7=[],_0x3cb98a={};for(var _0x5943fd=0x0,_0x14ef26=_0x17cf70[_0x9288('0x35')];_0x5943fd<_0x14ef26;_0x5943fd++){_0x3cb98a={'ProjectId':_0x6658bd['params']['id'],'SessionId':_0x17cf70[_0x5943fd]['id'],'StartTime':moment(_0x17cf70[_0x5943fd][_0x9288('0x68')])['format'](_0x9288('0x69'))};for(var _0x138d27=0x0,_0xfdcc2=_0x47e825[_0x9288('0x35')];_0x138d27<_0xfdcc2;_0x138d27++){if(_0x47e825[_0x138d27]['SessionId']==_0x17cf70[_0x5943fd]['id']&&_0x5cd92d[_0x9288('0x36')](_0x47e825[_0x138d27][_0x9288('0x66')])){_0x3cb98a[_0x5cd92d[_0x47e825[_0x138d27][_0x9288('0x66')]]]=_0x47e825[_0x138d27][_0x9288('0x6a')];}}for(var _0x526283 in _0x5cd92d){if(!_0x3cb98a[_0x9288('0x36')](_0x5cd92d[_0x526283])){_0x3cb98a[_0x5cd92d[_0x526283]]=null;}}_0x1b70d7[_0x9288('0x6b')](_0x3cb98a);}return _0x1b70d7;}})[_0x9288('0x22')](function(_0x1c1339){if(!_[_0x9288('0x6c')](_0x1c1339)){var _0x2a542b=toCsv(_0x1c1339);var _0xaadefc=Date[_0x9288('0x6d')]();fs[_0x9288('0x6e')](util[_0x9288('0x6f')](_0x9288('0x70'),_0x6658bd[_0x9288('0x48')]['id'],_0xaadefc),_0x2a542b);_0x2f43a9['setHeader'](_0x9288('0x71'),_0x9288('0x72')+util['format'](_0x9288('0x73'),_0x6658bd[_0x9288('0x48')]['id'],_0xaadefc));_0x2f43a9[_0x9288('0x74')](_0x9288('0x75'),_0x9288('0x76'));return _0x2f43a9['download'](util[_0x9288('0x6f')](_0x9288('0x70'),_0x6658bd[_0x9288('0x48')]['id'],_0xaadefc));}else{return _0x2f43a9[_0x9288('0x16')](0xcc);}})['catch'](handleError(_0x2f43a9,null));};