Built motion from commit 167bccf5.|2.6.7
[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 _0xfd9a=['set','Content-Range','json','reject','update','then','destroy','sendStatus','stack','name','send','VoiceDialReport','fieldName','type','key','model','map','keys','query','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','where','filters','pick','filter','VIRTUAL','merge','options','findAll','catch','params','includeAll','include','find','create','body','describe','rimraf','zip-dir','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','end','offset','limit','undefined','count'];(function(_0x4cff96,_0x584782){var _0x39dd96=function(_0x4655fd){while(--_0x4655fd){_0x4cff96['push'](_0x4cff96['shift']());}};_0x39dd96(++_0x584782);}(_0xfd9a,0x108));var _0xafd9=function(_0x150ee9,_0x14dcd0){_0x150ee9=_0x150ee9-0x0;var _0x39d181=_0xfd9a[_0x150ee9];return _0x39d181;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xafd9('0x0'));var zipdir=require(_0xafd9('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0xafd9('0x2'));var moment=require(_0xafd9('0x3'));var BPromise=require(_0xafd9('0x4'));var Mustache=require(_0xafd9('0x5'));var util=require(_0xafd9('0x6'));var path=require(_0xafd9('0x7'));var sox=require(_0xafd9('0x8'));var csv=require(_0xafd9('0x9'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xafd9('0xa'));var squel=require(_0xafd9('0xb'));var crypto=require(_0xafd9('0xc'));var jsforce=require(_0xafd9('0xd'));var deskjs=require(_0xafd9('0xe'));var toCsv=require(_0xafd9('0x9'));var querystring=require(_0xafd9('0xf'));var Papa=require(_0xafd9('0x10'));var Redis=require(_0xafd9('0x11'));var authService=require(_0xafd9('0x12'));var qs=require(_0xafd9('0x13'));var as=require(_0xafd9('0x14'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xafd9('0x15'))('api');var utils=require(_0xafd9('0x16'));var config=require(_0xafd9('0x17'));var licenseUtil=require(_0xafd9('0x18'));var db=require(_0xafd9('0x19'))['db'];function respondWithStatusCode(_0x1412ad,_0x3acbf4){_0x3acbf4=_0x3acbf4||0xcc;return function(_0x17a955){if(_0x17a955){return _0x1412ad['sendStatus'](_0x3acbf4);}return _0x1412ad[_0xafd9('0x1a')](_0x3acbf4)[_0xafd9('0x1b')]();};}function respondWithResult(_0x27e5c3,_0x4012cf){_0x4012cf=_0x4012cf||0xc8;return function(_0x233e65){if(_0x233e65){return _0x27e5c3[_0xafd9('0x1a')](_0x4012cf)['json'](_0x233e65);}};}function respondWithFilteredResult(_0x1fd547,_0x3c52a0){return function(_0xe2c173){if(_0xe2c173){var _0x573b4b=typeof _0x3c52a0[_0xafd9('0x1c')]==='undefined'&&typeof _0x3c52a0[_0xafd9('0x1d')]===_0xafd9('0x1e');var _0x4e6220=_0xe2c173[_0xafd9('0x1f')];var _0x38866b=_0x573b4b?0x0:_0x3c52a0[_0xafd9('0x1c')];var _0x57dabd=_0x573b4b?_0xe2c173['count']:_0x3c52a0['offset']+_0x3c52a0[_0xafd9('0x1d')];var _0x2904f9;if(_0x57dabd>=_0x4e6220){_0x57dabd=_0x4e6220;_0x2904f9=0xc8;}else{_0x2904f9=0xce;}_0x1fd547[_0xafd9('0x1a')](_0x2904f9);return _0x1fd547[_0xafd9('0x20')](_0xafd9('0x21'),_0x38866b+'-'+_0x57dabd+'/'+_0x4e6220)[_0xafd9('0x22')](_0xe2c173);}return null;};}function patchUpdates(_0x48eb04){return function(_0x325bdd){try{jsonpatch['apply'](_0x325bdd,_0x48eb04,!![]);}catch(_0x517df0){return BPromise[_0xafd9('0x23')](_0x517df0);}return _0x325bdd['save']();};}function saveUpdates(_0x3ef156,_0x44da1d){return function(_0x21d5cd){if(_0x21d5cd){return _0x21d5cd[_0xafd9('0x24')](_0x3ef156)[_0xafd9('0x25')](function(_0xb295bc){return _0xb295bc;});}return null;};}function removeEntity(_0x45a528,_0x36e04d){return function(_0x50a32a){if(_0x50a32a){return _0x50a32a[_0xafd9('0x26')]()['then'](function(){_0x45a528['status'](0xcc)[_0xafd9('0x1b')]();});}};}function handleEntityNotFound(_0x559603,_0x435f4a){return function(_0x18b537){if(!_0x18b537){_0x559603[_0xafd9('0x27')](0x194);}return _0x18b537;};}function handleError(_0x47d312,_0x15c790){_0x15c790=_0x15c790||0x1f4;return function(_0x46d2cb){logger['error'](_0x46d2cb[_0xafd9('0x28')]);if(_0x46d2cb[_0xafd9('0x29')]){delete _0x46d2cb[_0xafd9('0x29')];}_0x47d312[_0xafd9('0x1a')](_0x15c790)[_0xafd9('0x2a')](_0x46d2cb);};}exports['index']=function(_0x2b73ce,_0x97c5a5){var _0x380cdd={},_0x1f4d8a={},_0x327b12={'count':0x0,'rows':[]};var _0x163efe=_['map'](db[_0xafd9('0x2b')]['rawAttributes'],function(_0x2cf79b){return{'name':_0x2cf79b[_0xafd9('0x2c')],'type':_0x2cf79b[_0xafd9('0x2d')][_0xafd9('0x2e')]};});_0x1f4d8a[_0xafd9('0x2f')]=_[_0xafd9('0x30')](_0x163efe,_0xafd9('0x29'));_0x1f4d8a['query']=_[_0xafd9('0x31')](_0x2b73ce[_0xafd9('0x32')]);_0x1f4d8a['filters']=_[_0xafd9('0x33')](_0x1f4d8a[_0xafd9('0x2f')],_0x1f4d8a[_0xafd9('0x32')]);_0x380cdd[_0xafd9('0x34')]=_['intersection'](_0x1f4d8a[_0xafd9('0x2f')],qs[_0xafd9('0x35')](_0x2b73ce[_0xafd9('0x32')]['fields']));_0x380cdd[_0xafd9('0x34')]=_0x380cdd[_0xafd9('0x34')][_0xafd9('0x36')]?_0x380cdd[_0xafd9('0x34')]:_0x1f4d8a[_0xafd9('0x2f')];if(!_0x2b73ce[_0xafd9('0x32')][_0xafd9('0x37')](_0xafd9('0x38'))){_0x380cdd[_0xafd9('0x1d')]=qs[_0xafd9('0x1d')](_0x2b73ce[_0xafd9('0x32')][_0xafd9('0x1d')]);_0x380cdd[_0xafd9('0x1c')]=qs[_0xafd9('0x1c')](_0x2b73ce[_0xafd9('0x32')][_0xafd9('0x1c')]);}_0x380cdd['order']=qs['sort'](_0x2b73ce[_0xafd9('0x32')][_0xafd9('0x39')]);_0x380cdd[_0xafd9('0x3a')]=qs[_0xafd9('0x3b')](_[_0xafd9('0x3c')](_0x2b73ce[_0xafd9('0x32')],_0x1f4d8a[_0xafd9('0x3b')]),_0x163efe);if(_0x2b73ce['query'][_0xafd9('0x3d')]){_0x380cdd['where']=_['merge'](_0x380cdd[_0xafd9('0x3a')],{'$or':_['map'](_0x163efe,function(_0x3c88a7){if(_0x3c88a7['type']!==_0xafd9('0x3e')){var _0x52c0b={};_0x52c0b[_0x3c88a7[_0xafd9('0x29')]]={'$like':'%'+_0x2b73ce[_0xafd9('0x32')][_0xafd9('0x3d')]+'%'};return _0x52c0b;}})});}_0x380cdd=_[_0xafd9('0x3f')]({},_0x380cdd,_0x2b73ce[_0xafd9('0x40')]);var _0x47ddb={'where':_0x380cdd[_0xafd9('0x3a')]};return db[_0xafd9('0x2b')][_0xafd9('0x1f')](_0x47ddb)[_0xafd9('0x25')](function(_0x271e5a){_0x327b12[_0xafd9('0x1f')]=_0x271e5a;if(_0x2b73ce[_0xafd9('0x32')]['includeAll']){_0x380cdd['include']=[{'all':!![]}];}return db[_0xafd9('0x2b')][_0xafd9('0x41')](_0x380cdd);})[_0xafd9('0x25')](function(_0x4f7363){_0x327b12['rows']=_0x4f7363;return _0x327b12;})[_0xafd9('0x25')](respondWithFilteredResult(_0x97c5a5,_0x380cdd))[_0xafd9('0x42')](handleError(_0x97c5a5,null));};exports['show']=function(_0x57311f,_0x51754b){var _0x38afb3={'raw':!![],'where':{'id':_0x57311f[_0xafd9('0x43')]['id']}},_0xba3e8d={};_0xba3e8d[_0xafd9('0x2f')]=_[_0xafd9('0x31')](db[_0xafd9('0x2b')]['rawAttributes']);_0xba3e8d[_0xafd9('0x32')]=_[_0xafd9('0x31')](_0x57311f[_0xafd9('0x32')]);_0xba3e8d[_0xafd9('0x3b')]=_[_0xafd9('0x33')](_0xba3e8d[_0xafd9('0x2f')],_0xba3e8d[_0xafd9('0x32')]);_0x38afb3[_0xafd9('0x34')]=_[_0xafd9('0x33')](_0xba3e8d['model'],qs[_0xafd9('0x35')](_0x57311f[_0xafd9('0x32')][_0xafd9('0x35')]));_0x38afb3[_0xafd9('0x34')]=_0x38afb3[_0xafd9('0x34')][_0xafd9('0x36')]?_0x38afb3[_0xafd9('0x34')]:_0xba3e8d[_0xafd9('0x2f')];if(_0x57311f[_0xafd9('0x32')][_0xafd9('0x44')]){_0x38afb3[_0xafd9('0x45')]=[{'all':!![]}];}_0x38afb3=_['merge']({},_0x38afb3,_0x57311f[_0xafd9('0x40')]);return db[_0xafd9('0x2b')][_0xafd9('0x46')](_0x38afb3)[_0xafd9('0x25')](handleEntityNotFound(_0x51754b,null))[_0xafd9('0x25')](respondWithResult(_0x51754b,null))[_0xafd9('0x42')](handleError(_0x51754b,null));};exports[_0xafd9('0x47')]=function(_0xc2a75e,_0x3ea064){return db[_0xafd9('0x2b')][_0xafd9('0x47')](_0xc2a75e[_0xafd9('0x48')],{})[_0xafd9('0x25')](respondWithResult(_0x3ea064,0xc9))['catch'](handleError(_0x3ea064,null));};exports[_0xafd9('0x24')]=function(_0xb5d96d,_0x5bd8df){if(_0xb5d96d[_0xafd9('0x48')]['id']){delete _0xb5d96d['body']['id'];}return db[_0xafd9('0x2b')][_0xafd9('0x46')]({'where':{'id':_0xb5d96d[_0xafd9('0x43')]['id']}})['then'](handleEntityNotFound(_0x5bd8df,null))[_0xafd9('0x25')](saveUpdates(_0xb5d96d['body'],null))['then'](respondWithResult(_0x5bd8df,null))[_0xafd9('0x42')](handleError(_0x5bd8df,null));};exports[_0xafd9('0x26')]=function(_0x319a22,_0x30e658){return db['VoiceDialReport'][_0xafd9('0x46')]({'where':{'id':_0x319a22[_0xafd9('0x43')]['id']}})['then'](handleEntityNotFound(_0x30e658,null))[_0xafd9('0x25')](removeEntity(_0x30e658,null))[_0xafd9('0x42')](handleError(_0x30e658,null));};exports[_0xafd9('0x49')]=function(_0x205fc0,_0x23dcba){return db[_0xafd9('0x2b')][_0xafd9('0x49')]()[_0xafd9('0x25')](respondWithResult(_0x23dcba,null))[_0xafd9('0x42')](handleError(_0x23dcba,null));};