cfd4c4526ed3579c28978612e85410001cbfb2c4
[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 _0x3cb9=['../../components/parsers/advancedSearch','../../config/logger','api','../../mysqldb','sendStatus','status','end','json','count','offset','limit','set','apply','save','update','then','destroy','error','name','send','index','VoiceAgentReport','rawAttributes','fieldName','key','model','map','query','keys','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','merge','options','includeAll','include','rows','catch','find','create','body','params','describe','html-pdf','eml-format','fast-json-patch','request-promise','moment','mustache','util','path','to-csv','ejs','lodash','crypto','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs'];(function(_0x20a584,_0xe384a5){var _0x4b41a8=function(_0x2127c6){while(--_0x2127c6){_0x20a584['push'](_0x20a584['shift']());}};_0x4b41a8(++_0xe384a5);}(_0x3cb9,0x79));var _0x93cb=function(_0x341e0f,_0x4a09d0){_0x341e0f=_0x341e0f-0x0;var _0x59555a=_0x3cb9[_0x341e0f];return _0x59555a;};'use strict';var pdf=require(_0x93cb('0x0'));var emlformat=require(_0x93cb('0x1'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0x93cb('0x2'));var rp=require(_0x93cb('0x3'));var moment=require(_0x93cb('0x4'));var BPromise=require('bluebird');var Mustache=require(_0x93cb('0x5'));var util=require(_0x93cb('0x6'));var path=require(_0x93cb('0x7'));var sox=require('sox');var csv=require(_0x93cb('0x8'));var ejs=require(_0x93cb('0x9'));var fs=require('fs');var _=require(_0x93cb('0xa'));var squel=require('squel');var crypto=require(_0x93cb('0xb'));var jsforce=require('jsforce');var deskjs=require(_0x93cb('0xc'));var toCsv=require(_0x93cb('0x8'));var querystring=require(_0x93cb('0xd'));var Papa=require('papaparse');var Redis=require(_0x93cb('0xe'));var authService=require(_0x93cb('0xf'));var qs=require(_0x93cb('0x10'));var as=require(_0x93cb('0x11'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x93cb('0x12'))(_0x93cb('0x13'));var utils=require('../../config/utils');var config=require('../../config/environment');var db=require(_0x93cb('0x14'))['db'];function respondWithStatusCode(_0x196740,_0x379671){_0x379671=_0x379671||0xcc;return function(_0x32e67a){if(_0x32e67a){return _0x196740[_0x93cb('0x15')](_0x379671);}return _0x196740[_0x93cb('0x16')](_0x379671)[_0x93cb('0x17')]();};}function respondWithResult(_0x3aae66,_0x391677){_0x391677=_0x391677||0xc8;return function(_0x195351){if(_0x195351){return _0x3aae66[_0x93cb('0x16')](_0x391677)[_0x93cb('0x18')](_0x195351);}};}function respondWithFilteredResult(_0x2c5be0,_0x4becaa){return function(_0x24bc94){if(_0x24bc94){var _0x3d91dc=_0x24bc94[_0x93cb('0x19')],_0x1d794d=_0x4becaa[_0x93cb('0x1a')],_0x59b45d=_0x4becaa[_0x93cb('0x1a')]+_0x4becaa[_0x93cb('0x1b')],_0xa5d3b1;if(_0x59b45d>=_0x3d91dc){_0x59b45d=_0x3d91dc;_0xa5d3b1=0xc8;}else{_0xa5d3b1=0xce;}_0x2c5be0[_0x93cb('0x16')](_0xa5d3b1);return _0x2c5be0[_0x93cb('0x1c')]('Content-Range',_0x1d794d+'-'+_0x59b45d+'/'+_0x3d91dc)[_0x93cb('0x18')](_0x24bc94);}return null;};}function patchUpdates(_0x5bd0c8){return function(_0x34de5d){try{jsonpatch[_0x93cb('0x1d')](_0x34de5d,_0x5bd0c8,!![]);}catch(_0x19c22a){return BPromise['reject'](_0x19c22a);}return _0x34de5d[_0x93cb('0x1e')]();};}function saveUpdates(_0x5ba942,_0x11b3d0){return function(_0x3a7452){if(_0x3a7452){return _0x3a7452[_0x93cb('0x1f')](_0x5ba942)[_0x93cb('0x20')](function(_0x5acc40){return _0x5acc40;});}return null;};}function removeEntity(_0x263c90,_0x52bd2e){return function(_0x35035c){if(_0x35035c){return _0x35035c[_0x93cb('0x21')]()['then'](function(){_0x263c90[_0x93cb('0x16')](0xcc)[_0x93cb('0x17')]();});}};}function handleEntityNotFound(_0x54099c,_0x110f7a){return function(_0x1bb551){if(!_0x1bb551){_0x54099c[_0x93cb('0x15')](0x194);}return _0x1bb551;};}function handleError(_0x347eef,_0x14957a){_0x14957a=_0x14957a||0x1f4;return function(_0x53abb3){logger[_0x93cb('0x22')](_0x53abb3['stack']);if(_0x53abb3[_0x93cb('0x23')]){delete _0x53abb3['name'];}_0x347eef[_0x93cb('0x16')](_0x14957a)[_0x93cb('0x24')](_0x53abb3);};}exports[_0x93cb('0x25')]=function(_0xe32990,_0x4f836f){var _0x14b75f={},_0x465271={},_0x4cb8f8={'count':0x0,'rows':[]};var _0x585dd9=_['map'](db[_0x93cb('0x26')][_0x93cb('0x27')],function(_0x5943ed){return{'name':_0x5943ed[_0x93cb('0x28')],'type':_0x5943ed['type'][_0x93cb('0x29')]};});_0x465271[_0x93cb('0x2a')]=_[_0x93cb('0x2b')](_0x585dd9,_0x93cb('0x23'));_0x465271[_0x93cb('0x2c')]=_[_0x93cb('0x2d')](_0xe32990[_0x93cb('0x2c')]);_0x465271['filters']=_['intersection'](_0x465271[_0x93cb('0x2a')],_0x465271[_0x93cb('0x2c')]);_0x14b75f['attributes']=_[_0x93cb('0x2e')](_0x465271[_0x93cb('0x2a')],qs[_0x93cb('0x2f')](_0xe32990[_0x93cb('0x2c')]['fields']));_0x14b75f[_0x93cb('0x30')]=_0x14b75f[_0x93cb('0x30')][_0x93cb('0x31')]?_0x14b75f[_0x93cb('0x30')]:_0x465271[_0x93cb('0x2a')];if(!_0xe32990[_0x93cb('0x2c')][_0x93cb('0x32')](_0x93cb('0x33'))){_0x14b75f[_0x93cb('0x1b')]=qs[_0x93cb('0x1b')](_0xe32990[_0x93cb('0x2c')][_0x93cb('0x1b')]);_0x14b75f[_0x93cb('0x1a')]=qs[_0x93cb('0x1a')](_0xe32990['query'][_0x93cb('0x1a')]);}_0x14b75f[_0x93cb('0x34')]=qs[_0x93cb('0x35')](_0xe32990[_0x93cb('0x2c')][_0x93cb('0x35')]);_0x14b75f[_0x93cb('0x36')]=qs[_0x93cb('0x37')](_[_0x93cb('0x38')](_0xe32990[_0x93cb('0x2c')],_0x465271[_0x93cb('0x37')]));if(_0xe32990[_0x93cb('0x2c')][_0x93cb('0x39')]){_0x14b75f[_0x93cb('0x36')]=_[_0x93cb('0x3a')](_0x14b75f[_0x93cb('0x36')],{'$or':_['map'](_0x585dd9,function(_0x4ee4a8){if(_0x4ee4a8['type']!=='VIRTUAL'){var _0x27170e={};_0x27170e[_0x4ee4a8['name']]={'$like':'%'+_0xe32990[_0x93cb('0x2c')][_0x93cb('0x39')]+'%'};return _0x27170e;}})});}_0x14b75f=_['merge']({},_0x14b75f,_0xe32990[_0x93cb('0x3b')]);var _0x1d25a2={'where':_0x14b75f[_0x93cb('0x36')]};return db[_0x93cb('0x26')]['count'](_0x1d25a2)[_0x93cb('0x20')](function(_0x3e0411){_0x4cb8f8[_0x93cb('0x19')]=_0x3e0411;if(_0xe32990[_0x93cb('0x2c')][_0x93cb('0x3c')]){_0x14b75f[_0x93cb('0x3d')]=[{'all':!![]}];}return db[_0x93cb('0x26')]['findAll'](_0x14b75f);})[_0x93cb('0x20')](function(_0x1ed78f){_0x4cb8f8[_0x93cb('0x3e')]=_0x1ed78f;return _0x4cb8f8;})['then'](respondWithFilteredResult(_0x4f836f,_0x14b75f))[_0x93cb('0x3f')](handleError(_0x4f836f,null));};exports['show']=function(_0x2cec06,_0x23860f){var _0x57d2a9={'raw':![],'where':{'id':_0x2cec06['params']['id']}},_0x15a410={};_0x15a410[_0x93cb('0x2a')]=_['keys'](db[_0x93cb('0x26')]['rawAttributes']);_0x15a410[_0x93cb('0x2c')]=_[_0x93cb('0x2d')](_0x2cec06[_0x93cb('0x2c')]);_0x15a410[_0x93cb('0x37')]=_['intersection'](_0x15a410['model'],_0x15a410['query']);_0x57d2a9[_0x93cb('0x30')]=_[_0x93cb('0x2e')](_0x15a410[_0x93cb('0x2a')],qs[_0x93cb('0x2f')](_0x2cec06['query'][_0x93cb('0x2f')]));_0x57d2a9['attributes']=_0x57d2a9[_0x93cb('0x30')][_0x93cb('0x31')]?_0x57d2a9[_0x93cb('0x30')]:_0x15a410[_0x93cb('0x2a')];if(_0x2cec06[_0x93cb('0x2c')][_0x93cb('0x3c')]){_0x57d2a9[_0x93cb('0x3d')]=[{'all':!![]}];}_0x57d2a9=_['merge']({},_0x57d2a9,_0x2cec06['options']);return db['VoiceAgentReport'][_0x93cb('0x40')](_0x57d2a9)[_0x93cb('0x20')](handleEntityNotFound(_0x23860f,null))[_0x93cb('0x20')](respondWithResult(_0x23860f,null))['catch'](handleError(_0x23860f,null));};exports[_0x93cb('0x41')]=function(_0x5b6e4a,_0x5dbfc4){return db[_0x93cb('0x26')]['create'](_0x5b6e4a['body'],{})[_0x93cb('0x20')](respondWithResult(_0x5dbfc4,0xc9))[_0x93cb('0x3f')](handleError(_0x5dbfc4,null));};exports[_0x93cb('0x1f')]=function(_0x258804,_0x527786){if(_0x258804['body']['id']){delete _0x258804[_0x93cb('0x42')]['id'];}return db[_0x93cb('0x26')][_0x93cb('0x40')]({'where':{'id':_0x258804[_0x93cb('0x43')]['id']}})[_0x93cb('0x20')](handleEntityNotFound(_0x527786,null))[_0x93cb('0x20')](saveUpdates(_0x258804[_0x93cb('0x42')],null))['then'](respondWithResult(_0x527786,null))['catch'](handleError(_0x527786,null));};exports[_0x93cb('0x21')]=function(_0x2ea1f5,_0x58eff9){return db[_0x93cb('0x26')][_0x93cb('0x40')]({'where':{'id':_0x2ea1f5[_0x93cb('0x43')]['id']}})[_0x93cb('0x20')](handleEntityNotFound(_0x58eff9,null))[_0x93cb('0x20')](removeEntity(_0x58eff9,null))['catch'](handleError(_0x58eff9,null));};exports[_0x93cb('0x44')]=function(_0x2ad526,_0xcbdf32){return db[_0x93cb('0x26')][_0x93cb('0x44')]()['then'](respondWithResult(_0xcbdf32,null))[_0x93cb('0x3f')](handleError(_0xcbdf32,null));};