Built motion from commit efa66e19.|2.6.22
[motion2.git] / server / api / voiceDialReport / voiceDialReport.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 _0x9b36=['attributes','length','nolimit','order','sort','where','pick','filter','merge','type','VIRTUAL','includeAll','include','findAll','rows','catch','params','fields','options','find','create','body','destroy','describe','eml-format','rimraf','request-promise','moment','bluebird','util','path','sox','to-csv','fs-extra','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','end','json','undefined','limit','count','offset','Content-Range','apply','reject','save','then','error','name','send','index','map','VoiceDialReport','rawAttributes','fieldName','key','model','query','filters','intersection'];(function(_0x1a100d,_0x42be1f){var _0x117998=function(_0x3b406d){while(--_0x3b406d){_0x1a100d['push'](_0x1a100d['shift']());}};_0x117998(++_0x42be1f);}(_0x9b36,0xac));var _0x69b3=function(_0x64d1fc,_0x218513){_0x64d1fc=_0x64d1fc-0x0;var _0x270ebc=_0x9b36[_0x64d1fc];return _0x270ebc;};'use strict';var emlformat=require(_0x69b3('0x0'));var rimraf=require(_0x69b3('0x1'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x69b3('0x2'));var moment=require(_0x69b3('0x3'));var BPromise=require(_0x69b3('0x4'));var Mustache=require('mustache');var util=require(_0x69b3('0x5'));var path=require(_0x69b3('0x6'));var sox=require(_0x69b3('0x7'));var csv=require(_0x69b3('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x69b3('0x9'));var _=require('lodash');var squel=require(_0x69b3('0xa'));var crypto=require('crypto');var jsforce=require(_0x69b3('0xb'));var deskjs=require(_0x69b3('0xc'));var toCsv=require('to-csv');var querystring=require(_0x69b3('0xd'));var Papa=require(_0x69b3('0xe'));var Redis=require(_0x69b3('0xf'));var authService=require(_0x69b3('0x10'));var qs=require(_0x69b3('0x11'));var as=require(_0x69b3('0x12'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x69b3('0x13'))(_0x69b3('0x14'));var utils=require(_0x69b3('0x15'));var config=require('../../config/environment');var licenseUtil=require(_0x69b3('0x16'));var db=require(_0x69b3('0x17'))['db'];function respondWithStatusCode(_0xb3276e,_0x4762b9){_0x4762b9=_0x4762b9||0xcc;return function(_0x26cb67){if(_0x26cb67){return _0xb3276e[_0x69b3('0x18')](_0x4762b9);}return _0xb3276e[_0x69b3('0x19')](_0x4762b9)[_0x69b3('0x1a')]();};}function respondWithResult(_0x5c6d55,_0x54b4b7){_0x54b4b7=_0x54b4b7||0xc8;return function(_0xbf4fb1){if(_0xbf4fb1){return _0x5c6d55['status'](_0x54b4b7)[_0x69b3('0x1b')](_0xbf4fb1);}};}function respondWithFilteredResult(_0x3b6e0c,_0x1b5365){return function(_0x308e54){if(_0x308e54){var _0x52fcea=typeof _0x1b5365['offset']===_0x69b3('0x1c')&&typeof _0x1b5365[_0x69b3('0x1d')]===_0x69b3('0x1c');var _0x355abc=_0x308e54[_0x69b3('0x1e')];var _0x2ee261=_0x52fcea?0x0:_0x1b5365[_0x69b3('0x1f')];var _0x4e1a70=_0x52fcea?_0x308e54[_0x69b3('0x1e')]:_0x1b5365['offset']+_0x1b5365[_0x69b3('0x1d')];var _0xe3a7b8;if(_0x4e1a70>=_0x355abc){_0x4e1a70=_0x355abc;_0xe3a7b8=0xc8;}else{_0xe3a7b8=0xce;}_0x3b6e0c[_0x69b3('0x19')](_0xe3a7b8);return _0x3b6e0c['set'](_0x69b3('0x20'),_0x2ee261+'-'+_0x4e1a70+'/'+_0x355abc)[_0x69b3('0x1b')](_0x308e54);}return null;};}function patchUpdates(_0x4a7bbe){return function(_0x3717a5){try{jsonpatch[_0x69b3('0x21')](_0x3717a5,_0x4a7bbe,!![]);}catch(_0x30456a){return BPromise[_0x69b3('0x22')](_0x30456a);}return _0x3717a5[_0x69b3('0x23')]();};}function saveUpdates(_0x66043e,_0x1e62ed){return function(_0x203993){if(_0x203993){return _0x203993['update'](_0x66043e)[_0x69b3('0x24')](function(_0x273b96){return _0x273b96;});}return null;};}function removeEntity(_0x430762,_0x2d3cae){return function(_0x3a1f1a){if(_0x3a1f1a){return _0x3a1f1a['destroy']()['then'](function(){_0x430762[_0x69b3('0x19')](0xcc)[_0x69b3('0x1a')]();});}};}function handleEntityNotFound(_0x1e60d6,_0x2cd0f1){return function(_0x371f27){if(!_0x371f27){_0x1e60d6['sendStatus'](0x194);}return _0x371f27;};}function handleError(_0x48c6b2,_0x52cecb){_0x52cecb=_0x52cecb||0x1f4;return function(_0xc1739){logger[_0x69b3('0x25')](_0xc1739['stack']);if(_0xc1739[_0x69b3('0x26')]){delete _0xc1739[_0x69b3('0x26')];}_0x48c6b2[_0x69b3('0x19')](_0x52cecb)[_0x69b3('0x27')](_0xc1739);};}exports[_0x69b3('0x28')]=function(_0x3af894,_0x5b7316){var _0x3ee01e={},_0x15b263={},_0x4f78e6={'count':0x0,'rows':[]};var _0x7df094=_[_0x69b3('0x29')](db[_0x69b3('0x2a')][_0x69b3('0x2b')],function(_0x7a354c){return{'name':_0x7a354c[_0x69b3('0x2c')],'type':_0x7a354c['type'][_0x69b3('0x2d')]};});_0x15b263[_0x69b3('0x2e')]=_['map'](_0x7df094,_0x69b3('0x26'));_0x15b263[_0x69b3('0x2f')]=_['keys'](_0x3af894[_0x69b3('0x2f')]);_0x15b263[_0x69b3('0x30')]=_[_0x69b3('0x31')](_0x15b263[_0x69b3('0x2e')],_0x15b263[_0x69b3('0x2f')]);_0x3ee01e[_0x69b3('0x32')]=_[_0x69b3('0x31')](_0x15b263['model'],qs['fields'](_0x3af894['query']['fields']));_0x3ee01e['attributes']=_0x3ee01e[_0x69b3('0x32')][_0x69b3('0x33')]?_0x3ee01e[_0x69b3('0x32')]:_0x15b263[_0x69b3('0x2e')];if(!_0x3af894[_0x69b3('0x2f')]['hasOwnProperty'](_0x69b3('0x34'))){_0x3ee01e['limit']=qs[_0x69b3('0x1d')](_0x3af894[_0x69b3('0x2f')]['limit']);_0x3ee01e['offset']=qs[_0x69b3('0x1f')](_0x3af894[_0x69b3('0x2f')][_0x69b3('0x1f')]);}_0x3ee01e[_0x69b3('0x35')]=qs[_0x69b3('0x36')](_0x3af894[_0x69b3('0x2f')][_0x69b3('0x36')]);_0x3ee01e[_0x69b3('0x37')]=qs[_0x69b3('0x30')](_[_0x69b3('0x38')](_0x3af894[_0x69b3('0x2f')],_0x15b263['filters']),_0x7df094);if(_0x3af894['query'][_0x69b3('0x39')]){_0x3ee01e['where']=_[_0x69b3('0x3a')](_0x3ee01e[_0x69b3('0x37')],{'$or':_[_0x69b3('0x29')](_0x7df094,function(_0xa627d5){if(_0xa627d5[_0x69b3('0x3b')]!==_0x69b3('0x3c')){var _0x2a3e85={};_0x2a3e85[_0xa627d5[_0x69b3('0x26')]]={'$like':'%'+_0x3af894[_0x69b3('0x2f')][_0x69b3('0x39')]+'%'};return _0x2a3e85;}})});}_0x3ee01e=_[_0x69b3('0x3a')]({},_0x3ee01e,_0x3af894['options']);var _0x53c381={'where':_0x3ee01e[_0x69b3('0x37')]};return db[_0x69b3('0x2a')][_0x69b3('0x1e')](_0x53c381)['then'](function(_0x16581c){_0x4f78e6['count']=_0x16581c;if(_0x3af894[_0x69b3('0x2f')][_0x69b3('0x3d')]){_0x3ee01e[_0x69b3('0x3e')]=[{'all':!![]}];}return db[_0x69b3('0x2a')][_0x69b3('0x3f')](_0x3ee01e);})[_0x69b3('0x24')](function(_0x599432){_0x4f78e6[_0x69b3('0x40')]=_0x599432;return _0x4f78e6;})[_0x69b3('0x24')](respondWithFilteredResult(_0x5b7316,_0x3ee01e))[_0x69b3('0x41')](handleError(_0x5b7316,null));};exports['show']=function(_0x80fa22,_0x147c74){var _0x4974b6={'raw':!![],'where':{'id':_0x80fa22[_0x69b3('0x42')]['id']}},_0x42a80f={};_0x42a80f[_0x69b3('0x2e')]=_['keys'](db[_0x69b3('0x2a')][_0x69b3('0x2b')]);_0x42a80f[_0x69b3('0x2f')]=_['keys'](_0x80fa22[_0x69b3('0x2f')]);_0x42a80f[_0x69b3('0x30')]=_['intersection'](_0x42a80f['model'],_0x42a80f[_0x69b3('0x2f')]);_0x4974b6['attributes']=_[_0x69b3('0x31')](_0x42a80f['model'],qs[_0x69b3('0x43')](_0x80fa22[_0x69b3('0x2f')][_0x69b3('0x43')]));_0x4974b6[_0x69b3('0x32')]=_0x4974b6[_0x69b3('0x32')]['length']?_0x4974b6[_0x69b3('0x32')]:_0x42a80f['model'];if(_0x80fa22[_0x69b3('0x2f')][_0x69b3('0x3d')]){_0x4974b6[_0x69b3('0x3e')]=[{'all':!![]}];}_0x4974b6=_[_0x69b3('0x3a')]({},_0x4974b6,_0x80fa22[_0x69b3('0x44')]);return db[_0x69b3('0x2a')][_0x69b3('0x45')](_0x4974b6)[_0x69b3('0x24')](handleEntityNotFound(_0x147c74,null))[_0x69b3('0x24')](respondWithResult(_0x147c74,null))[_0x69b3('0x41')](handleError(_0x147c74,null));};exports['create']=function(_0x53b3e6,_0x379719){return db[_0x69b3('0x2a')][_0x69b3('0x46')](_0x53b3e6['body'],{})[_0x69b3('0x24')](respondWithResult(_0x379719,0xc9))[_0x69b3('0x41')](handleError(_0x379719,null));};exports['update']=function(_0x3cacc2,_0x2361e5){if(_0x3cacc2[_0x69b3('0x47')]['id']){delete _0x3cacc2[_0x69b3('0x47')]['id'];}return db[_0x69b3('0x2a')][_0x69b3('0x45')]({'where':{'id':_0x3cacc2['params']['id']}})['then'](handleEntityNotFound(_0x2361e5,null))[_0x69b3('0x24')](saveUpdates(_0x3cacc2[_0x69b3('0x47')],null))['then'](respondWithResult(_0x2361e5,null))['catch'](handleError(_0x2361e5,null));};exports[_0x69b3('0x48')]=function(_0x1e344a,_0x126dd2){return db[_0x69b3('0x2a')][_0x69b3('0x45')]({'where':{'id':_0x1e344a[_0x69b3('0x42')]['id']}})[_0x69b3('0x24')](handleEntityNotFound(_0x126dd2,null))[_0x69b3('0x24')](removeEntity(_0x126dd2,null))[_0x69b3('0x41')](handleError(_0x126dd2,null));};exports[_0x69b3('0x49')]=function(_0x3361aa,_0x27d33e){return db[_0x69b3('0x2a')][_0x69b3('0x49')]()['then'](respondWithResult(_0x27d33e,null))[_0x69b3('0x41')](handleError(_0x27d33e,null));};