257eb82aa6aed6600948c74e5382de249cebb820
[motion2.git] / server / api / smsQueueReport / smsQueueReport.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 _0xc566=['undefined','limit','count','offset','set','Content-Range','json','reject','update','then','destroy','name','send','index','rawAttributes','type','map','query','keys','intersection','model','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','merge','SmsQueueReport','include','findAll','rows','catch','show','params','includeAll','find','create','body','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','util','sox','to-csv','ejs','lodash','squel','crypto','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','end'];(function(_0x268aa9,_0x52cc23){var _0x110acf=function(_0x44371b){while(--_0x44371b){_0x268aa9['push'](_0x268aa9['shift']());}};_0x110acf(++_0x52cc23);}(_0xc566,0x74));var _0x6c56=function(_0x33c2d7,_0x307676){_0x33c2d7=_0x33c2d7-0x0;var _0x1d8a94=_0xc566[_0x33c2d7];return _0x1d8a94;};'use strict';var emlformat=require(_0x6c56('0x0'));var rimraf=require(_0x6c56('0x1'));var zipdir=require(_0x6c56('0x2'));var jsonpatch=require(_0x6c56('0x3'));var rp=require(_0x6c56('0x4'));var moment=require(_0x6c56('0x5'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x6c56('0x6'));var path=require('path');var sox=require(_0x6c56('0x7'));var csv=require(_0x6c56('0x8'));var ejs=require(_0x6c56('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x6c56('0xa'));var squel=require(_0x6c56('0xb'));var crypto=require(_0x6c56('0xc'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x6c56('0x8'));var querystring=require(_0x6c56('0xd'));var Papa=require(_0x6c56('0xe'));var Redis=require(_0x6c56('0xf'));var authService=require('../../components/auth/service');var qs=require(_0x6c56('0x10'));var as=require(_0x6c56('0x11'));var hardwareService=require(_0x6c56('0x12'));var logger=require('../../config/logger')(_0x6c56('0x13'));var utils=require(_0x6c56('0x14'));var config=require(_0x6c56('0x15'));var licenseUtil=require(_0x6c56('0x16'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x7dae11,_0x33bb91){_0x33bb91=_0x33bb91||0xcc;return function(_0x25858b){if(_0x25858b){return _0x7dae11[_0x6c56('0x17')](_0x33bb91);}return _0x7dae11[_0x6c56('0x18')](_0x33bb91)[_0x6c56('0x19')]();};}function respondWithResult(_0x2043d9,_0x3940a7){_0x3940a7=_0x3940a7||0xc8;return function(_0x19d4bf){if(_0x19d4bf){return _0x2043d9['status'](_0x3940a7)['json'](_0x19d4bf);}};}function respondWithFilteredResult(_0x433c42,_0x141278){return function(_0x40b8d6){if(_0x40b8d6){var _0x57b053=typeof _0x141278['offset']===_0x6c56('0x1a')&&typeof _0x141278[_0x6c56('0x1b')]===_0x6c56('0x1a');var _0x26510f=_0x40b8d6[_0x6c56('0x1c')];var _0x3692a9=_0x57b053?0x0:_0x141278[_0x6c56('0x1d')];var _0x5b3585=_0x57b053?_0x40b8d6[_0x6c56('0x1c')]:_0x141278[_0x6c56('0x1d')]+_0x141278['limit'];var _0x538c11;if(_0x5b3585>=_0x26510f){_0x5b3585=_0x26510f;_0x538c11=0xc8;}else{_0x538c11=0xce;}_0x433c42[_0x6c56('0x18')](_0x538c11);return _0x433c42[_0x6c56('0x1e')](_0x6c56('0x1f'),_0x3692a9+'-'+_0x5b3585+'/'+_0x26510f)[_0x6c56('0x20')](_0x40b8d6);}return null;};}function patchUpdates(_0xa905a9){return function(_0x188e16){try{jsonpatch['apply'](_0x188e16,_0xa905a9,!![]);}catch(_0x15a3dc){return BPromise[_0x6c56('0x21')](_0x15a3dc);}return _0x188e16['save']();};}function saveUpdates(_0x241e18,_0x1985ca){return function(_0x33401f){if(_0x33401f){return _0x33401f[_0x6c56('0x22')](_0x241e18)[_0x6c56('0x23')](function(_0x20dffc){return _0x20dffc;});}return null;};}function removeEntity(_0x194f3b,_0x291b42){return function(_0x2e9577){if(_0x2e9577){return _0x2e9577[_0x6c56('0x24')]()['then'](function(){_0x194f3b[_0x6c56('0x18')](0xcc)[_0x6c56('0x19')]();});}};}function handleEntityNotFound(_0x30185c,_0x341922){return function(_0x4cc855){if(!_0x4cc855){_0x30185c[_0x6c56('0x17')](0x194);}return _0x4cc855;};}function handleError(_0x3f62cd,_0x36036e){_0x36036e=_0x36036e||0x1f4;return function(_0xed8a8a){logger['error'](_0xed8a8a['stack']);if(_0xed8a8a[_0x6c56('0x25')]){delete _0xed8a8a['name'];}_0x3f62cd[_0x6c56('0x18')](_0x36036e)[_0x6c56('0x26')](_0xed8a8a);};}exports[_0x6c56('0x27')]=function(_0x28c9f1,_0x8aeeb6){var _0x140902={},_0x551ea5={},_0x28d17a={'count':0x0,'rows':[]};var _0x5ac9e2=_['map'](db['SmsQueueReport'][_0x6c56('0x28')],function(_0x58ad35){return{'name':_0x58ad35['fieldName'],'type':_0x58ad35[_0x6c56('0x29')]['key']};});_0x551ea5['model']=_[_0x6c56('0x2a')](_0x5ac9e2,'name');_0x551ea5[_0x6c56('0x2b')]=_[_0x6c56('0x2c')](_0x28c9f1[_0x6c56('0x2b')]);_0x551ea5['filters']=_[_0x6c56('0x2d')](_0x551ea5[_0x6c56('0x2e')],_0x551ea5[_0x6c56('0x2b')]);_0x140902['attributes']=_[_0x6c56('0x2d')](_0x551ea5['model'],qs[_0x6c56('0x2f')](_0x28c9f1[_0x6c56('0x2b')]['fields']));_0x140902['attributes']=_0x140902[_0x6c56('0x30')][_0x6c56('0x31')]?_0x140902['attributes']:_0x551ea5['model'];if(!_0x28c9f1['query'][_0x6c56('0x32')](_0x6c56('0x33'))){_0x140902['limit']=qs['limit'](_0x28c9f1[_0x6c56('0x2b')][_0x6c56('0x1b')]);_0x140902['offset']=qs['offset'](_0x28c9f1[_0x6c56('0x2b')][_0x6c56('0x1d')]);}_0x140902[_0x6c56('0x34')]=qs[_0x6c56('0x35')](_0x28c9f1[_0x6c56('0x2b')][_0x6c56('0x35')]);_0x140902[_0x6c56('0x36')]=qs[_0x6c56('0x37')](_[_0x6c56('0x38')](_0x28c9f1[_0x6c56('0x2b')],_0x551ea5[_0x6c56('0x37')]),_0x5ac9e2);if(_0x28c9f1[_0x6c56('0x2b')][_0x6c56('0x39')]){_0x140902[_0x6c56('0x36')]=_[_0x6c56('0x3a')](_0x140902['where'],{'$or':_[_0x6c56('0x2a')](_0x5ac9e2,function(_0x29a61a){if(_0x29a61a[_0x6c56('0x29')]!=='VIRTUAL'){var _0x3358b1={};_0x3358b1[_0x29a61a[_0x6c56('0x25')]]={'$like':'%'+_0x28c9f1[_0x6c56('0x2b')][_0x6c56('0x39')]+'%'};return _0x3358b1;}})});}_0x140902=_[_0x6c56('0x3a')]({},_0x140902,_0x28c9f1['options']);var _0x4ba7ca={'where':_0x140902[_0x6c56('0x36')]};return db[_0x6c56('0x3b')][_0x6c56('0x1c')](_0x4ba7ca)[_0x6c56('0x23')](function(_0x1050d7){_0x28d17a[_0x6c56('0x1c')]=_0x1050d7;if(_0x28c9f1[_0x6c56('0x2b')]['includeAll']){_0x140902[_0x6c56('0x3c')]=[{'all':!![]}];}return db['SmsQueueReport'][_0x6c56('0x3d')](_0x140902);})[_0x6c56('0x23')](function(_0x574775){_0x28d17a[_0x6c56('0x3e')]=_0x574775;return _0x28d17a;})[_0x6c56('0x23')](respondWithFilteredResult(_0x8aeeb6,_0x140902))[_0x6c56('0x3f')](handleError(_0x8aeeb6,null));};exports[_0x6c56('0x40')]=function(_0x2f9e87,_0xa86e17){var _0xa68b52={'raw':!![],'where':{'id':_0x2f9e87[_0x6c56('0x41')]['id']}},_0x1d0ff2={};_0x1d0ff2[_0x6c56('0x2e')]=_[_0x6c56('0x2c')](db[_0x6c56('0x3b')][_0x6c56('0x28')]);_0x1d0ff2[_0x6c56('0x2b')]=_['keys'](_0x2f9e87[_0x6c56('0x2b')]);_0x1d0ff2[_0x6c56('0x37')]=_[_0x6c56('0x2d')](_0x1d0ff2[_0x6c56('0x2e')],_0x1d0ff2[_0x6c56('0x2b')]);_0xa68b52[_0x6c56('0x30')]=_['intersection'](_0x1d0ff2[_0x6c56('0x2e')],qs['fields'](_0x2f9e87[_0x6c56('0x2b')][_0x6c56('0x2f')]));_0xa68b52[_0x6c56('0x30')]=_0xa68b52[_0x6c56('0x30')][_0x6c56('0x31')]?_0xa68b52['attributes']:_0x1d0ff2['model'];if(_0x2f9e87[_0x6c56('0x2b')][_0x6c56('0x42')]){_0xa68b52['include']=[{'all':!![]}];}_0xa68b52=_[_0x6c56('0x3a')]({},_0xa68b52,_0x2f9e87['options']);return db[_0x6c56('0x3b')][_0x6c56('0x43')](_0xa68b52)[_0x6c56('0x23')](handleEntityNotFound(_0xa86e17,null))[_0x6c56('0x23')](respondWithResult(_0xa86e17,null))[_0x6c56('0x3f')](handleError(_0xa86e17,null));};exports['create']=function(_0x57d756,_0x154af4){return db[_0x6c56('0x3b')][_0x6c56('0x44')](_0x57d756[_0x6c56('0x45')],{})['then'](respondWithResult(_0x154af4,0xc9))[_0x6c56('0x3f')](handleError(_0x154af4,null));};exports[_0x6c56('0x22')]=function(_0x5a3296,_0x28ef38){if(_0x5a3296[_0x6c56('0x45')]['id']){delete _0x5a3296[_0x6c56('0x45')]['id'];}return db[_0x6c56('0x3b')][_0x6c56('0x43')]({'where':{'id':_0x5a3296[_0x6c56('0x41')]['id']}})[_0x6c56('0x23')](handleEntityNotFound(_0x28ef38,null))[_0x6c56('0x23')](saveUpdates(_0x5a3296[_0x6c56('0x45')],null))[_0x6c56('0x23')](respondWithResult(_0x28ef38,null))[_0x6c56('0x3f')](handleError(_0x28ef38,null));};exports[_0x6c56('0x24')]=function(_0x2a1a0c,_0x3aec91){return db[_0x6c56('0x3b')][_0x6c56('0x43')]({'where':{'id':_0x2a1a0c[_0x6c56('0x41')]['id']}})['then'](handleEntityNotFound(_0x3aec91,null))[_0x6c56('0x23')](removeEntity(_0x3aec91,null))[_0x6c56('0x3f')](handleError(_0x3aec91,null));};exports[_0x6c56('0x46')]=function(_0xa3f328,_0x106392){return db[_0x6c56('0x3b')][_0x6c56('0x46')]()[_0x6c56('0x23')](respondWithResult(_0x106392,null))['catch'](handleError(_0x106392,null));};