Built motion from commit da617fac.|2.6.6
[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 _0x95a6=['request-promise','moment','bluebird','mustache','util','path','sox','to-csv','fs-extra','lodash','squel','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','sendStatus','status','json','offset','undefined','count','limit','set','Content-Range','apply','reject','save','update','then','destroy','end','error','stack','name','index','map','rawAttributes','fieldName','key','model','query','intersection','attributes','fields','length','order','sort','where','filters','filter','merge','VIRTUAL','OpenchannelQueueReport','include','rows','catch','show','keys','includeAll','find','create','body','params','describe','eml-format','rimraf','zip-dir'];(function(_0x458959,_0x4cdf7a){var _0xde7ff6=function(_0x4dbf8f){while(--_0x4dbf8f){_0x458959['push'](_0x458959['shift']());}};_0xde7ff6(++_0x4cdf7a);}(_0x95a6,0x129));var _0x695a=function(_0x251e4d,_0x39bc60){_0x251e4d=_0x251e4d-0x0;var _0x1b6c88=_0x95a6[_0x251e4d];return _0x1b6c88;};'use strict';var emlformat=require(_0x695a('0x0'));var rimraf=require(_0x695a('0x1'));var zipdir=require(_0x695a('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x695a('0x3'));var moment=require(_0x695a('0x4'));var BPromise=require(_0x695a('0x5'));var Mustache=require(_0x695a('0x6'));var util=require(_0x695a('0x7'));var path=require(_0x695a('0x8'));var sox=require(_0x695a('0x9'));var csv=require(_0x695a('0xa'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x695a('0xb'));var _=require(_0x695a('0xc'));var squel=require(_0x695a('0xd'));var crypto=require(_0x695a('0xe'));var jsforce=require(_0x695a('0xf'));var deskjs=require('desk.js');var toCsv=require(_0x695a('0xa'));var querystring=require(_0x695a('0x10'));var Papa=require(_0x695a('0x11'));var Redis=require(_0x695a('0x12'));var authService=require(_0x695a('0x13'));var qs=require(_0x695a('0x14'));var as=require(_0x695a('0x15'));var hardwareService=require(_0x695a('0x16'));var logger=require(_0x695a('0x17'))('api');var utils=require(_0x695a('0x18'));var config=require(_0x695a('0x19'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x23e20e,_0x2472bf){_0x2472bf=_0x2472bf||0xcc;return function(_0x2eac12){if(_0x2eac12){return _0x23e20e[_0x695a('0x1a')](_0x2472bf);}return _0x23e20e[_0x695a('0x1b')](_0x2472bf)['end']();};}function respondWithResult(_0xf3c1dc,_0x57b337){_0x57b337=_0x57b337||0xc8;return function(_0x496f83){if(_0x496f83){return _0xf3c1dc[_0x695a('0x1b')](_0x57b337)[_0x695a('0x1c')](_0x496f83);}};}function respondWithFilteredResult(_0x504fee,_0x109ee6){return function(_0x25ca64){if(_0x25ca64){var _0x3a0613=typeof _0x109ee6[_0x695a('0x1d')]===_0x695a('0x1e')&&typeof _0x109ee6['limit']===_0x695a('0x1e');var _0x519001=_0x25ca64[_0x695a('0x1f')];var _0x48eb78=_0x3a0613?0x0:_0x109ee6[_0x695a('0x1d')];var _0x53720a=_0x3a0613?_0x25ca64[_0x695a('0x1f')]:_0x109ee6[_0x695a('0x1d')]+_0x109ee6[_0x695a('0x20')];var _0xa29bfe;if(_0x53720a>=_0x519001){_0x53720a=_0x519001;_0xa29bfe=0xc8;}else{_0xa29bfe=0xce;}_0x504fee[_0x695a('0x1b')](_0xa29bfe);return _0x504fee[_0x695a('0x21')](_0x695a('0x22'),_0x48eb78+'-'+_0x53720a+'/'+_0x519001)[_0x695a('0x1c')](_0x25ca64);}return null;};}function patchUpdates(_0x152a9d){return function(_0x30ca4f){try{jsonpatch[_0x695a('0x23')](_0x30ca4f,_0x152a9d,!![]);}catch(_0x4526b8){return BPromise[_0x695a('0x24')](_0x4526b8);}return _0x30ca4f[_0x695a('0x25')]();};}function saveUpdates(_0x12ecf1,_0x5e868f){return function(_0x39c741){if(_0x39c741){return _0x39c741[_0x695a('0x26')](_0x12ecf1)[_0x695a('0x27')](function(_0x51350b){return _0x51350b;});}return null;};}function removeEntity(_0x5f408a,_0x42fc6b){return function(_0x575990){if(_0x575990){return _0x575990[_0x695a('0x28')]()[_0x695a('0x27')](function(){_0x5f408a['status'](0xcc)[_0x695a('0x29')]();});}};}function handleEntityNotFound(_0x24ef63,_0x1c9de2){return function(_0x2c5dc4){if(!_0x2c5dc4){_0x24ef63['sendStatus'](0x194);}return _0x2c5dc4;};}function handleError(_0x229e9e,_0x467375){_0x467375=_0x467375||0x1f4;return function(_0x51687e){logger[_0x695a('0x2a')](_0x51687e[_0x695a('0x2b')]);if(_0x51687e['name']){delete _0x51687e[_0x695a('0x2c')];}_0x229e9e[_0x695a('0x1b')](_0x467375)['send'](_0x51687e);};}exports[_0x695a('0x2d')]=function(_0x20baf4,_0x30ac74){var _0x50dd65={},_0x153ab6={},_0x3d53b0={'count':0x0,'rows':[]};var _0x2374a8=_[_0x695a('0x2e')](db['OpenchannelQueueReport'][_0x695a('0x2f')],function(_0x471693){return{'name':_0x471693[_0x695a('0x30')],'type':_0x471693['type'][_0x695a('0x31')]};});_0x153ab6[_0x695a('0x32')]=_['map'](_0x2374a8,_0x695a('0x2c'));_0x153ab6[_0x695a('0x33')]=_['keys'](_0x20baf4[_0x695a('0x33')]);_0x153ab6['filters']=_[_0x695a('0x34')](_0x153ab6['model'],_0x153ab6['query']);_0x50dd65[_0x695a('0x35')]=_[_0x695a('0x34')](_0x153ab6[_0x695a('0x32')],qs[_0x695a('0x36')](_0x20baf4['query']['fields']));_0x50dd65[_0x695a('0x35')]=_0x50dd65[_0x695a('0x35')][_0x695a('0x37')]?_0x50dd65[_0x695a('0x35')]:_0x153ab6['model'];if(!_0x20baf4['query']['hasOwnProperty']('nolimit')){_0x50dd65['limit']=qs[_0x695a('0x20')](_0x20baf4[_0x695a('0x33')][_0x695a('0x20')]);_0x50dd65[_0x695a('0x1d')]=qs['offset'](_0x20baf4['query'][_0x695a('0x1d')]);}_0x50dd65[_0x695a('0x38')]=qs[_0x695a('0x39')](_0x20baf4['query'][_0x695a('0x39')]);_0x50dd65[_0x695a('0x3a')]=qs[_0x695a('0x3b')](_['pick'](_0x20baf4[_0x695a('0x33')],_0x153ab6[_0x695a('0x3b')]),_0x2374a8);if(_0x20baf4[_0x695a('0x33')][_0x695a('0x3c')]){_0x50dd65[_0x695a('0x3a')]=_[_0x695a('0x3d')](_0x50dd65[_0x695a('0x3a')],{'$or':_[_0x695a('0x2e')](_0x2374a8,function(_0x3dac17){if(_0x3dac17['type']!==_0x695a('0x3e')){var _0x4a78d5={};_0x4a78d5[_0x3dac17[_0x695a('0x2c')]]={'$like':'%'+_0x20baf4['query']['filter']+'%'};return _0x4a78d5;}})});}_0x50dd65=_[_0x695a('0x3d')]({},_0x50dd65,_0x20baf4['options']);var _0x5a914e={'where':_0x50dd65[_0x695a('0x3a')]};return db[_0x695a('0x3f')][_0x695a('0x1f')](_0x5a914e)[_0x695a('0x27')](function(_0x48e87c){_0x3d53b0[_0x695a('0x1f')]=_0x48e87c;if(_0x20baf4[_0x695a('0x33')]['includeAll']){_0x50dd65[_0x695a('0x40')]=[{'all':!![]}];}return db[_0x695a('0x3f')]['findAll'](_0x50dd65);})[_0x695a('0x27')](function(_0x7f4d32){_0x3d53b0[_0x695a('0x41')]=_0x7f4d32;return _0x3d53b0;})[_0x695a('0x27')](respondWithFilteredResult(_0x30ac74,_0x50dd65))[_0x695a('0x42')](handleError(_0x30ac74,null));};exports[_0x695a('0x43')]=function(_0x21fa42,_0x45c1d0){var _0x22e601={'raw':!![],'where':{'id':_0x21fa42['params']['id']}},_0x1bf7bf={};_0x1bf7bf['model']=_['keys'](db[_0x695a('0x3f')][_0x695a('0x2f')]);_0x1bf7bf['query']=_[_0x695a('0x44')](_0x21fa42[_0x695a('0x33')]);_0x1bf7bf['filters']=_['intersection'](_0x1bf7bf['model'],_0x1bf7bf['query']);_0x22e601[_0x695a('0x35')]=_[_0x695a('0x34')](_0x1bf7bf[_0x695a('0x32')],qs[_0x695a('0x36')](_0x21fa42['query'][_0x695a('0x36')]));_0x22e601[_0x695a('0x35')]=_0x22e601[_0x695a('0x35')][_0x695a('0x37')]?_0x22e601[_0x695a('0x35')]:_0x1bf7bf['model'];if(_0x21fa42[_0x695a('0x33')][_0x695a('0x45')]){_0x22e601[_0x695a('0x40')]=[{'all':!![]}];}_0x22e601=_[_0x695a('0x3d')]({},_0x22e601,_0x21fa42['options']);return db['OpenchannelQueueReport'][_0x695a('0x46')](_0x22e601)[_0x695a('0x27')](handleEntityNotFound(_0x45c1d0,null))[_0x695a('0x27')](respondWithResult(_0x45c1d0,null))[_0x695a('0x42')](handleError(_0x45c1d0,null));};exports[_0x695a('0x47')]=function(_0x2cc06f,_0x10a4c6){return db[_0x695a('0x3f')]['create'](_0x2cc06f['body'],{})['then'](respondWithResult(_0x10a4c6,0xc9))[_0x695a('0x42')](handleError(_0x10a4c6,null));};exports[_0x695a('0x26')]=function(_0x939f8c,_0x1696e8){if(_0x939f8c[_0x695a('0x48')]['id']){delete _0x939f8c[_0x695a('0x48')]['id'];}return db['OpenchannelQueueReport'][_0x695a('0x46')]({'where':{'id':_0x939f8c[_0x695a('0x49')]['id']}})[_0x695a('0x27')](handleEntityNotFound(_0x1696e8,null))[_0x695a('0x27')](saveUpdates(_0x939f8c[_0x695a('0x48')],null))[_0x695a('0x27')](respondWithResult(_0x1696e8,null))[_0x695a('0x42')](handleError(_0x1696e8,null));};exports[_0x695a('0x28')]=function(_0x99361d,_0x2231f8){return db[_0x695a('0x3f')]['find']({'where':{'id':_0x99361d[_0x695a('0x49')]['id']}})['then'](handleEntityNotFound(_0x2231f8,null))[_0x695a('0x27')](removeEntity(_0x2231f8,null))[_0x695a('0x42')](handleError(_0x2231f8,null));};exports[_0x695a('0x4a')]=function(_0x7d0d6b,_0x164456){return db[_0x695a('0x3f')][_0x695a('0x4a')]()[_0x695a('0x27')](respondWithResult(_0x164456,null))[_0x695a('0x42')](handleError(_0x164456,null));};