Built motion from commit b5413ace.|2.6.9
[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 _0xa6c2=['includeAll','findAll','catch','show','fields','options','find','create','body','params','destroy','describe','eml-format','rimraf','zip-dir','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/environment','../../mysqldb','sendStatus','status','end','offset','undefined','limit','count','set','Content-Range','json','reject','save','update','then','error','stack','send','index','map','OpenchannelQueueReport','fieldName','type','name','query','keys','intersection','model','attributes','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','merge','VIRTUAL'];(function(_0x55d57b,_0x3ffcd4){var _0x478c89=function(_0x48bf52){while(--_0x48bf52){_0x55d57b['push'](_0x55d57b['shift']());}};_0x478c89(++_0x3ffcd4);}(_0xa6c2,0x134));var _0x2a6c=function(_0x214d54,_0x133c72){_0x214d54=_0x214d54-0x0;var _0x44ca46=_0xa6c2[_0x214d54];return _0x44ca46;};'use strict';var emlformat=require(_0x2a6c('0x0'));var rimraf=require(_0x2a6c('0x1'));var zipdir=require(_0x2a6c('0x2'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0x2a6c('0x3'));var Mustache=require(_0x2a6c('0x4'));var util=require(_0x2a6c('0x5'));var path=require(_0x2a6c('0x6'));var sox=require(_0x2a6c('0x7'));var csv=require(_0x2a6c('0x8'));var ejs=require(_0x2a6c('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x2a6c('0xa'));var squel=require(_0x2a6c('0xb'));var crypto=require(_0x2a6c('0xc'));var jsforce=require(_0x2a6c('0xd'));var deskjs=require(_0x2a6c('0xe'));var toCsv=require('to-csv');var querystring=require(_0x2a6c('0xf'));var Papa=require(_0x2a6c('0x10'));var Redis=require(_0x2a6c('0x11'));var authService=require(_0x2a6c('0x12'));var qs=require(_0x2a6c('0x13'));var as=require(_0x2a6c('0x14'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x2a6c('0x15'));var utils=require('../../config/utils');var config=require(_0x2a6c('0x16'));var licenseUtil=require('../../config/license/util');var db=require(_0x2a6c('0x17'))['db'];function respondWithStatusCode(_0x32f60f,_0x297836){_0x297836=_0x297836||0xcc;return function(_0xd62de8){if(_0xd62de8){return _0x32f60f[_0x2a6c('0x18')](_0x297836);}return _0x32f60f[_0x2a6c('0x19')](_0x297836)[_0x2a6c('0x1a')]();};}function respondWithResult(_0x387239,_0x211d4c){_0x211d4c=_0x211d4c||0xc8;return function(_0x22ec2b){if(_0x22ec2b){return _0x387239['status'](_0x211d4c)['json'](_0x22ec2b);}};}function respondWithFilteredResult(_0x27797c,_0xe85c79){return function(_0x4d2fa8){if(_0x4d2fa8){var _0x105d44=typeof _0xe85c79[_0x2a6c('0x1b')]===_0x2a6c('0x1c')&&typeof _0xe85c79[_0x2a6c('0x1d')]===_0x2a6c('0x1c');var _0x34c02e=_0x4d2fa8[_0x2a6c('0x1e')];var _0x4855e1=_0x105d44?0x0:_0xe85c79['offset'];var _0x4f42a8=_0x105d44?_0x4d2fa8[_0x2a6c('0x1e')]:_0xe85c79['offset']+_0xe85c79[_0x2a6c('0x1d')];var _0x4907aa;if(_0x4f42a8>=_0x34c02e){_0x4f42a8=_0x34c02e;_0x4907aa=0xc8;}else{_0x4907aa=0xce;}_0x27797c[_0x2a6c('0x19')](_0x4907aa);return _0x27797c[_0x2a6c('0x1f')](_0x2a6c('0x20'),_0x4855e1+'-'+_0x4f42a8+'/'+_0x34c02e)[_0x2a6c('0x21')](_0x4d2fa8);}return null;};}function patchUpdates(_0x1c89dc){return function(_0x57fcf6){try{jsonpatch['apply'](_0x57fcf6,_0x1c89dc,!![]);}catch(_0x1fd65e){return BPromise[_0x2a6c('0x22')](_0x1fd65e);}return _0x57fcf6[_0x2a6c('0x23')]();};}function saveUpdates(_0x51f8ee,_0x2ff0fb){return function(_0x25354a){if(_0x25354a){return _0x25354a[_0x2a6c('0x24')](_0x51f8ee)['then'](function(_0x51daf2){return _0x51daf2;});}return null;};}function removeEntity(_0x384874,_0xf368c6){return function(_0x49ee2f){if(_0x49ee2f){return _0x49ee2f['destroy']()[_0x2a6c('0x25')](function(){_0x384874[_0x2a6c('0x19')](0xcc)[_0x2a6c('0x1a')]();});}};}function handleEntityNotFound(_0x5cbe2d,_0x38f1be){return function(_0x36cb0c){if(!_0x36cb0c){_0x5cbe2d[_0x2a6c('0x18')](0x194);}return _0x36cb0c;};}function handleError(_0x34aa5b,_0x49d851){_0x49d851=_0x49d851||0x1f4;return function(_0x219149){logger[_0x2a6c('0x26')](_0x219149[_0x2a6c('0x27')]);if(_0x219149['name']){delete _0x219149['name'];}_0x34aa5b['status'](_0x49d851)[_0x2a6c('0x28')](_0x219149);};}exports[_0x2a6c('0x29')]=function(_0x223df5,_0x19195b){var _0x1618f1={},_0x25e04b={},_0x28d33d={'count':0x0,'rows':[]};var _0x244b34=_[_0x2a6c('0x2a')](db[_0x2a6c('0x2b')]['rawAttributes'],function(_0x1cc5ae){return{'name':_0x1cc5ae[_0x2a6c('0x2c')],'type':_0x1cc5ae[_0x2a6c('0x2d')]['key']};});_0x25e04b['model']=_['map'](_0x244b34,_0x2a6c('0x2e'));_0x25e04b[_0x2a6c('0x2f')]=_[_0x2a6c('0x30')](_0x223df5[_0x2a6c('0x2f')]);_0x25e04b['filters']=_[_0x2a6c('0x31')](_0x25e04b['model'],_0x25e04b[_0x2a6c('0x2f')]);_0x1618f1['attributes']=_[_0x2a6c('0x31')](_0x25e04b[_0x2a6c('0x32')],qs['fields'](_0x223df5['query']['fields']));_0x1618f1['attributes']=_0x1618f1[_0x2a6c('0x33')][_0x2a6c('0x34')]?_0x1618f1['attributes']:_0x25e04b[_0x2a6c('0x32')];if(!_0x223df5[_0x2a6c('0x2f')][_0x2a6c('0x35')](_0x2a6c('0x36'))){_0x1618f1['limit']=qs['limit'](_0x223df5[_0x2a6c('0x2f')][_0x2a6c('0x1d')]);_0x1618f1[_0x2a6c('0x1b')]=qs[_0x2a6c('0x1b')](_0x223df5[_0x2a6c('0x2f')][_0x2a6c('0x1b')]);}_0x1618f1[_0x2a6c('0x37')]=qs[_0x2a6c('0x38')](_0x223df5[_0x2a6c('0x2f')][_0x2a6c('0x38')]);_0x1618f1[_0x2a6c('0x39')]=qs[_0x2a6c('0x3a')](_[_0x2a6c('0x3b')](_0x223df5[_0x2a6c('0x2f')],_0x25e04b[_0x2a6c('0x3a')]),_0x244b34);if(_0x223df5[_0x2a6c('0x2f')]['filter']){_0x1618f1[_0x2a6c('0x39')]=_[_0x2a6c('0x3c')](_0x1618f1[_0x2a6c('0x39')],{'$or':_[_0x2a6c('0x2a')](_0x244b34,function(_0x39116f){if(_0x39116f['type']!==_0x2a6c('0x3d')){var _0x131e29={};_0x131e29[_0x39116f[_0x2a6c('0x2e')]]={'$like':'%'+_0x223df5['query']['filter']+'%'};return _0x131e29;}})});}_0x1618f1=_[_0x2a6c('0x3c')]({},_0x1618f1,_0x223df5['options']);var _0x88c18f={'where':_0x1618f1[_0x2a6c('0x39')]};return db[_0x2a6c('0x2b')][_0x2a6c('0x1e')](_0x88c18f)[_0x2a6c('0x25')](function(_0x31581f){_0x28d33d[_0x2a6c('0x1e')]=_0x31581f;if(_0x223df5[_0x2a6c('0x2f')][_0x2a6c('0x3e')]){_0x1618f1['include']=[{'all':!![]}];}return db[_0x2a6c('0x2b')][_0x2a6c('0x3f')](_0x1618f1);})[_0x2a6c('0x25')](function(_0x5e776d){_0x28d33d['rows']=_0x5e776d;return _0x28d33d;})[_0x2a6c('0x25')](respondWithFilteredResult(_0x19195b,_0x1618f1))[_0x2a6c('0x40')](handleError(_0x19195b,null));};exports[_0x2a6c('0x41')]=function(_0x392baa,_0x2c99ab){var _0x635ce2={'raw':!![],'where':{'id':_0x392baa['params']['id']}},_0x55b330={};_0x55b330[_0x2a6c('0x32')]=_[_0x2a6c('0x30')](db[_0x2a6c('0x2b')]['rawAttributes']);_0x55b330[_0x2a6c('0x2f')]=_['keys'](_0x392baa[_0x2a6c('0x2f')]);_0x55b330['filters']=_[_0x2a6c('0x31')](_0x55b330[_0x2a6c('0x32')],_0x55b330[_0x2a6c('0x2f')]);_0x635ce2[_0x2a6c('0x33')]=_['intersection'](_0x55b330[_0x2a6c('0x32')],qs[_0x2a6c('0x42')](_0x392baa[_0x2a6c('0x2f')][_0x2a6c('0x42')]));_0x635ce2['attributes']=_0x635ce2[_0x2a6c('0x33')][_0x2a6c('0x34')]?_0x635ce2[_0x2a6c('0x33')]:_0x55b330['model'];if(_0x392baa[_0x2a6c('0x2f')][_0x2a6c('0x3e')]){_0x635ce2['include']=[{'all':!![]}];}_0x635ce2=_[_0x2a6c('0x3c')]({},_0x635ce2,_0x392baa[_0x2a6c('0x43')]);return db[_0x2a6c('0x2b')][_0x2a6c('0x44')](_0x635ce2)[_0x2a6c('0x25')](handleEntityNotFound(_0x2c99ab,null))[_0x2a6c('0x25')](respondWithResult(_0x2c99ab,null))['catch'](handleError(_0x2c99ab,null));};exports[_0x2a6c('0x45')]=function(_0x3a7298,_0x1b2bcf){return db['OpenchannelQueueReport']['create'](_0x3a7298['body'],{})['then'](respondWithResult(_0x1b2bcf,0xc9))['catch'](handleError(_0x1b2bcf,null));};exports[_0x2a6c('0x24')]=function(_0xb75f53,_0x18189c){if(_0xb75f53[_0x2a6c('0x46')]['id']){delete _0xb75f53[_0x2a6c('0x46')]['id'];}return db[_0x2a6c('0x2b')][_0x2a6c('0x44')]({'where':{'id':_0xb75f53[_0x2a6c('0x47')]['id']}})[_0x2a6c('0x25')](handleEntityNotFound(_0x18189c,null))['then'](saveUpdates(_0xb75f53[_0x2a6c('0x46')],null))[_0x2a6c('0x25')](respondWithResult(_0x18189c,null))[_0x2a6c('0x40')](handleError(_0x18189c,null));};exports[_0x2a6c('0x48')]=function(_0x443336,_0x3562e4){return db['OpenchannelQueueReport'][_0x2a6c('0x44')]({'where':{'id':_0x443336[_0x2a6c('0x47')]['id']}})[_0x2a6c('0x25')](handleEntityNotFound(_0x3562e4,null))[_0x2a6c('0x25')](removeEntity(_0x3562e4,null))[_0x2a6c('0x40')](handleError(_0x3562e4,null));};exports[_0x2a6c('0x49')]=function(_0x228437,_0x459e33){return db[_0x2a6c('0x2b')]['describe']()['then'](respondWithResult(_0x459e33,null))[_0x2a6c('0x40')](handleError(_0x459e33,null));};