c5979cd1482f95c52d40d3b7a9b96da676f90f0c
[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 _0xc796=['key','model','map','query','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','merge','VIRTUAL','filter','options','includeAll','findAll','rows','catch','show','params','keys','include','find','create','body','describe','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','ejs','lodash','squel','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../mysqldb','status','count','offset','limit','set','Content-Range','apply','reject','save','update','then','destroy','sendStatus','error','name','send','VoiceDialReport','rawAttributes','fieldName','type'];(function(_0x1a32dd,_0x505b5b){var _0x549f10=function(_0x8bbf46){while(--_0x8bbf46){_0x1a32dd['push'](_0x1a32dd['shift']());}};_0x549f10(++_0x505b5b);}(_0xc796,0x15b));var _0x6c79=function(_0x3b5049,_0x495a94){_0x3b5049=_0x3b5049-0x0;var _0x12454e=_0xc796[_0x3b5049];return _0x12454e;};'use strict';var pdf=require(_0x6c79('0x0'));var emlformat=require(_0x6c79('0x1'));var rimraf=require('rimraf');var zipdir=require(_0x6c79('0x2'));var jsonpatch=require(_0x6c79('0x3'));var rp=require(_0x6c79('0x4'));var moment=require(_0x6c79('0x5'));var BPromise=require(_0x6c79('0x6'));var Mustache=require(_0x6c79('0x7'));var util=require(_0x6c79('0x8'));var path=require(_0x6c79('0x9'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x6c79('0xa'));var fs=require('fs');var _=require(_0x6c79('0xb'));var squel=require(_0x6c79('0xc'));var crypto=require(_0x6c79('0xd'));var jsforce=require(_0x6c79('0xe'));var deskjs=require(_0x6c79('0xf'));var toCsv=require(_0x6c79('0x10'));var querystring=require(_0x6c79('0x11'));var Papa=require(_0x6c79('0x12'));var Redis=require(_0x6c79('0x13'));var authService=require(_0x6c79('0x14'));var qs=require(_0x6c79('0x15'));var as=require(_0x6c79('0x16'));var hardwareService=require(_0x6c79('0x17'));var logger=require('../../config/logger')(_0x6c79('0x18'));var utils=require(_0x6c79('0x19'));var config=require(_0x6c79('0x1a'));var db=require(_0x6c79('0x1b'))['db'];function respondWithStatusCode(_0x4c910f,_0xe6ed72){_0xe6ed72=_0xe6ed72||0xcc;return function(_0x3a72a9){if(_0x3a72a9){return _0x4c910f['sendStatus'](_0xe6ed72);}return _0x4c910f[_0x6c79('0x1c')](_0xe6ed72)['end']();};}function respondWithResult(_0x372f1e,_0x5c9c86){_0x5c9c86=_0x5c9c86||0xc8;return function(_0x3729e1){if(_0x3729e1){return _0x372f1e[_0x6c79('0x1c')](_0x5c9c86)['json'](_0x3729e1);}};}function respondWithFilteredResult(_0x4c7aff,_0x297f60){return function(_0x16c7ae){if(_0x16c7ae){var _0x20588a=_0x16c7ae[_0x6c79('0x1d')],_0x49a4b3=_0x297f60[_0x6c79('0x1e')],_0x281ef8=_0x297f60[_0x6c79('0x1e')]+_0x297f60[_0x6c79('0x1f')],_0x34b096;if(_0x281ef8>=_0x20588a){_0x281ef8=_0x20588a;_0x34b096=0xc8;}else{_0x34b096=0xce;}_0x4c7aff[_0x6c79('0x1c')](_0x34b096);return _0x4c7aff[_0x6c79('0x20')](_0x6c79('0x21'),_0x49a4b3+'-'+_0x281ef8+'/'+_0x20588a)['json'](_0x16c7ae);}return null;};}function patchUpdates(_0xf9762c){return function(_0x1994b1){try{jsonpatch[_0x6c79('0x22')](_0x1994b1,_0xf9762c,!![]);}catch(_0x30c079){return BPromise[_0x6c79('0x23')](_0x30c079);}return _0x1994b1[_0x6c79('0x24')]();};}function saveUpdates(_0x2abb51,_0x55597a){return function(_0x1b4997){if(_0x1b4997){return _0x1b4997[_0x6c79('0x25')](_0x2abb51)[_0x6c79('0x26')](function(_0xa0d72e){return _0xa0d72e;});}return null;};}function removeEntity(_0x21be54,_0x1e68ed){return function(_0x3bfa54){if(_0x3bfa54){return _0x3bfa54[_0x6c79('0x27')]()['then'](function(){_0x21be54[_0x6c79('0x1c')](0xcc)['end']();});}};}function handleEntityNotFound(_0x22bffd,_0x426533){return function(_0x30f244){if(!_0x30f244){_0x22bffd[_0x6c79('0x28')](0x194);}return _0x30f244;};}function handleError(_0x5170b0,_0x18a1da){_0x18a1da=_0x18a1da||0x1f4;return function(_0x5ee64b){logger[_0x6c79('0x29')](_0x5ee64b['stack']);if(_0x5ee64b[_0x6c79('0x2a')]){delete _0x5ee64b[_0x6c79('0x2a')];}_0x5170b0['status'](_0x18a1da)[_0x6c79('0x2b')](_0x5ee64b);};}exports['index']=function(_0x2bdcfe,_0xa0303e){var _0x1f6c91={},_0x3f2fa4={},_0x450827={'count':0x0,'rows':[]};var _0x3aae53=_['map'](db[_0x6c79('0x2c')][_0x6c79('0x2d')],function(_0x3d4d8c){return{'name':_0x3d4d8c[_0x6c79('0x2e')],'type':_0x3d4d8c[_0x6c79('0x2f')][_0x6c79('0x30')]};});_0x3f2fa4[_0x6c79('0x31')]=_[_0x6c79('0x32')](_0x3aae53,'name');_0x3f2fa4[_0x6c79('0x33')]=_['keys'](_0x2bdcfe[_0x6c79('0x33')]);_0x3f2fa4['filters']=_[_0x6c79('0x34')](_0x3f2fa4[_0x6c79('0x31')],_0x3f2fa4[_0x6c79('0x33')]);_0x1f6c91['attributes']=_[_0x6c79('0x34')](_0x3f2fa4[_0x6c79('0x31')],qs[_0x6c79('0x35')](_0x2bdcfe[_0x6c79('0x33')][_0x6c79('0x35')]));_0x1f6c91[_0x6c79('0x36')]=_0x1f6c91['attributes'][_0x6c79('0x37')]?_0x1f6c91[_0x6c79('0x36')]:_0x3f2fa4[_0x6c79('0x31')];if(!_0x2bdcfe[_0x6c79('0x33')][_0x6c79('0x38')](_0x6c79('0x39'))){_0x1f6c91[_0x6c79('0x1f')]=qs[_0x6c79('0x1f')](_0x2bdcfe[_0x6c79('0x33')][_0x6c79('0x1f')]);_0x1f6c91['offset']=qs[_0x6c79('0x1e')](_0x2bdcfe[_0x6c79('0x33')][_0x6c79('0x1e')]);}_0x1f6c91[_0x6c79('0x3a')]=qs[_0x6c79('0x3b')](_0x2bdcfe[_0x6c79('0x33')][_0x6c79('0x3b')]);_0x1f6c91[_0x6c79('0x3c')]=qs[_0x6c79('0x3d')](_[_0x6c79('0x3e')](_0x2bdcfe[_0x6c79('0x33')],_0x3f2fa4['filters']),_0x3aae53);if(_0x2bdcfe['query']['filter']){_0x1f6c91[_0x6c79('0x3c')]=_[_0x6c79('0x3f')](_0x1f6c91[_0x6c79('0x3c')],{'$or':_[_0x6c79('0x32')](_0x3aae53,function(_0x3f6921){if(_0x3f6921['type']!==_0x6c79('0x40')){var _0x2316fb={};_0x2316fb[_0x3f6921['name']]={'$like':'%'+_0x2bdcfe['query'][_0x6c79('0x41')]+'%'};return _0x2316fb;}})});}_0x1f6c91=_[_0x6c79('0x3f')]({},_0x1f6c91,_0x2bdcfe[_0x6c79('0x42')]);var _0x8b5a68={'where':_0x1f6c91[_0x6c79('0x3c')]};return db[_0x6c79('0x2c')][_0x6c79('0x1d')](_0x8b5a68)[_0x6c79('0x26')](function(_0x3084ed){_0x450827['count']=_0x3084ed;if(_0x2bdcfe['query'][_0x6c79('0x43')]){_0x1f6c91['include']=[{'all':!![]}];}return db[_0x6c79('0x2c')][_0x6c79('0x44')](_0x1f6c91);})[_0x6c79('0x26')](function(_0x1a31bd){_0x450827[_0x6c79('0x45')]=_0x1a31bd;return _0x450827;})[_0x6c79('0x26')](respondWithFilteredResult(_0xa0303e,_0x1f6c91))[_0x6c79('0x46')](handleError(_0xa0303e,null));};exports[_0x6c79('0x47')]=function(_0x496844,_0xeffa2){var _0x5d0a67={'raw':!![],'where':{'id':_0x496844[_0x6c79('0x48')]['id']}},_0x23049a={};_0x23049a[_0x6c79('0x31')]=_['keys'](db[_0x6c79('0x2c')][_0x6c79('0x2d')]);_0x23049a[_0x6c79('0x33')]=_[_0x6c79('0x49')](_0x496844[_0x6c79('0x33')]);_0x23049a[_0x6c79('0x3d')]=_['intersection'](_0x23049a['model'],_0x23049a[_0x6c79('0x33')]);_0x5d0a67[_0x6c79('0x36')]=_['intersection'](_0x23049a['model'],qs[_0x6c79('0x35')](_0x496844[_0x6c79('0x33')][_0x6c79('0x35')]));_0x5d0a67['attributes']=_0x5d0a67[_0x6c79('0x36')][_0x6c79('0x37')]?_0x5d0a67[_0x6c79('0x36')]:_0x23049a[_0x6c79('0x31')];if(_0x496844[_0x6c79('0x33')]['includeAll']){_0x5d0a67[_0x6c79('0x4a')]=[{'all':!![]}];}_0x5d0a67=_[_0x6c79('0x3f')]({},_0x5d0a67,_0x496844[_0x6c79('0x42')]);return db['VoiceDialReport'][_0x6c79('0x4b')](_0x5d0a67)[_0x6c79('0x26')](handleEntityNotFound(_0xeffa2,null))[_0x6c79('0x26')](respondWithResult(_0xeffa2,null))[_0x6c79('0x46')](handleError(_0xeffa2,null));};exports[_0x6c79('0x4c')]=function(_0x493199,_0x302cc8){return db[_0x6c79('0x2c')][_0x6c79('0x4c')](_0x493199[_0x6c79('0x4d')],{})[_0x6c79('0x26')](respondWithResult(_0x302cc8,0xc9))['catch'](handleError(_0x302cc8,null));};exports[_0x6c79('0x25')]=function(_0x7966b3,_0xc28341){if(_0x7966b3[_0x6c79('0x4d')]['id']){delete _0x7966b3[_0x6c79('0x4d')]['id'];}return db[_0x6c79('0x2c')][_0x6c79('0x4b')]({'where':{'id':_0x7966b3['params']['id']}})['then'](handleEntityNotFound(_0xc28341,null))[_0x6c79('0x26')](saveUpdates(_0x7966b3[_0x6c79('0x4d')],null))[_0x6c79('0x26')](respondWithResult(_0xc28341,null))[_0x6c79('0x46')](handleError(_0xc28341,null));};exports[_0x6c79('0x27')]=function(_0xf0edf3,_0x25b1d2){return db[_0x6c79('0x2c')][_0x6c79('0x4b')]({'where':{'id':_0xf0edf3[_0x6c79('0x48')]['id']}})['then'](handleEntityNotFound(_0x25b1d2,null))[_0x6c79('0x26')](removeEntity(_0x25b1d2,null))[_0x6c79('0x46')](handleError(_0x25b1d2,null));};exports[_0x6c79('0x4e')]=function(_0x2d9d8f,_0x21df3b){return db[_0x6c79('0x2c')][_0x6c79('0x4e')]()['then'](respondWithResult(_0x21df3b,null))[_0x6c79('0x46')](handleError(_0x21df3b,null));};