Built motion from commit (unavailable).|2.3.0
[motion2.git] / server / api / jscriptySessionReport / jscriptySessionReport.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 _0xe343=['../../config/environment','../../mysqldb','status','end','count','set','Content-Range','json','reject','save','update','then','sendStatus','error','stack','name','send','index','JscriptySessionReport','rawAttributes','model','keys','query','filters','intersection','attributes','fields','nolimit','limit','offset','order','where','pick','filter','key','field','merge','options','include','findAll','rows','catch','show','params','length','find','create','body','destroy','getQuestions','hasOwnProperty','sort','SessionId','map','JscriptyQuestionReport','includeAll','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','to-csv','ejs','lodash','crypto','querystring','../../components/auth/service','ioredis','../../components/parsers/qs','../../config/logger','api','../../config/utils'];(function(_0x1ea917,_0x11aed7){var _0x3077d9=function(_0x6b8c1e){while(--_0x6b8c1e){_0x1ea917['push'](_0x1ea917['shift']());}};_0x3077d9(++_0x11aed7);}(_0xe343,0xd2));var _0x3e34=function(_0x7c0074,_0x1ffdcf){_0x7c0074=_0x7c0074-0x0;var _0x13e95b=_0xe343[_0x7c0074];return _0x13e95b;};'use strict';var pdf=require(_0x3e34('0x0'));var emlformat=require(_0x3e34('0x1'));var rimraf=require(_0x3e34('0x2'));var zipdir=require(_0x3e34('0x3'));var jsonpatch=require(_0x3e34('0x4'));var rp=require(_0x3e34('0x5'));var moment=require(_0x3e34('0x6'));var BPromise=require(_0x3e34('0x7'));var Mustache=require('mustache');var util=require(_0x3e34('0x8'));var path=require(_0x3e34('0x9'));var sox=require('sox');var csv=require(_0x3e34('0xa'));var ejs=require(_0x3e34('0xb'));var fs=require('fs');var _=require(_0x3e34('0xc'));var squel=require('squel');var crypto=require(_0x3e34('0xd'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x3e34('0xa'));var querystring=require(_0x3e34('0xe'));var Papa=require('papaparse');var authService=require(_0x3e34('0xf'));var hardwareService=require('../../config/license/hardware');var Redis=require(_0x3e34('0x10'));var qs=require(_0x3e34('0x11'));var logger=require(_0x3e34('0x12'))(_0x3e34('0x13'));var utils=require(_0x3e34('0x14'));var config=require(_0x3e34('0x15'));var db=require(_0x3e34('0x16'))['db'];function respondWithStatusCode(_0xfa1c30,_0x4e19da){_0x4e19da=_0x4e19da||0xcc;return function(_0x2754df){if(_0x2754df){return _0xfa1c30['sendStatus'](_0x4e19da);}return _0xfa1c30[_0x3e34('0x17')](_0x4e19da)[_0x3e34('0x18')]();};}function respondWithResult(_0x2a5100,_0x1bfe70){_0x1bfe70=_0x1bfe70||0xc8;return function(_0x33f933){if(_0x33f933){return _0x2a5100['status'](_0x1bfe70)['json'](_0x33f933);}};}function respondWithFilteredResult(_0x11cad7,_0x1e2202){return function(_0x1db12e){if(_0x1db12e){var _0x42e5e0=_0x1db12e[_0x3e34('0x19')],_0x26ce7d=_0x1e2202['offset'],_0x98e6a7=_0x1e2202['offset']+_0x1e2202['limit'],_0x587a5a;if(_0x98e6a7>=_0x42e5e0){_0x98e6a7=_0x42e5e0;_0x587a5a=0xc8;}else{_0x587a5a=0xce;}_0x11cad7[_0x3e34('0x17')](_0x587a5a);return _0x11cad7[_0x3e34('0x1a')](_0x3e34('0x1b'),_0x26ce7d+'-'+_0x98e6a7+'/'+_0x42e5e0)[_0x3e34('0x1c')](_0x1db12e);}return null;};}function patchUpdates(_0x1ca731){return function(_0xc17fcd){try{jsonpatch['apply'](_0xc17fcd,_0x1ca731,!![]);}catch(_0x331924){return BPromise[_0x3e34('0x1d')](_0x331924);}return _0xc17fcd[_0x3e34('0x1e')]();};}function saveUpdates(_0x382f36,_0x12990d){return function(_0x5a3fa5){if(_0x5a3fa5){return _0x5a3fa5[_0x3e34('0x1f')](_0x382f36)['then'](function(_0xa7cdb0){return _0xa7cdb0;});}return null;};}function removeEntity(_0x54a071,_0x15f0d5){return function(_0x381093){if(_0x381093){return _0x381093['destroy']()[_0x3e34('0x20')](function(){_0x54a071[_0x3e34('0x17')](0xcc)[_0x3e34('0x18')]();});}};}function handleEntityNotFound(_0x1cb6b8,_0x3ad239){return function(_0x46a032){if(!_0x46a032){_0x1cb6b8[_0x3e34('0x21')](0x194);}return _0x46a032;};}function handleError(_0x3cd4e9,_0x1aa036){_0x1aa036=_0x1aa036||0x1f4;return function(_0x30e20a){logger[_0x3e34('0x22')](_0x30e20a[_0x3e34('0x23')]);if(_0x30e20a[_0x3e34('0x24')]){delete _0x30e20a[_0x3e34('0x24')];}_0x3cd4e9[_0x3e34('0x17')](_0x1aa036)[_0x3e34('0x25')](_0x30e20a);};}exports[_0x3e34('0x26')]=function(_0x4c9d53,_0x4a9e43){var _0x17669a={},_0x51d89f={},_0x4ed84c={'count':0x0,'rows':[]};var _0x344676=db[_0x3e34('0x27')][_0x3e34('0x28')];_0x51d89f[_0x3e34('0x29')]=_[_0x3e34('0x2a')](_0x344676);_0x51d89f[_0x3e34('0x2b')]=_[_0x3e34('0x2a')](_0x4c9d53['query']);_0x51d89f[_0x3e34('0x2c')]=_[_0x3e34('0x2d')](_0x51d89f[_0x3e34('0x29')],_0x51d89f[_0x3e34('0x2b')]);_0x17669a[_0x3e34('0x2e')]=_['intersection'](_0x51d89f[_0x3e34('0x29')],qs[_0x3e34('0x2f')](_0x4c9d53[_0x3e34('0x2b')]['fields']));_0x17669a[_0x3e34('0x2e')]=_0x17669a['attributes']['length']?_0x17669a['attributes']:_0x51d89f[_0x3e34('0x29')];if(!_0x4c9d53[_0x3e34('0x2b')]['hasOwnProperty'](_0x3e34('0x30'))){_0x17669a[_0x3e34('0x31')]=qs[_0x3e34('0x31')](_0x4c9d53[_0x3e34('0x2b')]['limit']);_0x17669a[_0x3e34('0x32')]=qs[_0x3e34('0x32')](_0x4c9d53[_0x3e34('0x2b')]['offset']);}_0x17669a[_0x3e34('0x33')]=qs['sort'](_0x4c9d53[_0x3e34('0x2b')]['sort']);_0x17669a[_0x3e34('0x34')]=qs['filters'](_[_0x3e34('0x35')](_0x4c9d53[_0x3e34('0x2b')],_0x51d89f[_0x3e34('0x2c')]));if(_0x4c9d53[_0x3e34('0x2b')][_0x3e34('0x36')]){_0x17669a[_0x3e34('0x34')]=_['merge'](_0x17669a[_0x3e34('0x34')],{'$or':_['map'](_0x344676,function(_0x43f548){if(_0x43f548['type'][_0x3e34('0x37')]!=='VIRTUAL'){var _0x1e984d={};_0x1e984d[_0x43f548[_0x3e34('0x38')]]={'$like':'%'+_0x4c9d53[_0x3e34('0x2b')][_0x3e34('0x36')]+'%'};return _0x1e984d;}})});}_0x17669a=_[_0x3e34('0x39')]({},_0x17669a,_0x4c9d53[_0x3e34('0x3a')]);var _0x1b18ab={'where':_0x17669a[_0x3e34('0x34')]};return db[_0x3e34('0x27')][_0x3e34('0x19')](_0x1b18ab)[_0x3e34('0x20')](function(_0x1f1fdc){_0x4ed84c['count']=_0x1f1fdc;if(_0x4c9d53[_0x3e34('0x2b')]['includeAll']){_0x17669a[_0x3e34('0x3b')]=[{'all':!![]}];}return db[_0x3e34('0x27')][_0x3e34('0x3c')](_0x17669a);})[_0x3e34('0x20')](function(_0x172b7d){_0x4ed84c[_0x3e34('0x3d')]=_0x172b7d;return _0x4ed84c;})['then'](respondWithFilteredResult(_0x4a9e43,_0x17669a))[_0x3e34('0x3e')](handleError(_0x4a9e43,null));};exports[_0x3e34('0x3f')]=function(_0x869336,_0x70cfc){var _0x1dba4b={'raw':!![],'where':{'id':_0x869336[_0x3e34('0x40')]['id']}},_0x349b91={};_0x349b91[_0x3e34('0x29')]=_[_0x3e34('0x2a')](db[_0x3e34('0x27')][_0x3e34('0x28')]);_0x349b91[_0x3e34('0x2b')]=_['keys'](_0x869336[_0x3e34('0x2b')]);_0x349b91[_0x3e34('0x2c')]=_[_0x3e34('0x2d')](_0x349b91[_0x3e34('0x29')],_0x349b91[_0x3e34('0x2b')]);_0x1dba4b[_0x3e34('0x2e')]=_[_0x3e34('0x2d')](_0x349b91[_0x3e34('0x29')],qs[_0x3e34('0x2f')](_0x869336['query'][_0x3e34('0x2f')]));_0x1dba4b['attributes']=_0x1dba4b[_0x3e34('0x2e')][_0x3e34('0x41')]?_0x1dba4b[_0x3e34('0x2e')]:_0x349b91[_0x3e34('0x29')];if(_0x869336[_0x3e34('0x2b')]['includeAll']){_0x1dba4b[_0x3e34('0x3b')]=[{'all':!![]}];}_0x1dba4b=_[_0x3e34('0x39')]({},_0x1dba4b,_0x869336[_0x3e34('0x3a')]);return db[_0x3e34('0x27')][_0x3e34('0x42')](_0x1dba4b)[_0x3e34('0x20')](handleEntityNotFound(_0x70cfc,null))[_0x3e34('0x20')](respondWithResult(_0x70cfc,null))[_0x3e34('0x3e')](handleError(_0x70cfc,null));};exports[_0x3e34('0x43')]=function(_0x4b63b3,_0xea3ac2){return db[_0x3e34('0x27')][_0x3e34('0x43')](_0x4b63b3[_0x3e34('0x44')],{})[_0x3e34('0x20')](respondWithResult(_0xea3ac2,0xc9))['catch'](handleError(_0xea3ac2,null));};exports[_0x3e34('0x1f')]=function(_0x31317e,_0x512a44){if(_0x31317e[_0x3e34('0x44')]['id']){delete _0x31317e[_0x3e34('0x44')]['id'];}return db[_0x3e34('0x27')][_0x3e34('0x42')]({'where':{'id':_0x31317e[_0x3e34('0x40')]['id']}})[_0x3e34('0x20')](handleEntityNotFound(_0x512a44,null))['then'](saveUpdates(_0x31317e[_0x3e34('0x44')],null))[_0x3e34('0x20')](respondWithResult(_0x512a44,null))[_0x3e34('0x3e')](handleError(_0x512a44,null));};exports[_0x3e34('0x45')]=function(_0x8569dd,_0x84328){return db[_0x3e34('0x27')][_0x3e34('0x42')]({'where':{'id':_0x8569dd[_0x3e34('0x40')]['id']}})[_0x3e34('0x20')](handleEntityNotFound(_0x84328,null))[_0x3e34('0x20')](removeEntity(_0x84328,null))[_0x3e34('0x3e')](handleError(_0x84328,null));};exports['describe']=function(_0x9a34cf,_0x42a5c5){return db['JscriptySessionReport']['describe']()[_0x3e34('0x20')](respondWithResult(_0x42a5c5,null))[_0x3e34('0x3e')](handleError(_0x42a5c5,null));};exports[_0x3e34('0x46')]=function(_0x47fbea,_0x2a87eb,_0x4f6b48){var _0x47ec5f={'raw':!![],'where':{}};var _0x385162={};var _0x2ed998={'count':0x0,'rows':[]};return db[_0x3e34('0x27')]['findOne']({'where':{'id':_0x47fbea[_0x3e34('0x40')]['id']}})[_0x3e34('0x20')](handleEntityNotFound(_0x2a87eb,null))[_0x3e34('0x20')](function(_0x4c0204){if(_0x4c0204){_0x385162[_0x3e34('0x29')]=_[_0x3e34('0x2a')](db['JscriptyQuestionReport'][_0x3e34('0x28')]);_0x385162[_0x3e34('0x2b')]=_[_0x3e34('0x2a')](_0x47fbea[_0x3e34('0x2b')]);_0x385162[_0x3e34('0x2c')]=_[_0x3e34('0x2d')](_0x385162['model'],_0x385162[_0x3e34('0x2b')]);_0x47ec5f['attributes']=_[_0x3e34('0x2d')](_0x385162[_0x3e34('0x29')],qs[_0x3e34('0x2f')](_0x47fbea[_0x3e34('0x2b')][_0x3e34('0x2f')]));_0x47ec5f[_0x3e34('0x2e')]=_0x47ec5f['attributes']['length']?_0x47ec5f[_0x3e34('0x2e')]:_0x385162['model'];if(!_0x47fbea[_0x3e34('0x2b')][_0x3e34('0x47')](_0x3e34('0x30'))){_0x47ec5f[_0x3e34('0x31')]=qs[_0x3e34('0x31')](_0x47fbea[_0x3e34('0x2b')][_0x3e34('0x31')]);_0x47ec5f['offset']=qs['offset'](_0x47fbea['query'][_0x3e34('0x32')]);}_0x47ec5f[_0x3e34('0x33')]=qs[_0x3e34('0x48')](_0x47fbea[_0x3e34('0x2b')][_0x3e34('0x48')]);_0x47ec5f[_0x3e34('0x34')]=qs[_0x3e34('0x2c')](_['pick'](_0x47fbea['query'],_0x385162['filters']));_0x47ec5f[_0x3e34('0x34')][_0x3e34('0x49')]=_0x4c0204['id'];if(_0x47fbea[_0x3e34('0x2b')][_0x3e34('0x36')]){_0x47ec5f[_0x3e34('0x34')]=_['merge'](_0x47ec5f['where'],{'$or':_[_0x3e34('0x4a')](_0x47ec5f[_0x3e34('0x2e')],function(_0x5b098f){var _0x5ecbca={};_0x5ecbca[_0x5b098f]={'$like':'%'+_0x47fbea[_0x3e34('0x2b')][_0x3e34('0x36')]+'%'};return _0x5ecbca;})});}_0x47ec5f=_[_0x3e34('0x39')]({},_0x47ec5f,_0x47fbea['options']);return db[_0x3e34('0x4b')]['count']({'where':_0x47ec5f['where']})[_0x3e34('0x20')](function(_0xa19e01){_0x2ed998[_0x3e34('0x19')]=_0xa19e01;if(_0x47fbea[_0x3e34('0x2b')][_0x3e34('0x4c')]){_0x47ec5f['include']=[{'all':!![]}];}return db[_0x3e34('0x4b')][_0x3e34('0x3c')](_0x47ec5f);})['then'](function(_0x16eb36){_0x2ed998[_0x3e34('0x3d')]=_0x16eb36;return _0x2ed998;});}})[_0x3e34('0x20')](respondWithFilteredResult(_0x2a87eb,_0x47ec5f))[_0x3e34('0x3e')](handleError(_0x2a87eb,null));};