dd144f1b8328c8086067bf9e77b8541260288d79
[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 _0x5df8=['limit','set','reject','save','update','then','destroy','sendStatus','error','stack','name','send','index','VoiceAgentReport','fieldName','model','map','query','filters','intersection','attributes','fields','length','nolimit','order','sort','where','pick','type','merge','includeAll','include','findAll','catch','show','params','keys','options','find','create','body','describe','html-pdf','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','status','end','count','offset'];(function(_0x407e38,_0x30e1cb){var _0x996a91=function(_0x58a6cc){while(--_0x58a6cc){_0x407e38['push'](_0x407e38['shift']());}};_0x996a91(++_0x30e1cb);}(_0x5df8,0xbc));var _0x85df=function(_0x3bd2d9,_0x493140){_0x3bd2d9=_0x3bd2d9-0x0;var _0x15f37b=_0x5df8[_0x3bd2d9];return _0x15f37b;};'use strict';var pdf=require(_0x85df('0x0'));var emlformat=require(_0x85df('0x1'));var rimraf=require(_0x85df('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0x85df('0x3'));var rp=require(_0x85df('0x4'));var moment=require(_0x85df('0x5'));var BPromise=require(_0x85df('0x6'));var Mustache=require(_0x85df('0x7'));var util=require(_0x85df('0x8'));var path=require(_0x85df('0x9'));var sox=require(_0x85df('0xa'));var csv=require(_0x85df('0xb'));var ejs=require(_0x85df('0xc'));var fs=require('fs');var _=require(_0x85df('0xd'));var squel=require(_0x85df('0xe'));var crypto=require(_0x85df('0xf'));var jsforce=require(_0x85df('0x10'));var deskjs=require(_0x85df('0x11'));var toCsv=require(_0x85df('0xb'));var querystring=require('querystring');var Papa=require(_0x85df('0x12'));var Redis=require(_0x85df('0x13'));var authService=require(_0x85df('0x14'));var qs=require(_0x85df('0x15'));var as=require(_0x85df('0x16'));var hardwareService=require(_0x85df('0x17'));var logger=require(_0x85df('0x18'))(_0x85df('0x19'));var utils=require('../../config/utils');var config=require(_0x85df('0x1a'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x50bde1,_0x1f79fb){_0x1f79fb=_0x1f79fb||0xcc;return function(_0x1e1b6a){if(_0x1e1b6a){return _0x50bde1['sendStatus'](_0x1f79fb);}return _0x50bde1[_0x85df('0x1b')](_0x1f79fb)[_0x85df('0x1c')]();};}function respondWithResult(_0x7bb112,_0xcb4b2f){_0xcb4b2f=_0xcb4b2f||0xc8;return function(_0x403f20){if(_0x403f20){return _0x7bb112[_0x85df('0x1b')](_0xcb4b2f)['json'](_0x403f20);}};}function respondWithFilteredResult(_0x2fc3eb,_0x220911){return function(_0x3c48dc){if(_0x3c48dc){var _0x22b839=_0x3c48dc[_0x85df('0x1d')],_0x48a026=_0x220911[_0x85df('0x1e')],_0x3274ff=_0x220911[_0x85df('0x1e')]+_0x220911[_0x85df('0x1f')],_0x10423f;if(_0x3274ff>=_0x22b839){_0x3274ff=_0x22b839;_0x10423f=0xc8;}else{_0x10423f=0xce;}_0x2fc3eb[_0x85df('0x1b')](_0x10423f);return _0x2fc3eb[_0x85df('0x20')]('Content-Range',_0x48a026+'-'+_0x3274ff+'/'+_0x22b839)['json'](_0x3c48dc);}return null;};}function patchUpdates(_0x21b037){return function(_0x2f7172){try{jsonpatch['apply'](_0x2f7172,_0x21b037,!![]);}catch(_0x31b597){return BPromise[_0x85df('0x21')](_0x31b597);}return _0x2f7172[_0x85df('0x22')]();};}function saveUpdates(_0x54e25c,_0x16461e){return function(_0x24970d){if(_0x24970d){return _0x24970d[_0x85df('0x23')](_0x54e25c)[_0x85df('0x24')](function(_0x3be303){return _0x3be303;});}return null;};}function removeEntity(_0x28a490,_0xdb9886){return function(_0x4d110b){if(_0x4d110b){return _0x4d110b[_0x85df('0x25')]()['then'](function(){_0x28a490[_0x85df('0x1b')](0xcc)[_0x85df('0x1c')]();});}};}function handleEntityNotFound(_0x510f22,_0x3ec76a){return function(_0x2c5d70){if(!_0x2c5d70){_0x510f22[_0x85df('0x26')](0x194);}return _0x2c5d70;};}function handleError(_0x49abdb,_0x584d4c){_0x584d4c=_0x584d4c||0x1f4;return function(_0x2d10f4){logger[_0x85df('0x27')](_0x2d10f4[_0x85df('0x28')]);if(_0x2d10f4['name']){delete _0x2d10f4[_0x85df('0x29')];}_0x49abdb[_0x85df('0x1b')](_0x584d4c)[_0x85df('0x2a')](_0x2d10f4);};}exports[_0x85df('0x2b')]=function(_0x130442,_0x45949e){var _0x4d806f={},_0x44fab4={},_0x1215e9={'count':0x0,'rows':[]};var _0x1316f2=_['map'](db[_0x85df('0x2c')]['rawAttributes'],function(_0x19f687){return{'name':_0x19f687[_0x85df('0x2d')],'type':_0x19f687['type']['key']};});_0x44fab4[_0x85df('0x2e')]=_[_0x85df('0x2f')](_0x1316f2,_0x85df('0x29'));_0x44fab4[_0x85df('0x30')]=_['keys'](_0x130442[_0x85df('0x30')]);_0x44fab4[_0x85df('0x31')]=_[_0x85df('0x32')](_0x44fab4[_0x85df('0x2e')],_0x44fab4[_0x85df('0x30')]);_0x4d806f[_0x85df('0x33')]=_['intersection'](_0x44fab4['model'],qs[_0x85df('0x34')](_0x130442[_0x85df('0x30')][_0x85df('0x34')]));_0x4d806f['attributes']=_0x4d806f[_0x85df('0x33')][_0x85df('0x35')]?_0x4d806f[_0x85df('0x33')]:_0x44fab4[_0x85df('0x2e')];if(!_0x130442[_0x85df('0x30')]['hasOwnProperty'](_0x85df('0x36'))){_0x4d806f[_0x85df('0x1f')]=qs['limit'](_0x130442[_0x85df('0x30')]['limit']);_0x4d806f[_0x85df('0x1e')]=qs[_0x85df('0x1e')](_0x130442[_0x85df('0x30')]['offset']);}_0x4d806f[_0x85df('0x37')]=qs['sort'](_0x130442[_0x85df('0x30')][_0x85df('0x38')]);_0x4d806f[_0x85df('0x39')]=qs['filters'](_[_0x85df('0x3a')](_0x130442[_0x85df('0x30')],_0x44fab4['filters']),_0x1316f2);if(_0x130442['query']['filter']){_0x4d806f[_0x85df('0x39')]=_['merge'](_0x4d806f[_0x85df('0x39')],{'$or':_[_0x85df('0x2f')](_0x1316f2,function(_0x3d090d){if(_0x3d090d[_0x85df('0x3b')]!=='VIRTUAL'){var _0xebcbb9={};_0xebcbb9[_0x3d090d[_0x85df('0x29')]]={'$like':'%'+_0x130442[_0x85df('0x30')]['filter']+'%'};return _0xebcbb9;}})});}_0x4d806f=_[_0x85df('0x3c')]({},_0x4d806f,_0x130442['options']);var _0x3f2ad9={'where':_0x4d806f[_0x85df('0x39')]};return db[_0x85df('0x2c')]['count'](_0x3f2ad9)[_0x85df('0x24')](function(_0x47110e){_0x1215e9[_0x85df('0x1d')]=_0x47110e;if(_0x130442[_0x85df('0x30')][_0x85df('0x3d')]){_0x4d806f[_0x85df('0x3e')]=[{'all':!![]}];}return db[_0x85df('0x2c')][_0x85df('0x3f')](_0x4d806f);})[_0x85df('0x24')](function(_0x3b2c41){_0x1215e9['rows']=_0x3b2c41;return _0x1215e9;})[_0x85df('0x24')](respondWithFilteredResult(_0x45949e,_0x4d806f))[_0x85df('0x40')](handleError(_0x45949e,null));};exports[_0x85df('0x41')]=function(_0x357b68,_0x326eae){var _0x129e3b={'raw':![],'where':{'id':_0x357b68[_0x85df('0x42')]['id']}},_0x523ab6={};_0x523ab6[_0x85df('0x2e')]=_[_0x85df('0x43')](db[_0x85df('0x2c')]['rawAttributes']);_0x523ab6[_0x85df('0x30')]=_[_0x85df('0x43')](_0x357b68[_0x85df('0x30')]);_0x523ab6['filters']=_[_0x85df('0x32')](_0x523ab6[_0x85df('0x2e')],_0x523ab6[_0x85df('0x30')]);_0x129e3b[_0x85df('0x33')]=_[_0x85df('0x32')](_0x523ab6[_0x85df('0x2e')],qs[_0x85df('0x34')](_0x357b68[_0x85df('0x30')]['fields']));_0x129e3b['attributes']=_0x129e3b[_0x85df('0x33')][_0x85df('0x35')]?_0x129e3b[_0x85df('0x33')]:_0x523ab6[_0x85df('0x2e')];if(_0x357b68[_0x85df('0x30')]['includeAll']){_0x129e3b[_0x85df('0x3e')]=[{'all':!![]}];}_0x129e3b=_[_0x85df('0x3c')]({},_0x129e3b,_0x357b68[_0x85df('0x44')]);return db[_0x85df('0x2c')][_0x85df('0x45')](_0x129e3b)[_0x85df('0x24')](handleEntityNotFound(_0x326eae,null))[_0x85df('0x24')](respondWithResult(_0x326eae,null))[_0x85df('0x40')](handleError(_0x326eae,null));};exports[_0x85df('0x46')]=function(_0xe40969,_0xe4a805){return db['VoiceAgentReport'][_0x85df('0x46')](_0xe40969[_0x85df('0x47')],{})[_0x85df('0x24')](respondWithResult(_0xe4a805,0xc9))[_0x85df('0x40')](handleError(_0xe4a805,null));};exports[_0x85df('0x23')]=function(_0x3c1326,_0x13123b){if(_0x3c1326[_0x85df('0x47')]['id']){delete _0x3c1326['body']['id'];}return db[_0x85df('0x2c')][_0x85df('0x45')]({'where':{'id':_0x3c1326[_0x85df('0x42')]['id']}})[_0x85df('0x24')](handleEntityNotFound(_0x13123b,null))[_0x85df('0x24')](saveUpdates(_0x3c1326[_0x85df('0x47')],null))[_0x85df('0x24')](respondWithResult(_0x13123b,null))[_0x85df('0x40')](handleError(_0x13123b,null));};exports['destroy']=function(_0x2026f0,_0x21324b){return db[_0x85df('0x2c')]['find']({'where':{'id':_0x2026f0[_0x85df('0x42')]['id']}})[_0x85df('0x24')](handleEntityNotFound(_0x21324b,null))[_0x85df('0x24')](removeEntity(_0x21324b,null))[_0x85df('0x40')](handleError(_0x21324b,null));};exports['describe']=function(_0xdf263b,_0x148a96){return db['VoiceAgentReport'][_0x85df('0x48')]()[_0x85df('0x24')](respondWithResult(_0x148a96,null))['catch'](handleError(_0x148a96,null));};