Built motion from commit (unavailable).|2.5.27
[motion2.git] / server / api / voiceAgentReport / voiceAgentReport.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 _0xbf1c=['../../config/logger','../../config/utils','../../mysqldb','sendStatus','count','offset','limit','status','set','Content-Range','json','save','then','destroy','error','name','index','map','VoiceAgentReport','rawAttributes','fieldName','key','model','query','keys','intersection','attributes','length','hasOwnProperty','order','sort','where','pick','filters','filter','merge','type','options','include','rows','show','fields','includeAll','find','catch','create','body','update','params','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','path','sox','ejs','fs-extra','squel','jsforce','desk.js','to-csv','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware'];(function(_0x36c00c,_0x4d381d){var _0x53c15e=function(_0x23cc21){while(--_0x23cc21){_0x36c00c['push'](_0x36c00c['shift']());}};_0x53c15e(++_0x4d381d);}(_0xbf1c,0x77));var _0xcbf1=function(_0x1b9911,_0x5015e1){_0x1b9911=_0x1b9911-0x0;var _0x4bbd04=_0xbf1c[_0x1b9911];return _0x4bbd04;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xcbf1('0x0'));var zipdir=require(_0xcbf1('0x1'));var jsonpatch=require(_0xcbf1('0x2'));var rp=require(_0xcbf1('0x3'));var moment=require(_0xcbf1('0x4'));var BPromise=require(_0xcbf1('0x5'));var Mustache=require(_0xcbf1('0x6'));var util=require('util');var path=require(_0xcbf1('0x7'));var sox=require(_0xcbf1('0x8'));var csv=require('to-csv');var ejs=require(_0xcbf1('0x9'));var fs=require('fs');var fs_extra=require(_0xcbf1('0xa'));var _=require('lodash');var squel=require(_0xcbf1('0xb'));var crypto=require('crypto');var jsforce=require(_0xcbf1('0xc'));var deskjs=require(_0xcbf1('0xd'));var toCsv=require(_0xcbf1('0xe'));var querystring=require(_0xcbf1('0xf'));var Papa=require(_0xcbf1('0x10'));var Redis=require('ioredis');var authService=require(_0xcbf1('0x11'));var qs=require(_0xcbf1('0x12'));var as=require(_0xcbf1('0x13'));var hardwareService=require(_0xcbf1('0x14'));var logger=require(_0xcbf1('0x15'))('api');var utils=require(_0xcbf1('0x16'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0xcbf1('0x17'))['db'];function respondWithStatusCode(_0x243479,_0x151dd7){_0x151dd7=_0x151dd7||0xcc;return function(_0x28fffe){if(_0x28fffe){return _0x243479[_0xcbf1('0x18')](_0x151dd7);}return _0x243479['status'](_0x151dd7)['end']();};}function respondWithResult(_0x17462b,_0x3503d7){_0x3503d7=_0x3503d7||0xc8;return function(_0x5577af){if(_0x5577af){return _0x17462b['status'](_0x3503d7)['json'](_0x5577af);}};}function respondWithFilteredResult(_0x31c623,_0x541d77){return function(_0x3b8a56){if(_0x3b8a56){var _0x525ab4=_0x3b8a56[_0xcbf1('0x19')],_0x24119e=_0x541d77[_0xcbf1('0x1a')],_0x3bacce=_0x541d77[_0xcbf1('0x1a')]+_0x541d77[_0xcbf1('0x1b')],_0xc81efc;if(_0x3bacce>=_0x525ab4){_0x3bacce=_0x525ab4;_0xc81efc=0xc8;}else{_0xc81efc=0xce;}_0x31c623[_0xcbf1('0x1c')](_0xc81efc);return _0x31c623[_0xcbf1('0x1d')](_0xcbf1('0x1e'),_0x24119e+'-'+_0x3bacce+'/'+_0x525ab4)[_0xcbf1('0x1f')](_0x3b8a56);}return null;};}function patchUpdates(_0x31daa6){return function(_0x2cb071){try{jsonpatch['apply'](_0x2cb071,_0x31daa6,!![]);}catch(_0x1afc65){return BPromise['reject'](_0x1afc65);}return _0x2cb071[_0xcbf1('0x20')]();};}function saveUpdates(_0x29b75a,_0x5ba9e3){return function(_0x374b13){if(_0x374b13){return _0x374b13['update'](_0x29b75a)[_0xcbf1('0x21')](function(_0x117c94){return _0x117c94;});}return null;};}function removeEntity(_0x1475fc,_0xab912e){return function(_0x3b99b8){if(_0x3b99b8){return _0x3b99b8[_0xcbf1('0x22')]()[_0xcbf1('0x21')](function(){_0x1475fc[_0xcbf1('0x1c')](0xcc)['end']();});}};}function handleEntityNotFound(_0x512eaf,_0x11f89d){return function(_0x517344){if(!_0x517344){_0x512eaf[_0xcbf1('0x18')](0x194);}return _0x517344;};}function handleError(_0x45c55f,_0x4d948){_0x4d948=_0x4d948||0x1f4;return function(_0x3b0ea0){logger[_0xcbf1('0x23')](_0x3b0ea0['stack']);if(_0x3b0ea0[_0xcbf1('0x24')]){delete _0x3b0ea0[_0xcbf1('0x24')];}_0x45c55f[_0xcbf1('0x1c')](_0x4d948)['send'](_0x3b0ea0);};}exports[_0xcbf1('0x25')]=function(_0x56ddda,_0x1de06d){var _0x386f20={},_0x4c7974={},_0x3b08a6={'count':0x0,'rows':[]};var _0x599334=_[_0xcbf1('0x26')](db[_0xcbf1('0x27')][_0xcbf1('0x28')],function(_0x34dcd9){return{'name':_0x34dcd9[_0xcbf1('0x29')],'type':_0x34dcd9['type'][_0xcbf1('0x2a')]};});_0x4c7974[_0xcbf1('0x2b')]=_['map'](_0x599334,_0xcbf1('0x24'));_0x4c7974[_0xcbf1('0x2c')]=_[_0xcbf1('0x2d')](_0x56ddda[_0xcbf1('0x2c')]);_0x4c7974['filters']=_[_0xcbf1('0x2e')](_0x4c7974[_0xcbf1('0x2b')],_0x4c7974['query']);_0x386f20[_0xcbf1('0x2f')]=_['intersection'](_0x4c7974['model'],qs['fields'](_0x56ddda[_0xcbf1('0x2c')]['fields']));_0x386f20[_0xcbf1('0x2f')]=_0x386f20[_0xcbf1('0x2f')][_0xcbf1('0x30')]?_0x386f20[_0xcbf1('0x2f')]:_0x4c7974['model'];if(!_0x56ddda[_0xcbf1('0x2c')][_0xcbf1('0x31')]('nolimit')){_0x386f20[_0xcbf1('0x1b')]=qs[_0xcbf1('0x1b')](_0x56ddda[_0xcbf1('0x2c')][_0xcbf1('0x1b')]);_0x386f20[_0xcbf1('0x1a')]=qs['offset'](_0x56ddda[_0xcbf1('0x2c')][_0xcbf1('0x1a')]);}_0x386f20[_0xcbf1('0x32')]=qs['sort'](_0x56ddda['query'][_0xcbf1('0x33')]);_0x386f20[_0xcbf1('0x34')]=qs['filters'](_[_0xcbf1('0x35')](_0x56ddda[_0xcbf1('0x2c')],_0x4c7974[_0xcbf1('0x36')]),_0x599334);if(_0x56ddda[_0xcbf1('0x2c')][_0xcbf1('0x37')]){_0x386f20[_0xcbf1('0x34')]=_[_0xcbf1('0x38')](_0x386f20[_0xcbf1('0x34')],{'$or':_['map'](_0x599334,function(_0x4b4fed){if(_0x4b4fed[_0xcbf1('0x39')]!=='VIRTUAL'){var _0x4ae649={};_0x4ae649[_0x4b4fed[_0xcbf1('0x24')]]={'$like':'%'+_0x56ddda[_0xcbf1('0x2c')][_0xcbf1('0x37')]+'%'};return _0x4ae649;}})});}_0x386f20=_[_0xcbf1('0x38')]({},_0x386f20,_0x56ddda[_0xcbf1('0x3a')]);var _0x7266df={'where':_0x386f20[_0xcbf1('0x34')]};return db['VoiceAgentReport']['count'](_0x7266df)[_0xcbf1('0x21')](function(_0x2d56b7){_0x3b08a6[_0xcbf1('0x19')]=_0x2d56b7;if(_0x56ddda['query']['includeAll']){_0x386f20[_0xcbf1('0x3b')]=[{'all':!![]}];}return db[_0xcbf1('0x27')]['findAll'](_0x386f20);})[_0xcbf1('0x21')](function(_0x229309){_0x3b08a6[_0xcbf1('0x3c')]=_0x229309;return _0x3b08a6;})['then'](respondWithFilteredResult(_0x1de06d,_0x386f20))['catch'](handleError(_0x1de06d,null));};exports[_0xcbf1('0x3d')]=function(_0x3f2f4b,_0xda8cb8){var _0xfd69d={'raw':![],'where':{'id':_0x3f2f4b['params']['id']}},_0x5ac664={};_0x5ac664[_0xcbf1('0x2b')]=_['keys'](db[_0xcbf1('0x27')]['rawAttributes']);_0x5ac664['query']=_[_0xcbf1('0x2d')](_0x3f2f4b[_0xcbf1('0x2c')]);_0x5ac664[_0xcbf1('0x36')]=_[_0xcbf1('0x2e')](_0x5ac664[_0xcbf1('0x2b')],_0x5ac664['query']);_0xfd69d['attributes']=_[_0xcbf1('0x2e')](_0x5ac664[_0xcbf1('0x2b')],qs['fields'](_0x3f2f4b[_0xcbf1('0x2c')][_0xcbf1('0x3e')]));_0xfd69d[_0xcbf1('0x2f')]=_0xfd69d['attributes']['length']?_0xfd69d[_0xcbf1('0x2f')]:_0x5ac664[_0xcbf1('0x2b')];if(_0x3f2f4b[_0xcbf1('0x2c')][_0xcbf1('0x3f')]){_0xfd69d[_0xcbf1('0x3b')]=[{'all':!![]}];}_0xfd69d=_[_0xcbf1('0x38')]({},_0xfd69d,_0x3f2f4b[_0xcbf1('0x3a')]);return db[_0xcbf1('0x27')][_0xcbf1('0x40')](_0xfd69d)[_0xcbf1('0x21')](handleEntityNotFound(_0xda8cb8,null))['then'](respondWithResult(_0xda8cb8,null))[_0xcbf1('0x41')](handleError(_0xda8cb8,null));};exports[_0xcbf1('0x42')]=function(_0x1c08ee,_0x5deabf){return db[_0xcbf1('0x27')][_0xcbf1('0x42')](_0x1c08ee[_0xcbf1('0x43')],{})[_0xcbf1('0x21')](respondWithResult(_0x5deabf,0xc9))[_0xcbf1('0x41')](handleError(_0x5deabf,null));};exports[_0xcbf1('0x44')]=function(_0x1afbd2,_0x9dbdb9){if(_0x1afbd2['body']['id']){delete _0x1afbd2['body']['id'];}return db[_0xcbf1('0x27')][_0xcbf1('0x40')]({'where':{'id':_0x1afbd2['params']['id']}})[_0xcbf1('0x21')](handleEntityNotFound(_0x9dbdb9,null))[_0xcbf1('0x21')](saveUpdates(_0x1afbd2[_0xcbf1('0x43')],null))[_0xcbf1('0x21')](respondWithResult(_0x9dbdb9,null))['catch'](handleError(_0x9dbdb9,null));};exports[_0xcbf1('0x22')]=function(_0x530d8d,_0x1adc87){return db[_0xcbf1('0x27')][_0xcbf1('0x40')]({'where':{'id':_0x530d8d[_0xcbf1('0x45')]['id']}})[_0xcbf1('0x21')](handleEntityNotFound(_0x1adc87,null))['then'](removeEntity(_0x1adc87,null))[_0xcbf1('0x41')](handleError(_0x1adc87,null));};exports['describe']=function(_0x2f477f,_0x5a5a7f){return db[_0xcbf1('0x27')]['describe']()[_0xcbf1('0x21')](respondWithResult(_0x5a5a7f,null))[_0xcbf1('0x41')](handleError(_0x5a5a7f,null));};