Built motion from commit (unavailable).|2.5.31
[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 _0x2541=['intersection','fields','attributes','hasOwnProperty','nolimit','order','sort','where','filter','merge','type','VIRTUAL','options','includeAll','include','rows','catch','show','length','find','create','body','params','describe','findOne','pick','JscriptyQuestionReport','findAll','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','ejs','fs-extra','lodash','crypto','jsforce','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','then','destroy','error','stack','name','send','index','map','JscriptySessionReport','fieldName','key','model','keys','query','filters'];(function(_0x394b1f,_0x2fecbd){var _0x5dcb1b=function(_0x31be3e){while(--_0x31be3e){_0x394b1f['push'](_0x394b1f['shift']());}};_0x5dcb1b(++_0x2fecbd);}(_0x2541,0xbe));var _0x1254=function(_0x321bb2,_0x202794){_0x321bb2=_0x321bb2-0x0;var _0x9c12ed=_0x2541[_0x321bb2];return _0x9c12ed;};'use strict';var emlformat=require(_0x1254('0x0'));var rimraf=require(_0x1254('0x1'));var zipdir=require(_0x1254('0x2'));var jsonpatch=require(_0x1254('0x3'));var rp=require(_0x1254('0x4'));var moment=require(_0x1254('0x5'));var BPromise=require(_0x1254('0x6'));var Mustache=require(_0x1254('0x7'));var util=require(_0x1254('0x8'));var path=require(_0x1254('0x9'));var sox=require(_0x1254('0xa'));var csv=require('to-csv');var ejs=require(_0x1254('0xb'));var fs=require('fs');var fs_extra=require(_0x1254('0xc'));var _=require(_0x1254('0xd'));var squel=require('squel');var crypto=require(_0x1254('0xe'));var jsforce=require(_0x1254('0xf'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0x1254('0x10'));var qs=require('../../components/parsers/qs');var as=require(_0x1254('0x11'));var hardwareService=require(_0x1254('0x12'));var logger=require(_0x1254('0x13'))(_0x1254('0x14'));var utils=require('../../config/utils');var config=require(_0x1254('0x15'));var licenseUtil=require(_0x1254('0x16'));var db=require(_0x1254('0x17'))['db'];function respondWithStatusCode(_0x1ad5d2,_0x5188a6){_0x5188a6=_0x5188a6||0xcc;return function(_0x45b398){if(_0x45b398){return _0x1ad5d2[_0x1254('0x18')](_0x5188a6);}return _0x1ad5d2[_0x1254('0x19')](_0x5188a6)[_0x1254('0x1a')]();};}function respondWithResult(_0x2c97f6,_0x5a74a6){_0x5a74a6=_0x5a74a6||0xc8;return function(_0x24beaf){if(_0x24beaf){return _0x2c97f6[_0x1254('0x19')](_0x5a74a6)[_0x1254('0x1b')](_0x24beaf);}};}function respondWithFilteredResult(_0x43d8ac,_0x2b94ab){return function(_0x43654b){if(_0x43654b){var _0x22b7d7=typeof _0x2b94ab[_0x1254('0x1c')]===_0x1254('0x1d')&&typeof _0x2b94ab[_0x1254('0x1e')]===_0x1254('0x1d');var _0x3eb4ca=_0x43654b[_0x1254('0x1f')];var _0x51ea60=_0x22b7d7?0x0:_0x2b94ab[_0x1254('0x1c')];var _0x4c8d3a=_0x22b7d7?_0x43654b['count']:_0x2b94ab[_0x1254('0x1c')]+_0x2b94ab[_0x1254('0x1e')];var _0x4e7d32;if(_0x4c8d3a>=_0x3eb4ca){_0x4c8d3a=_0x3eb4ca;_0x4e7d32=0xc8;}else{_0x4e7d32=0xce;}_0x43d8ac['status'](_0x4e7d32);return _0x43d8ac[_0x1254('0x20')](_0x1254('0x21'),_0x51ea60+'-'+_0x4c8d3a+'/'+_0x3eb4ca)[_0x1254('0x1b')](_0x43654b);}return null;};}function patchUpdates(_0x8119d0){return function(_0x81e707){try{jsonpatch[_0x1254('0x22')](_0x81e707,_0x8119d0,!![]);}catch(_0x1e5dd8){return BPromise[_0x1254('0x23')](_0x1e5dd8);}return _0x81e707[_0x1254('0x24')]();};}function saveUpdates(_0x22ec42,_0x2173df){return function(_0x1fae6){if(_0x1fae6){return _0x1fae6[_0x1254('0x25')](_0x22ec42)[_0x1254('0x26')](function(_0x1d8e32){return _0x1d8e32;});}return null;};}function removeEntity(_0x57652d,_0x23b647){return function(_0x753fcc){if(_0x753fcc){return _0x753fcc[_0x1254('0x27')]()[_0x1254('0x26')](function(){_0x57652d[_0x1254('0x19')](0xcc)['end']();});}};}function handleEntityNotFound(_0x1e2b05,_0x515542){return function(_0x264fa7){if(!_0x264fa7){_0x1e2b05['sendStatus'](0x194);}return _0x264fa7;};}function handleError(_0x3bbe59,_0x3f20d7){_0x3f20d7=_0x3f20d7||0x1f4;return function(_0x4df9ce){logger[_0x1254('0x28')](_0x4df9ce[_0x1254('0x29')]);if(_0x4df9ce['name']){delete _0x4df9ce[_0x1254('0x2a')];}_0x3bbe59[_0x1254('0x19')](_0x3f20d7)[_0x1254('0x2b')](_0x4df9ce);};}exports[_0x1254('0x2c')]=function(_0xc94527,_0x1499de){var _0xd3c4c3={},_0x5f22ca={},_0x17122f={'count':0x0,'rows':[]};var _0x17949c=_[_0x1254('0x2d')](db[_0x1254('0x2e')]['rawAttributes'],function(_0x5766fc){return{'name':_0x5766fc[_0x1254('0x2f')],'type':_0x5766fc['type'][_0x1254('0x30')]};});_0x5f22ca[_0x1254('0x31')]=_[_0x1254('0x2d')](_0x17949c,_0x1254('0x2a'));_0x5f22ca['query']=_[_0x1254('0x32')](_0xc94527[_0x1254('0x33')]);_0x5f22ca[_0x1254('0x34')]=_[_0x1254('0x35')](_0x5f22ca['model'],_0x5f22ca[_0x1254('0x33')]);_0xd3c4c3['attributes']=_[_0x1254('0x35')](_0x5f22ca[_0x1254('0x31')],qs[_0x1254('0x36')](_0xc94527[_0x1254('0x33')][_0x1254('0x36')]));_0xd3c4c3['attributes']=_0xd3c4c3[_0x1254('0x37')]['length']?_0xd3c4c3[_0x1254('0x37')]:_0x5f22ca[_0x1254('0x31')];if(!_0xc94527[_0x1254('0x33')][_0x1254('0x38')](_0x1254('0x39'))){_0xd3c4c3['limit']=qs[_0x1254('0x1e')](_0xc94527[_0x1254('0x33')]['limit']);_0xd3c4c3['offset']=qs[_0x1254('0x1c')](_0xc94527[_0x1254('0x33')][_0x1254('0x1c')]);}_0xd3c4c3[_0x1254('0x3a')]=qs[_0x1254('0x3b')](_0xc94527[_0x1254('0x33')]['sort']);_0xd3c4c3[_0x1254('0x3c')]=qs[_0x1254('0x34')](_['pick'](_0xc94527[_0x1254('0x33')],_0x5f22ca[_0x1254('0x34')]),_0x17949c);if(_0xc94527['query'][_0x1254('0x3d')]){_0xd3c4c3[_0x1254('0x3c')]=_[_0x1254('0x3e')](_0xd3c4c3['where'],{'$or':_[_0x1254('0x2d')](_0x17949c,function(_0x4e3b70){if(_0x4e3b70[_0x1254('0x3f')]!==_0x1254('0x40')){var _0x32eed1={};_0x32eed1[_0x4e3b70['name']]={'$like':'%'+_0xc94527['query'][_0x1254('0x3d')]+'%'};return _0x32eed1;}})});}_0xd3c4c3=_[_0x1254('0x3e')]({},_0xd3c4c3,_0xc94527[_0x1254('0x41')]);var _0x4f619c={'where':_0xd3c4c3[_0x1254('0x3c')]};return db[_0x1254('0x2e')][_0x1254('0x1f')](_0x4f619c)[_0x1254('0x26')](function(_0x4983d9){_0x17122f['count']=_0x4983d9;if(_0xc94527[_0x1254('0x33')][_0x1254('0x42')]){_0xd3c4c3[_0x1254('0x43')]=[{'all':!![]}];}return db[_0x1254('0x2e')]['findAll'](_0xd3c4c3);})[_0x1254('0x26')](function(_0x660fe9){_0x17122f[_0x1254('0x44')]=_0x660fe9;return _0x17122f;})[_0x1254('0x26')](respondWithFilteredResult(_0x1499de,_0xd3c4c3))[_0x1254('0x45')](handleError(_0x1499de,null));};exports[_0x1254('0x46')]=function(_0x51d0d6,_0x1dfd98){var _0x87a601={'raw':!![],'where':{'id':_0x51d0d6['params']['id']}},_0x13033f={};_0x13033f[_0x1254('0x31')]=_[_0x1254('0x32')](db['JscriptySessionReport']['rawAttributes']);_0x13033f['query']=_[_0x1254('0x32')](_0x51d0d6[_0x1254('0x33')]);_0x13033f[_0x1254('0x34')]=_[_0x1254('0x35')](_0x13033f['model'],_0x13033f[_0x1254('0x33')]);_0x87a601[_0x1254('0x37')]=_[_0x1254('0x35')](_0x13033f[_0x1254('0x31')],qs['fields'](_0x51d0d6[_0x1254('0x33')]['fields']));_0x87a601[_0x1254('0x37')]=_0x87a601[_0x1254('0x37')][_0x1254('0x47')]?_0x87a601[_0x1254('0x37')]:_0x13033f[_0x1254('0x31')];if(_0x51d0d6[_0x1254('0x33')][_0x1254('0x42')]){_0x87a601[_0x1254('0x43')]=[{'all':!![]}];}_0x87a601=_[_0x1254('0x3e')]({},_0x87a601,_0x51d0d6[_0x1254('0x41')]);return db[_0x1254('0x2e')][_0x1254('0x48')](_0x87a601)[_0x1254('0x26')](handleEntityNotFound(_0x1dfd98,null))['then'](respondWithResult(_0x1dfd98,null))[_0x1254('0x45')](handleError(_0x1dfd98,null));};exports[_0x1254('0x49')]=function(_0x44c58d,_0x574889){return db[_0x1254('0x2e')]['create'](_0x44c58d['body'],{})[_0x1254('0x26')](respondWithResult(_0x574889,0xc9))[_0x1254('0x45')](handleError(_0x574889,null));};exports[_0x1254('0x25')]=function(_0x533980,_0x53e3a2){if(_0x533980[_0x1254('0x4a')]['id']){delete _0x533980['body']['id'];}return db[_0x1254('0x2e')][_0x1254('0x48')]({'where':{'id':_0x533980[_0x1254('0x4b')]['id']}})[_0x1254('0x26')](handleEntityNotFound(_0x53e3a2,null))[_0x1254('0x26')](saveUpdates(_0x533980[_0x1254('0x4a')],null))['then'](respondWithResult(_0x53e3a2,null))['catch'](handleError(_0x53e3a2,null));};exports[_0x1254('0x27')]=function(_0x2d3f6c,_0x310810){return db[_0x1254('0x2e')][_0x1254('0x48')]({'where':{'id':_0x2d3f6c[_0x1254('0x4b')]['id']}})[_0x1254('0x26')](handleEntityNotFound(_0x310810,null))[_0x1254('0x26')](removeEntity(_0x310810,null))[_0x1254('0x45')](handleError(_0x310810,null));};exports[_0x1254('0x4c')]=function(_0x7e8e55,_0x2a14b6){return db[_0x1254('0x2e')][_0x1254('0x4c')]()[_0x1254('0x26')](respondWithResult(_0x2a14b6,null))['catch'](handleError(_0x2a14b6,null));};exports['getQuestions']=function(_0x16d64e,_0xb692ca,_0x422ba0){var _0x2f24dd={'raw':!![],'where':{}};var _0x2aab4e={};var _0x273654={'count':0x0,'rows':[]};return db[_0x1254('0x2e')][_0x1254('0x4d')]({'where':{'id':_0x16d64e[_0x1254('0x4b')]['id']}})[_0x1254('0x26')](handleEntityNotFound(_0xb692ca,null))[_0x1254('0x26')](function(_0x475245){if(_0x475245){_0x2aab4e[_0x1254('0x31')]=_[_0x1254('0x32')](db['JscriptyQuestionReport']['rawAttributes']);_0x2aab4e[_0x1254('0x33')]=_[_0x1254('0x32')](_0x16d64e[_0x1254('0x33')]);_0x2aab4e[_0x1254('0x34')]=_[_0x1254('0x35')](_0x2aab4e[_0x1254('0x31')],_0x2aab4e[_0x1254('0x33')]);_0x2f24dd[_0x1254('0x37')]=_[_0x1254('0x35')](_0x2aab4e[_0x1254('0x31')],qs[_0x1254('0x36')](_0x16d64e[_0x1254('0x33')][_0x1254('0x36')]));_0x2f24dd[_0x1254('0x37')]=_0x2f24dd[_0x1254('0x37')][_0x1254('0x47')]?_0x2f24dd[_0x1254('0x37')]:_0x2aab4e[_0x1254('0x31')];if(!_0x16d64e[_0x1254('0x33')][_0x1254('0x38')]('nolimit')){_0x2f24dd[_0x1254('0x1e')]=qs['limit'](_0x16d64e[_0x1254('0x33')]['limit']);_0x2f24dd[_0x1254('0x1c')]=qs[_0x1254('0x1c')](_0x16d64e[_0x1254('0x33')]['offset']);}_0x2f24dd[_0x1254('0x3a')]=qs[_0x1254('0x3b')](_0x16d64e[_0x1254('0x33')][_0x1254('0x3b')]);_0x2f24dd[_0x1254('0x3c')]=qs[_0x1254('0x34')](_[_0x1254('0x4e')](_0x16d64e['query'],_0x2aab4e[_0x1254('0x34')]));_0x2f24dd[_0x1254('0x3c')]['SessionId']=_0x475245['id'];if(_0x16d64e['query']['filter']){_0x2f24dd['where']=_[_0x1254('0x3e')](_0x2f24dd['where'],{'$or':_[_0x1254('0x2d')](_0x2f24dd[_0x1254('0x37')],function(_0x2dca7f){var _0x31692b={};_0x31692b[_0x2dca7f]={'$like':'%'+_0x16d64e[_0x1254('0x33')][_0x1254('0x3d')]+'%'};return _0x31692b;})});}_0x2f24dd=_[_0x1254('0x3e')]({},_0x2f24dd,_0x16d64e['options']);return db['JscriptyQuestionReport'][_0x1254('0x1f')]({'where':_0x2f24dd[_0x1254('0x3c')]})['then'](function(_0x19bc76){_0x273654['count']=_0x19bc76;if(_0x16d64e['query'][_0x1254('0x42')]){_0x2f24dd[_0x1254('0x43')]=[{'all':!![]}];}return db[_0x1254('0x4f')][_0x1254('0x50')](_0x2f24dd);})[_0x1254('0x26')](function(_0x955e64){_0x273654[_0x1254('0x44')]=_0x955e64;return _0x273654;});}})[_0x1254('0x26')](respondWithFilteredResult(_0xb692ca,_0x2f24dd))[_0x1254('0x45')](handleError(_0xb692ca,null));};