b19360d6f38d26b5e54b14c4d4fae890e90a8816
[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 _0x1abf=['api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','apply','reject','then','error','stack','name','send','index','SmsQueueReport','rawAttributes','fieldName','type','model','query','filters','intersection','attributes','fields','hasOwnProperty','nolimit','sort','where','pick','merge','map','VIRTUAL','options','includeAll','include','findAll','rows','catch','params','keys','length','find','create','body','update','destroy','describe','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','ejs','fs-extra','lodash','squel','crypto','desk.js','to-csv','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/logger'];(function(_0x56916d,_0x37b935){var _0x2b7f1f=function(_0x206eb1){while(--_0x206eb1){_0x56916d['push'](_0x56916d['shift']());}};_0x2b7f1f(++_0x37b935);}(_0x1abf,0x122));var _0xf1ab=function(_0x360bb0,_0x1fdae7){_0x360bb0=_0x360bb0-0x0;var _0x4b6684=_0x1abf[_0x360bb0];return _0x4b6684;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xf1ab('0x0'));var zipdir=require(_0xf1ab('0x1'));var jsonpatch=require(_0xf1ab('0x2'));var rp=require(_0xf1ab('0x3'));var moment=require(_0xf1ab('0x4'));var BPromise=require(_0xf1ab('0x5'));var Mustache=require(_0xf1ab('0x6'));var util=require(_0xf1ab('0x7'));var path=require(_0xf1ab('0x8'));var sox=require(_0xf1ab('0x9'));var csv=require('to-csv');var ejs=require(_0xf1ab('0xa'));var fs=require('fs');var fs_extra=require(_0xf1ab('0xb'));var _=require(_0xf1ab('0xc'));var squel=require(_0xf1ab('0xd'));var crypto=require(_0xf1ab('0xe'));var jsforce=require('jsforce');var deskjs=require(_0xf1ab('0xf'));var toCsv=require(_0xf1ab('0x10'));var querystring=require('querystring');var Papa=require(_0xf1ab('0x11'));var Redis=require(_0xf1ab('0x12'));var authService=require(_0xf1ab('0x13'));var qs=require('../../components/parsers/qs');var as=require(_0xf1ab('0x14'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xf1ab('0x15'))(_0xf1ab('0x16'));var utils=require(_0xf1ab('0x17'));var config=require(_0xf1ab('0x18'));var licenseUtil=require(_0xf1ab('0x19'));var db=require(_0xf1ab('0x1a'))['db'];function respondWithStatusCode(_0x2070ac,_0x5e54dd){_0x5e54dd=_0x5e54dd||0xcc;return function(_0x3f2a43){if(_0x3f2a43){return _0x2070ac[_0xf1ab('0x1b')](_0x5e54dd);}return _0x2070ac[_0xf1ab('0x1c')](_0x5e54dd)[_0xf1ab('0x1d')]();};}function respondWithResult(_0x5dda49,_0x2e24c0){_0x2e24c0=_0x2e24c0||0xc8;return function(_0x583e98){if(_0x583e98){return _0x5dda49[_0xf1ab('0x1c')](_0x2e24c0)[_0xf1ab('0x1e')](_0x583e98);}};}function respondWithFilteredResult(_0x406bb7,_0x5c5650){return function(_0x3b28ab){if(_0x3b28ab){var _0x1b8113=typeof _0x5c5650[_0xf1ab('0x1f')]===_0xf1ab('0x20')&&typeof _0x5c5650[_0xf1ab('0x21')]===_0xf1ab('0x20');var _0x237d25=_0x3b28ab[_0xf1ab('0x22')];var _0x551f91=_0x1b8113?0x0:_0x5c5650[_0xf1ab('0x1f')];var _0xcfb462=_0x1b8113?_0x3b28ab['count']:_0x5c5650[_0xf1ab('0x1f')]+_0x5c5650[_0xf1ab('0x21')];var _0x5a6b50;if(_0xcfb462>=_0x237d25){_0xcfb462=_0x237d25;_0x5a6b50=0xc8;}else{_0x5a6b50=0xce;}_0x406bb7[_0xf1ab('0x1c')](_0x5a6b50);return _0x406bb7[_0xf1ab('0x23')](_0xf1ab('0x24'),_0x551f91+'-'+_0xcfb462+'/'+_0x237d25)[_0xf1ab('0x1e')](_0x3b28ab);}return null;};}function patchUpdates(_0x4b0b4d){return function(_0x22c1ba){try{jsonpatch[_0xf1ab('0x25')](_0x22c1ba,_0x4b0b4d,!![]);}catch(_0x1f403e){return BPromise[_0xf1ab('0x26')](_0x1f403e);}return _0x22c1ba['save']();};}function saveUpdates(_0x2067e7,_0x14520d){return function(_0x37b11c){if(_0x37b11c){return _0x37b11c['update'](_0x2067e7)[_0xf1ab('0x27')](function(_0x5608e8){return _0x5608e8;});}return null;};}function removeEntity(_0xabdc11,_0x1c081b){return function(_0x24ed3b){if(_0x24ed3b){return _0x24ed3b['destroy']()[_0xf1ab('0x27')](function(){_0xabdc11['status'](0xcc)[_0xf1ab('0x1d')]();});}};}function handleEntityNotFound(_0x2dd927,_0x2bc6ba){return function(_0x13a3e4){if(!_0x13a3e4){_0x2dd927[_0xf1ab('0x1b')](0x194);}return _0x13a3e4;};}function handleError(_0x1ac480,_0x5a222b){_0x5a222b=_0x5a222b||0x1f4;return function(_0x389a2c){logger[_0xf1ab('0x28')](_0x389a2c[_0xf1ab('0x29')]);if(_0x389a2c[_0xf1ab('0x2a')]){delete _0x389a2c['name'];}_0x1ac480[_0xf1ab('0x1c')](_0x5a222b)[_0xf1ab('0x2b')](_0x389a2c);};}exports[_0xf1ab('0x2c')]=function(_0x1fc3c9,_0x1212fd){var _0x38023d={},_0x4ab17a={},_0x47c51f={'count':0x0,'rows':[]};var _0x37fc18=_['map'](db[_0xf1ab('0x2d')][_0xf1ab('0x2e')],function(_0x451a43){return{'name':_0x451a43[_0xf1ab('0x2f')],'type':_0x451a43[_0xf1ab('0x30')]['key']};});_0x4ab17a[_0xf1ab('0x31')]=_['map'](_0x37fc18,_0xf1ab('0x2a'));_0x4ab17a[_0xf1ab('0x32')]=_['keys'](_0x1fc3c9[_0xf1ab('0x32')]);_0x4ab17a[_0xf1ab('0x33')]=_[_0xf1ab('0x34')](_0x4ab17a[_0xf1ab('0x31')],_0x4ab17a['query']);_0x38023d[_0xf1ab('0x35')]=_[_0xf1ab('0x34')](_0x4ab17a['model'],qs[_0xf1ab('0x36')](_0x1fc3c9[_0xf1ab('0x32')]['fields']));_0x38023d[_0xf1ab('0x35')]=_0x38023d['attributes']['length']?_0x38023d['attributes']:_0x4ab17a['model'];if(!_0x1fc3c9[_0xf1ab('0x32')][_0xf1ab('0x37')](_0xf1ab('0x38'))){_0x38023d[_0xf1ab('0x21')]=qs['limit'](_0x1fc3c9[_0xf1ab('0x32')]['limit']);_0x38023d[_0xf1ab('0x1f')]=qs['offset'](_0x1fc3c9[_0xf1ab('0x32')]['offset']);}_0x38023d['order']=qs['sort'](_0x1fc3c9[_0xf1ab('0x32')][_0xf1ab('0x39')]);_0x38023d[_0xf1ab('0x3a')]=qs[_0xf1ab('0x33')](_[_0xf1ab('0x3b')](_0x1fc3c9['query'],_0x4ab17a[_0xf1ab('0x33')]),_0x37fc18);if(_0x1fc3c9['query']['filter']){_0x38023d[_0xf1ab('0x3a')]=_[_0xf1ab('0x3c')](_0x38023d[_0xf1ab('0x3a')],{'$or':_[_0xf1ab('0x3d')](_0x37fc18,function(_0x55ebcb){if(_0x55ebcb[_0xf1ab('0x30')]!==_0xf1ab('0x3e')){var _0x1a4583={};_0x1a4583[_0x55ebcb[_0xf1ab('0x2a')]]={'$like':'%'+_0x1fc3c9[_0xf1ab('0x32')]['filter']+'%'};return _0x1a4583;}})});}_0x38023d=_[_0xf1ab('0x3c')]({},_0x38023d,_0x1fc3c9[_0xf1ab('0x3f')]);var _0x54f0cd={'where':_0x38023d['where']};return db[_0xf1ab('0x2d')][_0xf1ab('0x22')](_0x54f0cd)[_0xf1ab('0x27')](function(_0x10ba69){_0x47c51f[_0xf1ab('0x22')]=_0x10ba69;if(_0x1fc3c9['query'][_0xf1ab('0x40')]){_0x38023d[_0xf1ab('0x41')]=[{'all':!![]}];}return db[_0xf1ab('0x2d')][_0xf1ab('0x42')](_0x38023d);})[_0xf1ab('0x27')](function(_0x561421){_0x47c51f[_0xf1ab('0x43')]=_0x561421;return _0x47c51f;})[_0xf1ab('0x27')](respondWithFilteredResult(_0x1212fd,_0x38023d))[_0xf1ab('0x44')](handleError(_0x1212fd,null));};exports['show']=function(_0x27573b,_0x15139a){var _0x5136a8={'raw':!![],'where':{'id':_0x27573b[_0xf1ab('0x45')]['id']}},_0x33dcf2={};_0x33dcf2[_0xf1ab('0x31')]=_[_0xf1ab('0x46')](db['SmsQueueReport']['rawAttributes']);_0x33dcf2[_0xf1ab('0x32')]=_[_0xf1ab('0x46')](_0x27573b['query']);_0x33dcf2['filters']=_['intersection'](_0x33dcf2[_0xf1ab('0x31')],_0x33dcf2[_0xf1ab('0x32')]);_0x5136a8[_0xf1ab('0x35')]=_[_0xf1ab('0x34')](_0x33dcf2[_0xf1ab('0x31')],qs['fields'](_0x27573b[_0xf1ab('0x32')]['fields']));_0x5136a8[_0xf1ab('0x35')]=_0x5136a8['attributes'][_0xf1ab('0x47')]?_0x5136a8[_0xf1ab('0x35')]:_0x33dcf2['model'];if(_0x27573b['query'][_0xf1ab('0x40')]){_0x5136a8[_0xf1ab('0x41')]=[{'all':!![]}];}_0x5136a8=_[_0xf1ab('0x3c')]({},_0x5136a8,_0x27573b['options']);return db['SmsQueueReport'][_0xf1ab('0x48')](_0x5136a8)[_0xf1ab('0x27')](handleEntityNotFound(_0x15139a,null))[_0xf1ab('0x27')](respondWithResult(_0x15139a,null))[_0xf1ab('0x44')](handleError(_0x15139a,null));};exports[_0xf1ab('0x49')]=function(_0x4daefd,_0x44095d){return db[_0xf1ab('0x2d')][_0xf1ab('0x49')](_0x4daefd[_0xf1ab('0x4a')],{})['then'](respondWithResult(_0x44095d,0xc9))[_0xf1ab('0x44')](handleError(_0x44095d,null));};exports[_0xf1ab('0x4b')]=function(_0x1374fa,_0x4d7527){if(_0x1374fa[_0xf1ab('0x4a')]['id']){delete _0x1374fa[_0xf1ab('0x4a')]['id'];}return db[_0xf1ab('0x2d')][_0xf1ab('0x48')]({'where':{'id':_0x1374fa[_0xf1ab('0x45')]['id']}})['then'](handleEntityNotFound(_0x4d7527,null))['then'](saveUpdates(_0x1374fa[_0xf1ab('0x4a')],null))['then'](respondWithResult(_0x4d7527,null))[_0xf1ab('0x44')](handleError(_0x4d7527,null));};exports[_0xf1ab('0x4c')]=function(_0x8335c5,_0x804610){return db[_0xf1ab('0x2d')]['find']({'where':{'id':_0x8335c5[_0xf1ab('0x45')]['id']}})[_0xf1ab('0x27')](handleEntityNotFound(_0x804610,null))['then'](removeEntity(_0x804610,null))[_0xf1ab('0x44')](handleError(_0x804610,null));};exports[_0xf1ab('0x4d')]=function(_0x2aa8c7,_0x25c4e2){return db[_0xf1ab('0x2d')][_0xf1ab('0x4d')]()[_0xf1ab('0x27')](respondWithResult(_0x25c4e2,null))['catch'](handleError(_0x25c4e2,null));};