860106efb9175e9aa20b9c3874a410dacc7d38b9
[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 _0xbd45=['offset','undefined','count','limit','set','Content-Range','apply','reject','save','update','then','error','stack','name','send','index','map','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','SmsQueueReport','includeAll','findAll','rows','catch','params','length','find','create','body','destroy','describe','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','util','path','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','to-csv','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json'];(function(_0x2809aa,_0x11e435){var _0x212fc5=function(_0x35f9ef){while(--_0x35f9ef){_0x2809aa['push'](_0x2809aa['shift']());}};_0x212fc5(++_0x11e435);}(_0xbd45,0xd2));var _0x5bd4=function(_0x19c975,_0x45e3c9){_0x19c975=_0x19c975-0x0;var _0xe81425=_0xbd45[_0x19c975];return _0xe81425;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x5bd4('0x0'));var zipdir=require(_0x5bd4('0x1'));var jsonpatch=require(_0x5bd4('0x2'));var rp=require('request-promise');var moment=require(_0x5bd4('0x3'));var BPromise=require(_0x5bd4('0x4'));var Mustache=require(_0x5bd4('0x5'));var util=require(_0x5bd4('0x6'));var path=require(_0x5bd4('0x7'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x5bd4('0x8'));var fs=require('fs');var fs_extra=require(_0x5bd4('0x9'));var _=require(_0x5bd4('0xa'));var squel=require(_0x5bd4('0xb'));var crypto=require(_0x5bd4('0xc'));var jsforce=require(_0x5bd4('0xd'));var deskjs=require(_0x5bd4('0xe'));var toCsv=require(_0x5bd4('0xf'));var querystring=require('querystring');var Papa=require(_0x5bd4('0x10'));var Redis=require('ioredis');var authService=require(_0x5bd4('0x11'));var qs=require(_0x5bd4('0x12'));var as=require(_0x5bd4('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x5bd4('0x14'))(_0x5bd4('0x15'));var utils=require(_0x5bd4('0x16'));var config=require(_0x5bd4('0x17'));var licenseUtil=require(_0x5bd4('0x18'));var db=require(_0x5bd4('0x19'))['db'];function respondWithStatusCode(_0x998730,_0x3475ef){_0x3475ef=_0x3475ef||0xcc;return function(_0x26815f){if(_0x26815f){return _0x998730[_0x5bd4('0x1a')](_0x3475ef);}return _0x998730[_0x5bd4('0x1b')](_0x3475ef)[_0x5bd4('0x1c')]();};}function respondWithResult(_0x5d760a,_0x2482a2){_0x2482a2=_0x2482a2||0xc8;return function(_0xc167c2){if(_0xc167c2){return _0x5d760a[_0x5bd4('0x1b')](_0x2482a2)[_0x5bd4('0x1d')](_0xc167c2);}};}function respondWithFilteredResult(_0xc48ec,_0x164ab7){return function(_0x3caafd){if(_0x3caafd){var _0x32aa84=typeof _0x164ab7[_0x5bd4('0x1e')]===_0x5bd4('0x1f')&&typeof _0x164ab7['limit']==='undefined';var _0x198491=_0x3caafd[_0x5bd4('0x20')];var _0x16a475=_0x32aa84?0x0:_0x164ab7[_0x5bd4('0x1e')];var _0x43b22b=_0x32aa84?_0x3caafd[_0x5bd4('0x20')]:_0x164ab7[_0x5bd4('0x1e')]+_0x164ab7[_0x5bd4('0x21')];var _0x1fba85;if(_0x43b22b>=_0x198491){_0x43b22b=_0x198491;_0x1fba85=0xc8;}else{_0x1fba85=0xce;}_0xc48ec[_0x5bd4('0x1b')](_0x1fba85);return _0xc48ec[_0x5bd4('0x22')](_0x5bd4('0x23'),_0x16a475+'-'+_0x43b22b+'/'+_0x198491)['json'](_0x3caafd);}return null;};}function patchUpdates(_0x57047a){return function(_0xba8ae9){try{jsonpatch[_0x5bd4('0x24')](_0xba8ae9,_0x57047a,!![]);}catch(_0x5abd9d){return BPromise[_0x5bd4('0x25')](_0x5abd9d);}return _0xba8ae9[_0x5bd4('0x26')]();};}function saveUpdates(_0x4b8b77,_0x256203){return function(_0x43c653){if(_0x43c653){return _0x43c653[_0x5bd4('0x27')](_0x4b8b77)[_0x5bd4('0x28')](function(_0x3e3c20){return _0x3e3c20;});}return null;};}function removeEntity(_0x6e2a2a,_0x1d74e6){return function(_0x421cbd){if(_0x421cbd){return _0x421cbd['destroy']()[_0x5bd4('0x28')](function(){_0x6e2a2a[_0x5bd4('0x1b')](0xcc)['end']();});}};}function handleEntityNotFound(_0x329ac3,_0x4e5090){return function(_0x250924){if(!_0x250924){_0x329ac3['sendStatus'](0x194);}return _0x250924;};}function handleError(_0x52a015,_0x499ddd){_0x499ddd=_0x499ddd||0x1f4;return function(_0x5523cb){logger[_0x5bd4('0x29')](_0x5523cb[_0x5bd4('0x2a')]);if(_0x5523cb[_0x5bd4('0x2b')]){delete _0x5523cb[_0x5bd4('0x2b')];}_0x52a015[_0x5bd4('0x1b')](_0x499ddd)[_0x5bd4('0x2c')](_0x5523cb);};}exports[_0x5bd4('0x2d')]=function(_0x117918,_0x515a51){var _0x34b5b1={},_0x4f4b50={},_0x44c1bf={'count':0x0,'rows':[]};var _0x1dacfb=_[_0x5bd4('0x2e')](db['SmsQueueReport'][_0x5bd4('0x2f')],function(_0x451fec){return{'name':_0x451fec[_0x5bd4('0x30')],'type':_0x451fec[_0x5bd4('0x31')][_0x5bd4('0x32')]};});_0x4f4b50[_0x5bd4('0x33')]=_['map'](_0x1dacfb,_0x5bd4('0x2b'));_0x4f4b50[_0x5bd4('0x34')]=_[_0x5bd4('0x35')](_0x117918[_0x5bd4('0x34')]);_0x4f4b50[_0x5bd4('0x36')]=_[_0x5bd4('0x37')](_0x4f4b50['model'],_0x4f4b50[_0x5bd4('0x34')]);_0x34b5b1[_0x5bd4('0x38')]=_[_0x5bd4('0x37')](_0x4f4b50[_0x5bd4('0x33')],qs['fields'](_0x117918[_0x5bd4('0x34')][_0x5bd4('0x39')]));_0x34b5b1[_0x5bd4('0x38')]=_0x34b5b1[_0x5bd4('0x38')]['length']?_0x34b5b1[_0x5bd4('0x38')]:_0x4f4b50[_0x5bd4('0x33')];if(!_0x117918[_0x5bd4('0x34')][_0x5bd4('0x3a')](_0x5bd4('0x3b'))){_0x34b5b1[_0x5bd4('0x21')]=qs[_0x5bd4('0x21')](_0x117918[_0x5bd4('0x34')]['limit']);_0x34b5b1[_0x5bd4('0x1e')]=qs[_0x5bd4('0x1e')](_0x117918[_0x5bd4('0x34')][_0x5bd4('0x1e')]);}_0x34b5b1[_0x5bd4('0x3c')]=qs[_0x5bd4('0x3d')](_0x117918['query'][_0x5bd4('0x3d')]);_0x34b5b1[_0x5bd4('0x3e')]=qs[_0x5bd4('0x36')](_[_0x5bd4('0x3f')](_0x117918['query'],_0x4f4b50[_0x5bd4('0x36')]),_0x1dacfb);if(_0x117918['query'][_0x5bd4('0x40')]){_0x34b5b1[_0x5bd4('0x3e')]=_[_0x5bd4('0x41')](_0x34b5b1[_0x5bd4('0x3e')],{'$or':_[_0x5bd4('0x2e')](_0x1dacfb,function(_0x2a3d8a){if(_0x2a3d8a[_0x5bd4('0x31')]!==_0x5bd4('0x42')){var _0x333c3e={};_0x333c3e[_0x2a3d8a[_0x5bd4('0x2b')]]={'$like':'%'+_0x117918['query']['filter']+'%'};return _0x333c3e;}})});}_0x34b5b1=_['merge']({},_0x34b5b1,_0x117918[_0x5bd4('0x43')]);var _0x2ee431={'where':_0x34b5b1['where']};return db[_0x5bd4('0x44')]['count'](_0x2ee431)[_0x5bd4('0x28')](function(_0x107684){_0x44c1bf[_0x5bd4('0x20')]=_0x107684;if(_0x117918[_0x5bd4('0x34')][_0x5bd4('0x45')]){_0x34b5b1['include']=[{'all':!![]}];}return db[_0x5bd4('0x44')][_0x5bd4('0x46')](_0x34b5b1);})[_0x5bd4('0x28')](function(_0x460213){_0x44c1bf[_0x5bd4('0x47')]=_0x460213;return _0x44c1bf;})[_0x5bd4('0x28')](respondWithFilteredResult(_0x515a51,_0x34b5b1))[_0x5bd4('0x48')](handleError(_0x515a51,null));};exports['show']=function(_0x2ed12a,_0x2666c9){var _0x4a3652={'raw':!![],'where':{'id':_0x2ed12a[_0x5bd4('0x49')]['id']}},_0x582773={};_0x582773['model']=_['keys'](db['SmsQueueReport']['rawAttributes']);_0x582773['query']=_[_0x5bd4('0x35')](_0x2ed12a[_0x5bd4('0x34')]);_0x582773[_0x5bd4('0x36')]=_[_0x5bd4('0x37')](_0x582773[_0x5bd4('0x33')],_0x582773['query']);_0x4a3652[_0x5bd4('0x38')]=_[_0x5bd4('0x37')](_0x582773[_0x5bd4('0x33')],qs['fields'](_0x2ed12a[_0x5bd4('0x34')][_0x5bd4('0x39')]));_0x4a3652['attributes']=_0x4a3652[_0x5bd4('0x38')][_0x5bd4('0x4a')]?_0x4a3652[_0x5bd4('0x38')]:_0x582773['model'];if(_0x2ed12a[_0x5bd4('0x34')][_0x5bd4('0x45')]){_0x4a3652['include']=[{'all':!![]}];}_0x4a3652=_[_0x5bd4('0x41')]({},_0x4a3652,_0x2ed12a[_0x5bd4('0x43')]);return db[_0x5bd4('0x44')][_0x5bd4('0x4b')](_0x4a3652)[_0x5bd4('0x28')](handleEntityNotFound(_0x2666c9,null))['then'](respondWithResult(_0x2666c9,null))['catch'](handleError(_0x2666c9,null));};exports[_0x5bd4('0x4c')]=function(_0x4968ee,_0x1eb66){return db['SmsQueueReport'][_0x5bd4('0x4c')](_0x4968ee[_0x5bd4('0x4d')],{})[_0x5bd4('0x28')](respondWithResult(_0x1eb66,0xc9))[_0x5bd4('0x48')](handleError(_0x1eb66,null));};exports[_0x5bd4('0x27')]=function(_0x2ac635,_0x5eacbd){if(_0x2ac635[_0x5bd4('0x4d')]['id']){delete _0x2ac635[_0x5bd4('0x4d')]['id'];}return db[_0x5bd4('0x44')]['find']({'where':{'id':_0x2ac635[_0x5bd4('0x49')]['id']}})[_0x5bd4('0x28')](handleEntityNotFound(_0x5eacbd,null))[_0x5bd4('0x28')](saveUpdates(_0x2ac635[_0x5bd4('0x4d')],null))[_0x5bd4('0x28')](respondWithResult(_0x5eacbd,null))[_0x5bd4('0x48')](handleError(_0x5eacbd,null));};exports[_0x5bd4('0x4e')]=function(_0x486c94,_0x48797b){return db['SmsQueueReport'][_0x5bd4('0x4b')]({'where':{'id':_0x486c94[_0x5bd4('0x49')]['id']}})['then'](handleEntityNotFound(_0x48797b,null))[_0x5bd4('0x28')](removeEntity(_0x48797b,null))[_0x5bd4('0x48')](handleError(_0x48797b,null));};exports[_0x5bd4('0x4f')]=function(_0x57ec11,_0x1f96c7){return db[_0x5bd4('0x44')]['describe']()[_0x5bd4('0x28')](respondWithResult(_0x1f96c7,null))['catch'](handleError(_0x1f96c7,null));};