8a8bc2198642c7189c30785fc5012fe848cb4fda
[motion2.git] / server / api / chatQueueReport / chatQueueReport.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 _0x9d92=['includeAll','include','findAll','rows','params','length','create','catch','update','body','find','destroy','describe','html-pdf','zip-dir','fast-json-patch','moment','bluebird','mustache','util','path','sox','to-csv','lodash','squel','crypto','desk.js','querystring','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','end','json','count','offset','status','apply','reject','save','then','sendStatus','error','stack','name','map','ChatQueueReport','rawAttributes','fieldName','type','query','keys','filters','intersection','model','fields','attributes','nolimit','limit','order','sort','where','pick','filter','merge','VIRTUAL','options'];(function(_0x36c5b0,_0x5001da){var _0xf19333=function(_0x1e880a){while(--_0x1e880a){_0x36c5b0['push'](_0x36c5b0['shift']());}};_0xf19333(++_0x5001da);}(_0x9d92,0xdf));var _0x29d9=function(_0x164eca,_0x555e28){_0x164eca=_0x164eca-0x0;var _0x2ce562=_0x9d92[_0x164eca];return _0x2ce562;};'use strict';var pdf=require(_0x29d9('0x0'));var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0x29d9('0x1'));var jsonpatch=require(_0x29d9('0x2'));var rp=require('request-promise');var moment=require(_0x29d9('0x3'));var BPromise=require(_0x29d9('0x4'));var Mustache=require(_0x29d9('0x5'));var util=require(_0x29d9('0x6'));var path=require(_0x29d9('0x7'));var sox=require(_0x29d9('0x8'));var csv=require(_0x29d9('0x9'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x29d9('0xa'));var squel=require(_0x29d9('0xb'));var crypto=require(_0x29d9('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x29d9('0xd'));var toCsv=require(_0x29d9('0x9'));var querystring=require(_0x29d9('0xe'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0x29d9('0xf'));var hardwareService=require(_0x29d9('0x10'));var logger=require(_0x29d9('0x11'))('api');var utils=require(_0x29d9('0x12'));var config=require(_0x29d9('0x13'));var licenseUtil=require(_0x29d9('0x14'));var db=require(_0x29d9('0x15'))['db'];function respondWithStatusCode(_0x48bc6c,_0x2259cb){_0x2259cb=_0x2259cb||0xcc;return function(_0x47c4ad){if(_0x47c4ad){return _0x48bc6c['sendStatus'](_0x2259cb);}return _0x48bc6c['status'](_0x2259cb)[_0x29d9('0x16')]();};}function respondWithResult(_0x24b770,_0x112b59){_0x112b59=_0x112b59||0xc8;return function(_0x32c7c9){if(_0x32c7c9){return _0x24b770['status'](_0x112b59)[_0x29d9('0x17')](_0x32c7c9);}};}function respondWithFilteredResult(_0x2a2603,_0xa5b923){return function(_0x446a80){if(_0x446a80){var _0x2e6290=_0x446a80[_0x29d9('0x18')],_0x36f1f7=_0xa5b923[_0x29d9('0x19')],_0x3f382e=_0xa5b923[_0x29d9('0x19')]+_0xa5b923['limit'],_0x327c5f;if(_0x3f382e>=_0x2e6290){_0x3f382e=_0x2e6290;_0x327c5f=0xc8;}else{_0x327c5f=0xce;}_0x2a2603[_0x29d9('0x1a')](_0x327c5f);return _0x2a2603['set']('Content-Range',_0x36f1f7+'-'+_0x3f382e+'/'+_0x2e6290)[_0x29d9('0x17')](_0x446a80);}return null;};}function patchUpdates(_0x248019){return function(_0x52f591){try{jsonpatch[_0x29d9('0x1b')](_0x52f591,_0x248019,!![]);}catch(_0x3392d6){return BPromise[_0x29d9('0x1c')](_0x3392d6);}return _0x52f591[_0x29d9('0x1d')]();};}function saveUpdates(_0x2a2742,_0x268485){return function(_0x25e758){if(_0x25e758){return _0x25e758['update'](_0x2a2742)[_0x29d9('0x1e')](function(_0xbb8ceb){return _0xbb8ceb;});}return null;};}function removeEntity(_0x2c756a,_0x198520){return function(_0x4aecaa){if(_0x4aecaa){return _0x4aecaa['destroy']()[_0x29d9('0x1e')](function(){_0x2c756a[_0x29d9('0x1a')](0xcc)['end']();});}};}function handleEntityNotFound(_0x590476,_0x512e5c){return function(_0x460d3){if(!_0x460d3){_0x590476[_0x29d9('0x1f')](0x194);}return _0x460d3;};}function handleError(_0x302a7b,_0x5d80c4){_0x5d80c4=_0x5d80c4||0x1f4;return function(_0x45da6c){logger[_0x29d9('0x20')](_0x45da6c[_0x29d9('0x21')]);if(_0x45da6c[_0x29d9('0x22')]){delete _0x45da6c['name'];}_0x302a7b[_0x29d9('0x1a')](_0x5d80c4)['send'](_0x45da6c);};}exports['index']=function(_0x4334a8,_0x1dbe5a){var _0x52edfc={},_0x388e93={},_0x5c5de5={'count':0x0,'rows':[]};var _0x383b69=_[_0x29d9('0x23')](db[_0x29d9('0x24')][_0x29d9('0x25')],function(_0x30212d){return{'name':_0x30212d[_0x29d9('0x26')],'type':_0x30212d[_0x29d9('0x27')]['key']};});_0x388e93['model']=_['map'](_0x383b69,_0x29d9('0x22'));_0x388e93[_0x29d9('0x28')]=_[_0x29d9('0x29')](_0x4334a8[_0x29d9('0x28')]);_0x388e93[_0x29d9('0x2a')]=_[_0x29d9('0x2b')](_0x388e93['model'],_0x388e93[_0x29d9('0x28')]);_0x52edfc['attributes']=_[_0x29d9('0x2b')](_0x388e93[_0x29d9('0x2c')],qs[_0x29d9('0x2d')](_0x4334a8['query']['fields']));_0x52edfc['attributes']=_0x52edfc['attributes']['length']?_0x52edfc[_0x29d9('0x2e')]:_0x388e93[_0x29d9('0x2c')];if(!_0x4334a8[_0x29d9('0x28')]['hasOwnProperty'](_0x29d9('0x2f'))){_0x52edfc[_0x29d9('0x30')]=qs[_0x29d9('0x30')](_0x4334a8[_0x29d9('0x28')][_0x29d9('0x30')]);_0x52edfc[_0x29d9('0x19')]=qs['offset'](_0x4334a8[_0x29d9('0x28')][_0x29d9('0x19')]);}_0x52edfc[_0x29d9('0x31')]=qs[_0x29d9('0x32')](_0x4334a8[_0x29d9('0x28')]['sort']);_0x52edfc[_0x29d9('0x33')]=qs[_0x29d9('0x2a')](_[_0x29d9('0x34')](_0x4334a8[_0x29d9('0x28')],_0x388e93[_0x29d9('0x2a')]),_0x383b69);if(_0x4334a8[_0x29d9('0x28')][_0x29d9('0x35')]){_0x52edfc['where']=_[_0x29d9('0x36')](_0x52edfc[_0x29d9('0x33')],{'$or':_[_0x29d9('0x23')](_0x383b69,function(_0x28c36d){if(_0x28c36d[_0x29d9('0x27')]!==_0x29d9('0x37')){var _0x53627f={};_0x53627f[_0x28c36d[_0x29d9('0x22')]]={'$like':'%'+_0x4334a8['query']['filter']+'%'};return _0x53627f;}})});}_0x52edfc=_['merge']({},_0x52edfc,_0x4334a8[_0x29d9('0x38')]);var _0x4de0e3={'where':_0x52edfc[_0x29d9('0x33')]};return db[_0x29d9('0x24')][_0x29d9('0x18')](_0x4de0e3)[_0x29d9('0x1e')](function(_0x59bd24){_0x5c5de5[_0x29d9('0x18')]=_0x59bd24;if(_0x4334a8[_0x29d9('0x28')][_0x29d9('0x39')]){_0x52edfc[_0x29d9('0x3a')]=[{'all':!![]}];}return db[_0x29d9('0x24')][_0x29d9('0x3b')](_0x52edfc);})['then'](function(_0x9b4bef){_0x5c5de5[_0x29d9('0x3c')]=_0x9b4bef;return _0x5c5de5;})['then'](respondWithFilteredResult(_0x1dbe5a,_0x52edfc))['catch'](handleError(_0x1dbe5a,null));};exports['show']=function(_0x4197e3,_0x2a9561){var _0x1b5fad={'raw':!![],'where':{'id':_0x4197e3[_0x29d9('0x3d')]['id']}},_0xff208a={};_0xff208a['model']=_[_0x29d9('0x29')](db[_0x29d9('0x24')][_0x29d9('0x25')]);_0xff208a['query']=_[_0x29d9('0x29')](_0x4197e3[_0x29d9('0x28')]);_0xff208a[_0x29d9('0x2a')]=_[_0x29d9('0x2b')](_0xff208a['model'],_0xff208a[_0x29d9('0x28')]);_0x1b5fad[_0x29d9('0x2e')]=_[_0x29d9('0x2b')](_0xff208a[_0x29d9('0x2c')],qs['fields'](_0x4197e3[_0x29d9('0x28')]['fields']));_0x1b5fad['attributes']=_0x1b5fad[_0x29d9('0x2e')][_0x29d9('0x3e')]?_0x1b5fad[_0x29d9('0x2e')]:_0xff208a[_0x29d9('0x2c')];if(_0x4197e3[_0x29d9('0x28')][_0x29d9('0x39')]){_0x1b5fad[_0x29d9('0x3a')]=[{'all':!![]}];}_0x1b5fad=_[_0x29d9('0x36')]({},_0x1b5fad,_0x4197e3['options']);return db[_0x29d9('0x24')]['find'](_0x1b5fad)['then'](handleEntityNotFound(_0x2a9561,null))[_0x29d9('0x1e')](respondWithResult(_0x2a9561,null))['catch'](handleError(_0x2a9561,null));};exports[_0x29d9('0x3f')]=function(_0x2099ef,_0x69a39f){return db[_0x29d9('0x24')][_0x29d9('0x3f')](_0x2099ef['body'],{})['then'](respondWithResult(_0x69a39f,0xc9))[_0x29d9('0x40')](handleError(_0x69a39f,null));};exports[_0x29d9('0x41')]=function(_0x2777bc,_0x2f4a7b){if(_0x2777bc[_0x29d9('0x42')]['id']){delete _0x2777bc[_0x29d9('0x42')]['id'];}return db[_0x29d9('0x24')][_0x29d9('0x43')]({'where':{'id':_0x2777bc[_0x29d9('0x3d')]['id']}})[_0x29d9('0x1e')](handleEntityNotFound(_0x2f4a7b,null))[_0x29d9('0x1e')](saveUpdates(_0x2777bc['body'],null))[_0x29d9('0x1e')](respondWithResult(_0x2f4a7b,null))[_0x29d9('0x40')](handleError(_0x2f4a7b,null));};exports[_0x29d9('0x44')]=function(_0x2a2cc3,_0x44bafa){return db[_0x29d9('0x24')]['find']({'where':{'id':_0x2a2cc3[_0x29d9('0x3d')]['id']}})['then'](handleEntityNotFound(_0x44bafa,null))[_0x29d9('0x1e')](removeEntity(_0x44bafa,null))[_0x29d9('0x40')](handleError(_0x44bafa,null));};exports['describe']=function(_0x238a54,_0x4bf9d8){return db[_0x29d9('0x24')][_0x29d9('0x45')]()[_0x29d9('0x1e')](respondWithResult(_0x4bf9d8,null))[_0x29d9('0x40')](handleError(_0x4bf9d8,null));};