2cb6a870d67603cd18c45cdaaad6f8d77617d669
[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 _0xf6bb=['papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','end','json','count','offset','limit','set','Content-Range','apply','reject','save','then','destroy','name','status','send','index','map','VoiceDialReport','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','VIRTUAL','merge','includeAll','include','findAll','catch','show','params','filtears','options','find','create','body','describe','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','to-csv','ejs','lodash','squel','jsforce','desk.js','querystring'];(function(_0x4a1aef,_0x48ffb){var _0x58dd23=function(_0x4a1866){while(--_0x4a1866){_0x4a1aef['push'](_0x4a1aef['shift']());}};_0x58dd23(++_0x48ffb);}(_0xf6bb,0x17a));var _0xbf6b=function(_0x39d39d,_0x5586bd){_0x39d39d=_0x39d39d-0x0;var _0x577ac3=_0xf6bb[_0x39d39d];return _0x577ac3;};'use strict';var pdf=require(_0xbf6b('0x0'));var emlformat=require(_0xbf6b('0x1'));var rimraf=require(_0xbf6b('0x2'));var zipdir=require(_0xbf6b('0x3'));var jsonpatch=require(_0xbf6b('0x4'));var rp=require(_0xbf6b('0x5'));var moment=require(_0xbf6b('0x6'));var BPromise=require(_0xbf6b('0x7'));var Mustache=require(_0xbf6b('0x8'));var util=require(_0xbf6b('0x9'));var path=require('path');var sox=require('sox');var csv=require(_0xbf6b('0xa'));var ejs=require(_0xbf6b('0xb'));var fs=require('fs');var _=require(_0xbf6b('0xc'));var squel=require(_0xbf6b('0xd'));var crypto=require('crypto');var jsforce=require(_0xbf6b('0xe'));var deskjs=require(_0xbf6b('0xf'));var toCsv=require(_0xbf6b('0xa'));var querystring=require(_0xbf6b('0x10'));var Papa=require(_0xbf6b('0x11'));var Redis=require(_0xbf6b('0x12'));var authService=require(_0xbf6b('0x13'));var qs=require('../../components/parsers/qs');var as=require(_0xbf6b('0x14'));var hardwareService=require(_0xbf6b('0x15'));var logger=require(_0xbf6b('0x16'))(_0xbf6b('0x17'));var utils=require(_0xbf6b('0x18'));var config=require(_0xbf6b('0x19'));var licenseUtil=require(_0xbf6b('0x1a'));var db=require(_0xbf6b('0x1b'))['db'];function respondWithStatusCode(_0x1390ac,_0x50af2d){_0x50af2d=_0x50af2d||0xcc;return function(_0x1d7147){if(_0x1d7147){return _0x1390ac['sendStatus'](_0x50af2d);}return _0x1390ac['status'](_0x50af2d)[_0xbf6b('0x1c')]();};}function respondWithResult(_0x11368c,_0x162c67){_0x162c67=_0x162c67||0xc8;return function(_0x3c140d){if(_0x3c140d){return _0x11368c['status'](_0x162c67)[_0xbf6b('0x1d')](_0x3c140d);}};}function respondWithFilteredResult(_0x168410,_0x190d60){return function(_0x1ef579){if(_0x1ef579){var _0x372544=_0x1ef579[_0xbf6b('0x1e')],_0x892ad7=_0x190d60[_0xbf6b('0x1f')],_0x1a1712=_0x190d60['offset']+_0x190d60[_0xbf6b('0x20')],_0x274547;if(_0x1a1712>=_0x372544){_0x1a1712=_0x372544;_0x274547=0xc8;}else{_0x274547=0xce;}_0x168410['status'](_0x274547);return _0x168410[_0xbf6b('0x21')](_0xbf6b('0x22'),_0x892ad7+'-'+_0x1a1712+'/'+_0x372544)['json'](_0x1ef579);}return null;};}function patchUpdates(_0x122b18){return function(_0x2cd985){try{jsonpatch[_0xbf6b('0x23')](_0x2cd985,_0x122b18,!![]);}catch(_0x2d6d42){return BPromise[_0xbf6b('0x24')](_0x2d6d42);}return _0x2cd985[_0xbf6b('0x25')]();};}function saveUpdates(_0x3fe61d,_0x498651){return function(_0x296818){if(_0x296818){return _0x296818['update'](_0x3fe61d)[_0xbf6b('0x26')](function(_0xa25cb1){return _0xa25cb1;});}return null;};}function removeEntity(_0x403556,_0x2f201d){return function(_0x59b139){if(_0x59b139){return _0x59b139[_0xbf6b('0x27')]()[_0xbf6b('0x26')](function(){_0x403556['status'](0xcc)[_0xbf6b('0x1c')]();});}};}function handleEntityNotFound(_0x4d9524,_0x80f05f){return function(_0x2b6205){if(!_0x2b6205){_0x4d9524['sendStatus'](0x194);}return _0x2b6205;};}function handleError(_0x4c50de,_0x1c3d50){_0x1c3d50=_0x1c3d50||0x1f4;return function(_0x527bfd){logger['error'](_0x527bfd['stack']);if(_0x527bfd['name']){delete _0x527bfd[_0xbf6b('0x28')];}_0x4c50de[_0xbf6b('0x29')](_0x1c3d50)[_0xbf6b('0x2a')](_0x527bfd);};}exports[_0xbf6b('0x2b')]=function(_0x229cab,_0x11343c){var _0x3363e0={},_0x367753={},_0x37956e={'count':0x0,'rows':[]};var _0x73062b=_[_0xbf6b('0x2c')](db[_0xbf6b('0x2d')][_0xbf6b('0x2e')],function(_0x353c9a){return{'name':_0x353c9a[_0xbf6b('0x2f')],'type':_0x353c9a[_0xbf6b('0x30')][_0xbf6b('0x31')]};});_0x367753[_0xbf6b('0x32')]=_['map'](_0x73062b,_0xbf6b('0x28'));_0x367753[_0xbf6b('0x33')]=_[_0xbf6b('0x34')](_0x229cab[_0xbf6b('0x33')]);_0x367753[_0xbf6b('0x35')]=_[_0xbf6b('0x36')](_0x367753[_0xbf6b('0x32')],_0x367753[_0xbf6b('0x33')]);_0x3363e0[_0xbf6b('0x37')]=_[_0xbf6b('0x36')](_0x367753[_0xbf6b('0x32')],qs['fields'](_0x229cab[_0xbf6b('0x33')][_0xbf6b('0x38')]));_0x3363e0[_0xbf6b('0x37')]=_0x3363e0[_0xbf6b('0x37')][_0xbf6b('0x39')]?_0x3363e0[_0xbf6b('0x37')]:_0x367753['model'];if(!_0x229cab[_0xbf6b('0x33')][_0xbf6b('0x3a')](_0xbf6b('0x3b'))){_0x3363e0[_0xbf6b('0x20')]=qs[_0xbf6b('0x20')](_0x229cab['query'][_0xbf6b('0x20')]);_0x3363e0[_0xbf6b('0x1f')]=qs[_0xbf6b('0x1f')](_0x229cab[_0xbf6b('0x33')][_0xbf6b('0x1f')]);}_0x3363e0[_0xbf6b('0x3c')]=qs[_0xbf6b('0x3d')](_0x229cab[_0xbf6b('0x33')][_0xbf6b('0x3d')]);_0x3363e0[_0xbf6b('0x3e')]=qs[_0xbf6b('0x35')](_[_0xbf6b('0x3f')](_0x229cab['query'],_0x367753[_0xbf6b('0x35')]),_0x73062b);if(_0x229cab[_0xbf6b('0x33')][_0xbf6b('0x40')]){_0x3363e0[_0xbf6b('0x3e')]=_['merge'](_0x3363e0[_0xbf6b('0x3e')],{'$or':_[_0xbf6b('0x2c')](_0x73062b,function(_0x106267){if(_0x106267['type']!==_0xbf6b('0x41')){var _0x131716={};_0x131716[_0x106267[_0xbf6b('0x28')]]={'$like':'%'+_0x229cab[_0xbf6b('0x33')]['filter']+'%'};return _0x131716;}})});}_0x3363e0=_[_0xbf6b('0x42')]({},_0x3363e0,_0x229cab['options']);var _0x16ebc6={'where':_0x3363e0[_0xbf6b('0x3e')]};return db[_0xbf6b('0x2d')][_0xbf6b('0x1e')](_0x16ebc6)[_0xbf6b('0x26')](function(_0x3fdc91){_0x37956e[_0xbf6b('0x1e')]=_0x3fdc91;if(_0x229cab['query'][_0xbf6b('0x43')]){_0x3363e0[_0xbf6b('0x44')]=[{'all':!![]}];}return db[_0xbf6b('0x2d')][_0xbf6b('0x45')](_0x3363e0);})[_0xbf6b('0x26')](function(_0x12e7de){_0x37956e['rows']=_0x12e7de;return _0x37956e;})[_0xbf6b('0x26')](respondWithFilteredResult(_0x11343c,_0x3363e0))[_0xbf6b('0x46')](handleError(_0x11343c,null));};exports[_0xbf6b('0x47')]=function(_0x27a5c0,_0x350a60){var _0x2f3220={'raw':!![],'where':{'id':_0x27a5c0[_0xbf6b('0x48')]['id']}},_0xc44d72={};_0xc44d72['model']=_[_0xbf6b('0x34')](db[_0xbf6b('0x2d')][_0xbf6b('0x2e')]);_0xc44d72['query']=_['keys'](_0x27a5c0[_0xbf6b('0x33')]);_0xc44d72[_0xbf6b('0x49')]=_['intersection'](_0xc44d72[_0xbf6b('0x32')],_0xc44d72[_0xbf6b('0x33')]);_0x2f3220['attributes']=_[_0xbf6b('0x36')](_0xc44d72[_0xbf6b('0x32')],qs[_0xbf6b('0x38')](_0x27a5c0['query']['fields']));_0x2f3220[_0xbf6b('0x37')]=_0x2f3220['attributes'][_0xbf6b('0x39')]?_0x2f3220[_0xbf6b('0x37')]:_0xc44d72[_0xbf6b('0x32')];if(_0x27a5c0[_0xbf6b('0x33')][_0xbf6b('0x43')]){_0x2f3220[_0xbf6b('0x44')]=[{'all':!![]}];}_0x2f3220=_[_0xbf6b('0x42')]({},_0x2f3220,_0x27a5c0[_0xbf6b('0x4a')]);return db[_0xbf6b('0x2d')][_0xbf6b('0x4b')](_0x2f3220)[_0xbf6b('0x26')](handleEntityNotFound(_0x350a60,null))[_0xbf6b('0x26')](respondWithResult(_0x350a60,null))[_0xbf6b('0x46')](handleError(_0x350a60,null));};exports[_0xbf6b('0x4c')]=function(_0x28324c,_0x33ba2a){return db[_0xbf6b('0x2d')]['create'](_0x28324c['body'],{})[_0xbf6b('0x26')](respondWithResult(_0x33ba2a,0xc9))['catch'](handleError(_0x33ba2a,null));};exports['update']=function(_0x554760,_0x55f0c6){if(_0x554760[_0xbf6b('0x4d')]['id']){delete _0x554760[_0xbf6b('0x4d')]['id'];}return db[_0xbf6b('0x2d')]['find']({'where':{'id':_0x554760[_0xbf6b('0x48')]['id']}})[_0xbf6b('0x26')](handleEntityNotFound(_0x55f0c6,null))[_0xbf6b('0x26')](saveUpdates(_0x554760[_0xbf6b('0x4d')],null))[_0xbf6b('0x26')](respondWithResult(_0x55f0c6,null))[_0xbf6b('0x46')](handleError(_0x55f0c6,null));};exports[_0xbf6b('0x27')]=function(_0x2cd9ec,_0x2c4c5b){return db[_0xbf6b('0x2d')]['find']({'where':{'id':_0x2cd9ec[_0xbf6b('0x48')]['id']}})[_0xbf6b('0x26')](handleEntityNotFound(_0x2c4c5b,null))[_0xbf6b('0x26')](removeEntity(_0x2c4c5b,null))[_0xbf6b('0x46')](handleError(_0x2c4c5b,null));};exports[_0xbf6b('0x4e')]=function(_0x2f5f12,_0xacd4a3){return db[_0xbf6b('0x2d')]['describe']()[_0xbf6b('0x26')](respondWithResult(_0xacd4a3,null))[_0xbf6b('0x46')](handleError(_0xacd4a3,null));};