636930a41b8f19f6f49f9c28ddfed7d35a810ca0
[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 _0x0a09=['apply','reject','save','update','then','end','error','stack','name','send','map','VoiceDialReport','rawAttributes','fieldName','model','query','keys','filters','intersection','attributes','fields','length','nolimit','order','sort','where','pick','merge','type','filter','options','includeAll','include','findAll','rows','catch','show','params','create','body','find','destroy','describe','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','util','path','to-csv','ejs','lodash','squel','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','count','offset','limit','Content-Range','json'];(function(_0x52184c,_0x3576ee){var _0x553d2e=function(_0x37ade2){while(--_0x37ade2){_0x52184c['push'](_0x52184c['shift']());}};_0x553d2e(++_0x3576ee);}(_0x0a09,0x1ed));var _0x90a0=function(_0x4c260a,_0x148241){_0x4c260a=_0x4c260a-0x0;var _0x17bbdd=_0x0a09[_0x4c260a];return _0x17bbdd;};'use strict';var pdf=require(_0x90a0('0x0'));var emlformat=require(_0x90a0('0x1'));var rimraf=require(_0x90a0('0x2'));var zipdir=require(_0x90a0('0x3'));var jsonpatch=require(_0x90a0('0x4'));var rp=require(_0x90a0('0x5'));var moment=require('moment');var BPromise=require(_0x90a0('0x6'));var Mustache=require('mustache');var util=require(_0x90a0('0x7'));var path=require(_0x90a0('0x8'));var sox=require('sox');var csv=require(_0x90a0('0x9'));var ejs=require(_0x90a0('0xa'));var fs=require('fs');var _=require(_0x90a0('0xb'));var squel=require(_0x90a0('0xc'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x90a0('0xd'));var toCsv=require(_0x90a0('0x9'));var querystring=require(_0x90a0('0xe'));var Papa=require(_0x90a0('0xf'));var Redis=require(_0x90a0('0x10'));var authService=require(_0x90a0('0x11'));var qs=require(_0x90a0('0x12'));var as=require(_0x90a0('0x13'));var hardwareService=require(_0x90a0('0x14'));var logger=require('../../config/logger')(_0x90a0('0x15'));var utils=require(_0x90a0('0x16'));var config=require(_0x90a0('0x17'));var licenseUtil=require('../../config/license/util');var db=require(_0x90a0('0x18'))['db'];function respondWithStatusCode(_0x455c38,_0x25475c){_0x25475c=_0x25475c||0xcc;return function(_0x2b16a0){if(_0x2b16a0){return _0x455c38[_0x90a0('0x19')](_0x25475c);}return _0x455c38[_0x90a0('0x1a')](_0x25475c)['end']();};}function respondWithResult(_0xe05726,_0x26313a){_0x26313a=_0x26313a||0xc8;return function(_0x4d5a08){if(_0x4d5a08){return _0xe05726[_0x90a0('0x1a')](_0x26313a)['json'](_0x4d5a08);}};}function respondWithFilteredResult(_0x5db5dd,_0x2406f4){return function(_0x235d19){if(_0x235d19){var _0x347666=_0x235d19[_0x90a0('0x1b')],_0xbfff86=_0x2406f4[_0x90a0('0x1c')],_0x4ce4db=_0x2406f4['offset']+_0x2406f4[_0x90a0('0x1d')],_0x3d66b3;if(_0x4ce4db>=_0x347666){_0x4ce4db=_0x347666;_0x3d66b3=0xc8;}else{_0x3d66b3=0xce;}_0x5db5dd[_0x90a0('0x1a')](_0x3d66b3);return _0x5db5dd['set'](_0x90a0('0x1e'),_0xbfff86+'-'+_0x4ce4db+'/'+_0x347666)[_0x90a0('0x1f')](_0x235d19);}return null;};}function patchUpdates(_0x3ad430){return function(_0x18125a){try{jsonpatch[_0x90a0('0x20')](_0x18125a,_0x3ad430,!![]);}catch(_0x55838a){return BPromise[_0x90a0('0x21')](_0x55838a);}return _0x18125a[_0x90a0('0x22')]();};}function saveUpdates(_0x444581,_0x4ed43f){return function(_0x1cb517){if(_0x1cb517){return _0x1cb517[_0x90a0('0x23')](_0x444581)[_0x90a0('0x24')](function(_0xc664e1){return _0xc664e1;});}return null;};}function removeEntity(_0x16d0bc,_0x42acf2){return function(_0x26d66b){if(_0x26d66b){return _0x26d66b['destroy']()[_0x90a0('0x24')](function(){_0x16d0bc[_0x90a0('0x1a')](0xcc)[_0x90a0('0x25')]();});}};}function handleEntityNotFound(_0x3106eb,_0x470c2e){return function(_0x1ca192){if(!_0x1ca192){_0x3106eb[_0x90a0('0x19')](0x194);}return _0x1ca192;};}function handleError(_0x4e10c5,_0x44fe1c){_0x44fe1c=_0x44fe1c||0x1f4;return function(_0x179f6a){logger[_0x90a0('0x26')](_0x179f6a[_0x90a0('0x27')]);if(_0x179f6a[_0x90a0('0x28')]){delete _0x179f6a['name'];}_0x4e10c5[_0x90a0('0x1a')](_0x44fe1c)[_0x90a0('0x29')](_0x179f6a);};}exports['index']=function(_0x6d57b8,_0x208763){var _0x1256fb={},_0x49938a={},_0x31d132={'count':0x0,'rows':[]};var _0x5a588e=_[_0x90a0('0x2a')](db[_0x90a0('0x2b')][_0x90a0('0x2c')],function(_0x486b7e){return{'name':_0x486b7e[_0x90a0('0x2d')],'type':_0x486b7e['type']['key']};});_0x49938a[_0x90a0('0x2e')]=_[_0x90a0('0x2a')](_0x5a588e,_0x90a0('0x28'));_0x49938a[_0x90a0('0x2f')]=_[_0x90a0('0x30')](_0x6d57b8[_0x90a0('0x2f')]);_0x49938a[_0x90a0('0x31')]=_[_0x90a0('0x32')](_0x49938a['model'],_0x49938a[_0x90a0('0x2f')]);_0x1256fb[_0x90a0('0x33')]=_[_0x90a0('0x32')](_0x49938a['model'],qs[_0x90a0('0x34')](_0x6d57b8[_0x90a0('0x2f')][_0x90a0('0x34')]));_0x1256fb[_0x90a0('0x33')]=_0x1256fb[_0x90a0('0x33')][_0x90a0('0x35')]?_0x1256fb[_0x90a0('0x33')]:_0x49938a[_0x90a0('0x2e')];if(!_0x6d57b8[_0x90a0('0x2f')]['hasOwnProperty'](_0x90a0('0x36'))){_0x1256fb[_0x90a0('0x1d')]=qs[_0x90a0('0x1d')](_0x6d57b8['query']['limit']);_0x1256fb[_0x90a0('0x1c')]=qs[_0x90a0('0x1c')](_0x6d57b8[_0x90a0('0x2f')][_0x90a0('0x1c')]);}_0x1256fb[_0x90a0('0x37')]=qs[_0x90a0('0x38')](_0x6d57b8[_0x90a0('0x2f')]['sort']);_0x1256fb[_0x90a0('0x39')]=qs[_0x90a0('0x31')](_[_0x90a0('0x3a')](_0x6d57b8[_0x90a0('0x2f')],_0x49938a['filters']),_0x5a588e);if(_0x6d57b8[_0x90a0('0x2f')]['filter']){_0x1256fb['where']=_[_0x90a0('0x3b')](_0x1256fb[_0x90a0('0x39')],{'$or':_[_0x90a0('0x2a')](_0x5a588e,function(_0x4bd328){if(_0x4bd328[_0x90a0('0x3c')]!=='VIRTUAL'){var _0x16ba65={};_0x16ba65[_0x4bd328[_0x90a0('0x28')]]={'$like':'%'+_0x6d57b8['query'][_0x90a0('0x3d')]+'%'};return _0x16ba65;}})});}_0x1256fb=_['merge']({},_0x1256fb,_0x6d57b8[_0x90a0('0x3e')]);var _0x357ca2={'where':_0x1256fb[_0x90a0('0x39')]};return db['VoiceDialReport']['count'](_0x357ca2)[_0x90a0('0x24')](function(_0x226f22){_0x31d132['count']=_0x226f22;if(_0x6d57b8[_0x90a0('0x2f')][_0x90a0('0x3f')]){_0x1256fb[_0x90a0('0x40')]=[{'all':!![]}];}return db[_0x90a0('0x2b')][_0x90a0('0x41')](_0x1256fb);})[_0x90a0('0x24')](function(_0x3807d6){_0x31d132[_0x90a0('0x42')]=_0x3807d6;return _0x31d132;})[_0x90a0('0x24')](respondWithFilteredResult(_0x208763,_0x1256fb))[_0x90a0('0x43')](handleError(_0x208763,null));};exports[_0x90a0('0x44')]=function(_0x93c595,_0xf48b9f){var _0x5ec788={'raw':!![],'where':{'id':_0x93c595[_0x90a0('0x45')]['id']}},_0x5e7ac2={};_0x5e7ac2[_0x90a0('0x2e')]=_['keys'](db['VoiceDialReport'][_0x90a0('0x2c')]);_0x5e7ac2['query']=_[_0x90a0('0x30')](_0x93c595['query']);_0x5e7ac2[_0x90a0('0x31')]=_[_0x90a0('0x32')](_0x5e7ac2[_0x90a0('0x2e')],_0x5e7ac2[_0x90a0('0x2f')]);_0x5ec788[_0x90a0('0x33')]=_[_0x90a0('0x32')](_0x5e7ac2['model'],qs[_0x90a0('0x34')](_0x93c595[_0x90a0('0x2f')]['fields']));_0x5ec788[_0x90a0('0x33')]=_0x5ec788[_0x90a0('0x33')][_0x90a0('0x35')]?_0x5ec788[_0x90a0('0x33')]:_0x5e7ac2['model'];if(_0x93c595[_0x90a0('0x2f')][_0x90a0('0x3f')]){_0x5ec788[_0x90a0('0x40')]=[{'all':!![]}];}_0x5ec788=_[_0x90a0('0x3b')]({},_0x5ec788,_0x93c595['options']);return db[_0x90a0('0x2b')]['find'](_0x5ec788)[_0x90a0('0x24')](handleEntityNotFound(_0xf48b9f,null))['then'](respondWithResult(_0xf48b9f,null))[_0x90a0('0x43')](handleError(_0xf48b9f,null));};exports[_0x90a0('0x46')]=function(_0x500d9b,_0x10af49){return db['VoiceDialReport'][_0x90a0('0x46')](_0x500d9b[_0x90a0('0x47')],{})[_0x90a0('0x24')](respondWithResult(_0x10af49,0xc9))[_0x90a0('0x43')](handleError(_0x10af49,null));};exports[_0x90a0('0x23')]=function(_0x40d8ba,_0x5d2411){if(_0x40d8ba[_0x90a0('0x47')]['id']){delete _0x40d8ba[_0x90a0('0x47')]['id'];}return db['VoiceDialReport'][_0x90a0('0x48')]({'where':{'id':_0x40d8ba['params']['id']}})[_0x90a0('0x24')](handleEntityNotFound(_0x5d2411,null))[_0x90a0('0x24')](saveUpdates(_0x40d8ba[_0x90a0('0x47')],null))[_0x90a0('0x24')](respondWithResult(_0x5d2411,null))[_0x90a0('0x43')](handleError(_0x5d2411,null));};exports[_0x90a0('0x49')]=function(_0x19dc2b,_0xf0ad0b){return db[_0x90a0('0x2b')][_0x90a0('0x48')]({'where':{'id':_0x19dc2b[_0x90a0('0x45')]['id']}})[_0x90a0('0x24')](handleEntityNotFound(_0xf0ad0b,null))[_0x90a0('0x24')](removeEntity(_0xf0ad0b,null))[_0x90a0('0x43')](handleError(_0xf0ad0b,null));};exports['describe']=function(_0x8ac663,_0x38e23d){return db[_0x90a0('0x2b')][_0x90a0('0x4a')]()[_0x90a0('0x24')](respondWithResult(_0x38e23d,null))[_0x90a0('0x43')](handleError(_0x38e23d,null));};