Built motion from commit 497d3d92.|2.5.43
[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 _0x3043=['util','path','to-csv','ejs','fs-extra','lodash','crypto','jsforce','querystring','papaparse','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','sendStatus','status','end','json','offset','undefined','count','limit','set','apply','reject','save','then','error','stack','name','send','VoiceDialReport','rawAttributes','type','key','map','query','keys','filters','intersection','attributes','model','fields','hasOwnProperty','nolimit','sort','where','pick','filter','merge','options','includeAll','include','findAll','rows','show','length','find','create','body','catch','params','destroy','describe','eml-format','zip-dir','fast-json-patch','request-promise','mustache'];(function(_0x472684,_0x49f5c7){var _0x4f5fd4=function(_0x510ce2){while(--_0x510ce2){_0x472684['push'](_0x472684['shift']());}};_0x4f5fd4(++_0x49f5c7);}(_0x3043,0x1ab));var _0x3304=function(_0x199572,_0x33e667){_0x199572=_0x199572-0x0;var _0x13cfa3=_0x3043[_0x199572];return _0x13cfa3;};'use strict';var emlformat=require(_0x3304('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x3304('0x1'));var jsonpatch=require(_0x3304('0x2'));var rp=require(_0x3304('0x3'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x3304('0x4'));var util=require(_0x3304('0x5'));var path=require(_0x3304('0x6'));var sox=require('sox');var csv=require(_0x3304('0x7'));var ejs=require(_0x3304('0x8'));var fs=require('fs');var fs_extra=require(_0x3304('0x9'));var _=require(_0x3304('0xa'));var squel=require('squel');var crypto=require(_0x3304('0xb'));var jsforce=require(_0x3304('0xc'));var deskjs=require('desk.js');var toCsv=require(_0x3304('0x7'));var querystring=require(_0x3304('0xd'));var Papa=require(_0x3304('0xe'));var Redis=require('ioredis');var authService=require(_0x3304('0xf'));var qs=require('../../components/parsers/qs');var as=require(_0x3304('0x10'));var hardwareService=require(_0x3304('0x11'));var logger=require(_0x3304('0x12'))(_0x3304('0x13'));var utils=require(_0x3304('0x14'));var config=require(_0x3304('0x15'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x3e81db,_0x3291b7){_0x3291b7=_0x3291b7||0xcc;return function(_0x400a6c){if(_0x400a6c){return _0x3e81db[_0x3304('0x16')](_0x3291b7);}return _0x3e81db[_0x3304('0x17')](_0x3291b7)[_0x3304('0x18')]();};}function respondWithResult(_0x4e03c6,_0x25015f){_0x25015f=_0x25015f||0xc8;return function(_0x216976){if(_0x216976){return _0x4e03c6[_0x3304('0x17')](_0x25015f)[_0x3304('0x19')](_0x216976);}};}function respondWithFilteredResult(_0x22676f,_0x3016e0){return function(_0x583f9d){if(_0x583f9d){var _0x4e507f=typeof _0x3016e0[_0x3304('0x1a')]===_0x3304('0x1b')&&typeof _0x3016e0['limit']===_0x3304('0x1b');var _0x20956c=_0x583f9d['count'];var _0x327302=_0x4e507f?0x0:_0x3016e0[_0x3304('0x1a')];var _0xe157d8=_0x4e507f?_0x583f9d[_0x3304('0x1c')]:_0x3016e0[_0x3304('0x1a')]+_0x3016e0[_0x3304('0x1d')];var _0x480855;if(_0xe157d8>=_0x20956c){_0xe157d8=_0x20956c;_0x480855=0xc8;}else{_0x480855=0xce;}_0x22676f[_0x3304('0x17')](_0x480855);return _0x22676f[_0x3304('0x1e')]('Content-Range',_0x327302+'-'+_0xe157d8+'/'+_0x20956c)[_0x3304('0x19')](_0x583f9d);}return null;};}function patchUpdates(_0x24b26d){return function(_0x85d492){try{jsonpatch[_0x3304('0x1f')](_0x85d492,_0x24b26d,!![]);}catch(_0x46454b){return BPromise[_0x3304('0x20')](_0x46454b);}return _0x85d492[_0x3304('0x21')]();};}function saveUpdates(_0x3dc7d8,_0x28ceed){return function(_0x4754d7){if(_0x4754d7){return _0x4754d7['update'](_0x3dc7d8)[_0x3304('0x22')](function(_0x296fe1){return _0x296fe1;});}return null;};}function removeEntity(_0x578162,_0x128c56){return function(_0x17b5da){if(_0x17b5da){return _0x17b5da['destroy']()[_0x3304('0x22')](function(){_0x578162[_0x3304('0x17')](0xcc)[_0x3304('0x18')]();});}};}function handleEntityNotFound(_0x179bdc,_0x47589a){return function(_0x36e73a){if(!_0x36e73a){_0x179bdc['sendStatus'](0x194);}return _0x36e73a;};}function handleError(_0x5d8ea0,_0x77a810){_0x77a810=_0x77a810||0x1f4;return function(_0x36d290){logger[_0x3304('0x23')](_0x36d290[_0x3304('0x24')]);if(_0x36d290[_0x3304('0x25')]){delete _0x36d290[_0x3304('0x25')];}_0x5d8ea0[_0x3304('0x17')](_0x77a810)[_0x3304('0x26')](_0x36d290);};}exports['index']=function(_0x4bda48,_0x22450e){var _0x3b5240={},_0x1d8a6c={},_0x2df51a={'count':0x0,'rows':[]};var _0x2382f4=_['map'](db[_0x3304('0x27')][_0x3304('0x28')],function(_0x384171){return{'name':_0x384171['fieldName'],'type':_0x384171[_0x3304('0x29')][_0x3304('0x2a')]};});_0x1d8a6c['model']=_[_0x3304('0x2b')](_0x2382f4,'name');_0x1d8a6c[_0x3304('0x2c')]=_[_0x3304('0x2d')](_0x4bda48[_0x3304('0x2c')]);_0x1d8a6c[_0x3304('0x2e')]=_[_0x3304('0x2f')](_0x1d8a6c['model'],_0x1d8a6c[_0x3304('0x2c')]);_0x3b5240[_0x3304('0x30')]=_[_0x3304('0x2f')](_0x1d8a6c[_0x3304('0x31')],qs['fields'](_0x4bda48[_0x3304('0x2c')][_0x3304('0x32')]));_0x3b5240[_0x3304('0x30')]=_0x3b5240[_0x3304('0x30')]['length']?_0x3b5240[_0x3304('0x30')]:_0x1d8a6c[_0x3304('0x31')];if(!_0x4bda48[_0x3304('0x2c')][_0x3304('0x33')](_0x3304('0x34'))){_0x3b5240['limit']=qs[_0x3304('0x1d')](_0x4bda48[_0x3304('0x2c')][_0x3304('0x1d')]);_0x3b5240[_0x3304('0x1a')]=qs['offset'](_0x4bda48[_0x3304('0x2c')][_0x3304('0x1a')]);}_0x3b5240['order']=qs[_0x3304('0x35')](_0x4bda48[_0x3304('0x2c')][_0x3304('0x35')]);_0x3b5240[_0x3304('0x36')]=qs[_0x3304('0x2e')](_[_0x3304('0x37')](_0x4bda48[_0x3304('0x2c')],_0x1d8a6c[_0x3304('0x2e')]),_0x2382f4);if(_0x4bda48[_0x3304('0x2c')][_0x3304('0x38')]){_0x3b5240[_0x3304('0x36')]=_[_0x3304('0x39')](_0x3b5240['where'],{'$or':_[_0x3304('0x2b')](_0x2382f4,function(_0x2a4fdc){if(_0x2a4fdc[_0x3304('0x29')]!=='VIRTUAL'){var _0x1ccf45={};_0x1ccf45[_0x2a4fdc[_0x3304('0x25')]]={'$like':'%'+_0x4bda48[_0x3304('0x2c')][_0x3304('0x38')]+'%'};return _0x1ccf45;}})});}_0x3b5240=_[_0x3304('0x39')]({},_0x3b5240,_0x4bda48[_0x3304('0x3a')]);var _0x34bf1c={'where':_0x3b5240[_0x3304('0x36')]};return db[_0x3304('0x27')]['count'](_0x34bf1c)['then'](function(_0x527a36){_0x2df51a[_0x3304('0x1c')]=_0x527a36;if(_0x4bda48[_0x3304('0x2c')][_0x3304('0x3b')]){_0x3b5240[_0x3304('0x3c')]=[{'all':!![]}];}return db[_0x3304('0x27')][_0x3304('0x3d')](_0x3b5240);})[_0x3304('0x22')](function(_0x574ca8){_0x2df51a[_0x3304('0x3e')]=_0x574ca8;return _0x2df51a;})['then'](respondWithFilteredResult(_0x22450e,_0x3b5240))['catch'](handleError(_0x22450e,null));};exports[_0x3304('0x3f')]=function(_0x35deee,_0x2b6402){var _0x17f598={'raw':!![],'where':{'id':_0x35deee['params']['id']}},_0x1080b4={};_0x1080b4[_0x3304('0x31')]=_['keys'](db['VoiceDialReport'][_0x3304('0x28')]);_0x1080b4[_0x3304('0x2c')]=_[_0x3304('0x2d')](_0x35deee[_0x3304('0x2c')]);_0x1080b4[_0x3304('0x2e')]=_['intersection'](_0x1080b4[_0x3304('0x31')],_0x1080b4['query']);_0x17f598['attributes']=_[_0x3304('0x2f')](_0x1080b4[_0x3304('0x31')],qs[_0x3304('0x32')](_0x35deee[_0x3304('0x2c')][_0x3304('0x32')]));_0x17f598[_0x3304('0x30')]=_0x17f598['attributes'][_0x3304('0x40')]?_0x17f598[_0x3304('0x30')]:_0x1080b4[_0x3304('0x31')];if(_0x35deee[_0x3304('0x2c')][_0x3304('0x3b')]){_0x17f598[_0x3304('0x3c')]=[{'all':!![]}];}_0x17f598=_['merge']({},_0x17f598,_0x35deee[_0x3304('0x3a')]);return db[_0x3304('0x27')][_0x3304('0x41')](_0x17f598)['then'](handleEntityNotFound(_0x2b6402,null))[_0x3304('0x22')](respondWithResult(_0x2b6402,null))['catch'](handleError(_0x2b6402,null));};exports[_0x3304('0x42')]=function(_0x334b2c,_0x2a55d8){return db[_0x3304('0x27')][_0x3304('0x42')](_0x334b2c[_0x3304('0x43')],{})[_0x3304('0x22')](respondWithResult(_0x2a55d8,0xc9))[_0x3304('0x44')](handleError(_0x2a55d8,null));};exports['update']=function(_0x52ccb0,_0x31e38b){if(_0x52ccb0[_0x3304('0x43')]['id']){delete _0x52ccb0[_0x3304('0x43')]['id'];}return db['VoiceDialReport'][_0x3304('0x41')]({'where':{'id':_0x52ccb0[_0x3304('0x45')]['id']}})[_0x3304('0x22')](handleEntityNotFound(_0x31e38b,null))[_0x3304('0x22')](saveUpdates(_0x52ccb0[_0x3304('0x43')],null))[_0x3304('0x22')](respondWithResult(_0x31e38b,null))[_0x3304('0x44')](handleError(_0x31e38b,null));};exports[_0x3304('0x46')]=function(_0x3f81fd,_0x20e05a){return db[_0x3304('0x27')][_0x3304('0x41')]({'where':{'id':_0x3f81fd[_0x3304('0x45')]['id']}})[_0x3304('0x22')](handleEntityNotFound(_0x20e05a,null))['then'](removeEntity(_0x20e05a,null))[_0x3304('0x44')](handleError(_0x20e05a,null));};exports[_0x3304('0x47')]=function(_0x3ac018,_0x234eb3){return db[_0x3304('0x27')][_0x3304('0x47')]()['then'](respondWithResult(_0x234eb3,null))[_0x3304('0x44')](handleError(_0x234eb3,null));};