Built motion from commit c116dc8b.|2.6.30
[motion2.git] / server / api / jscriptyAnswerReport / jscriptyAnswerReport.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 _0x3baf=['filter','where','merge','options','includeAll','JscriptyAnswerReport','rows','catch','show','params','include','find','create','body','destroy','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','offset','undefined','count','set','apply','reject','save','update','then','error','stack','name','rawAttributes','type','map','query','keys','filters','model','attributes','intersection','fields','length','hasOwnProperty','nolimit','limit','order','sort','pick'];(function(_0x44f409,_0x3e3d04){var _0x1441e3=function(_0x3f7dd9){while(--_0x3f7dd9){_0x44f409['push'](_0x44f409['shift']());}};_0x1441e3(++_0x3e3d04);}(_0x3baf,0xf7));var _0xf3ba=function(_0x5bf332,_0x178189){_0x5bf332=_0x5bf332-0x0;var _0x492a7e=_0x3baf[_0x5bf332];return _0x492a7e;};'use strict';var emlformat=require(_0xf3ba('0x0'));var rimraf=require(_0xf3ba('0x1'));var zipdir=require(_0xf3ba('0x2'));var jsonpatch=require(_0xf3ba('0x3'));var rp=require(_0xf3ba('0x4'));var moment=require(_0xf3ba('0x5'));var BPromise=require(_0xf3ba('0x6'));var Mustache=require(_0xf3ba('0x7'));var util=require(_0xf3ba('0x8'));var path=require(_0xf3ba('0x9'));var sox=require(_0xf3ba('0xa'));var csv=require(_0xf3ba('0xb'));var ejs=require(_0xf3ba('0xc'));var fs=require('fs');var fs_extra=require(_0xf3ba('0xd'));var _=require(_0xf3ba('0xe'));var squel=require('squel');var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0xf3ba('0xf'));var toCsv=require('to-csv');var querystring=require(_0xf3ba('0x10'));var Papa=require(_0xf3ba('0x11'));var Redis=require(_0xf3ba('0x12'));var authService=require(_0xf3ba('0x13'));var qs=require(_0xf3ba('0x14'));var as=require(_0xf3ba('0x15'));var hardwareService=require(_0xf3ba('0x16'));var logger=require(_0xf3ba('0x17'))(_0xf3ba('0x18'));var utils=require(_0xf3ba('0x19'));var config=require(_0xf3ba('0x1a'));var licenseUtil=require(_0xf3ba('0x1b'));var db=require(_0xf3ba('0x1c'))['db'];function respondWithStatusCode(_0x85939e,_0x26cefe){_0x26cefe=_0x26cefe||0xcc;return function(_0x17673a){if(_0x17673a){return _0x85939e[_0xf3ba('0x1d')](_0x26cefe);}return _0x85939e[_0xf3ba('0x1e')](_0x26cefe)['end']();};}function respondWithResult(_0x327675,_0x56816b){_0x56816b=_0x56816b||0xc8;return function(_0x815037){if(_0x815037){return _0x327675[_0xf3ba('0x1e')](_0x56816b)[_0xf3ba('0x1f')](_0x815037);}};}function respondWithFilteredResult(_0x1e2969,_0x235c8a){return function(_0x53f848){if(_0x53f848){var _0x301856=typeof _0x235c8a[_0xf3ba('0x20')]===_0xf3ba('0x21')&&typeof _0x235c8a['limit']===_0xf3ba('0x21');var _0x11fbd2=_0x53f848[_0xf3ba('0x22')];var _0x44de40=_0x301856?0x0:_0x235c8a['offset'];var _0x1e18ed=_0x301856?_0x53f848[_0xf3ba('0x22')]:_0x235c8a['offset']+_0x235c8a['limit'];var _0x35a03c;if(_0x1e18ed>=_0x11fbd2){_0x1e18ed=_0x11fbd2;_0x35a03c=0xc8;}else{_0x35a03c=0xce;}_0x1e2969[_0xf3ba('0x1e')](_0x35a03c);return _0x1e2969[_0xf3ba('0x23')]('Content-Range',_0x44de40+'-'+_0x1e18ed+'/'+_0x11fbd2)[_0xf3ba('0x1f')](_0x53f848);}return null;};}function patchUpdates(_0x327723){return function(_0x35d6d4){try{jsonpatch[_0xf3ba('0x24')](_0x35d6d4,_0x327723,!![]);}catch(_0x23a744){return BPromise[_0xf3ba('0x25')](_0x23a744);}return _0x35d6d4[_0xf3ba('0x26')]();};}function saveUpdates(_0x4caf74,_0x4e94a7){return function(_0x4a065a){if(_0x4a065a){return _0x4a065a[_0xf3ba('0x27')](_0x4caf74)[_0xf3ba('0x28')](function(_0x6f538f){return _0x6f538f;});}return null;};}function removeEntity(_0x3b6404,_0x2cc01a){return function(_0x545ee1){if(_0x545ee1){return _0x545ee1['destroy']()[_0xf3ba('0x28')](function(){_0x3b6404[_0xf3ba('0x1e')](0xcc)['end']();});}};}function handleEntityNotFound(_0x1c9d6a,_0x37cba1){return function(_0x59ce48){if(!_0x59ce48){_0x1c9d6a['sendStatus'](0x194);}return _0x59ce48;};}function handleError(_0x396089,_0x7effa1){_0x7effa1=_0x7effa1||0x1f4;return function(_0x5f1709){logger[_0xf3ba('0x29')](_0x5f1709[_0xf3ba('0x2a')]);if(_0x5f1709[_0xf3ba('0x2b')]){delete _0x5f1709['name'];}_0x396089[_0xf3ba('0x1e')](_0x7effa1)['send'](_0x5f1709);};}exports['index']=function(_0x7c1a60,_0x19ef2c){var _0x5b4e0d={},_0x41c4b1={},_0x118aeb={'count':0x0,'rows':[]};var _0x5081aa=_['map'](db['JscriptyAnswerReport'][_0xf3ba('0x2c')],function(_0x6423f){return{'name':_0x6423f['fieldName'],'type':_0x6423f[_0xf3ba('0x2d')]['key']};});_0x41c4b1['model']=_[_0xf3ba('0x2e')](_0x5081aa,_0xf3ba('0x2b'));_0x41c4b1[_0xf3ba('0x2f')]=_[_0xf3ba('0x30')](_0x7c1a60[_0xf3ba('0x2f')]);_0x41c4b1[_0xf3ba('0x31')]=_['intersection'](_0x41c4b1[_0xf3ba('0x32')],_0x41c4b1['query']);_0x5b4e0d[_0xf3ba('0x33')]=_[_0xf3ba('0x34')](_0x41c4b1['model'],qs[_0xf3ba('0x35')](_0x7c1a60[_0xf3ba('0x2f')][_0xf3ba('0x35')]));_0x5b4e0d[_0xf3ba('0x33')]=_0x5b4e0d['attributes'][_0xf3ba('0x36')]?_0x5b4e0d['attributes']:_0x41c4b1['model'];if(!_0x7c1a60['query'][_0xf3ba('0x37')](_0xf3ba('0x38'))){_0x5b4e0d[_0xf3ba('0x39')]=qs[_0xf3ba('0x39')](_0x7c1a60[_0xf3ba('0x2f')]['limit']);_0x5b4e0d[_0xf3ba('0x20')]=qs['offset'](_0x7c1a60[_0xf3ba('0x2f')]['offset']);}_0x5b4e0d[_0xf3ba('0x3a')]=qs[_0xf3ba('0x3b')](_0x7c1a60[_0xf3ba('0x2f')][_0xf3ba('0x3b')]);_0x5b4e0d['where']=qs[_0xf3ba('0x31')](_[_0xf3ba('0x3c')](_0x7c1a60['query'],_0x41c4b1[_0xf3ba('0x31')]),_0x5081aa);if(_0x7c1a60[_0xf3ba('0x2f')][_0xf3ba('0x3d')]){_0x5b4e0d[_0xf3ba('0x3e')]=_[_0xf3ba('0x3f')](_0x5b4e0d[_0xf3ba('0x3e')],{'$or':_[_0xf3ba('0x2e')](_0x5081aa,function(_0x4d4f3d){if(_0x4d4f3d[_0xf3ba('0x2d')]!=='VIRTUAL'){var _0x4307db={};_0x4307db[_0x4d4f3d['name']]={'$like':'%'+_0x7c1a60[_0xf3ba('0x2f')][_0xf3ba('0x3d')]+'%'};return _0x4307db;}})});}_0x5b4e0d=_[_0xf3ba('0x3f')]({},_0x5b4e0d,_0x7c1a60[_0xf3ba('0x40')]);var _0x2cbfca={'where':_0x5b4e0d['where']};return db['JscriptyAnswerReport'][_0xf3ba('0x22')](_0x2cbfca)[_0xf3ba('0x28')](function(_0x417911){_0x118aeb[_0xf3ba('0x22')]=_0x417911;if(_0x7c1a60[_0xf3ba('0x2f')][_0xf3ba('0x41')]){_0x5b4e0d['include']=[{'all':!![]}];}return db[_0xf3ba('0x42')]['findAll'](_0x5b4e0d);})[_0xf3ba('0x28')](function(_0x239e2a){_0x118aeb[_0xf3ba('0x43')]=_0x239e2a;return _0x118aeb;})[_0xf3ba('0x28')](respondWithFilteredResult(_0x19ef2c,_0x5b4e0d))[_0xf3ba('0x44')](handleError(_0x19ef2c,null));};exports[_0xf3ba('0x45')]=function(_0x26f640,_0x3e5411){var _0x5b9a0c={'raw':!![],'where':{'id':_0x26f640[_0xf3ba('0x46')]['id']}},_0xd15662={};_0xd15662[_0xf3ba('0x32')]=_[_0xf3ba('0x30')](db[_0xf3ba('0x42')][_0xf3ba('0x2c')]);_0xd15662[_0xf3ba('0x2f')]=_['keys'](_0x26f640[_0xf3ba('0x2f')]);_0xd15662[_0xf3ba('0x31')]=_['intersection'](_0xd15662[_0xf3ba('0x32')],_0xd15662[_0xf3ba('0x2f')]);_0x5b9a0c[_0xf3ba('0x33')]=_[_0xf3ba('0x34')](_0xd15662[_0xf3ba('0x32')],qs[_0xf3ba('0x35')](_0x26f640[_0xf3ba('0x2f')][_0xf3ba('0x35')]));_0x5b9a0c[_0xf3ba('0x33')]=_0x5b9a0c[_0xf3ba('0x33')][_0xf3ba('0x36')]?_0x5b9a0c[_0xf3ba('0x33')]:_0xd15662[_0xf3ba('0x32')];if(_0x26f640[_0xf3ba('0x2f')][_0xf3ba('0x41')]){_0x5b9a0c[_0xf3ba('0x47')]=[{'all':!![]}];}_0x5b9a0c=_[_0xf3ba('0x3f')]({},_0x5b9a0c,_0x26f640[_0xf3ba('0x40')]);return db['JscriptyAnswerReport'][_0xf3ba('0x48')](_0x5b9a0c)[_0xf3ba('0x28')](handleEntityNotFound(_0x3e5411,null))['then'](respondWithResult(_0x3e5411,null))[_0xf3ba('0x44')](handleError(_0x3e5411,null));};exports[_0xf3ba('0x49')]=function(_0x188d88,_0x36f476){return db['JscriptyAnswerReport']['create'](_0x188d88[_0xf3ba('0x4a')],{})[_0xf3ba('0x28')](respondWithResult(_0x36f476,0xc9))[_0xf3ba('0x44')](handleError(_0x36f476,null));};exports[_0xf3ba('0x27')]=function(_0x502483,_0x2d3a0d){if(_0x502483[_0xf3ba('0x4a')]['id']){delete _0x502483[_0xf3ba('0x4a')]['id'];}return db['JscriptyAnswerReport'][_0xf3ba('0x48')]({'where':{'id':_0x502483[_0xf3ba('0x46')]['id']}})[_0xf3ba('0x28')](handleEntityNotFound(_0x2d3a0d,null))[_0xf3ba('0x28')](saveUpdates(_0x502483[_0xf3ba('0x4a')],null))[_0xf3ba('0x28')](respondWithResult(_0x2d3a0d,null))[_0xf3ba('0x44')](handleError(_0x2d3a0d,null));};exports[_0xf3ba('0x4b')]=function(_0x4620c0,_0x23c2c6){return db['JscriptyAnswerReport'][_0xf3ba('0x48')]({'where':{'id':_0x4620c0[_0xf3ba('0x46')]['id']}})[_0xf3ba('0x28')](handleEntityNotFound(_0x23c2c6,null))[_0xf3ba('0x28')](removeEntity(_0x23c2c6,null))['catch'](handleError(_0x23c2c6,null));};exports[_0xf3ba('0x4c')]=function(_0x5e275b,_0x5b5242){return db[_0xf3ba('0x42')][_0xf3ba('0x4c')]()[_0xf3ba('0x28')](respondWithResult(_0x5b5242,null))[_0xf3ba('0x44')](handleError(_0x5b5242,null));};