daca450164c717a34d75e02437f1853d75f7dfa4
[motion2.git] / server / api / voiceTransferReport / voiceTransferReport.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 _0x520b=['stack','name','send','index','map','VoiceTransferReport','rawAttributes','fieldName','type','key','model','query','filters','intersection','attributes','length','hasOwnProperty','nolimit','order','sort','where','merge','filter','options','count','includeAll','findAll','catch','show','keys','fields','include','find','create','body','describe','eml-format','rimraf','zip-dir','request-promise','moment','mustache','path','sox','to-csv','ejs','fs-extra','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','end','status','json','offset','undefined','limit','set','Content-Range','apply','reject','save','update','then','destroy','error'];(function(_0x4c16b2,_0x217bd9){var _0x808d48=function(_0x42f5ea){while(--_0x42f5ea){_0x4c16b2['push'](_0x4c16b2['shift']());}};_0x808d48(++_0x217bd9);}(_0x520b,0xbe));var _0xb520=function(_0x12d812,_0x496bb7){_0x12d812=_0x12d812-0x0;var _0x3711ab=_0x520b[_0x12d812];return _0x3711ab;};'use strict';var emlformat=require(_0xb520('0x0'));var rimraf=require(_0xb520('0x1'));var zipdir=require(_0xb520('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xb520('0x3'));var moment=require(_0xb520('0x4'));var BPromise=require('bluebird');var Mustache=require(_0xb520('0x5'));var util=require('util');var path=require(_0xb520('0x6'));var sox=require(_0xb520('0x7'));var csv=require(_0xb520('0x8'));var ejs=require(_0xb520('0x9'));var fs=require('fs');var fs_extra=require(_0xb520('0xa'));var _=require('lodash');var squel=require('squel');var crypto=require(_0xb520('0xb'));var jsforce=require(_0xb520('0xc'));var deskjs=require(_0xb520('0xd'));var toCsv=require(_0xb520('0x8'));var querystring=require(_0xb520('0xe'));var Papa=require(_0xb520('0xf'));var Redis=require('ioredis');var authService=require(_0xb520('0x10'));var qs=require(_0xb520('0x11'));var as=require(_0xb520('0x12'));var hardwareService=require(_0xb520('0x13'));var logger=require(_0xb520('0x14'))(_0xb520('0x15'));var utils=require('../../config/utils');var config=require(_0xb520('0x16'));var licenseUtil=require(_0xb520('0x17'));var db=require(_0xb520('0x18'))['db'];function respondWithStatusCode(_0x9595d,_0x24cdaa){_0x24cdaa=_0x24cdaa||0xcc;return function(_0x5f4189){if(_0x5f4189){return _0x9595d[_0xb520('0x19')](_0x24cdaa);}return _0x9595d['status'](_0x24cdaa)[_0xb520('0x1a')]();};}function respondWithResult(_0x4c1125,_0x8fff3a){_0x8fff3a=_0x8fff3a||0xc8;return function(_0x1f6bf6){if(_0x1f6bf6){return _0x4c1125[_0xb520('0x1b')](_0x8fff3a)[_0xb520('0x1c')](_0x1f6bf6);}};}function respondWithFilteredResult(_0x545e1d,_0x389486){return function(_0x598578){if(_0x598578){var _0x439283=typeof _0x389486[_0xb520('0x1d')]===_0xb520('0x1e')&&typeof _0x389486[_0xb520('0x1f')]===_0xb520('0x1e');var _0x6afe2f=_0x598578['count'];var _0x2a8641=_0x439283?0x0:_0x389486[_0xb520('0x1d')];var _0x2d79f4=_0x439283?_0x598578['count']:_0x389486[_0xb520('0x1d')]+_0x389486[_0xb520('0x1f')];var _0x4baf77;if(_0x2d79f4>=_0x6afe2f){_0x2d79f4=_0x6afe2f;_0x4baf77=0xc8;}else{_0x4baf77=0xce;}_0x545e1d[_0xb520('0x1b')](_0x4baf77);return _0x545e1d[_0xb520('0x20')](_0xb520('0x21'),_0x2a8641+'-'+_0x2d79f4+'/'+_0x6afe2f)[_0xb520('0x1c')](_0x598578);}return null;};}function patchUpdates(_0x2abc54){return function(_0x593dbd){try{jsonpatch[_0xb520('0x22')](_0x593dbd,_0x2abc54,!![]);}catch(_0x3044eb){return BPromise[_0xb520('0x23')](_0x3044eb);}return _0x593dbd[_0xb520('0x24')]();};}function saveUpdates(_0x3cb688,_0xb35f46){return function(_0x4e0bfb){if(_0x4e0bfb){return _0x4e0bfb[_0xb520('0x25')](_0x3cb688)[_0xb520('0x26')](function(_0x721c81){return _0x721c81;});}return null;};}function removeEntity(_0x185f90,_0x2107ea){return function(_0x130dae){if(_0x130dae){return _0x130dae[_0xb520('0x27')]()[_0xb520('0x26')](function(){_0x185f90[_0xb520('0x1b')](0xcc)[_0xb520('0x1a')]();});}};}function handleEntityNotFound(_0x581aa8,_0xdc02b7){return function(_0x310f54){if(!_0x310f54){_0x581aa8[_0xb520('0x19')](0x194);}return _0x310f54;};}function handleError(_0x17f96c,_0x26067f){_0x26067f=_0x26067f||0x1f4;return function(_0x26a7ff){logger[_0xb520('0x28')](_0x26a7ff[_0xb520('0x29')]);if(_0x26a7ff[_0xb520('0x2a')]){delete _0x26a7ff[_0xb520('0x2a')];}_0x17f96c[_0xb520('0x1b')](_0x26067f)[_0xb520('0x2b')](_0x26a7ff);};}exports[_0xb520('0x2c')]=function(_0x12bfdb,_0x31b3b5){var _0x3d40ce={},_0x144b45={},_0x2b7b46={'count':0x0,'rows':[]};var _0x6bb36e=_[_0xb520('0x2d')](db[_0xb520('0x2e')][_0xb520('0x2f')],function(_0x5842c0){return{'name':_0x5842c0[_0xb520('0x30')],'type':_0x5842c0[_0xb520('0x31')][_0xb520('0x32')]};});_0x144b45[_0xb520('0x33')]=_['map'](_0x6bb36e,_0xb520('0x2a'));_0x144b45[_0xb520('0x34')]=_['keys'](_0x12bfdb[_0xb520('0x34')]);_0x144b45[_0xb520('0x35')]=_[_0xb520('0x36')](_0x144b45[_0xb520('0x33')],_0x144b45[_0xb520('0x34')]);_0x3d40ce[_0xb520('0x37')]=_[_0xb520('0x36')](_0x144b45[_0xb520('0x33')],qs['fields'](_0x12bfdb[_0xb520('0x34')]['fields']));_0x3d40ce[_0xb520('0x37')]=_0x3d40ce[_0xb520('0x37')][_0xb520('0x38')]?_0x3d40ce[_0xb520('0x37')]:_0x144b45['model'];if(!_0x12bfdb[_0xb520('0x34')][_0xb520('0x39')](_0xb520('0x3a'))){_0x3d40ce['limit']=qs[_0xb520('0x1f')](_0x12bfdb[_0xb520('0x34')][_0xb520('0x1f')]);_0x3d40ce[_0xb520('0x1d')]=qs[_0xb520('0x1d')](_0x12bfdb[_0xb520('0x34')][_0xb520('0x1d')]);}_0x3d40ce[_0xb520('0x3b')]=qs[_0xb520('0x3c')](_0x12bfdb[_0xb520('0x34')][_0xb520('0x3c')]);_0x3d40ce[_0xb520('0x3d')]=qs['filters'](_['pick'](_0x12bfdb[_0xb520('0x34')],_0x144b45[_0xb520('0x35')]),_0x6bb36e);if(_0x12bfdb[_0xb520('0x34')]['filter']){_0x3d40ce[_0xb520('0x3d')]=_[_0xb520('0x3e')](_0x3d40ce[_0xb520('0x3d')],{'$or':_[_0xb520('0x2d')](_0x6bb36e,function(_0x289f1a){if(_0x289f1a[_0xb520('0x31')]!=='VIRTUAL'){var _0x2a5eb2={};_0x2a5eb2[_0x289f1a[_0xb520('0x2a')]]={'$like':'%'+_0x12bfdb[_0xb520('0x34')][_0xb520('0x3f')]+'%'};return _0x2a5eb2;}})});}_0x3d40ce=_['merge']({},_0x3d40ce,_0x12bfdb[_0xb520('0x40')]);var _0x1c0bf5={'where':_0x3d40ce[_0xb520('0x3d')]};return db['VoiceTransferReport'][_0xb520('0x41')](_0x1c0bf5)[_0xb520('0x26')](function(_0x476196){_0x2b7b46[_0xb520('0x41')]=_0x476196;if(_0x12bfdb[_0xb520('0x34')][_0xb520('0x42')]){_0x3d40ce['include']=[{'all':!![]}];}return db[_0xb520('0x2e')][_0xb520('0x43')](_0x3d40ce);})[_0xb520('0x26')](function(_0x6b3deb){_0x2b7b46['rows']=_0x6b3deb;return _0x2b7b46;})[_0xb520('0x26')](respondWithFilteredResult(_0x31b3b5,_0x3d40ce))[_0xb520('0x44')](handleError(_0x31b3b5,null));};exports[_0xb520('0x45')]=function(_0x3ce54b,_0xa61a9c){var _0x499bde={'raw':!![],'where':{'id':_0x3ce54b['params']['id']}},_0x23301e={};_0x23301e[_0xb520('0x33')]=_[_0xb520('0x46')](db['VoiceTransferReport']['rawAttributes']);_0x23301e[_0xb520('0x34')]=_[_0xb520('0x46')](_0x3ce54b[_0xb520('0x34')]);_0x23301e[_0xb520('0x35')]=_[_0xb520('0x36')](_0x23301e[_0xb520('0x33')],_0x23301e[_0xb520('0x34')]);_0x499bde[_0xb520('0x37')]=_[_0xb520('0x36')](_0x23301e['model'],qs[_0xb520('0x47')](_0x3ce54b['query'][_0xb520('0x47')]));_0x499bde['attributes']=_0x499bde['attributes'][_0xb520('0x38')]?_0x499bde['attributes']:_0x23301e[_0xb520('0x33')];if(_0x3ce54b[_0xb520('0x34')]['includeAll']){_0x499bde[_0xb520('0x48')]=[{'all':!![]}];}_0x499bde=_[_0xb520('0x3e')]({},_0x499bde,_0x3ce54b[_0xb520('0x40')]);return db[_0xb520('0x2e')][_0xb520('0x49')](_0x499bde)[_0xb520('0x26')](handleEntityNotFound(_0xa61a9c,null))['then'](respondWithResult(_0xa61a9c,null))['catch'](handleError(_0xa61a9c,null));};exports['create']=function(_0xc45208,_0xa1f3cc){return db[_0xb520('0x2e')][_0xb520('0x4a')](_0xc45208['body'],{})[_0xb520('0x26')](respondWithResult(_0xa1f3cc,0xc9))[_0xb520('0x44')](handleError(_0xa1f3cc,null));};exports[_0xb520('0x25')]=function(_0x42c077,_0x280e4d){if(_0x42c077[_0xb520('0x4b')]['id']){delete _0x42c077[_0xb520('0x4b')]['id'];}return db[_0xb520('0x2e')][_0xb520('0x49')]({'where':{'id':_0x42c077['params']['id']}})[_0xb520('0x26')](handleEntityNotFound(_0x280e4d,null))[_0xb520('0x26')](saveUpdates(_0x42c077[_0xb520('0x4b')],null))[_0xb520('0x26')](respondWithResult(_0x280e4d,null))[_0xb520('0x44')](handleError(_0x280e4d,null));};exports['destroy']=function(_0x4c3f5f,_0x4c1362){return db['VoiceTransferReport'][_0xb520('0x49')]({'where':{'id':_0x4c3f5f['params']['id']}})[_0xb520('0x26')](handleEntityNotFound(_0x4c1362,null))[_0xb520('0x26')](removeEntity(_0x4c1362,null))['catch'](handleError(_0x4c1362,null));};exports[_0xb520('0x4c')]=function(_0x319956,_0x32ac85){return db[_0xb520('0x2e')]['describe']()['then'](respondWithResult(_0x32ac85,null))[_0xb520('0x44')](handleError(_0x32ac85,null));};