Built motion from commit b5996064.|2.6.21
[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 _0x4a2a=['../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','offset','limit','undefined','count','Content-Range','json','apply','reject','save','update','destroy','then','error','stack','name','send','index','map','VoiceTransferReport','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','include','findAll','rows','catch','show','length','includeAll','find','create','body','params','describe','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','mustache','util','sox','to-csv','fs-extra','lodash','squel','crypto','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils'];(function(_0x4f750b,_0x4e3e43){var _0x918b39=function(_0x106d8f){while(--_0x106d8f){_0x4f750b['push'](_0x4f750b['shift']());}};_0x918b39(++_0x4e3e43);}(_0x4a2a,0x12c));var _0xa4a2=function(_0x152f1c,_0x42e022){_0x152f1c=_0x152f1c-0x0;var _0x40e7b3=_0x4a2a[_0x152f1c];return _0x40e7b3;};'use strict';var emlformat=require(_0xa4a2('0x0'));var rimraf=require(_0xa4a2('0x1'));var zipdir=require(_0xa4a2('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xa4a2('0x3'));var moment=require(_0xa4a2('0x4'));var BPromise=require(_0xa4a2('0x5'));var Mustache=require(_0xa4a2('0x6'));var util=require(_0xa4a2('0x7'));var path=require('path');var sox=require(_0xa4a2('0x8'));var csv=require(_0xa4a2('0x9'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xa4a2('0xa'));var _=require(_0xa4a2('0xb'));var squel=require(_0xa4a2('0xc'));var crypto=require(_0xa4a2('0xd'));var jsforce=require('jsforce');var deskjs=require(_0xa4a2('0xe'));var toCsv=require(_0xa4a2('0x9'));var querystring=require(_0xa4a2('0xf'));var Papa=require(_0xa4a2('0x10'));var Redis=require(_0xa4a2('0x11'));var authService=require(_0xa4a2('0x12'));var qs=require(_0xa4a2('0x13'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xa4a2('0x14'));var logger=require(_0xa4a2('0x15'))(_0xa4a2('0x16'));var utils=require(_0xa4a2('0x17'));var config=require(_0xa4a2('0x18'));var licenseUtil=require(_0xa4a2('0x19'));var db=require(_0xa4a2('0x1a'))['db'];function respondWithStatusCode(_0x478d80,_0x264473){_0x264473=_0x264473||0xcc;return function(_0x114670){if(_0x114670){return _0x478d80[_0xa4a2('0x1b')](_0x264473);}return _0x478d80[_0xa4a2('0x1c')](_0x264473)[_0xa4a2('0x1d')]();};}function respondWithResult(_0x178683,_0xc98a97){_0xc98a97=_0xc98a97||0xc8;return function(_0x50089a){if(_0x50089a){return _0x178683[_0xa4a2('0x1c')](_0xc98a97)['json'](_0x50089a);}};}function respondWithFilteredResult(_0x2a4394,_0x175f25){return function(_0x396174){if(_0x396174){var _0x4dfcd1=typeof _0x175f25[_0xa4a2('0x1e')]==='undefined'&&typeof _0x175f25[_0xa4a2('0x1f')]===_0xa4a2('0x20');var _0x1cf9fb=_0x396174[_0xa4a2('0x21')];var _0x13bc8c=_0x4dfcd1?0x0:_0x175f25[_0xa4a2('0x1e')];var _0x23e41b=_0x4dfcd1?_0x396174[_0xa4a2('0x21')]:_0x175f25[_0xa4a2('0x1e')]+_0x175f25[_0xa4a2('0x1f')];var _0x9bf0a2;if(_0x23e41b>=_0x1cf9fb){_0x23e41b=_0x1cf9fb;_0x9bf0a2=0xc8;}else{_0x9bf0a2=0xce;}_0x2a4394[_0xa4a2('0x1c')](_0x9bf0a2);return _0x2a4394['set'](_0xa4a2('0x22'),_0x13bc8c+'-'+_0x23e41b+'/'+_0x1cf9fb)[_0xa4a2('0x23')](_0x396174);}return null;};}function patchUpdates(_0x568792){return function(_0x1ceb8a){try{jsonpatch[_0xa4a2('0x24')](_0x1ceb8a,_0x568792,!![]);}catch(_0x24eb13){return BPromise[_0xa4a2('0x25')](_0x24eb13);}return _0x1ceb8a[_0xa4a2('0x26')]();};}function saveUpdates(_0x1f6e7b,_0x133840){return function(_0x3e49cb){if(_0x3e49cb){return _0x3e49cb[_0xa4a2('0x27')](_0x1f6e7b)['then'](function(_0xc2e676){return _0xc2e676;});}return null;};}function removeEntity(_0x1314fb,_0x35f3b0){return function(_0x5a5116){if(_0x5a5116){return _0x5a5116[_0xa4a2('0x28')]()[_0xa4a2('0x29')](function(){_0x1314fb[_0xa4a2('0x1c')](0xcc)[_0xa4a2('0x1d')]();});}};}function handleEntityNotFound(_0x504433,_0x1aa86e){return function(_0x4dc53f){if(!_0x4dc53f){_0x504433[_0xa4a2('0x1b')](0x194);}return _0x4dc53f;};}function handleError(_0x43ffba,_0xb28bb5){_0xb28bb5=_0xb28bb5||0x1f4;return function(_0x394883){logger[_0xa4a2('0x2a')](_0x394883[_0xa4a2('0x2b')]);if(_0x394883['name']){delete _0x394883[_0xa4a2('0x2c')];}_0x43ffba['status'](_0xb28bb5)[_0xa4a2('0x2d')](_0x394883);};}exports[_0xa4a2('0x2e')]=function(_0x1e8c22,_0x4dab4e){var _0x42f239={},_0x14ccda={},_0x833ceb={'count':0x0,'rows':[]};var _0x2f6903=_[_0xa4a2('0x2f')](db[_0xa4a2('0x30')]['rawAttributes'],function(_0x226703){return{'name':_0x226703[_0xa4a2('0x31')],'type':_0x226703[_0xa4a2('0x32')][_0xa4a2('0x33')]};});_0x14ccda[_0xa4a2('0x34')]=_[_0xa4a2('0x2f')](_0x2f6903,_0xa4a2('0x2c'));_0x14ccda[_0xa4a2('0x35')]=_[_0xa4a2('0x36')](_0x1e8c22['query']);_0x14ccda[_0xa4a2('0x37')]=_[_0xa4a2('0x38')](_0x14ccda[_0xa4a2('0x34')],_0x14ccda[_0xa4a2('0x35')]);_0x42f239[_0xa4a2('0x39')]=_['intersection'](_0x14ccda['model'],qs[_0xa4a2('0x3a')](_0x1e8c22['query'][_0xa4a2('0x3a')]));_0x42f239[_0xa4a2('0x39')]=_0x42f239['attributes']['length']?_0x42f239[_0xa4a2('0x39')]:_0x14ccda[_0xa4a2('0x34')];if(!_0x1e8c22['query'][_0xa4a2('0x3b')](_0xa4a2('0x3c'))){_0x42f239[_0xa4a2('0x1f')]=qs['limit'](_0x1e8c22[_0xa4a2('0x35')]['limit']);_0x42f239[_0xa4a2('0x1e')]=qs[_0xa4a2('0x1e')](_0x1e8c22[_0xa4a2('0x35')]['offset']);}_0x42f239[_0xa4a2('0x3d')]=qs['sort'](_0x1e8c22[_0xa4a2('0x35')][_0xa4a2('0x3e')]);_0x42f239[_0xa4a2('0x3f')]=qs[_0xa4a2('0x37')](_[_0xa4a2('0x40')](_0x1e8c22['query'],_0x14ccda[_0xa4a2('0x37')]),_0x2f6903);if(_0x1e8c22[_0xa4a2('0x35')][_0xa4a2('0x41')]){_0x42f239[_0xa4a2('0x3f')]=_[_0xa4a2('0x42')](_0x42f239[_0xa4a2('0x3f')],{'$or':_[_0xa4a2('0x2f')](_0x2f6903,function(_0x552e9e){if(_0x552e9e['type']!==_0xa4a2('0x43')){var _0x4c110b={};_0x4c110b[_0x552e9e[_0xa4a2('0x2c')]]={'$like':'%'+_0x1e8c22['query']['filter']+'%'};return _0x4c110b;}})});}_0x42f239=_[_0xa4a2('0x42')]({},_0x42f239,_0x1e8c22[_0xa4a2('0x44')]);var _0x8992f7={'where':_0x42f239[_0xa4a2('0x3f')]};return db['VoiceTransferReport']['count'](_0x8992f7)[_0xa4a2('0x29')](function(_0x49e09b){_0x833ceb[_0xa4a2('0x21')]=_0x49e09b;if(_0x1e8c22[_0xa4a2('0x35')]['includeAll']){_0x42f239[_0xa4a2('0x45')]=[{'all':!![]}];}return db['VoiceTransferReport'][_0xa4a2('0x46')](_0x42f239);})[_0xa4a2('0x29')](function(_0x218fa8){_0x833ceb[_0xa4a2('0x47')]=_0x218fa8;return _0x833ceb;})[_0xa4a2('0x29')](respondWithFilteredResult(_0x4dab4e,_0x42f239))[_0xa4a2('0x48')](handleError(_0x4dab4e,null));};exports[_0xa4a2('0x49')]=function(_0x4d4cf7,_0x50c412){var _0x4ab05a={'raw':!![],'where':{'id':_0x4d4cf7['params']['id']}},_0x5beff2={};_0x5beff2[_0xa4a2('0x34')]=_['keys'](db[_0xa4a2('0x30')]['rawAttributes']);_0x5beff2[_0xa4a2('0x35')]=_[_0xa4a2('0x36')](_0x4d4cf7[_0xa4a2('0x35')]);_0x5beff2[_0xa4a2('0x37')]=_[_0xa4a2('0x38')](_0x5beff2['model'],_0x5beff2[_0xa4a2('0x35')]);_0x4ab05a[_0xa4a2('0x39')]=_[_0xa4a2('0x38')](_0x5beff2[_0xa4a2('0x34')],qs[_0xa4a2('0x3a')](_0x4d4cf7[_0xa4a2('0x35')]['fields']));_0x4ab05a[_0xa4a2('0x39')]=_0x4ab05a[_0xa4a2('0x39')][_0xa4a2('0x4a')]?_0x4ab05a[_0xa4a2('0x39')]:_0x5beff2[_0xa4a2('0x34')];if(_0x4d4cf7['query'][_0xa4a2('0x4b')]){_0x4ab05a[_0xa4a2('0x45')]=[{'all':!![]}];}_0x4ab05a=_['merge']({},_0x4ab05a,_0x4d4cf7['options']);return db['VoiceTransferReport'][_0xa4a2('0x4c')](_0x4ab05a)[_0xa4a2('0x29')](handleEntityNotFound(_0x50c412,null))[_0xa4a2('0x29')](respondWithResult(_0x50c412,null))[_0xa4a2('0x48')](handleError(_0x50c412,null));};exports['create']=function(_0x3b732b,_0x1009f8){return db[_0xa4a2('0x30')][_0xa4a2('0x4d')](_0x3b732b[_0xa4a2('0x4e')],{})[_0xa4a2('0x29')](respondWithResult(_0x1009f8,0xc9))[_0xa4a2('0x48')](handleError(_0x1009f8,null));};exports[_0xa4a2('0x27')]=function(_0x165380,_0x587cd3){if(_0x165380[_0xa4a2('0x4e')]['id']){delete _0x165380[_0xa4a2('0x4e')]['id'];}return db[_0xa4a2('0x30')][_0xa4a2('0x4c')]({'where':{'id':_0x165380[_0xa4a2('0x4f')]['id']}})['then'](handleEntityNotFound(_0x587cd3,null))['then'](saveUpdates(_0x165380['body'],null))[_0xa4a2('0x29')](respondWithResult(_0x587cd3,null))[_0xa4a2('0x48')](handleError(_0x587cd3,null));};exports[_0xa4a2('0x28')]=function(_0x5bbaed,_0x4ba1d4){return db['VoiceTransferReport'][_0xa4a2('0x4c')]({'where':{'id':_0x5bbaed[_0xa4a2('0x4f')]['id']}})[_0xa4a2('0x29')](handleEntityNotFound(_0x4ba1d4,null))[_0xa4a2('0x29')](removeEntity(_0x4ba1d4,null))[_0xa4a2('0x48')](handleError(_0x4ba1d4,null));};exports[_0xa4a2('0x50')]=function(_0x8b96b4,_0xbfe524){return db['VoiceTransferReport'][_0xa4a2('0x50')]()[_0xa4a2('0x29')](respondWithResult(_0xbfe524,null))[_0xa4a2('0x48')](handleError(_0xbfe524,null));};