67d2336899d27addadfff87cab3b72f64d543068
[motion2.git] / server / api / jscriptyQuestionReport / jscriptyQuestionReport.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 _0xe424=['then','destroy','sendStatus','error','stack','name','send','index','map','rawAttributes','type','query','keys','filters','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filter','merge','options','JscriptyQuestionReport','include','rows','catch','show','params','includeAll','find','create','body','describe','fast-json-patch','request-promise','moment','util','sox','to-csv','ejs','fs-extra','lodash','squel','jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../mysqldb','status','end','json','undefined','count','offset','limit','Content-Range','apply','reject','save','update'];(function(_0x5a6bdc,_0x46d896){var _0x1218d8=function(_0x111dac){while(--_0x111dac){_0x5a6bdc['push'](_0x5a6bdc['shift']());}};_0x1218d8(++_0x46d896);}(_0xe424,0xf8));var _0x4e42=function(_0x1cfa0d,_0x4391f2){_0x1cfa0d=_0x1cfa0d-0x0;var _0xe33279=_0xe424[_0x1cfa0d];return _0xe33279;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0x4e42('0x0'));var rp=require(_0x4e42('0x1'));var moment=require(_0x4e42('0x2'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x4e42('0x3'));var path=require('path');var sox=require(_0x4e42('0x4'));var csv=require(_0x4e42('0x5'));var ejs=require(_0x4e42('0x6'));var fs=require('fs');var fs_extra=require(_0x4e42('0x7'));var _=require(_0x4e42('0x8'));var squel=require(_0x4e42('0x9'));var crypto=require('crypto');var jsforce=require(_0x4e42('0xa'));var deskjs=require(_0x4e42('0xb'));var toCsv=require(_0x4e42('0x5'));var querystring=require('querystring');var Papa=require(_0x4e42('0xc'));var Redis=require(_0x4e42('0xd'));var authService=require(_0x4e42('0xe'));var qs=require(_0x4e42('0xf'));var as=require(_0x4e42('0x10'));var hardwareService=require(_0x4e42('0x11'));var logger=require('../../config/logger')('api');var utils=require(_0x4e42('0x12'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0x4e42('0x13'))['db'];function respondWithStatusCode(_0x285427,_0x46dc80){_0x46dc80=_0x46dc80||0xcc;return function(_0x5b8822){if(_0x5b8822){return _0x285427['sendStatus'](_0x46dc80);}return _0x285427[_0x4e42('0x14')](_0x46dc80)[_0x4e42('0x15')]();};}function respondWithResult(_0x8728a7,_0x2c9b14){_0x2c9b14=_0x2c9b14||0xc8;return function(_0x491be7){if(_0x491be7){return _0x8728a7[_0x4e42('0x14')](_0x2c9b14)[_0x4e42('0x16')](_0x491be7);}};}function respondWithFilteredResult(_0x2bae4b,_0x306cbc){return function(_0x4941ca){if(_0x4941ca){var _0x32fd45=typeof _0x306cbc['offset']===_0x4e42('0x17')&&typeof _0x306cbc['limit']==='undefined';var _0x4336de=_0x4941ca[_0x4e42('0x18')];var _0x1a9287=_0x32fd45?0x0:_0x306cbc[_0x4e42('0x19')];var _0x5ddf18=_0x32fd45?_0x4941ca['count']:_0x306cbc['offset']+_0x306cbc[_0x4e42('0x1a')];var _0x258c65;if(_0x5ddf18>=_0x4336de){_0x5ddf18=_0x4336de;_0x258c65=0xc8;}else{_0x258c65=0xce;}_0x2bae4b[_0x4e42('0x14')](_0x258c65);return _0x2bae4b['set'](_0x4e42('0x1b'),_0x1a9287+'-'+_0x5ddf18+'/'+_0x4336de)[_0x4e42('0x16')](_0x4941ca);}return null;};}function patchUpdates(_0x926a5a){return function(_0x5ddd69){try{jsonpatch[_0x4e42('0x1c')](_0x5ddd69,_0x926a5a,!![]);}catch(_0x36b724){return BPromise[_0x4e42('0x1d')](_0x36b724);}return _0x5ddd69[_0x4e42('0x1e')]();};}function saveUpdates(_0x45ab5c,_0x103cb9){return function(_0xe2505a){if(_0xe2505a){return _0xe2505a[_0x4e42('0x1f')](_0x45ab5c)[_0x4e42('0x20')](function(_0x5ce48f){return _0x5ce48f;});}return null;};}function removeEntity(_0xc25dfd,_0x2aa961){return function(_0x454aa6){if(_0x454aa6){return _0x454aa6[_0x4e42('0x21')]()[_0x4e42('0x20')](function(){_0xc25dfd[_0x4e42('0x14')](0xcc)['end']();});}};}function handleEntityNotFound(_0x3d249f,_0x58d70c){return function(_0x383fd8){if(!_0x383fd8){_0x3d249f[_0x4e42('0x22')](0x194);}return _0x383fd8;};}function handleError(_0x4e56a1,_0x1a7a3d){_0x1a7a3d=_0x1a7a3d||0x1f4;return function(_0x2bbe69){logger[_0x4e42('0x23')](_0x2bbe69[_0x4e42('0x24')]);if(_0x2bbe69[_0x4e42('0x25')]){delete _0x2bbe69['name'];}_0x4e56a1[_0x4e42('0x14')](_0x1a7a3d)[_0x4e42('0x26')](_0x2bbe69);};}exports[_0x4e42('0x27')]=function(_0x41cbf7,_0x52f75f){var _0x1b482a={},_0x4091bd={},_0x15f080={'count':0x0,'rows':[]};var _0x1b09e2=_[_0x4e42('0x28')](db['JscriptyQuestionReport'][_0x4e42('0x29')],function(_0x4dca15){return{'name':_0x4dca15['fieldName'],'type':_0x4dca15[_0x4e42('0x2a')]['key']};});_0x4091bd['model']=_[_0x4e42('0x28')](_0x1b09e2,'name');_0x4091bd[_0x4e42('0x2b')]=_[_0x4e42('0x2c')](_0x41cbf7['query']);_0x4091bd[_0x4e42('0x2d')]=_[_0x4e42('0x2e')](_0x4091bd[_0x4e42('0x2f')],_0x4091bd[_0x4e42('0x2b')]);_0x1b482a[_0x4e42('0x30')]=_[_0x4e42('0x2e')](_0x4091bd[_0x4e42('0x2f')],qs[_0x4e42('0x31')](_0x41cbf7['query'][_0x4e42('0x31')]));_0x1b482a['attributes']=_0x1b482a['attributes'][_0x4e42('0x32')]?_0x1b482a[_0x4e42('0x30')]:_0x4091bd[_0x4e42('0x2f')];if(!_0x41cbf7[_0x4e42('0x2b')][_0x4e42('0x33')](_0x4e42('0x34'))){_0x1b482a[_0x4e42('0x1a')]=qs[_0x4e42('0x1a')](_0x41cbf7[_0x4e42('0x2b')][_0x4e42('0x1a')]);_0x1b482a[_0x4e42('0x19')]=qs[_0x4e42('0x19')](_0x41cbf7['query'][_0x4e42('0x19')]);}_0x1b482a[_0x4e42('0x35')]=qs['sort'](_0x41cbf7[_0x4e42('0x2b')][_0x4e42('0x36')]);_0x1b482a[_0x4e42('0x37')]=qs['filters'](_['pick'](_0x41cbf7[_0x4e42('0x2b')],_0x4091bd[_0x4e42('0x2d')]),_0x1b09e2);if(_0x41cbf7[_0x4e42('0x2b')][_0x4e42('0x38')]){_0x1b482a[_0x4e42('0x37')]=_[_0x4e42('0x39')](_0x1b482a[_0x4e42('0x37')],{'$or':_[_0x4e42('0x28')](_0x1b09e2,function(_0x7ea1c7){if(_0x7ea1c7['type']!=='VIRTUAL'){var _0x10f8b6={};_0x10f8b6[_0x7ea1c7[_0x4e42('0x25')]]={'$like':'%'+_0x41cbf7[_0x4e42('0x2b')][_0x4e42('0x38')]+'%'};return _0x10f8b6;}})});}_0x1b482a=_[_0x4e42('0x39')]({},_0x1b482a,_0x41cbf7[_0x4e42('0x3a')]);var _0x4fdfd2={'where':_0x1b482a[_0x4e42('0x37')]};return db[_0x4e42('0x3b')][_0x4e42('0x18')](_0x4fdfd2)[_0x4e42('0x20')](function(_0xb55833){_0x15f080['count']=_0xb55833;if(_0x41cbf7[_0x4e42('0x2b')]['includeAll']){_0x1b482a[_0x4e42('0x3c')]=[{'all':!![]}];}return db[_0x4e42('0x3b')]['findAll'](_0x1b482a);})['then'](function(_0x3fb90b){_0x15f080[_0x4e42('0x3d')]=_0x3fb90b;return _0x15f080;})[_0x4e42('0x20')](respondWithFilteredResult(_0x52f75f,_0x1b482a))[_0x4e42('0x3e')](handleError(_0x52f75f,null));};exports[_0x4e42('0x3f')]=function(_0xda3d77,_0x314935){var _0x18b57a={'raw':!![],'where':{'id':_0xda3d77[_0x4e42('0x40')]['id']}},_0x19af6b={};_0x19af6b[_0x4e42('0x2f')]=_[_0x4e42('0x2c')](db[_0x4e42('0x3b')]['rawAttributes']);_0x19af6b[_0x4e42('0x2b')]=_[_0x4e42('0x2c')](_0xda3d77['query']);_0x19af6b[_0x4e42('0x2d')]=_[_0x4e42('0x2e')](_0x19af6b[_0x4e42('0x2f')],_0x19af6b[_0x4e42('0x2b')]);_0x18b57a[_0x4e42('0x30')]=_[_0x4e42('0x2e')](_0x19af6b['model'],qs['fields'](_0xda3d77[_0x4e42('0x2b')][_0x4e42('0x31')]));_0x18b57a['attributes']=_0x18b57a[_0x4e42('0x30')]['length']?_0x18b57a[_0x4e42('0x30')]:_0x19af6b[_0x4e42('0x2f')];if(_0xda3d77['query'][_0x4e42('0x41')]){_0x18b57a[_0x4e42('0x3c')]=[{'all':!![]}];}_0x18b57a=_[_0x4e42('0x39')]({},_0x18b57a,_0xda3d77[_0x4e42('0x3a')]);return db[_0x4e42('0x3b')][_0x4e42('0x42')](_0x18b57a)[_0x4e42('0x20')](handleEntityNotFound(_0x314935,null))['then'](respondWithResult(_0x314935,null))[_0x4e42('0x3e')](handleError(_0x314935,null));};exports[_0x4e42('0x43')]=function(_0x487d67,_0x38bebc){return db[_0x4e42('0x3b')][_0x4e42('0x43')](_0x487d67[_0x4e42('0x44')],{})[_0x4e42('0x20')](respondWithResult(_0x38bebc,0xc9))[_0x4e42('0x3e')](handleError(_0x38bebc,null));};exports['update']=function(_0x3e89e4,_0x2d1e2d){if(_0x3e89e4[_0x4e42('0x44')]['id']){delete _0x3e89e4[_0x4e42('0x44')]['id'];}return db[_0x4e42('0x3b')][_0x4e42('0x42')]({'where':{'id':_0x3e89e4[_0x4e42('0x40')]['id']}})[_0x4e42('0x20')](handleEntityNotFound(_0x2d1e2d,null))['then'](saveUpdates(_0x3e89e4[_0x4e42('0x44')],null))[_0x4e42('0x20')](respondWithResult(_0x2d1e2d,null))[_0x4e42('0x3e')](handleError(_0x2d1e2d,null));};exports[_0x4e42('0x21')]=function(_0x47d2c,_0x796d50){return db[_0x4e42('0x3b')][_0x4e42('0x42')]({'where':{'id':_0x47d2c['params']['id']}})[_0x4e42('0x20')](handleEntityNotFound(_0x796d50,null))[_0x4e42('0x20')](removeEntity(_0x796d50,null))[_0x4e42('0x3e')](handleError(_0x796d50,null));};exports['describe']=function(_0x3f6d79,_0x25f5b1){return db[_0x4e42('0x3b')][_0x4e42('0x45')]()[_0x4e42('0x20')](respondWithResult(_0x25f5b1,null))[_0x4e42('0x3e')](handleError(_0x25f5b1,null));};