7eb5c9f825a60b2532bbcd122143ffb0ed855db5
[motion2.git] / server / api / openchannelQueueReport / openchannelQueueReport.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 _0xfa20=['where','filter','merge','map','VIRTUAL','options','includeAll','findAll','catch','show','keys','rawAttributes','include','find','create','body','params','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','to-csv','ejs','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','json','count','offset','limit','set','Content-Range','reject','then','destroy','end','sendStatus','error','stack','name','send','OpenchannelQueueReport','fieldName','type','key','query','filters','intersection','model','fields','attributes','hasOwnProperty','nolimit','order','sort'];(function(_0x243e48,_0xb3889f){var _0x845f7f=function(_0x27cb09){while(--_0x27cb09){_0x243e48['push'](_0x243e48['shift']());}};_0x845f7f(++_0xb3889f);}(_0xfa20,0x141));var _0x0fa2=function(_0x1d2e88,_0x410d1d){_0x1d2e88=_0x1d2e88-0x0;var _0x42794b=_0xfa20[_0x1d2e88];return _0x42794b;};'use strict';var pdf=require(_0x0fa2('0x0'));var emlformat=require(_0x0fa2('0x1'));var rimraf=require(_0x0fa2('0x2'));var zipdir=require(_0x0fa2('0x3'));var jsonpatch=require(_0x0fa2('0x4'));var rp=require(_0x0fa2('0x5'));var moment=require(_0x0fa2('0x6'));var BPromise=require(_0x0fa2('0x7'));var Mustache=require(_0x0fa2('0x8'));var util=require(_0x0fa2('0x9'));var path=require(_0x0fa2('0xa'));var sox=require('sox');var csv=require(_0x0fa2('0xb'));var ejs=require(_0x0fa2('0xc'));var fs=require('fs');var _=require('lodash');var squel=require(_0x0fa2('0xd'));var crypto=require(_0x0fa2('0xe'));var jsforce=require(_0x0fa2('0xf'));var deskjs=require(_0x0fa2('0x10'));var toCsv=require(_0x0fa2('0xb'));var querystring=require(_0x0fa2('0x11'));var Papa=require(_0x0fa2('0x12'));var Redis=require(_0x0fa2('0x13'));var authService=require(_0x0fa2('0x14'));var qs=require(_0x0fa2('0x15'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x0fa2('0x16'));var logger=require(_0x0fa2('0x17'))(_0x0fa2('0x18'));var utils=require(_0x0fa2('0x19'));var config=require(_0x0fa2('0x1a'));var licenseUtil=require(_0x0fa2('0x1b'));var db=require(_0x0fa2('0x1c'))['db'];function respondWithStatusCode(_0x15a25c,_0x524360){_0x524360=_0x524360||0xcc;return function(_0x3d86ee){if(_0x3d86ee){return _0x15a25c['sendStatus'](_0x524360);}return _0x15a25c[_0x0fa2('0x1d')](_0x524360)['end']();};}function respondWithResult(_0x539b6b,_0x4a5ba2){_0x4a5ba2=_0x4a5ba2||0xc8;return function(_0x2d4c9d){if(_0x2d4c9d){return _0x539b6b[_0x0fa2('0x1d')](_0x4a5ba2)[_0x0fa2('0x1e')](_0x2d4c9d);}};}function respondWithFilteredResult(_0x157b03,_0x4366a8){return function(_0x46e317){if(_0x46e317){var _0x162cb3=_0x46e317[_0x0fa2('0x1f')],_0x3ac5ee=_0x4366a8[_0x0fa2('0x20')],_0x4ff410=_0x4366a8[_0x0fa2('0x20')]+_0x4366a8[_0x0fa2('0x21')],_0x3cf25f;if(_0x4ff410>=_0x162cb3){_0x4ff410=_0x162cb3;_0x3cf25f=0xc8;}else{_0x3cf25f=0xce;}_0x157b03[_0x0fa2('0x1d')](_0x3cf25f);return _0x157b03[_0x0fa2('0x22')](_0x0fa2('0x23'),_0x3ac5ee+'-'+_0x4ff410+'/'+_0x162cb3)[_0x0fa2('0x1e')](_0x46e317);}return null;};}function patchUpdates(_0x32516a){return function(_0x59177e){try{jsonpatch['apply'](_0x59177e,_0x32516a,!![]);}catch(_0x13b72e){return BPromise[_0x0fa2('0x24')](_0x13b72e);}return _0x59177e['save']();};}function saveUpdates(_0x383ebd,_0x29b93c){return function(_0x13c103){if(_0x13c103){return _0x13c103['update'](_0x383ebd)[_0x0fa2('0x25')](function(_0x2f5907){return _0x2f5907;});}return null;};}function removeEntity(_0x5cbca0,_0x3b51bc){return function(_0x574ae0){if(_0x574ae0){return _0x574ae0[_0x0fa2('0x26')]()[_0x0fa2('0x25')](function(){_0x5cbca0[_0x0fa2('0x1d')](0xcc)[_0x0fa2('0x27')]();});}};}function handleEntityNotFound(_0x7f6eb,_0x4d921b){return function(_0x4744ca){if(!_0x4744ca){_0x7f6eb[_0x0fa2('0x28')](0x194);}return _0x4744ca;};}function handleError(_0x111028,_0x3888c8){_0x3888c8=_0x3888c8||0x1f4;return function(_0x16b313){logger[_0x0fa2('0x29')](_0x16b313[_0x0fa2('0x2a')]);if(_0x16b313['name']){delete _0x16b313[_0x0fa2('0x2b')];}_0x111028['status'](_0x3888c8)[_0x0fa2('0x2c')](_0x16b313);};}exports['index']=function(_0x1a8832,_0x3c47f5){var _0x24f649={},_0x2bf67d={},_0x17611f={'count':0x0,'rows':[]};var _0x338e9b=_['map'](db[_0x0fa2('0x2d')]['rawAttributes'],function(_0x5060bf){return{'name':_0x5060bf[_0x0fa2('0x2e')],'type':_0x5060bf[_0x0fa2('0x2f')][_0x0fa2('0x30')]};});_0x2bf67d['model']=_['map'](_0x338e9b,'name');_0x2bf67d['query']=_['keys'](_0x1a8832[_0x0fa2('0x31')]);_0x2bf67d[_0x0fa2('0x32')]=_[_0x0fa2('0x33')](_0x2bf67d[_0x0fa2('0x34')],_0x2bf67d['query']);_0x24f649['attributes']=_['intersection'](_0x2bf67d[_0x0fa2('0x34')],qs['fields'](_0x1a8832[_0x0fa2('0x31')][_0x0fa2('0x35')]));_0x24f649[_0x0fa2('0x36')]=_0x24f649['attributes']['length']?_0x24f649[_0x0fa2('0x36')]:_0x2bf67d[_0x0fa2('0x34')];if(!_0x1a8832[_0x0fa2('0x31')][_0x0fa2('0x37')](_0x0fa2('0x38'))){_0x24f649[_0x0fa2('0x21')]=qs[_0x0fa2('0x21')](_0x1a8832[_0x0fa2('0x31')][_0x0fa2('0x21')]);_0x24f649[_0x0fa2('0x20')]=qs[_0x0fa2('0x20')](_0x1a8832[_0x0fa2('0x31')][_0x0fa2('0x20')]);}_0x24f649[_0x0fa2('0x39')]=qs[_0x0fa2('0x3a')](_0x1a8832[_0x0fa2('0x31')][_0x0fa2('0x3a')]);_0x24f649[_0x0fa2('0x3b')]=qs['filters'](_['pick'](_0x1a8832[_0x0fa2('0x31')],_0x2bf67d[_0x0fa2('0x32')]),_0x338e9b);if(_0x1a8832[_0x0fa2('0x31')][_0x0fa2('0x3c')]){_0x24f649[_0x0fa2('0x3b')]=_[_0x0fa2('0x3d')](_0x24f649['where'],{'$or':_[_0x0fa2('0x3e')](_0x338e9b,function(_0xe4fe1e){if(_0xe4fe1e[_0x0fa2('0x2f')]!==_0x0fa2('0x3f')){var _0x255c5c={};_0x255c5c[_0xe4fe1e['name']]={'$like':'%'+_0x1a8832[_0x0fa2('0x31')][_0x0fa2('0x3c')]+'%'};return _0x255c5c;}})});}_0x24f649=_['merge']({},_0x24f649,_0x1a8832[_0x0fa2('0x40')]);var _0x3a19ed={'where':_0x24f649[_0x0fa2('0x3b')]};return db['OpenchannelQueueReport']['count'](_0x3a19ed)['then'](function(_0x52a6d0){_0x17611f[_0x0fa2('0x1f')]=_0x52a6d0;if(_0x1a8832[_0x0fa2('0x31')][_0x0fa2('0x41')]){_0x24f649['include']=[{'all':!![]}];}return db['OpenchannelQueueReport'][_0x0fa2('0x42')](_0x24f649);})[_0x0fa2('0x25')](function(_0x196297){_0x17611f['rows']=_0x196297;return _0x17611f;})[_0x0fa2('0x25')](respondWithFilteredResult(_0x3c47f5,_0x24f649))[_0x0fa2('0x43')](handleError(_0x3c47f5,null));};exports[_0x0fa2('0x44')]=function(_0x5b2fab,_0x1c4640){var _0x50c22a={'raw':!![],'where':{'id':_0x5b2fab['params']['id']}},_0x19b796={};_0x19b796['model']=_[_0x0fa2('0x45')](db[_0x0fa2('0x2d')][_0x0fa2('0x46')]);_0x19b796[_0x0fa2('0x31')]=_['keys'](_0x5b2fab['query']);_0x19b796[_0x0fa2('0x32')]=_['intersection'](_0x19b796[_0x0fa2('0x34')],_0x19b796[_0x0fa2('0x31')]);_0x50c22a['attributes']=_[_0x0fa2('0x33')](_0x19b796[_0x0fa2('0x34')],qs[_0x0fa2('0x35')](_0x5b2fab[_0x0fa2('0x31')]['fields']));_0x50c22a['attributes']=_0x50c22a[_0x0fa2('0x36')]['length']?_0x50c22a[_0x0fa2('0x36')]:_0x19b796[_0x0fa2('0x34')];if(_0x5b2fab[_0x0fa2('0x31')]['includeAll']){_0x50c22a[_0x0fa2('0x47')]=[{'all':!![]}];}_0x50c22a=_[_0x0fa2('0x3d')]({},_0x50c22a,_0x5b2fab[_0x0fa2('0x40')]);return db[_0x0fa2('0x2d')][_0x0fa2('0x48')](_0x50c22a)[_0x0fa2('0x25')](handleEntityNotFound(_0x1c4640,null))[_0x0fa2('0x25')](respondWithResult(_0x1c4640,null))[_0x0fa2('0x43')](handleError(_0x1c4640,null));};exports[_0x0fa2('0x49')]=function(_0x577db2,_0x455bb6){return db[_0x0fa2('0x2d')][_0x0fa2('0x49')](_0x577db2['body'],{})[_0x0fa2('0x25')](respondWithResult(_0x455bb6,0xc9))[_0x0fa2('0x43')](handleError(_0x455bb6,null));};exports['update']=function(_0xc0ff7b,_0x531c55){if(_0xc0ff7b[_0x0fa2('0x4a')]['id']){delete _0xc0ff7b[_0x0fa2('0x4a')]['id'];}return db[_0x0fa2('0x2d')][_0x0fa2('0x48')]({'where':{'id':_0xc0ff7b[_0x0fa2('0x4b')]['id']}})[_0x0fa2('0x25')](handleEntityNotFound(_0x531c55,null))[_0x0fa2('0x25')](saveUpdates(_0xc0ff7b[_0x0fa2('0x4a')],null))[_0x0fa2('0x25')](respondWithResult(_0x531c55,null))['catch'](handleError(_0x531c55,null));};exports[_0x0fa2('0x26')]=function(_0x520702,_0x5db11e){return db[_0x0fa2('0x2d')][_0x0fa2('0x48')]({'where':{'id':_0x520702[_0x0fa2('0x4b')]['id']}})[_0x0fa2('0x25')](handleEntityNotFound(_0x5db11e,null))['then'](removeEntity(_0x5db11e,null))['catch'](handleError(_0x5db11e,null));};exports['describe']=function(_0x34fa38,_0x41083a){return db['OpenchannelQueueReport']['describe']()[_0x0fa2('0x25')](respondWithResult(_0x41083a,null))['catch'](handleError(_0x41083a,null));};