ae2eb98faedd62f87017cad5fc5284c1e4615abf
[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 _0x508f=['moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','reject','then','destroy','error','name','send','VoiceDialReport','rawAttributes','type','key','model','map','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','findAll','rows','params','include','find','catch','create','update','body','describe','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0x508f,0x162));var _0xf508=function(_0x2641f9,_0x26715f){_0x2641f9=_0x2641f9-0x0;var _0x585741=_0x508f[_0x2641f9];return _0x585741;};'use strict';var pdf=require(_0xf508('0x0'));var emlformat=require(_0xf508('0x1'));var rimraf=require(_0xf508('0x2'));var zipdir=require(_0xf508('0x3'));var jsonpatch=require(_0xf508('0x4'));var rp=require(_0xf508('0x5'));var moment=require(_0xf508('0x6'));var BPromise=require(_0xf508('0x7'));var Mustache=require(_0xf508('0x8'));var util=require(_0xf508('0x9'));var path=require(_0xf508('0xa'));var sox=require(_0xf508('0xb'));var csv=require(_0xf508('0xc'));var ejs=require(_0xf508('0xd'));var fs=require('fs');var _=require(_0xf508('0xe'));var squel=require('squel');var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0xf508('0xc'));var querystring=require('querystring');var Papa=require(_0xf508('0xf'));var Redis=require(_0xf508('0x10'));var authService=require(_0xf508('0x11'));var qs=require('../../components/parsers/qs');var as=require(_0xf508('0x12'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xf508('0x13'))(_0xf508('0x14'));var utils=require(_0xf508('0x15'));var config=require('../../config/environment');var licenseUtil=require(_0xf508('0x16'));var db=require(_0xf508('0x17'))['db'];function respondWithStatusCode(_0x20f5e9,_0x1834bd){_0x1834bd=_0x1834bd||0xcc;return function(_0x300179){if(_0x300179){return _0x20f5e9[_0xf508('0x18')](_0x1834bd);}return _0x20f5e9[_0xf508('0x19')](_0x1834bd)[_0xf508('0x1a')]();};}function respondWithResult(_0x1013e1,_0xbe8cba){_0xbe8cba=_0xbe8cba||0xc8;return function(_0x364106){if(_0x364106){return _0x1013e1[_0xf508('0x19')](_0xbe8cba)[_0xf508('0x1b')](_0x364106);}};}function respondWithFilteredResult(_0x3063a4,_0x5b8625){return function(_0x55f6b8){if(_0x55f6b8){var _0x31bcb2=_0x55f6b8[_0xf508('0x1c')],_0x45e1c9=_0x5b8625[_0xf508('0x1d')],_0x86efbb=_0x5b8625['offset']+_0x5b8625[_0xf508('0x1e')],_0x508c3d;if(_0x86efbb>=_0x31bcb2){_0x86efbb=_0x31bcb2;_0x508c3d=0xc8;}else{_0x508c3d=0xce;}_0x3063a4[_0xf508('0x19')](_0x508c3d);return _0x3063a4[_0xf508('0x1f')](_0xf508('0x20'),_0x45e1c9+'-'+_0x86efbb+'/'+_0x31bcb2)[_0xf508('0x1b')](_0x55f6b8);}return null;};}function patchUpdates(_0x448c71){return function(_0x333ca7){try{jsonpatch[_0xf508('0x21')](_0x333ca7,_0x448c71,!![]);}catch(_0x169bef){return BPromise[_0xf508('0x22')](_0x169bef);}return _0x333ca7['save']();};}function saveUpdates(_0x54943c,_0x5eacc3){return function(_0x1b0143){if(_0x1b0143){return _0x1b0143['update'](_0x54943c)[_0xf508('0x23')](function(_0xa0b9e0){return _0xa0b9e0;});}return null;};}function removeEntity(_0x2848bf,_0x1496d1){return function(_0x386e2e){if(_0x386e2e){return _0x386e2e[_0xf508('0x24')]()[_0xf508('0x23')](function(){_0x2848bf[_0xf508('0x19')](0xcc)[_0xf508('0x1a')]();});}};}function handleEntityNotFound(_0x4e90ad,_0x135b9f){return function(_0x5e9686){if(!_0x5e9686){_0x4e90ad[_0xf508('0x18')](0x194);}return _0x5e9686;};}function handleError(_0x34d2b4,_0x3d5cdc){_0x3d5cdc=_0x3d5cdc||0x1f4;return function(_0x527bc0){logger[_0xf508('0x25')](_0x527bc0['stack']);if(_0x527bc0[_0xf508('0x26')]){delete _0x527bc0[_0xf508('0x26')];}_0x34d2b4[_0xf508('0x19')](_0x3d5cdc)[_0xf508('0x27')](_0x527bc0);};}exports['index']=function(_0x294aa6,_0x5c3762){var _0x170d7c={},_0x540fc2={},_0x53811e={'count':0x0,'rows':[]};var _0x4b1895=_['map'](db[_0xf508('0x28')][_0xf508('0x29')],function(_0x4a72f0){return{'name':_0x4a72f0['fieldName'],'type':_0x4a72f0[_0xf508('0x2a')][_0xf508('0x2b')]};});_0x540fc2[_0xf508('0x2c')]=_[_0xf508('0x2d')](_0x4b1895,_0xf508('0x26'));_0x540fc2[_0xf508('0x2e')]=_[_0xf508('0x2f')](_0x294aa6['query']);_0x540fc2[_0xf508('0x30')]=_[_0xf508('0x31')](_0x540fc2['model'],_0x540fc2[_0xf508('0x2e')]);_0x170d7c[_0xf508('0x32')]=_[_0xf508('0x31')](_0x540fc2['model'],qs[_0xf508('0x33')](_0x294aa6[_0xf508('0x2e')][_0xf508('0x33')]));_0x170d7c[_0xf508('0x32')]=_0x170d7c[_0xf508('0x32')][_0xf508('0x34')]?_0x170d7c[_0xf508('0x32')]:_0x540fc2[_0xf508('0x2c')];if(!_0x294aa6[_0xf508('0x2e')][_0xf508('0x35')]('nolimit')){_0x170d7c[_0xf508('0x1e')]=qs[_0xf508('0x1e')](_0x294aa6[_0xf508('0x2e')][_0xf508('0x1e')]);_0x170d7c[_0xf508('0x1d')]=qs[_0xf508('0x1d')](_0x294aa6[_0xf508('0x2e')][_0xf508('0x1d')]);}_0x170d7c['order']=qs[_0xf508('0x36')](_0x294aa6[_0xf508('0x2e')]['sort']);_0x170d7c[_0xf508('0x37')]=qs[_0xf508('0x30')](_[_0xf508('0x38')](_0x294aa6[_0xf508('0x2e')],_0x540fc2['filters']),_0x4b1895);if(_0x294aa6['query'][_0xf508('0x39')]){_0x170d7c['where']=_[_0xf508('0x3a')](_0x170d7c['where'],{'$or':_[_0xf508('0x2d')](_0x4b1895,function(_0x26d833){if(_0x26d833[_0xf508('0x2a')]!==_0xf508('0x3b')){var _0x324a52={};_0x324a52[_0x26d833[_0xf508('0x26')]]={'$like':'%'+_0x294aa6['query'][_0xf508('0x39')]+'%'};return _0x324a52;}})});}_0x170d7c=_[_0xf508('0x3a')]({},_0x170d7c,_0x294aa6[_0xf508('0x3c')]);var _0x9472a1={'where':_0x170d7c['where']};return db[_0xf508('0x28')][_0xf508('0x1c')](_0x9472a1)[_0xf508('0x23')](function(_0x101f37){_0x53811e[_0xf508('0x1c')]=_0x101f37;if(_0x294aa6[_0xf508('0x2e')][_0xf508('0x3d')]){_0x170d7c['include']=[{'all':!![]}];}return db[_0xf508('0x28')][_0xf508('0x3e')](_0x170d7c);})[_0xf508('0x23')](function(_0x5a9055){_0x53811e[_0xf508('0x3f')]=_0x5a9055;return _0x53811e;})[_0xf508('0x23')](respondWithFilteredResult(_0x5c3762,_0x170d7c))['catch'](handleError(_0x5c3762,null));};exports['show']=function(_0xc87b84,_0x297d9f){var _0x16b6e2={'raw':!![],'where':{'id':_0xc87b84[_0xf508('0x40')]['id']}},_0x5a39be={};_0x5a39be['model']=_[_0xf508('0x2f')](db[_0xf508('0x28')][_0xf508('0x29')]);_0x5a39be[_0xf508('0x2e')]=_[_0xf508('0x2f')](_0xc87b84[_0xf508('0x2e')]);_0x5a39be[_0xf508('0x30')]=_[_0xf508('0x31')](_0x5a39be[_0xf508('0x2c')],_0x5a39be[_0xf508('0x2e')]);_0x16b6e2[_0xf508('0x32')]=_[_0xf508('0x31')](_0x5a39be[_0xf508('0x2c')],qs['fields'](_0xc87b84['query'][_0xf508('0x33')]));_0x16b6e2[_0xf508('0x32')]=_0x16b6e2[_0xf508('0x32')][_0xf508('0x34')]?_0x16b6e2[_0xf508('0x32')]:_0x5a39be['model'];if(_0xc87b84[_0xf508('0x2e')][_0xf508('0x3d')]){_0x16b6e2[_0xf508('0x41')]=[{'all':!![]}];}_0x16b6e2=_[_0xf508('0x3a')]({},_0x16b6e2,_0xc87b84[_0xf508('0x3c')]);return db['VoiceDialReport'][_0xf508('0x42')](_0x16b6e2)[_0xf508('0x23')](handleEntityNotFound(_0x297d9f,null))[_0xf508('0x23')](respondWithResult(_0x297d9f,null))[_0xf508('0x43')](handleError(_0x297d9f,null));};exports[_0xf508('0x44')]=function(_0x275850,_0x4a8b1a){return db[_0xf508('0x28')]['create'](_0x275850['body'],{})[_0xf508('0x23')](respondWithResult(_0x4a8b1a,0xc9))['catch'](handleError(_0x4a8b1a,null));};exports[_0xf508('0x45')]=function(_0x16a74d,_0x5ebdf8){if(_0x16a74d[_0xf508('0x46')]['id']){delete _0x16a74d[_0xf508('0x46')]['id'];}return db[_0xf508('0x28')]['find']({'where':{'id':_0x16a74d['params']['id']}})[_0xf508('0x23')](handleEntityNotFound(_0x5ebdf8,null))[_0xf508('0x23')](saveUpdates(_0x16a74d['body'],null))['then'](respondWithResult(_0x5ebdf8,null))[_0xf508('0x43')](handleError(_0x5ebdf8,null));};exports['destroy']=function(_0x4dbb9f,_0xa4b196){return db[_0xf508('0x28')][_0xf508('0x42')]({'where':{'id':_0x4dbb9f[_0xf508('0x40')]['id']}})[_0xf508('0x23')](handleEntityNotFound(_0xa4b196,null))['then'](removeEntity(_0xa4b196,null))[_0xf508('0x43')](handleError(_0xa4b196,null));};exports[_0xf508('0x47')]=function(_0x5f50e3,_0x1c39d3){return db[_0xf508('0x28')][_0xf508('0x47')]()['then'](respondWithResult(_0x1c39d3,null))['catch'](handleError(_0x1c39d3,null));};