404503631fbf865f3c40670f9087cf2370d0ba82
[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 _0xd5c3=['offset','limit','set','Content-Range','apply','save','then','destroy','name','send','index','map','VoiceAgentReport','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','merge','VIRTUAL','filter','options','includeAll','catch','show','params','rawAttributes','include','create','body','find','describe','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','count'];(function(_0x265971,_0x41453e){var _0x4a6d7a=function(_0x2a2925){while(--_0x2a2925){_0x265971['push'](_0x265971['shift']());}};_0x4a6d7a(++_0x41453e);}(_0xd5c3,0x1a7));var _0x3d5c=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0xd5c3[_0x3dd15e];return _0x231fd0;};'use strict';var pdf=require(_0x3d5c('0x0'));var emlformat=require(_0x3d5c('0x1'));var rimraf=require(_0x3d5c('0x2'));var zipdir=require(_0x3d5c('0x3'));var jsonpatch=require(_0x3d5c('0x4'));var rp=require(_0x3d5c('0x5'));var moment=require(_0x3d5c('0x6'));var BPromise=require(_0x3d5c('0x7'));var Mustache=require('mustache');var util=require(_0x3d5c('0x8'));var path=require(_0x3d5c('0x9'));var sox=require(_0x3d5c('0xa'));var csv=require(_0x3d5c('0xb'));var ejs=require(_0x3d5c('0xc'));var fs=require('fs');var _=require(_0x3d5c('0xd'));var squel=require(_0x3d5c('0xe'));var crypto=require(_0x3d5c('0xf'));var jsforce=require(_0x3d5c('0x10'));var deskjs=require(_0x3d5c('0x11'));var toCsv=require(_0x3d5c('0xb'));var querystring=require(_0x3d5c('0x12'));var Papa=require('papaparse');var Redis=require(_0x3d5c('0x13'));var authService=require(_0x3d5c('0x14'));var qs=require(_0x3d5c('0x15'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x3d5c('0x16'));var logger=require(_0x3d5c('0x17'))(_0x3d5c('0x18'));var utils=require('../../config/utils');var config=require(_0x3d5c('0x19'));var licenseUtil=require(_0x3d5c('0x1a'));var db=require(_0x3d5c('0x1b'))['db'];function respondWithStatusCode(_0x62fb81,_0x5f036f){_0x5f036f=_0x5f036f||0xcc;return function(_0x5d5489){if(_0x5d5489){return _0x62fb81[_0x3d5c('0x1c')](_0x5f036f);}return _0x62fb81[_0x3d5c('0x1d')](_0x5f036f)[_0x3d5c('0x1e')]();};}function respondWithResult(_0x21b618,_0x4f249c){_0x4f249c=_0x4f249c||0xc8;return function(_0x21a8c6){if(_0x21a8c6){return _0x21b618[_0x3d5c('0x1d')](_0x4f249c)[_0x3d5c('0x1f')](_0x21a8c6);}};}function respondWithFilteredResult(_0x51ffd7,_0x57e517){return function(_0x545f15){if(_0x545f15){var _0x2fa8bc=_0x545f15[_0x3d5c('0x20')],_0x151e91=_0x57e517[_0x3d5c('0x21')],_0x53fbaf=_0x57e517['offset']+_0x57e517[_0x3d5c('0x22')],_0x1ae9bd;if(_0x53fbaf>=_0x2fa8bc){_0x53fbaf=_0x2fa8bc;_0x1ae9bd=0xc8;}else{_0x1ae9bd=0xce;}_0x51ffd7['status'](_0x1ae9bd);return _0x51ffd7[_0x3d5c('0x23')](_0x3d5c('0x24'),_0x151e91+'-'+_0x53fbaf+'/'+_0x2fa8bc)[_0x3d5c('0x1f')](_0x545f15);}return null;};}function patchUpdates(_0x58153b){return function(_0xe54507){try{jsonpatch[_0x3d5c('0x25')](_0xe54507,_0x58153b,!![]);}catch(_0x52544d){return BPromise['reject'](_0x52544d);}return _0xe54507[_0x3d5c('0x26')]();};}function saveUpdates(_0x12ff88,_0x5a9d58){return function(_0x19a8ac){if(_0x19a8ac){return _0x19a8ac['update'](_0x12ff88)[_0x3d5c('0x27')](function(_0x1e6a08){return _0x1e6a08;});}return null;};}function removeEntity(_0x7f9893,_0x16947b){return function(_0xe15403){if(_0xe15403){return _0xe15403[_0x3d5c('0x28')]()[_0x3d5c('0x27')](function(){_0x7f9893['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x2eb9cf,_0x27e988){return function(_0x3cb582){if(!_0x3cb582){_0x2eb9cf[_0x3d5c('0x1c')](0x194);}return _0x3cb582;};}function handleError(_0x484ae3,_0x23b33e){_0x23b33e=_0x23b33e||0x1f4;return function(_0x9d5752){logger['error'](_0x9d5752['stack']);if(_0x9d5752[_0x3d5c('0x29')]){delete _0x9d5752['name'];}_0x484ae3['status'](_0x23b33e)[_0x3d5c('0x2a')](_0x9d5752);};}exports[_0x3d5c('0x2b')]=function(_0x37e83e,_0x5956c3){var _0x2d6e7a={},_0x426fd1={},_0x5d3991={'count':0x0,'rows':[]};var _0x45f664=_[_0x3d5c('0x2c')](db[_0x3d5c('0x2d')]['rawAttributes'],function(_0x1c63b7){return{'name':_0x1c63b7['fieldName'],'type':_0x1c63b7[_0x3d5c('0x2e')][_0x3d5c('0x2f')]};});_0x426fd1[_0x3d5c('0x30')]=_[_0x3d5c('0x2c')](_0x45f664,'name');_0x426fd1[_0x3d5c('0x31')]=_[_0x3d5c('0x32')](_0x37e83e['query']);_0x426fd1[_0x3d5c('0x33')]=_[_0x3d5c('0x34')](_0x426fd1[_0x3d5c('0x30')],_0x426fd1[_0x3d5c('0x31')]);_0x2d6e7a[_0x3d5c('0x35')]=_[_0x3d5c('0x34')](_0x426fd1['model'],qs[_0x3d5c('0x36')](_0x37e83e[_0x3d5c('0x31')][_0x3d5c('0x36')]));_0x2d6e7a[_0x3d5c('0x35')]=_0x2d6e7a[_0x3d5c('0x35')][_0x3d5c('0x37')]?_0x2d6e7a['attributes']:_0x426fd1[_0x3d5c('0x30')];if(!_0x37e83e['query'][_0x3d5c('0x38')](_0x3d5c('0x39'))){_0x2d6e7a['limit']=qs[_0x3d5c('0x22')](_0x37e83e[_0x3d5c('0x31')][_0x3d5c('0x22')]);_0x2d6e7a[_0x3d5c('0x21')]=qs[_0x3d5c('0x21')](_0x37e83e[_0x3d5c('0x31')][_0x3d5c('0x21')]);}_0x2d6e7a[_0x3d5c('0x3a')]=qs[_0x3d5c('0x3b')](_0x37e83e[_0x3d5c('0x31')][_0x3d5c('0x3b')]);_0x2d6e7a[_0x3d5c('0x3c')]=qs[_0x3d5c('0x33')](_[_0x3d5c('0x3d')](_0x37e83e[_0x3d5c('0x31')],_0x426fd1[_0x3d5c('0x33')]),_0x45f664);if(_0x37e83e['query']['filter']){_0x2d6e7a[_0x3d5c('0x3c')]=_[_0x3d5c('0x3e')](_0x2d6e7a[_0x3d5c('0x3c')],{'$or':_[_0x3d5c('0x2c')](_0x45f664,function(_0x248b30){if(_0x248b30[_0x3d5c('0x2e')]!==_0x3d5c('0x3f')){var _0x599531={};_0x599531[_0x248b30[_0x3d5c('0x29')]]={'$like':'%'+_0x37e83e['query'][_0x3d5c('0x40')]+'%'};return _0x599531;}})});}_0x2d6e7a=_[_0x3d5c('0x3e')]({},_0x2d6e7a,_0x37e83e[_0x3d5c('0x41')]);var _0x3cee66={'where':_0x2d6e7a['where']};return db[_0x3d5c('0x2d')]['count'](_0x3cee66)[_0x3d5c('0x27')](function(_0x560fc4){_0x5d3991[_0x3d5c('0x20')]=_0x560fc4;if(_0x37e83e['query'][_0x3d5c('0x42')]){_0x2d6e7a['include']=[{'all':!![]}];}return db['VoiceAgentReport']['findAll'](_0x2d6e7a);})[_0x3d5c('0x27')](function(_0x224a0c){_0x5d3991['rows']=_0x224a0c;return _0x5d3991;})[_0x3d5c('0x27')](respondWithFilteredResult(_0x5956c3,_0x2d6e7a))[_0x3d5c('0x43')](handleError(_0x5956c3,null));};exports[_0x3d5c('0x44')]=function(_0x4beb19,_0x5ae524){var _0x3fe5a8={'raw':![],'where':{'id':_0x4beb19[_0x3d5c('0x45')]['id']}},_0x2baddf={};_0x2baddf['model']=_[_0x3d5c('0x32')](db[_0x3d5c('0x2d')][_0x3d5c('0x46')]);_0x2baddf[_0x3d5c('0x31')]=_[_0x3d5c('0x32')](_0x4beb19[_0x3d5c('0x31')]);_0x2baddf[_0x3d5c('0x33')]=_[_0x3d5c('0x34')](_0x2baddf[_0x3d5c('0x30')],_0x2baddf[_0x3d5c('0x31')]);_0x3fe5a8['attributes']=_[_0x3d5c('0x34')](_0x2baddf[_0x3d5c('0x30')],qs[_0x3d5c('0x36')](_0x4beb19['query'][_0x3d5c('0x36')]));_0x3fe5a8[_0x3d5c('0x35')]=_0x3fe5a8['attributes'][_0x3d5c('0x37')]?_0x3fe5a8['attributes']:_0x2baddf['model'];if(_0x4beb19['query'][_0x3d5c('0x42')]){_0x3fe5a8[_0x3d5c('0x47')]=[{'all':!![]}];}_0x3fe5a8=_[_0x3d5c('0x3e')]({},_0x3fe5a8,_0x4beb19[_0x3d5c('0x41')]);return db['VoiceAgentReport']['find'](_0x3fe5a8)['then'](handleEntityNotFound(_0x5ae524,null))[_0x3d5c('0x27')](respondWithResult(_0x5ae524,null))[_0x3d5c('0x43')](handleError(_0x5ae524,null));};exports[_0x3d5c('0x48')]=function(_0x4171e0,_0x3139d4){return db['VoiceAgentReport']['create'](_0x4171e0['body'],{})['then'](respondWithResult(_0x3139d4,0xc9))[_0x3d5c('0x43')](handleError(_0x3139d4,null));};exports['update']=function(_0xa84d8e,_0x4dfae6){if(_0xa84d8e[_0x3d5c('0x49')]['id']){delete _0xa84d8e[_0x3d5c('0x49')]['id'];}return db[_0x3d5c('0x2d')]['find']({'where':{'id':_0xa84d8e[_0x3d5c('0x45')]['id']}})[_0x3d5c('0x27')](handleEntityNotFound(_0x4dfae6,null))[_0x3d5c('0x27')](saveUpdates(_0xa84d8e[_0x3d5c('0x49')],null))[_0x3d5c('0x27')](respondWithResult(_0x4dfae6,null))['catch'](handleError(_0x4dfae6,null));};exports[_0x3d5c('0x28')]=function(_0x11f77e,_0x5264d1){return db[_0x3d5c('0x2d')][_0x3d5c('0x4a')]({'where':{'id':_0x11f77e[_0x3d5c('0x45')]['id']}})[_0x3d5c('0x27')](handleEntityNotFound(_0x5264d1,null))['then'](removeEntity(_0x5264d1,null))['catch'](handleError(_0x5264d1,null));};exports[_0x3d5c('0x4b')]=function(_0x140477,_0x156fe4){return db[_0x3d5c('0x2d')]['describe']()[_0x3d5c('0x27')](respondWithResult(_0x156fe4,null))[_0x3d5c('0x43')](handleError(_0x156fe4,null));};