fc840b602217ee497313729da308b9583732d228
[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 _0x41d9=['includeAll','include','rows','catch','show','params','keys','find','create','body','update','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','to-csv','ejs','lodash','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','end','json','undefined','limit','count','offset','set','apply','reject','destroy','then','sendStatus','error','stack','name','send','index','map','JscriptyAnswerReport','rawAttributes','fieldName','type','query','filters','intersection','model','attributes','fields','length','order','sort','pick','filter','where','merge','VIRTUAL','options'];(function(_0x73de62,_0x1e8109){var _0x4cc730=function(_0x2d7f07){while(--_0x2d7f07){_0x73de62['push'](_0x73de62['shift']());}};_0x4cc730(++_0x1e8109);}(_0x41d9,0x13c));var _0x941d=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x41d9[_0x3dd15e];return _0x231fd0;};'use strict';var emlformat=require(_0x941d('0x0'));var rimraf=require(_0x941d('0x1'));var zipdir=require(_0x941d('0x2'));var jsonpatch=require(_0x941d('0x3'));var rp=require(_0x941d('0x4'));var moment=require(_0x941d('0x5'));var BPromise=require(_0x941d('0x6'));var Mustache=require('mustache');var util=require(_0x941d('0x7'));var path=require(_0x941d('0x8'));var sox=require('sox');var csv=require(_0x941d('0x9'));var ejs=require(_0x941d('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x941d('0xb'));var squel=require('squel');var crypto=require(_0x941d('0xc'));var jsforce=require(_0x941d('0xd'));var deskjs=require(_0x941d('0xe'));var toCsv=require(_0x941d('0x9'));var querystring=require(_0x941d('0xf'));var Papa=require('papaparse');var Redis=require(_0x941d('0x10'));var authService=require(_0x941d('0x11'));var qs=require(_0x941d('0x12'));var as=require(_0x941d('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x941d('0x14'))(_0x941d('0x15'));var utils=require(_0x941d('0x16'));var config=require(_0x941d('0x17'));var licenseUtil=require(_0x941d('0x18'));var db=require(_0x941d('0x19'))['db'];function respondWithStatusCode(_0x4d93c4,_0x192331){_0x192331=_0x192331||0xcc;return function(_0x55c5aa){if(_0x55c5aa){return _0x4d93c4['sendStatus'](_0x192331);}return _0x4d93c4[_0x941d('0x1a')](_0x192331)[_0x941d('0x1b')]();};}function respondWithResult(_0xbd3711,_0x2aa972){_0x2aa972=_0x2aa972||0xc8;return function(_0x20a6ab){if(_0x20a6ab){return _0xbd3711[_0x941d('0x1a')](_0x2aa972)[_0x941d('0x1c')](_0x20a6ab);}};}function respondWithFilteredResult(_0x45d85d,_0x369b0b){return function(_0x1f1aeb){if(_0x1f1aeb){var _0x7df80e=typeof _0x369b0b['offset']===_0x941d('0x1d')&&typeof _0x369b0b[_0x941d('0x1e')]===_0x941d('0x1d');var _0x2e5c4f=_0x1f1aeb[_0x941d('0x1f')];var _0x3ac25f=_0x7df80e?0x0:_0x369b0b[_0x941d('0x20')];var _0x2c6ce5=_0x7df80e?_0x1f1aeb[_0x941d('0x1f')]:_0x369b0b['offset']+_0x369b0b[_0x941d('0x1e')];var _0x57f5e6;if(_0x2c6ce5>=_0x2e5c4f){_0x2c6ce5=_0x2e5c4f;_0x57f5e6=0xc8;}else{_0x57f5e6=0xce;}_0x45d85d[_0x941d('0x1a')](_0x57f5e6);return _0x45d85d[_0x941d('0x21')]('Content-Range',_0x3ac25f+'-'+_0x2c6ce5+'/'+_0x2e5c4f)[_0x941d('0x1c')](_0x1f1aeb);}return null;};}function patchUpdates(_0x5ac2e6){return function(_0x526708){try{jsonpatch[_0x941d('0x22')](_0x526708,_0x5ac2e6,!![]);}catch(_0xf6636){return BPromise[_0x941d('0x23')](_0xf6636);}return _0x526708['save']();};}function saveUpdates(_0x1309af,_0x3baf0b){return function(_0xc19c76){if(_0xc19c76){return _0xc19c76['update'](_0x1309af)['then'](function(_0x520bb2){return _0x520bb2;});}return null;};}function removeEntity(_0x306557,_0x26b7b6){return function(_0xd72c49){if(_0xd72c49){return _0xd72c49[_0x941d('0x24')]()[_0x941d('0x25')](function(){_0x306557['status'](0xcc)[_0x941d('0x1b')]();});}};}function handleEntityNotFound(_0x43a443,_0x11c2c9){return function(_0x48baff){if(!_0x48baff){_0x43a443[_0x941d('0x26')](0x194);}return _0x48baff;};}function handleError(_0x1ce2fe,_0x3190d4){_0x3190d4=_0x3190d4||0x1f4;return function(_0x3a72d7){logger[_0x941d('0x27')](_0x3a72d7[_0x941d('0x28')]);if(_0x3a72d7[_0x941d('0x29')]){delete _0x3a72d7[_0x941d('0x29')];}_0x1ce2fe[_0x941d('0x1a')](_0x3190d4)[_0x941d('0x2a')](_0x3a72d7);};}exports[_0x941d('0x2b')]=function(_0x1cacc4,_0x4cf929){var _0x30615a={},_0x42050d={},_0x5908c3={'count':0x0,'rows':[]};var _0x16ce52=_[_0x941d('0x2c')](db[_0x941d('0x2d')][_0x941d('0x2e')],function(_0x46db04){return{'name':_0x46db04[_0x941d('0x2f')],'type':_0x46db04[_0x941d('0x30')]['key']};});_0x42050d['model']=_[_0x941d('0x2c')](_0x16ce52,_0x941d('0x29'));_0x42050d[_0x941d('0x31')]=_['keys'](_0x1cacc4['query']);_0x42050d[_0x941d('0x32')]=_[_0x941d('0x33')](_0x42050d[_0x941d('0x34')],_0x42050d['query']);_0x30615a[_0x941d('0x35')]=_[_0x941d('0x33')](_0x42050d[_0x941d('0x34')],qs[_0x941d('0x36')](_0x1cacc4['query'][_0x941d('0x36')]));_0x30615a[_0x941d('0x35')]=_0x30615a[_0x941d('0x35')][_0x941d('0x37')]?_0x30615a[_0x941d('0x35')]:_0x42050d[_0x941d('0x34')];if(!_0x1cacc4['query']['hasOwnProperty']('nolimit')){_0x30615a[_0x941d('0x1e')]=qs['limit'](_0x1cacc4[_0x941d('0x31')][_0x941d('0x1e')]);_0x30615a[_0x941d('0x20')]=qs[_0x941d('0x20')](_0x1cacc4[_0x941d('0x31')][_0x941d('0x20')]);}_0x30615a[_0x941d('0x38')]=qs[_0x941d('0x39')](_0x1cacc4[_0x941d('0x31')][_0x941d('0x39')]);_0x30615a['where']=qs[_0x941d('0x32')](_[_0x941d('0x3a')](_0x1cacc4[_0x941d('0x31')],_0x42050d[_0x941d('0x32')]),_0x16ce52);if(_0x1cacc4[_0x941d('0x31')][_0x941d('0x3b')]){_0x30615a[_0x941d('0x3c')]=_[_0x941d('0x3d')](_0x30615a[_0x941d('0x3c')],{'$or':_[_0x941d('0x2c')](_0x16ce52,function(_0x37b04c){if(_0x37b04c[_0x941d('0x30')]!==_0x941d('0x3e')){var _0x55fbf2={};_0x55fbf2[_0x37b04c['name']]={'$like':'%'+_0x1cacc4[_0x941d('0x31')][_0x941d('0x3b')]+'%'};return _0x55fbf2;}})});}_0x30615a=_['merge']({},_0x30615a,_0x1cacc4[_0x941d('0x3f')]);var _0x554c8b={'where':_0x30615a[_0x941d('0x3c')]};return db['JscriptyAnswerReport'][_0x941d('0x1f')](_0x554c8b)['then'](function(_0x2a0a21){_0x5908c3[_0x941d('0x1f')]=_0x2a0a21;if(_0x1cacc4[_0x941d('0x31')][_0x941d('0x40')]){_0x30615a[_0x941d('0x41')]=[{'all':!![]}];}return db['JscriptyAnswerReport']['findAll'](_0x30615a);})[_0x941d('0x25')](function(_0x3354ef){_0x5908c3[_0x941d('0x42')]=_0x3354ef;return _0x5908c3;})[_0x941d('0x25')](respondWithFilteredResult(_0x4cf929,_0x30615a))[_0x941d('0x43')](handleError(_0x4cf929,null));};exports[_0x941d('0x44')]=function(_0x35ac51,_0x265a08){var _0x385099={'raw':!![],'where':{'id':_0x35ac51[_0x941d('0x45')]['id']}},_0xf7ff74={};_0xf7ff74[_0x941d('0x34')]=_[_0x941d('0x46')](db['JscriptyAnswerReport'][_0x941d('0x2e')]);_0xf7ff74['query']=_[_0x941d('0x46')](_0x35ac51['query']);_0xf7ff74['filters']=_['intersection'](_0xf7ff74['model'],_0xf7ff74[_0x941d('0x31')]);_0x385099[_0x941d('0x35')]=_['intersection'](_0xf7ff74[_0x941d('0x34')],qs[_0x941d('0x36')](_0x35ac51[_0x941d('0x31')]['fields']));_0x385099['attributes']=_0x385099[_0x941d('0x35')][_0x941d('0x37')]?_0x385099[_0x941d('0x35')]:_0xf7ff74[_0x941d('0x34')];if(_0x35ac51['query'][_0x941d('0x40')]){_0x385099['include']=[{'all':!![]}];}_0x385099=_['merge']({},_0x385099,_0x35ac51['options']);return db[_0x941d('0x2d')][_0x941d('0x47')](_0x385099)[_0x941d('0x25')](handleEntityNotFound(_0x265a08,null))[_0x941d('0x25')](respondWithResult(_0x265a08,null))['catch'](handleError(_0x265a08,null));};exports[_0x941d('0x48')]=function(_0x235f13,_0x2daf90){return db['JscriptyAnswerReport']['create'](_0x235f13[_0x941d('0x49')],{})['then'](respondWithResult(_0x2daf90,0xc9))[_0x941d('0x43')](handleError(_0x2daf90,null));};exports[_0x941d('0x4a')]=function(_0x319d85,_0xef7ff7){if(_0x319d85[_0x941d('0x49')]['id']){delete _0x319d85[_0x941d('0x49')]['id'];}return db[_0x941d('0x2d')][_0x941d('0x47')]({'where':{'id':_0x319d85[_0x941d('0x45')]['id']}})[_0x941d('0x25')](handleEntityNotFound(_0xef7ff7,null))[_0x941d('0x25')](saveUpdates(_0x319d85[_0x941d('0x49')],null))[_0x941d('0x25')](respondWithResult(_0xef7ff7,null))[_0x941d('0x43')](handleError(_0xef7ff7,null));};exports[_0x941d('0x24')]=function(_0x2ec3cf,_0x331792){return db['JscriptyAnswerReport'][_0x941d('0x47')]({'where':{'id':_0x2ec3cf[_0x941d('0x45')]['id']}})[_0x941d('0x25')](handleEntityNotFound(_0x331792,null))['then'](removeEntity(_0x331792,null))['catch'](handleError(_0x331792,null));};exports[_0x941d('0x4b')]=function(_0x5a8eb5,_0x57a2de){return db[_0x941d('0x2d')][_0x941d('0x4b')]()[_0x941d('0x25')](respondWithResult(_0x57a2de,null))[_0x941d('0x43')](handleError(_0x57a2de,null));};