Built motion from commit (unavailable).|2.5.3
[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 _0x8aa6=['../../config/environment','../../mysqldb','sendStatus','status','json','count','offset','limit','set','apply','update','then','destroy','end','stack','name','index','map','JscriptySessionReport','fieldName','query','keys','filters','intersection','model','attributes','fields','length','nolimit','order','sort','filter','where','merge','type','options','includeAll','include','findAll','rows','catch','params','rawAttributes','find','create','body','describe','getQuestions','findOne','JscriptyQuestionReport','hasOwnProperty','pick','SessionId','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','to-csv','ejs','lodash','squel','crypto','papaparse','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils'];(function(_0x2a3b23,_0x3a8f4a){var _0x13581d=function(_0x2a0349){while(--_0x2a0349){_0x2a3b23['push'](_0x2a3b23['shift']());}};_0x13581d(++_0x3a8f4a);}(_0x8aa6,0xc7));var _0x68aa=function(_0xd0cd0b,_0x490956){_0xd0cd0b=_0xd0cd0b-0x0;var _0x59cced=_0x8aa6[_0xd0cd0b];return _0x59cced;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x68aa('0x0'));var rimraf=require(_0x68aa('0x1'));var zipdir=require(_0x68aa('0x2'));var jsonpatch=require(_0x68aa('0x3'));var rp=require(_0x68aa('0x4'));var moment=require(_0x68aa('0x5'));var BPromise=require(_0x68aa('0x6'));var Mustache=require(_0x68aa('0x7'));var util=require(_0x68aa('0x8'));var path=require('path');var sox=require('sox');var csv=require(_0x68aa('0x9'));var ejs=require(_0x68aa('0xa'));var fs=require('fs');var _=require(_0x68aa('0xb'));var squel=require(_0x68aa('0xc'));var crypto=require(_0x68aa('0xd'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x68aa('0x9'));var querystring=require('querystring');var Papa=require(_0x68aa('0xe'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0x68aa('0xf'));var hardwareService=require(_0x68aa('0x10'));var logger=require(_0x68aa('0x11'))(_0x68aa('0x12'));var utils=require(_0x68aa('0x13'));var config=require(_0x68aa('0x14'));var db=require(_0x68aa('0x15'))['db'];function respondWithStatusCode(_0x1538c2,_0x399e05){_0x399e05=_0x399e05||0xcc;return function(_0x27b652){if(_0x27b652){return _0x1538c2[_0x68aa('0x16')](_0x399e05);}return _0x1538c2[_0x68aa('0x17')](_0x399e05)['end']();};}function respondWithResult(_0x3d5d7f,_0xea16ed){_0xea16ed=_0xea16ed||0xc8;return function(_0xc4ab17){if(_0xc4ab17){return _0x3d5d7f[_0x68aa('0x17')](_0xea16ed)[_0x68aa('0x18')](_0xc4ab17);}};}function respondWithFilteredResult(_0x2d8032,_0x1108c9){return function(_0x1ad14f){if(_0x1ad14f){var _0xb6892c=_0x1ad14f[_0x68aa('0x19')],_0x4d8fb9=_0x1108c9[_0x68aa('0x1a')],_0x50c8ea=_0x1108c9['offset']+_0x1108c9[_0x68aa('0x1b')],_0x1e4fd0;if(_0x50c8ea>=_0xb6892c){_0x50c8ea=_0xb6892c;_0x1e4fd0=0xc8;}else{_0x1e4fd0=0xce;}_0x2d8032[_0x68aa('0x17')](_0x1e4fd0);return _0x2d8032[_0x68aa('0x1c')]('Content-Range',_0x4d8fb9+'-'+_0x50c8ea+'/'+_0xb6892c)['json'](_0x1ad14f);}return null;};}function patchUpdates(_0x125f9b){return function(_0x216138){try{jsonpatch[_0x68aa('0x1d')](_0x216138,_0x125f9b,!![]);}catch(_0x5a40b5){return BPromise['reject'](_0x5a40b5);}return _0x216138['save']();};}function saveUpdates(_0x32c18c,_0x3bb972){return function(_0x2ca79d){if(_0x2ca79d){return _0x2ca79d[_0x68aa('0x1e')](_0x32c18c)[_0x68aa('0x1f')](function(_0x386b2b){return _0x386b2b;});}return null;};}function removeEntity(_0x16379f,_0x32c973){return function(_0x5b190c){if(_0x5b190c){return _0x5b190c[_0x68aa('0x20')]()['then'](function(){_0x16379f['status'](0xcc)[_0x68aa('0x21')]();});}};}function handleEntityNotFound(_0x5dcbba,_0x405e08){return function(_0x27552f){if(!_0x27552f){_0x5dcbba[_0x68aa('0x16')](0x194);}return _0x27552f;};}function handleError(_0x3dc3cd,_0x114932){_0x114932=_0x114932||0x1f4;return function(_0x1c84b3){logger['error'](_0x1c84b3[_0x68aa('0x22')]);if(_0x1c84b3['name']){delete _0x1c84b3[_0x68aa('0x23')];}_0x3dc3cd[_0x68aa('0x17')](_0x114932)['send'](_0x1c84b3);};}exports[_0x68aa('0x24')]=function(_0x21dc27,_0x554997){var _0x3ce226={},_0x18d77d={},_0x5bca31={'count':0x0,'rows':[]};var _0x455c0f=_[_0x68aa('0x25')](db[_0x68aa('0x26')]['rawAttributes'],function(_0x10a68e){return{'name':_0x10a68e[_0x68aa('0x27')],'type':_0x10a68e['type']['key']};});_0x18d77d['model']=_[_0x68aa('0x25')](_0x455c0f,_0x68aa('0x23'));_0x18d77d[_0x68aa('0x28')]=_[_0x68aa('0x29')](_0x21dc27['query']);_0x18d77d[_0x68aa('0x2a')]=_[_0x68aa('0x2b')](_0x18d77d[_0x68aa('0x2c')],_0x18d77d[_0x68aa('0x28')]);_0x3ce226[_0x68aa('0x2d')]=_[_0x68aa('0x2b')](_0x18d77d[_0x68aa('0x2c')],qs['fields'](_0x21dc27['query'][_0x68aa('0x2e')]));_0x3ce226['attributes']=_0x3ce226[_0x68aa('0x2d')][_0x68aa('0x2f')]?_0x3ce226[_0x68aa('0x2d')]:_0x18d77d['model'];if(!_0x21dc27[_0x68aa('0x28')]['hasOwnProperty'](_0x68aa('0x30'))){_0x3ce226['limit']=qs[_0x68aa('0x1b')](_0x21dc27[_0x68aa('0x28')][_0x68aa('0x1b')]);_0x3ce226[_0x68aa('0x1a')]=qs[_0x68aa('0x1a')](_0x21dc27['query'][_0x68aa('0x1a')]);}_0x3ce226[_0x68aa('0x31')]=qs[_0x68aa('0x32')](_0x21dc27[_0x68aa('0x28')]['sort']);_0x3ce226['where']=qs[_0x68aa('0x2a')](_['pick'](_0x21dc27[_0x68aa('0x28')],_0x18d77d['filters']),_0x455c0f);if(_0x21dc27['query'][_0x68aa('0x33')]){_0x3ce226[_0x68aa('0x34')]=_[_0x68aa('0x35')](_0x3ce226[_0x68aa('0x34')],{'$or':_[_0x68aa('0x25')](_0x455c0f,function(_0x4d5fa3){if(_0x4d5fa3[_0x68aa('0x36')]!=='VIRTUAL'){var _0x5e5d9a={};_0x5e5d9a[_0x4d5fa3[_0x68aa('0x23')]]={'$like':'%'+_0x21dc27[_0x68aa('0x28')]['filter']+'%'};return _0x5e5d9a;}})});}_0x3ce226=_[_0x68aa('0x35')]({},_0x3ce226,_0x21dc27[_0x68aa('0x37')]);var _0x5b7f70={'where':_0x3ce226[_0x68aa('0x34')]};return db[_0x68aa('0x26')][_0x68aa('0x19')](_0x5b7f70)[_0x68aa('0x1f')](function(_0x1af408){_0x5bca31[_0x68aa('0x19')]=_0x1af408;if(_0x21dc27[_0x68aa('0x28')][_0x68aa('0x38')]){_0x3ce226[_0x68aa('0x39')]=[{'all':!![]}];}return db['JscriptySessionReport'][_0x68aa('0x3a')](_0x3ce226);})[_0x68aa('0x1f')](function(_0x591fff){_0x5bca31[_0x68aa('0x3b')]=_0x591fff;return _0x5bca31;})[_0x68aa('0x1f')](respondWithFilteredResult(_0x554997,_0x3ce226))[_0x68aa('0x3c')](handleError(_0x554997,null));};exports['show']=function(_0x49ce90,_0x30a49a){var _0x16e126={'raw':!![],'where':{'id':_0x49ce90[_0x68aa('0x3d')]['id']}},_0x14144c={};_0x14144c[_0x68aa('0x2c')]=_['keys'](db[_0x68aa('0x26')][_0x68aa('0x3e')]);_0x14144c[_0x68aa('0x28')]=_[_0x68aa('0x29')](_0x49ce90[_0x68aa('0x28')]);_0x14144c[_0x68aa('0x2a')]=_[_0x68aa('0x2b')](_0x14144c['model'],_0x14144c[_0x68aa('0x28')]);_0x16e126[_0x68aa('0x2d')]=_['intersection'](_0x14144c[_0x68aa('0x2c')],qs[_0x68aa('0x2e')](_0x49ce90[_0x68aa('0x28')]['fields']));_0x16e126[_0x68aa('0x2d')]=_0x16e126[_0x68aa('0x2d')][_0x68aa('0x2f')]?_0x16e126[_0x68aa('0x2d')]:_0x14144c['model'];if(_0x49ce90[_0x68aa('0x28')][_0x68aa('0x38')]){_0x16e126[_0x68aa('0x39')]=[{'all':!![]}];}_0x16e126=_['merge']({},_0x16e126,_0x49ce90[_0x68aa('0x37')]);return db[_0x68aa('0x26')][_0x68aa('0x3f')](_0x16e126)[_0x68aa('0x1f')](handleEntityNotFound(_0x30a49a,null))[_0x68aa('0x1f')](respondWithResult(_0x30a49a,null))[_0x68aa('0x3c')](handleError(_0x30a49a,null));};exports[_0x68aa('0x40')]=function(_0x31090b,_0x527855){return db['JscriptySessionReport'][_0x68aa('0x40')](_0x31090b['body'],{})[_0x68aa('0x1f')](respondWithResult(_0x527855,0xc9))[_0x68aa('0x3c')](handleError(_0x527855,null));};exports[_0x68aa('0x1e')]=function(_0x3ad591,_0x3497fd){if(_0x3ad591['body']['id']){delete _0x3ad591[_0x68aa('0x41')]['id'];}return db[_0x68aa('0x26')]['find']({'where':{'id':_0x3ad591[_0x68aa('0x3d')]['id']}})[_0x68aa('0x1f')](handleEntityNotFound(_0x3497fd,null))['then'](saveUpdates(_0x3ad591[_0x68aa('0x41')],null))[_0x68aa('0x1f')](respondWithResult(_0x3497fd,null))[_0x68aa('0x3c')](handleError(_0x3497fd,null));};exports['destroy']=function(_0x487c1f,_0x30c633){return db[_0x68aa('0x26')]['find']({'where':{'id':_0x487c1f[_0x68aa('0x3d')]['id']}})['then'](handleEntityNotFound(_0x30c633,null))[_0x68aa('0x1f')](removeEntity(_0x30c633,null))[_0x68aa('0x3c')](handleError(_0x30c633,null));};exports[_0x68aa('0x42')]=function(_0x40baff,_0x4a323e){return db[_0x68aa('0x26')][_0x68aa('0x42')]()['then'](respondWithResult(_0x4a323e,null))['catch'](handleError(_0x4a323e,null));};exports[_0x68aa('0x43')]=function(_0x9249f,_0x22f549,_0x3b0cf5){var _0x2562f4={'raw':!![],'where':{}};var _0x7da462={};var _0x5e0c98={'count':0x0,'rows':[]};return db['JscriptySessionReport'][_0x68aa('0x44')]({'where':{'id':_0x9249f[_0x68aa('0x3d')]['id']}})['then'](handleEntityNotFound(_0x22f549,null))[_0x68aa('0x1f')](function(_0x4c7415){if(_0x4c7415){_0x7da462[_0x68aa('0x2c')]=_[_0x68aa('0x29')](db[_0x68aa('0x45')][_0x68aa('0x3e')]);_0x7da462[_0x68aa('0x28')]=_[_0x68aa('0x29')](_0x9249f[_0x68aa('0x28')]);_0x7da462[_0x68aa('0x2a')]=_['intersection'](_0x7da462[_0x68aa('0x2c')],_0x7da462['query']);_0x2562f4[_0x68aa('0x2d')]=_['intersection'](_0x7da462[_0x68aa('0x2c')],qs[_0x68aa('0x2e')](_0x9249f['query'][_0x68aa('0x2e')]));_0x2562f4[_0x68aa('0x2d')]=_0x2562f4[_0x68aa('0x2d')][_0x68aa('0x2f')]?_0x2562f4['attributes']:_0x7da462[_0x68aa('0x2c')];if(!_0x9249f[_0x68aa('0x28')][_0x68aa('0x46')](_0x68aa('0x30'))){_0x2562f4[_0x68aa('0x1b')]=qs[_0x68aa('0x1b')](_0x9249f[_0x68aa('0x28')]['limit']);_0x2562f4[_0x68aa('0x1a')]=qs[_0x68aa('0x1a')](_0x9249f[_0x68aa('0x28')][_0x68aa('0x1a')]);}_0x2562f4['order']=qs[_0x68aa('0x32')](_0x9249f['query'][_0x68aa('0x32')]);_0x2562f4[_0x68aa('0x34')]=qs[_0x68aa('0x2a')](_[_0x68aa('0x47')](_0x9249f[_0x68aa('0x28')],_0x7da462['filters']));_0x2562f4[_0x68aa('0x34')][_0x68aa('0x48')]=_0x4c7415['id'];if(_0x9249f[_0x68aa('0x28')][_0x68aa('0x33')]){_0x2562f4['where']=_[_0x68aa('0x35')](_0x2562f4[_0x68aa('0x34')],{'$or':_['map'](_0x2562f4['attributes'],function(_0x5eb079){var _0x1e3e74={};_0x1e3e74[_0x5eb079]={'$like':'%'+_0x9249f[_0x68aa('0x28')]['filter']+'%'};return _0x1e3e74;})});}_0x2562f4=_['merge']({},_0x2562f4,_0x9249f['options']);return db[_0x68aa('0x45')][_0x68aa('0x19')]({'where':_0x2562f4[_0x68aa('0x34')]})[_0x68aa('0x1f')](function(_0x2b5c98){_0x5e0c98[_0x68aa('0x19')]=_0x2b5c98;if(_0x9249f['query'][_0x68aa('0x38')]){_0x2562f4[_0x68aa('0x39')]=[{'all':!![]}];}return db[_0x68aa('0x45')][_0x68aa('0x3a')](_0x2562f4);})['then'](function(_0x5a90ab){_0x5e0c98[_0x68aa('0x3b')]=_0x5a90ab;return _0x5e0c98;});}})['then'](respondWithFilteredResult(_0x22f549,_0x2562f4))[_0x68aa('0x3c')](handleError(_0x22f549,null));};