Built motion from commit da617fac.|2.6.6
[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 _0x37a7=['name','send','index','JscriptyAnswerReport','rawAttributes','fieldName','key','model','map','query','keys','filters','intersection','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','include','rows','show','params','attributes','fields','find','catch','create','body','destroy','describe','eml-format','rimraf','moment','bluebird','sox','to-csv','ejs','fs-extra','lodash','crypto','jsforce','desk.js','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','offset','undefined','limit','count','Content-Range','json','apply','reject','update','then','error','stack'];(function(_0x3c22e0,_0x1dc6ea){var _0x215811=function(_0x1b453c){while(--_0x1b453c){_0x3c22e0['push'](_0x3c22e0['shift']());}};_0x215811(++_0x1dc6ea);}(_0x37a7,0x6f));var _0x737a=function(_0x5184d9,_0x5d90b6){_0x5184d9=_0x5184d9-0x0;var _0x1639b6=_0x37a7[_0x5184d9];return _0x1639b6;};'use strict';var emlformat=require(_0x737a('0x0'));var rimraf=require(_0x737a('0x1'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x737a('0x2'));var BPromise=require(_0x737a('0x3'));var Mustache=require('mustache');var util=require('util');var path=require('path');var sox=require(_0x737a('0x4'));var csv=require(_0x737a('0x5'));var ejs=require(_0x737a('0x6'));var fs=require('fs');var fs_extra=require(_0x737a('0x7'));var _=require(_0x737a('0x8'));var squel=require('squel');var crypto=require(_0x737a('0x9'));var jsforce=require(_0x737a('0xa'));var deskjs=require(_0x737a('0xb'));var toCsv=require(_0x737a('0x5'));var querystring=require('querystring');var Papa=require(_0x737a('0xc'));var Redis=require(_0x737a('0xd'));var authService=require('../../components/auth/service');var qs=require(_0x737a('0xe'));var as=require(_0x737a('0xf'));var hardwareService=require(_0x737a('0x10'));var logger=require(_0x737a('0x11'))(_0x737a('0x12'));var utils=require(_0x737a('0x13'));var config=require(_0x737a('0x14'));var licenseUtil=require('../../config/license/util');var db=require(_0x737a('0x15'))['db'];function respondWithStatusCode(_0x22cc58,_0x2c4e57){_0x2c4e57=_0x2c4e57||0xcc;return function(_0x202575){if(_0x202575){return _0x22cc58[_0x737a('0x16')](_0x2c4e57);}return _0x22cc58[_0x737a('0x17')](_0x2c4e57)[_0x737a('0x18')]();};}function respondWithResult(_0x216a1d,_0x59b844){_0x59b844=_0x59b844||0xc8;return function(_0x449a00){if(_0x449a00){return _0x216a1d[_0x737a('0x17')](_0x59b844)['json'](_0x449a00);}};}function respondWithFilteredResult(_0x597c9d,_0xbf359e){return function(_0x37fc59){if(_0x37fc59){var _0x64901f=typeof _0xbf359e[_0x737a('0x19')]===_0x737a('0x1a')&&typeof _0xbf359e[_0x737a('0x1b')]==='undefined';var _0x369f2f=_0x37fc59['count'];var _0x30344f=_0x64901f?0x0:_0xbf359e[_0x737a('0x19')];var _0x58fb1f=_0x64901f?_0x37fc59[_0x737a('0x1c')]:_0xbf359e['offset']+_0xbf359e['limit'];var _0x3bf493;if(_0x58fb1f>=_0x369f2f){_0x58fb1f=_0x369f2f;_0x3bf493=0xc8;}else{_0x3bf493=0xce;}_0x597c9d[_0x737a('0x17')](_0x3bf493);return _0x597c9d['set'](_0x737a('0x1d'),_0x30344f+'-'+_0x58fb1f+'/'+_0x369f2f)[_0x737a('0x1e')](_0x37fc59);}return null;};}function patchUpdates(_0x8d8378){return function(_0x5d8e46){try{jsonpatch[_0x737a('0x1f')](_0x5d8e46,_0x8d8378,!![]);}catch(_0x4ac430){return BPromise[_0x737a('0x20')](_0x4ac430);}return _0x5d8e46['save']();};}function saveUpdates(_0x28a36e,_0x21d412){return function(_0x1e801d){if(_0x1e801d){return _0x1e801d[_0x737a('0x21')](_0x28a36e)[_0x737a('0x22')](function(_0xd334c0){return _0xd334c0;});}return null;};}function removeEntity(_0x1979e9,_0x379439){return function(_0x4deb7c){if(_0x4deb7c){return _0x4deb7c['destroy']()[_0x737a('0x22')](function(){_0x1979e9['status'](0xcc)[_0x737a('0x18')]();});}};}function handleEntityNotFound(_0x55c901,_0x23d112){return function(_0x1d1642){if(!_0x1d1642){_0x55c901[_0x737a('0x16')](0x194);}return _0x1d1642;};}function handleError(_0x417033,_0x43f395){_0x43f395=_0x43f395||0x1f4;return function(_0x49a1d3){logger[_0x737a('0x23')](_0x49a1d3[_0x737a('0x24')]);if(_0x49a1d3[_0x737a('0x25')]){delete _0x49a1d3[_0x737a('0x25')];}_0x417033[_0x737a('0x17')](_0x43f395)[_0x737a('0x26')](_0x49a1d3);};}exports[_0x737a('0x27')]=function(_0x5a3590,_0x1e2e4c){var _0x15a81c={},_0x2e2a20={},_0x34d20e={'count':0x0,'rows':[]};var _0x22c841=_['map'](db[_0x737a('0x28')][_0x737a('0x29')],function(_0x4115c5){return{'name':_0x4115c5[_0x737a('0x2a')],'type':_0x4115c5['type'][_0x737a('0x2b')]};});_0x2e2a20[_0x737a('0x2c')]=_[_0x737a('0x2d')](_0x22c841,_0x737a('0x25'));_0x2e2a20[_0x737a('0x2e')]=_[_0x737a('0x2f')](_0x5a3590[_0x737a('0x2e')]);_0x2e2a20[_0x737a('0x30')]=_[_0x737a('0x31')](_0x2e2a20[_0x737a('0x2c')],_0x2e2a20['query']);_0x15a81c['attributes']=_['intersection'](_0x2e2a20[_0x737a('0x2c')],qs['fields'](_0x5a3590['query']['fields']));_0x15a81c['attributes']=_0x15a81c['attributes'][_0x737a('0x32')]?_0x15a81c['attributes']:_0x2e2a20['model'];if(!_0x5a3590[_0x737a('0x2e')][_0x737a('0x33')](_0x737a('0x34'))){_0x15a81c[_0x737a('0x1b')]=qs[_0x737a('0x1b')](_0x5a3590[_0x737a('0x2e')][_0x737a('0x1b')]);_0x15a81c[_0x737a('0x19')]=qs[_0x737a('0x19')](_0x5a3590[_0x737a('0x2e')][_0x737a('0x19')]);}_0x15a81c[_0x737a('0x35')]=qs[_0x737a('0x36')](_0x5a3590[_0x737a('0x2e')][_0x737a('0x36')]);_0x15a81c[_0x737a('0x37')]=qs['filters'](_[_0x737a('0x38')](_0x5a3590[_0x737a('0x2e')],_0x2e2a20[_0x737a('0x30')]),_0x22c841);if(_0x5a3590[_0x737a('0x2e')][_0x737a('0x39')]){_0x15a81c['where']=_[_0x737a('0x3a')](_0x15a81c[_0x737a('0x37')],{'$or':_[_0x737a('0x2d')](_0x22c841,function(_0x5d2c04){if(_0x5d2c04['type']!==_0x737a('0x3b')){var _0xc62b6b={};_0xc62b6b[_0x5d2c04['name']]={'$like':'%'+_0x5a3590[_0x737a('0x2e')][_0x737a('0x39')]+'%'};return _0xc62b6b;}})});}_0x15a81c=_[_0x737a('0x3a')]({},_0x15a81c,_0x5a3590[_0x737a('0x3c')]);var _0x3b47db={'where':_0x15a81c['where']};return db[_0x737a('0x28')][_0x737a('0x1c')](_0x3b47db)[_0x737a('0x22')](function(_0x3f3f22){_0x34d20e['count']=_0x3f3f22;if(_0x5a3590[_0x737a('0x2e')][_0x737a('0x3d')]){_0x15a81c[_0x737a('0x3e')]=[{'all':!![]}];}return db['JscriptyAnswerReport']['findAll'](_0x15a81c);})[_0x737a('0x22')](function(_0x43a939){_0x34d20e[_0x737a('0x3f')]=_0x43a939;return _0x34d20e;})[_0x737a('0x22')](respondWithFilteredResult(_0x1e2e4c,_0x15a81c))['catch'](handleError(_0x1e2e4c,null));};exports[_0x737a('0x40')]=function(_0x45e818,_0x3d2f9e){var _0x451598={'raw':!![],'where':{'id':_0x45e818[_0x737a('0x41')]['id']}},_0xca416f={};_0xca416f['model']=_[_0x737a('0x2f')](db['JscriptyAnswerReport']['rawAttributes']);_0xca416f[_0x737a('0x2e')]=_[_0x737a('0x2f')](_0x45e818[_0x737a('0x2e')]);_0xca416f[_0x737a('0x30')]=_['intersection'](_0xca416f['model'],_0xca416f[_0x737a('0x2e')]);_0x451598[_0x737a('0x42')]=_[_0x737a('0x31')](_0xca416f['model'],qs[_0x737a('0x43')](_0x45e818[_0x737a('0x2e')][_0x737a('0x43')]));_0x451598[_0x737a('0x42')]=_0x451598[_0x737a('0x42')][_0x737a('0x32')]?_0x451598[_0x737a('0x42')]:_0xca416f[_0x737a('0x2c')];if(_0x45e818[_0x737a('0x2e')][_0x737a('0x3d')]){_0x451598[_0x737a('0x3e')]=[{'all':!![]}];}_0x451598=_[_0x737a('0x3a')]({},_0x451598,_0x45e818[_0x737a('0x3c')]);return db[_0x737a('0x28')][_0x737a('0x44')](_0x451598)[_0x737a('0x22')](handleEntityNotFound(_0x3d2f9e,null))[_0x737a('0x22')](respondWithResult(_0x3d2f9e,null))[_0x737a('0x45')](handleError(_0x3d2f9e,null));};exports['create']=function(_0x1f3810,_0x1102cf){return db[_0x737a('0x28')][_0x737a('0x46')](_0x1f3810['body'],{})[_0x737a('0x22')](respondWithResult(_0x1102cf,0xc9))[_0x737a('0x45')](handleError(_0x1102cf,null));};exports[_0x737a('0x21')]=function(_0xd91856,_0x3f9b66){if(_0xd91856[_0x737a('0x47')]['id']){delete _0xd91856[_0x737a('0x47')]['id'];}return db[_0x737a('0x28')]['find']({'where':{'id':_0xd91856[_0x737a('0x41')]['id']}})[_0x737a('0x22')](handleEntityNotFound(_0x3f9b66,null))[_0x737a('0x22')](saveUpdates(_0xd91856[_0x737a('0x47')],null))[_0x737a('0x22')](respondWithResult(_0x3f9b66,null))['catch'](handleError(_0x3f9b66,null));};exports[_0x737a('0x48')]=function(_0x13d85d,_0x2ec643){return db[_0x737a('0x28')][_0x737a('0x44')]({'where':{'id':_0x13d85d[_0x737a('0x41')]['id']}})['then'](handleEntityNotFound(_0x2ec643,null))[_0x737a('0x22')](removeEntity(_0x2ec643,null))['catch'](handleError(_0x2ec643,null));};exports[_0x737a('0x49')]=function(_0x3a0a08,_0x1d213c){return db[_0x737a('0x28')][_0x737a('0x49')]()['then'](respondWithResult(_0x1d213c,null))[_0x737a('0x45')](handleError(_0x1d213c,null));};