6ea5319d6d410113cef6a7400b97302e9757d296
[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 _0xd70a=['catch','show','params','rawAttributes','create','body','find','describe','eml-format','zip-dir','moment','bluebird','mustache','util','path','ejs','fs-extra','lodash','squel','crypto','jsforce','to-csv','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','end','json','undefined','count','offset','limit','set','Content-Range','apply','reject','save','update','then','destroy','error','stack','name','send','map','VoiceTransferReport','fieldName','type','query','keys','intersection','model','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','merge','includeAll','include','findAll'];(function(_0x3fa559,_0x270827){var _0x248666=function(_0x57a5e1){while(--_0x57a5e1){_0x3fa559['push'](_0x3fa559['shift']());}};_0x248666(++_0x270827);}(_0xd70a,0x1be));var _0xad70=function(_0x383158,_0x415e43){_0x383158=_0x383158-0x0;var _0x507985=_0xd70a[_0x383158];return _0x507985;};'use strict';var emlformat=require(_0xad70('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xad70('0x1'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0xad70('0x2'));var BPromise=require(_0xad70('0x3'));var Mustache=require(_0xad70('0x4'));var util=require(_0xad70('0x5'));var path=require(_0xad70('0x6'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0xad70('0x7'));var fs=require('fs');var fs_extra=require(_0xad70('0x8'));var _=require(_0xad70('0x9'));var squel=require(_0xad70('0xa'));var crypto=require(_0xad70('0xb'));var jsforce=require(_0xad70('0xc'));var deskjs=require('desk.js');var toCsv=require(_0xad70('0xd'));var querystring=require(_0xad70('0xe'));var Papa=require(_0xad70('0xf'));var Redis=require('ioredis');var authService=require(_0xad70('0x10'));var qs=require(_0xad70('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0xad70('0x12'));var utils=require(_0xad70('0x13'));var config=require('../../config/environment');var licenseUtil=require(_0xad70('0x14'));var db=require(_0xad70('0x15'))['db'];function respondWithStatusCode(_0x1b19af,_0x366f86){_0x366f86=_0x366f86||0xcc;return function(_0x558cdd){if(_0x558cdd){return _0x1b19af[_0xad70('0x16')](_0x366f86);}return _0x1b19af[_0xad70('0x17')](_0x366f86)[_0xad70('0x18')]();};}function respondWithResult(_0x5621d2,_0x27867b){_0x27867b=_0x27867b||0xc8;return function(_0x424162){if(_0x424162){return _0x5621d2[_0xad70('0x17')](_0x27867b)[_0xad70('0x19')](_0x424162);}};}function respondWithFilteredResult(_0x19bd00,_0xadb290){return function(_0x1f8ada){if(_0x1f8ada){var _0x530e94=typeof _0xadb290['offset']===_0xad70('0x1a')&&typeof _0xadb290['limit']===_0xad70('0x1a');var _0x4cf77b=_0x1f8ada[_0xad70('0x1b')];var _0x4bb05a=_0x530e94?0x0:_0xadb290[_0xad70('0x1c')];var _0x39713c=_0x530e94?_0x1f8ada[_0xad70('0x1b')]:_0xadb290[_0xad70('0x1c')]+_0xadb290[_0xad70('0x1d')];var _0x49c726;if(_0x39713c>=_0x4cf77b){_0x39713c=_0x4cf77b;_0x49c726=0xc8;}else{_0x49c726=0xce;}_0x19bd00[_0xad70('0x17')](_0x49c726);return _0x19bd00[_0xad70('0x1e')](_0xad70('0x1f'),_0x4bb05a+'-'+_0x39713c+'/'+_0x4cf77b)[_0xad70('0x19')](_0x1f8ada);}return null;};}function patchUpdates(_0x5aa547){return function(_0x13470f){try{jsonpatch[_0xad70('0x20')](_0x13470f,_0x5aa547,!![]);}catch(_0x21d532){return BPromise[_0xad70('0x21')](_0x21d532);}return _0x13470f[_0xad70('0x22')]();};}function saveUpdates(_0x15b1f9,_0x577917){return function(_0x3fddd8){if(_0x3fddd8){return _0x3fddd8[_0xad70('0x23')](_0x15b1f9)[_0xad70('0x24')](function(_0x5041da){return _0x5041da;});}return null;};}function removeEntity(_0x31dd06,_0x257442){return function(_0x2f9473){if(_0x2f9473){return _0x2f9473[_0xad70('0x25')]()[_0xad70('0x24')](function(){_0x31dd06['status'](0xcc)[_0xad70('0x18')]();});}};}function handleEntityNotFound(_0x15ef68,_0x12dda6){return function(_0xedfbf8){if(!_0xedfbf8){_0x15ef68[_0xad70('0x16')](0x194);}return _0xedfbf8;};}function handleError(_0x459ad9,_0x1b1d0e){_0x1b1d0e=_0x1b1d0e||0x1f4;return function(_0x763127){logger[_0xad70('0x26')](_0x763127[_0xad70('0x27')]);if(_0x763127[_0xad70('0x28')]){delete _0x763127[_0xad70('0x28')];}_0x459ad9[_0xad70('0x17')](_0x1b1d0e)[_0xad70('0x29')](_0x763127);};}exports['index']=function(_0x1cec3a,_0x424853){var _0x7ac14a={},_0x3971a8={},_0x41df2={'count':0x0,'rows':[]};var _0x1f804b=_[_0xad70('0x2a')](db[_0xad70('0x2b')]['rawAttributes'],function(_0x565d22){return{'name':_0x565d22[_0xad70('0x2c')],'type':_0x565d22[_0xad70('0x2d')]['key']};});_0x3971a8['model']=_[_0xad70('0x2a')](_0x1f804b,_0xad70('0x28'));_0x3971a8[_0xad70('0x2e')]=_[_0xad70('0x2f')](_0x1cec3a[_0xad70('0x2e')]);_0x3971a8['filters']=_[_0xad70('0x30')](_0x3971a8['model'],_0x3971a8[_0xad70('0x2e')]);_0x7ac14a['attributes']=_[_0xad70('0x30')](_0x3971a8[_0xad70('0x31')],qs[_0xad70('0x32')](_0x1cec3a[_0xad70('0x2e')][_0xad70('0x32')]));_0x7ac14a[_0xad70('0x33')]=_0x7ac14a[_0xad70('0x33')][_0xad70('0x34')]?_0x7ac14a['attributes']:_0x3971a8['model'];if(!_0x1cec3a[_0xad70('0x2e')][_0xad70('0x35')](_0xad70('0x36'))){_0x7ac14a[_0xad70('0x1d')]=qs['limit'](_0x1cec3a[_0xad70('0x2e')][_0xad70('0x1d')]);_0x7ac14a[_0xad70('0x1c')]=qs[_0xad70('0x1c')](_0x1cec3a[_0xad70('0x2e')][_0xad70('0x1c')]);}_0x7ac14a[_0xad70('0x37')]=qs[_0xad70('0x38')](_0x1cec3a[_0xad70('0x2e')]['sort']);_0x7ac14a[_0xad70('0x39')]=qs[_0xad70('0x3a')](_[_0xad70('0x3b')](_0x1cec3a['query'],_0x3971a8[_0xad70('0x3a')]),_0x1f804b);if(_0x1cec3a[_0xad70('0x2e')][_0xad70('0x3c')]){_0x7ac14a[_0xad70('0x39')]=_['merge'](_0x7ac14a['where'],{'$or':_['map'](_0x1f804b,function(_0x6b358f){if(_0x6b358f['type']!=='VIRTUAL'){var _0x856dae={};_0x856dae[_0x6b358f[_0xad70('0x28')]]={'$like':'%'+_0x1cec3a['query'][_0xad70('0x3c')]+'%'};return _0x856dae;}})});}_0x7ac14a=_[_0xad70('0x3d')]({},_0x7ac14a,_0x1cec3a['options']);var _0x5e2863={'where':_0x7ac14a[_0xad70('0x39')]};return db['VoiceTransferReport'][_0xad70('0x1b')](_0x5e2863)[_0xad70('0x24')](function(_0x350854){_0x41df2[_0xad70('0x1b')]=_0x350854;if(_0x1cec3a['query'][_0xad70('0x3e')]){_0x7ac14a[_0xad70('0x3f')]=[{'all':!![]}];}return db[_0xad70('0x2b')][_0xad70('0x40')](_0x7ac14a);})['then'](function(_0x4e5028){_0x41df2['rows']=_0x4e5028;return _0x41df2;})['then'](respondWithFilteredResult(_0x424853,_0x7ac14a))[_0xad70('0x41')](handleError(_0x424853,null));};exports[_0xad70('0x42')]=function(_0x289001,_0x111900){var _0x528baa={'raw':!![],'where':{'id':_0x289001[_0xad70('0x43')]['id']}},_0x541528={};_0x541528[_0xad70('0x31')]=_[_0xad70('0x2f')](db[_0xad70('0x2b')][_0xad70('0x44')]);_0x541528[_0xad70('0x2e')]=_[_0xad70('0x2f')](_0x289001[_0xad70('0x2e')]);_0x541528[_0xad70('0x3a')]=_[_0xad70('0x30')](_0x541528[_0xad70('0x31')],_0x541528[_0xad70('0x2e')]);_0x528baa[_0xad70('0x33')]=_['intersection'](_0x541528[_0xad70('0x31')],qs['fields'](_0x289001['query'][_0xad70('0x32')]));_0x528baa[_0xad70('0x33')]=_0x528baa['attributes'][_0xad70('0x34')]?_0x528baa[_0xad70('0x33')]:_0x541528['model'];if(_0x289001[_0xad70('0x2e')][_0xad70('0x3e')]){_0x528baa[_0xad70('0x3f')]=[{'all':!![]}];}_0x528baa=_['merge']({},_0x528baa,_0x289001['options']);return db['VoiceTransferReport']['find'](_0x528baa)[_0xad70('0x24')](handleEntityNotFound(_0x111900,null))[_0xad70('0x24')](respondWithResult(_0x111900,null))[_0xad70('0x41')](handleError(_0x111900,null));};exports[_0xad70('0x45')]=function(_0xe2e025,_0x212836){return db[_0xad70('0x2b')][_0xad70('0x45')](_0xe2e025[_0xad70('0x46')],{})[_0xad70('0x24')](respondWithResult(_0x212836,0xc9))[_0xad70('0x41')](handleError(_0x212836,null));};exports[_0xad70('0x23')]=function(_0x544374,_0x50e7fe){if(_0x544374[_0xad70('0x46')]['id']){delete _0x544374[_0xad70('0x46')]['id'];}return db[_0xad70('0x2b')][_0xad70('0x47')]({'where':{'id':_0x544374[_0xad70('0x43')]['id']}})[_0xad70('0x24')](handleEntityNotFound(_0x50e7fe,null))[_0xad70('0x24')](saveUpdates(_0x544374['body'],null))[_0xad70('0x24')](respondWithResult(_0x50e7fe,null))['catch'](handleError(_0x50e7fe,null));};exports[_0xad70('0x25')]=function(_0x9076cb,_0x366807){return db[_0xad70('0x2b')][_0xad70('0x47')]({'where':{'id':_0x9076cb[_0xad70('0x43')]['id']}})['then'](handleEntityNotFound(_0x366807,null))[_0xad70('0x24')](removeEntity(_0x366807,null))[_0xad70('0x41')](handleError(_0x366807,null));};exports[_0xad70('0x48')]=function(_0x2e2eac,_0x30e5a8){return db[_0xad70('0x2b')][_0xad70('0x48')]()['then'](respondWithResult(_0x30e5a8,null))['catch'](handleError(_0x30e5a8,null));};