2a68e8ae3b483b88fedb232a2e3553137c0f900a
[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 _0x750c=['filter','merge','options','includeAll','include','rows','catch','show','params','fields','find','create','body','describe','eml-format','rimraf','zip-dir','request-promise','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','crypto','jsforce','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../mysqldb','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','destroy','then','error','name','index','map','VoiceTransferReport','rawAttributes','fieldName','type','key','query','model','intersection','attributes','length','hasOwnProperty','nolimit','sort','where','filters','pick'];(function(_0xc45b9e,_0x40022d){var _0x35a945=function(_0x12472b){while(--_0x12472b){_0xc45b9e['push'](_0xc45b9e['shift']());}};_0x35a945(++_0x40022d);}(_0x750c,0x1b8));var _0xc750=function(_0x3c23c0,_0x20888f){_0x3c23c0=_0x3c23c0-0x0;var _0x370f3e=_0x750c[_0x3c23c0];return _0x370f3e;};'use strict';var emlformat=require(_0xc750('0x0'));var rimraf=require(_0xc750('0x1'));var zipdir=require(_0xc750('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xc750('0x3'));var moment=require('moment');var BPromise=require(_0xc750('0x4'));var Mustache=require(_0xc750('0x5'));var util=require(_0xc750('0x6'));var path=require(_0xc750('0x7'));var sox=require(_0xc750('0x8'));var csv=require(_0xc750('0x9'));var ejs=require(_0xc750('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xc750('0xb'));var squel=require('squel');var crypto=require(_0xc750('0xc'));var jsforce=require(_0xc750('0xd'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0xc750('0xe'));var authService=require('../../components/auth/service');var qs=require(_0xc750('0xf'));var as=require(_0xc750('0x10'));var hardwareService=require(_0xc750('0x11'));var logger=require(_0xc750('0x12'))('api');var utils=require(_0xc750('0x13'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0xc750('0x14'))['db'];function respondWithStatusCode(_0x365f0e,_0x4f7716){_0x4f7716=_0x4f7716||0xcc;return function(_0x438ba1){if(_0x438ba1){return _0x365f0e[_0xc750('0x15')](_0x4f7716);}return _0x365f0e[_0xc750('0x16')](_0x4f7716)[_0xc750('0x17')]();};}function respondWithResult(_0x2b4c8f,_0x3ee286){_0x3ee286=_0x3ee286||0xc8;return function(_0x2f80d4){if(_0x2f80d4){return _0x2b4c8f[_0xc750('0x16')](_0x3ee286)[_0xc750('0x18')](_0x2f80d4);}};}function respondWithFilteredResult(_0x4a9815,_0x5de4e3){return function(_0x119608){if(_0x119608){var _0x4072b2=typeof _0x5de4e3[_0xc750('0x19')]===_0xc750('0x1a')&&typeof _0x5de4e3[_0xc750('0x1b')]===_0xc750('0x1a');var _0x5972cc=_0x119608[_0xc750('0x1c')];var _0x5e6bf2=_0x4072b2?0x0:_0x5de4e3[_0xc750('0x19')];var _0x5cb6e1=_0x4072b2?_0x119608[_0xc750('0x1c')]:_0x5de4e3[_0xc750('0x19')]+_0x5de4e3[_0xc750('0x1b')];var _0x3d2f06;if(_0x5cb6e1>=_0x5972cc){_0x5cb6e1=_0x5972cc;_0x3d2f06=0xc8;}else{_0x3d2f06=0xce;}_0x4a9815[_0xc750('0x16')](_0x3d2f06);return _0x4a9815[_0xc750('0x1d')](_0xc750('0x1e'),_0x5e6bf2+'-'+_0x5cb6e1+'/'+_0x5972cc)['json'](_0x119608);}return null;};}function patchUpdates(_0x3e57dd){return function(_0x3e1f92){try{jsonpatch[_0xc750('0x1f')](_0x3e1f92,_0x3e57dd,!![]);}catch(_0x381698){return BPromise[_0xc750('0x20')](_0x381698);}return _0x3e1f92[_0xc750('0x21')]();};}function saveUpdates(_0x542da2,_0x54e657){return function(_0x56c57f){if(_0x56c57f){return _0x56c57f[_0xc750('0x22')](_0x542da2)['then'](function(_0x5e6b9f){return _0x5e6b9f;});}return null;};}function removeEntity(_0x526c90,_0x5207a5){return function(_0x4e5fda){if(_0x4e5fda){return _0x4e5fda[_0xc750('0x23')]()[_0xc750('0x24')](function(){_0x526c90[_0xc750('0x16')](0xcc)[_0xc750('0x17')]();});}};}function handleEntityNotFound(_0x2d603c,_0x55e852){return function(_0x58a7e0){if(!_0x58a7e0){_0x2d603c[_0xc750('0x15')](0x194);}return _0x58a7e0;};}function handleError(_0x41df55,_0x4ca87){_0x4ca87=_0x4ca87||0x1f4;return function(_0x123509){logger[_0xc750('0x25')](_0x123509['stack']);if(_0x123509[_0xc750('0x26')]){delete _0x123509['name'];}_0x41df55[_0xc750('0x16')](_0x4ca87)['send'](_0x123509);};}exports[_0xc750('0x27')]=function(_0x3ab8b9,_0x163709){var _0x4c90bd={},_0x9015a6={},_0x1198a4={'count':0x0,'rows':[]};var _0x61a36f=_[_0xc750('0x28')](db[_0xc750('0x29')][_0xc750('0x2a')],function(_0x2704a3){return{'name':_0x2704a3[_0xc750('0x2b')],'type':_0x2704a3[_0xc750('0x2c')][_0xc750('0x2d')]};});_0x9015a6['model']=_[_0xc750('0x28')](_0x61a36f,_0xc750('0x26'));_0x9015a6[_0xc750('0x2e')]=_['keys'](_0x3ab8b9[_0xc750('0x2e')]);_0x9015a6['filters']=_['intersection'](_0x9015a6[_0xc750('0x2f')],_0x9015a6[_0xc750('0x2e')]);_0x4c90bd['attributes']=_[_0xc750('0x30')](_0x9015a6[_0xc750('0x2f')],qs['fields'](_0x3ab8b9[_0xc750('0x2e')]['fields']));_0x4c90bd[_0xc750('0x31')]=_0x4c90bd[_0xc750('0x31')][_0xc750('0x32')]?_0x4c90bd['attributes']:_0x9015a6[_0xc750('0x2f')];if(!_0x3ab8b9[_0xc750('0x2e')][_0xc750('0x33')](_0xc750('0x34'))){_0x4c90bd[_0xc750('0x1b')]=qs[_0xc750('0x1b')](_0x3ab8b9[_0xc750('0x2e')][_0xc750('0x1b')]);_0x4c90bd[_0xc750('0x19')]=qs['offset'](_0x3ab8b9['query'][_0xc750('0x19')]);}_0x4c90bd['order']=qs[_0xc750('0x35')](_0x3ab8b9['query'][_0xc750('0x35')]);_0x4c90bd[_0xc750('0x36')]=qs[_0xc750('0x37')](_[_0xc750('0x38')](_0x3ab8b9[_0xc750('0x2e')],_0x9015a6['filters']),_0x61a36f);if(_0x3ab8b9[_0xc750('0x2e')][_0xc750('0x39')]){_0x4c90bd[_0xc750('0x36')]=_[_0xc750('0x3a')](_0x4c90bd[_0xc750('0x36')],{'$or':_['map'](_0x61a36f,function(_0x16d4a9){if(_0x16d4a9[_0xc750('0x2c')]!=='VIRTUAL'){var _0x23f3a4={};_0x23f3a4[_0x16d4a9[_0xc750('0x26')]]={'$like':'%'+_0x3ab8b9[_0xc750('0x2e')][_0xc750('0x39')]+'%'};return _0x23f3a4;}})});}_0x4c90bd=_[_0xc750('0x3a')]({},_0x4c90bd,_0x3ab8b9[_0xc750('0x3b')]);var _0x279212={'where':_0x4c90bd[_0xc750('0x36')]};return db['VoiceTransferReport'][_0xc750('0x1c')](_0x279212)[_0xc750('0x24')](function(_0x148ad6){_0x1198a4[_0xc750('0x1c')]=_0x148ad6;if(_0x3ab8b9[_0xc750('0x2e')][_0xc750('0x3c')]){_0x4c90bd[_0xc750('0x3d')]=[{'all':!![]}];}return db[_0xc750('0x29')]['findAll'](_0x4c90bd);})['then'](function(_0xdbe2e4){_0x1198a4[_0xc750('0x3e')]=_0xdbe2e4;return _0x1198a4;})[_0xc750('0x24')](respondWithFilteredResult(_0x163709,_0x4c90bd))[_0xc750('0x3f')](handleError(_0x163709,null));};exports[_0xc750('0x40')]=function(_0x4f89bf,_0x41d195){var _0x2c9ced={'raw':!![],'where':{'id':_0x4f89bf[_0xc750('0x41')]['id']}},_0x384bce={};_0x384bce[_0xc750('0x2f')]=_['keys'](db[_0xc750('0x29')][_0xc750('0x2a')]);_0x384bce[_0xc750('0x2e')]=_['keys'](_0x4f89bf[_0xc750('0x2e')]);_0x384bce[_0xc750('0x37')]=_['intersection'](_0x384bce['model'],_0x384bce[_0xc750('0x2e')]);_0x2c9ced[_0xc750('0x31')]=_['intersection'](_0x384bce[_0xc750('0x2f')],qs[_0xc750('0x42')](_0x4f89bf[_0xc750('0x2e')][_0xc750('0x42')]));_0x2c9ced[_0xc750('0x31')]=_0x2c9ced[_0xc750('0x31')][_0xc750('0x32')]?_0x2c9ced[_0xc750('0x31')]:_0x384bce['model'];if(_0x4f89bf[_0xc750('0x2e')][_0xc750('0x3c')]){_0x2c9ced[_0xc750('0x3d')]=[{'all':!![]}];}_0x2c9ced=_[_0xc750('0x3a')]({},_0x2c9ced,_0x4f89bf[_0xc750('0x3b')]);return db['VoiceTransferReport'][_0xc750('0x43')](_0x2c9ced)[_0xc750('0x24')](handleEntityNotFound(_0x41d195,null))[_0xc750('0x24')](respondWithResult(_0x41d195,null))[_0xc750('0x3f')](handleError(_0x41d195,null));};exports[_0xc750('0x44')]=function(_0x4ffdee,_0x5b3682){return db[_0xc750('0x29')][_0xc750('0x44')](_0x4ffdee['body'],{})[_0xc750('0x24')](respondWithResult(_0x5b3682,0xc9))[_0xc750('0x3f')](handleError(_0x5b3682,null));};exports[_0xc750('0x22')]=function(_0x2939e9,_0x13b5e8){if(_0x2939e9[_0xc750('0x45')]['id']){delete _0x2939e9['body']['id'];}return db[_0xc750('0x29')]['find']({'where':{'id':_0x2939e9[_0xc750('0x41')]['id']}})[_0xc750('0x24')](handleEntityNotFound(_0x13b5e8,null))['then'](saveUpdates(_0x2939e9[_0xc750('0x45')],null))[_0xc750('0x24')](respondWithResult(_0x13b5e8,null))[_0xc750('0x3f')](handleError(_0x13b5e8,null));};exports[_0xc750('0x23')]=function(_0x4a3161,_0x64d2d0){return db[_0xc750('0x29')][_0xc750('0x43')]({'where':{'id':_0x4a3161['params']['id']}})[_0xc750('0x24')](handleEntityNotFound(_0x64d2d0,null))[_0xc750('0x24')](removeEntity(_0x64d2d0,null))[_0xc750('0x3f')](handleError(_0x64d2d0,null));};exports[_0xc750('0x46')]=function(_0x2f1d13,_0x5335f2){return db[_0xc750('0x29')][_0xc750('0x46')]()['then'](respondWithResult(_0x5335f2,null))[_0xc750('0x3f')](handleError(_0x5335f2,null));};