86203bc45f37f087af8a0538d50b75c6f02757ef
[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 _0x1e73=['where','merge','VIRTUAL','options','includeAll','include','findAll','rows','catch','length','create','body','find','describe','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','to-csv','ejs','fs-extra','lodash','squel','crypto','desk.js','ioredis','../../components/parsers/qs','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','count','offset','set','json','reject','save','update','then','destroy','name','OpenchannelQueueReport','rawAttributes','type','key','model','map','query','keys','filters','attributes','intersection','fields','hasOwnProperty','nolimit','limit','sort','pick','filter'];(function(_0x3f3871,_0x3f3443){var _0x363795=function(_0x5a9212){while(--_0x5a9212){_0x3f3871['push'](_0x3f3871['shift']());}};_0x363795(++_0x3f3443);}(_0x1e73,0x1e3));var _0x31e7=function(_0x5817e6,_0x44a2d0){_0x5817e6=_0x5817e6-0x0;var _0x51916a=_0x1e73[_0x5817e6];return _0x51916a;};'use strict';var emlformat=require(_0x31e7('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x31e7('0x1'));var jsonpatch=require(_0x31e7('0x2'));var rp=require(_0x31e7('0x3'));var moment=require(_0x31e7('0x4'));var BPromise=require(_0x31e7('0x5'));var Mustache=require('mustache');var util=require(_0x31e7('0x6'));var path=require('path');var sox=require('sox');var csv=require(_0x31e7('0x7'));var ejs=require(_0x31e7('0x8'));var fs=require('fs');var fs_extra=require(_0x31e7('0x9'));var _=require(_0x31e7('0xa'));var squel=require(_0x31e7('0xb'));var crypto=require(_0x31e7('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x31e7('0xd'));var toCsv=require(_0x31e7('0x7'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x31e7('0xe'));var authService=require('../../components/auth/service');var qs=require(_0x31e7('0xf'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0x31e7('0x10'))(_0x31e7('0x11'));var utils=require(_0x31e7('0x12'));var config=require(_0x31e7('0x13'));var licenseUtil=require(_0x31e7('0x14'));var db=require(_0x31e7('0x15'))['db'];function respondWithStatusCode(_0x68454a,_0x53ac1a){_0x53ac1a=_0x53ac1a||0xcc;return function(_0x180c43){if(_0x180c43){return _0x68454a[_0x31e7('0x16')](_0x53ac1a);}return _0x68454a[_0x31e7('0x17')](_0x53ac1a)[_0x31e7('0x18')]();};}function respondWithResult(_0x32744c,_0x2851d2){_0x2851d2=_0x2851d2||0xc8;return function(_0x48778b){if(_0x48778b){return _0x32744c[_0x31e7('0x17')](_0x2851d2)['json'](_0x48778b);}};}function respondWithFilteredResult(_0x4ded61,_0x195d74){return function(_0x3d4014){if(_0x3d4014){var _0x6f90d=_0x3d4014[_0x31e7('0x19')],_0x84a34b=_0x195d74[_0x31e7('0x1a')],_0x224816=_0x195d74[_0x31e7('0x1a')]+_0x195d74['limit'],_0x4fe40d;if(_0x224816>=_0x6f90d){_0x224816=_0x6f90d;_0x4fe40d=0xc8;}else{_0x4fe40d=0xce;}_0x4ded61[_0x31e7('0x17')](_0x4fe40d);return _0x4ded61[_0x31e7('0x1b')]('Content-Range',_0x84a34b+'-'+_0x224816+'/'+_0x6f90d)[_0x31e7('0x1c')](_0x3d4014);}return null;};}function patchUpdates(_0xc61f21){return function(_0x501fca){try{jsonpatch['apply'](_0x501fca,_0xc61f21,!![]);}catch(_0x4b9292){return BPromise[_0x31e7('0x1d')](_0x4b9292);}return _0x501fca[_0x31e7('0x1e')]();};}function saveUpdates(_0x43db3a,_0x349011){return function(_0x1423d2){if(_0x1423d2){return _0x1423d2[_0x31e7('0x1f')](_0x43db3a)[_0x31e7('0x20')](function(_0x3fc30c){return _0x3fc30c;});}return null;};}function removeEntity(_0x1a49ba,_0x42b4a6){return function(_0x3c7715){if(_0x3c7715){return _0x3c7715[_0x31e7('0x21')]()[_0x31e7('0x20')](function(){_0x1a49ba['status'](0xcc)[_0x31e7('0x18')]();});}};}function handleEntityNotFound(_0x1d6bfe,_0x26a12d){return function(_0x51ee55){if(!_0x51ee55){_0x1d6bfe[_0x31e7('0x16')](0x194);}return _0x51ee55;};}function handleError(_0x57ccae,_0x1197e4){_0x1197e4=_0x1197e4||0x1f4;return function(_0x634fa4){logger['error'](_0x634fa4['stack']);if(_0x634fa4[_0x31e7('0x22')]){delete _0x634fa4[_0x31e7('0x22')];}_0x57ccae['status'](_0x1197e4)['send'](_0x634fa4);};}exports['index']=function(_0x3f3b39,_0x309cc8){var _0x253e84={},_0x58d28a={},_0x297bf4={'count':0x0,'rows':[]};var _0x574df1=_['map'](db[_0x31e7('0x23')][_0x31e7('0x24')],function(_0x87bc48){return{'name':_0x87bc48['fieldName'],'type':_0x87bc48[_0x31e7('0x25')][_0x31e7('0x26')]};});_0x58d28a[_0x31e7('0x27')]=_[_0x31e7('0x28')](_0x574df1,_0x31e7('0x22'));_0x58d28a[_0x31e7('0x29')]=_[_0x31e7('0x2a')](_0x3f3b39[_0x31e7('0x29')]);_0x58d28a[_0x31e7('0x2b')]=_['intersection'](_0x58d28a['model'],_0x58d28a[_0x31e7('0x29')]);_0x253e84[_0x31e7('0x2c')]=_[_0x31e7('0x2d')](_0x58d28a[_0x31e7('0x27')],qs['fields'](_0x3f3b39['query'][_0x31e7('0x2e')]));_0x253e84[_0x31e7('0x2c')]=_0x253e84[_0x31e7('0x2c')]['length']?_0x253e84['attributes']:_0x58d28a[_0x31e7('0x27')];if(!_0x3f3b39['query'][_0x31e7('0x2f')](_0x31e7('0x30'))){_0x253e84[_0x31e7('0x31')]=qs[_0x31e7('0x31')](_0x3f3b39[_0x31e7('0x29')]['limit']);_0x253e84[_0x31e7('0x1a')]=qs[_0x31e7('0x1a')](_0x3f3b39[_0x31e7('0x29')][_0x31e7('0x1a')]);}_0x253e84['order']=qs[_0x31e7('0x32')](_0x3f3b39[_0x31e7('0x29')][_0x31e7('0x32')]);_0x253e84['where']=qs[_0x31e7('0x2b')](_[_0x31e7('0x33')](_0x3f3b39['query'],_0x58d28a[_0x31e7('0x2b')]),_0x574df1);if(_0x3f3b39[_0x31e7('0x29')][_0x31e7('0x34')]){_0x253e84[_0x31e7('0x35')]=_[_0x31e7('0x36')](_0x253e84[_0x31e7('0x35')],{'$or':_[_0x31e7('0x28')](_0x574df1,function(_0x1e673d){if(_0x1e673d[_0x31e7('0x25')]!==_0x31e7('0x37')){var _0x435706={};_0x435706[_0x1e673d['name']]={'$like':'%'+_0x3f3b39[_0x31e7('0x29')][_0x31e7('0x34')]+'%'};return _0x435706;}})});}_0x253e84=_[_0x31e7('0x36')]({},_0x253e84,_0x3f3b39[_0x31e7('0x38')]);var _0x3aa0c5={'where':_0x253e84[_0x31e7('0x35')]};return db['OpenchannelQueueReport'][_0x31e7('0x19')](_0x3aa0c5)[_0x31e7('0x20')](function(_0x473320){_0x297bf4[_0x31e7('0x19')]=_0x473320;if(_0x3f3b39[_0x31e7('0x29')][_0x31e7('0x39')]){_0x253e84[_0x31e7('0x3a')]=[{'all':!![]}];}return db[_0x31e7('0x23')][_0x31e7('0x3b')](_0x253e84);})[_0x31e7('0x20')](function(_0x313aa4){_0x297bf4[_0x31e7('0x3c')]=_0x313aa4;return _0x297bf4;})['then'](respondWithFilteredResult(_0x309cc8,_0x253e84))[_0x31e7('0x3d')](handleError(_0x309cc8,null));};exports['show']=function(_0x14a266,_0x5ec1dc){var _0x437a1f={'raw':!![],'where':{'id':_0x14a266['params']['id']}},_0x4a8330={};_0x4a8330[_0x31e7('0x27')]=_[_0x31e7('0x2a')](db['OpenchannelQueueReport'][_0x31e7('0x24')]);_0x4a8330[_0x31e7('0x29')]=_[_0x31e7('0x2a')](_0x14a266[_0x31e7('0x29')]);_0x4a8330[_0x31e7('0x2b')]=_[_0x31e7('0x2d')](_0x4a8330[_0x31e7('0x27')],_0x4a8330[_0x31e7('0x29')]);_0x437a1f[_0x31e7('0x2c')]=_[_0x31e7('0x2d')](_0x4a8330[_0x31e7('0x27')],qs[_0x31e7('0x2e')](_0x14a266[_0x31e7('0x29')][_0x31e7('0x2e')]));_0x437a1f[_0x31e7('0x2c')]=_0x437a1f['attributes'][_0x31e7('0x3e')]?_0x437a1f[_0x31e7('0x2c')]:_0x4a8330[_0x31e7('0x27')];if(_0x14a266[_0x31e7('0x29')][_0x31e7('0x39')]){_0x437a1f[_0x31e7('0x3a')]=[{'all':!![]}];}_0x437a1f=_[_0x31e7('0x36')]({},_0x437a1f,_0x14a266[_0x31e7('0x38')]);return db[_0x31e7('0x23')]['find'](_0x437a1f)[_0x31e7('0x20')](handleEntityNotFound(_0x5ec1dc,null))['then'](respondWithResult(_0x5ec1dc,null))[_0x31e7('0x3d')](handleError(_0x5ec1dc,null));};exports['create']=function(_0x24a2c3,_0x54011d){return db[_0x31e7('0x23')][_0x31e7('0x3f')](_0x24a2c3[_0x31e7('0x40')],{})[_0x31e7('0x20')](respondWithResult(_0x54011d,0xc9))[_0x31e7('0x3d')](handleError(_0x54011d,null));};exports[_0x31e7('0x1f')]=function(_0x5e40f3,_0x4fd3a0){if(_0x5e40f3[_0x31e7('0x40')]['id']){delete _0x5e40f3['body']['id'];}return db[_0x31e7('0x23')]['find']({'where':{'id':_0x5e40f3['params']['id']}})['then'](handleEntityNotFound(_0x4fd3a0,null))[_0x31e7('0x20')](saveUpdates(_0x5e40f3[_0x31e7('0x40')],null))['then'](respondWithResult(_0x4fd3a0,null))[_0x31e7('0x3d')](handleError(_0x4fd3a0,null));};exports['destroy']=function(_0x59a152,_0x24aef3){return db[_0x31e7('0x23')][_0x31e7('0x41')]({'where':{'id':_0x59a152['params']['id']}})[_0x31e7('0x20')](handleEntityNotFound(_0x24aef3,null))[_0x31e7('0x20')](removeEntity(_0x24aef3,null))['catch'](handleError(_0x24aef3,null));};exports[_0x31e7('0x42')]=function(_0x3d671e,_0x1e35f5){return db['OpenchannelQueueReport'][_0x31e7('0x42')]()[_0x31e7('0x20')](respondWithResult(_0x1e35f5,null))[_0x31e7('0x3d')](handleError(_0x1e35f5,null));};