Built motion from commit d5e4af8c.|2.6.23
[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 _0x8e02=['zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','sox','to-csv','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/license/util','../../mysqldb','status','end','json','offset','undefined','count','set','Content-Range','apply','reject','save','destroy','sendStatus','error','stack','name','index','map','OpenchannelQueueReport','rawAttributes','fieldName','type','key','model','filters','intersection','attributes','query','length','hasOwnProperty','nolimit','limit','order','sort','where','filter','merge','VIRTUAL','options','then','include','rows','catch','show','keys','fields','create','body','find','params','describe','eml-format'];(function(_0x4614fc,_0x379a38){var _0x103023=function(_0x4b27ca){while(--_0x4b27ca){_0x4614fc['push'](_0x4614fc['shift']());}};_0x103023(++_0x379a38);}(_0x8e02,0x176));var _0x28e0=function(_0x47ffcb,_0x11a91f){_0x47ffcb=_0x47ffcb-0x0;var _0x290416=_0x8e02[_0x47ffcb];return _0x290416;};'use strict';var emlformat=require(_0x28e0('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x28e0('0x1'));var jsonpatch=require(_0x28e0('0x2'));var rp=require(_0x28e0('0x3'));var moment=require(_0x28e0('0x4'));var BPromise=require('bluebird');var Mustache=require(_0x28e0('0x5'));var util=require(_0x28e0('0x6'));var path=require(_0x28e0('0x7'));var sox=require(_0x28e0('0x8'));var csv=require(_0x28e0('0x9'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x28e0('0xa'));var _=require(_0x28e0('0xb'));var squel=require(_0x28e0('0xc'));var crypto=require(_0x28e0('0xd'));var jsforce=require(_0x28e0('0xe'));var deskjs=require(_0x28e0('0xf'));var toCsv=require('to-csv');var querystring=require(_0x28e0('0x10'));var Papa=require(_0x28e0('0x11'));var Redis=require(_0x28e0('0x12'));var authService=require('../../components/auth/service');var qs=require(_0x28e0('0x13'));var as=require(_0x28e0('0x14'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x28e0('0x15'))('api');var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0x28e0('0x16'));var db=require(_0x28e0('0x17'))['db'];function respondWithStatusCode(_0x35fe27,_0x114081){_0x114081=_0x114081||0xcc;return function(_0x210ec6){if(_0x210ec6){return _0x35fe27['sendStatus'](_0x114081);}return _0x35fe27[_0x28e0('0x18')](_0x114081)[_0x28e0('0x19')]();};}function respondWithResult(_0x3c2507,_0x3f326c){_0x3f326c=_0x3f326c||0xc8;return function(_0x5edeac){if(_0x5edeac){return _0x3c2507[_0x28e0('0x18')](_0x3f326c)[_0x28e0('0x1a')](_0x5edeac);}};}function respondWithFilteredResult(_0x30f18f,_0x450364){return function(_0x19b633){if(_0x19b633){var _0x3b48c5=typeof _0x450364[_0x28e0('0x1b')]===_0x28e0('0x1c')&&typeof _0x450364['limit']==='undefined';var _0xf8a98f=_0x19b633[_0x28e0('0x1d')];var _0x270cae=_0x3b48c5?0x0:_0x450364['offset'];var _0x5c3ddf=_0x3b48c5?_0x19b633[_0x28e0('0x1d')]:_0x450364[_0x28e0('0x1b')]+_0x450364['limit'];var _0x279048;if(_0x5c3ddf>=_0xf8a98f){_0x5c3ddf=_0xf8a98f;_0x279048=0xc8;}else{_0x279048=0xce;}_0x30f18f[_0x28e0('0x18')](_0x279048);return _0x30f18f[_0x28e0('0x1e')](_0x28e0('0x1f'),_0x270cae+'-'+_0x5c3ddf+'/'+_0xf8a98f)[_0x28e0('0x1a')](_0x19b633);}return null;};}function patchUpdates(_0x1edcd9){return function(_0x4652c9){try{jsonpatch[_0x28e0('0x20')](_0x4652c9,_0x1edcd9,!![]);}catch(_0x5abd5b){return BPromise[_0x28e0('0x21')](_0x5abd5b);}return _0x4652c9[_0x28e0('0x22')]();};}function saveUpdates(_0x18ce7d,_0x5a5daa){return function(_0x210dbf){if(_0x210dbf){return _0x210dbf['update'](_0x18ce7d)['then'](function(_0x24c4a2){return _0x24c4a2;});}return null;};}function removeEntity(_0x283aed,_0x68ec08){return function(_0x45b8f3){if(_0x45b8f3){return _0x45b8f3[_0x28e0('0x23')]()['then'](function(){_0x283aed[_0x28e0('0x18')](0xcc)['end']();});}};}function handleEntityNotFound(_0x2df361,_0xac9057){return function(_0x3bffc2){if(!_0x3bffc2){_0x2df361[_0x28e0('0x24')](0x194);}return _0x3bffc2;};}function handleError(_0x5cc3b7,_0x13c8ed){_0x13c8ed=_0x13c8ed||0x1f4;return function(_0x25eed1){logger[_0x28e0('0x25')](_0x25eed1[_0x28e0('0x26')]);if(_0x25eed1[_0x28e0('0x27')]){delete _0x25eed1[_0x28e0('0x27')];}_0x5cc3b7[_0x28e0('0x18')](_0x13c8ed)['send'](_0x25eed1);};}exports[_0x28e0('0x28')]=function(_0x2ef604,_0x255f69){var _0x5a9358={},_0x5cbcac={},_0x9eaf2a={'count':0x0,'rows':[]};var _0x3cc3bf=_[_0x28e0('0x29')](db[_0x28e0('0x2a')][_0x28e0('0x2b')],function(_0xc048dd){return{'name':_0xc048dd[_0x28e0('0x2c')],'type':_0xc048dd[_0x28e0('0x2d')][_0x28e0('0x2e')]};});_0x5cbcac[_0x28e0('0x2f')]=_[_0x28e0('0x29')](_0x3cc3bf,_0x28e0('0x27'));_0x5cbcac['query']=_['keys'](_0x2ef604['query']);_0x5cbcac[_0x28e0('0x30')]=_[_0x28e0('0x31')](_0x5cbcac[_0x28e0('0x2f')],_0x5cbcac['query']);_0x5a9358[_0x28e0('0x32')]=_[_0x28e0('0x31')](_0x5cbcac[_0x28e0('0x2f')],qs['fields'](_0x2ef604[_0x28e0('0x33')]['fields']));_0x5a9358[_0x28e0('0x32')]=_0x5a9358[_0x28e0('0x32')][_0x28e0('0x34')]?_0x5a9358['attributes']:_0x5cbcac[_0x28e0('0x2f')];if(!_0x2ef604[_0x28e0('0x33')][_0x28e0('0x35')](_0x28e0('0x36'))){_0x5a9358[_0x28e0('0x37')]=qs[_0x28e0('0x37')](_0x2ef604[_0x28e0('0x33')]['limit']);_0x5a9358[_0x28e0('0x1b')]=qs['offset'](_0x2ef604[_0x28e0('0x33')][_0x28e0('0x1b')]);}_0x5a9358[_0x28e0('0x38')]=qs[_0x28e0('0x39')](_0x2ef604[_0x28e0('0x33')]['sort']);_0x5a9358[_0x28e0('0x3a')]=qs[_0x28e0('0x30')](_['pick'](_0x2ef604[_0x28e0('0x33')],_0x5cbcac[_0x28e0('0x30')]),_0x3cc3bf);if(_0x2ef604[_0x28e0('0x33')][_0x28e0('0x3b')]){_0x5a9358['where']=_[_0x28e0('0x3c')](_0x5a9358['where'],{'$or':_['map'](_0x3cc3bf,function(_0x119f19){if(_0x119f19[_0x28e0('0x2d')]!==_0x28e0('0x3d')){var _0x2fb32a={};_0x2fb32a[_0x119f19['name']]={'$like':'%'+_0x2ef604[_0x28e0('0x33')]['filter']+'%'};return _0x2fb32a;}})});}_0x5a9358=_['merge']({},_0x5a9358,_0x2ef604[_0x28e0('0x3e')]);var _0x551dd3={'where':_0x5a9358['where']};return db[_0x28e0('0x2a')][_0x28e0('0x1d')](_0x551dd3)[_0x28e0('0x3f')](function(_0x4db9bc){_0x9eaf2a[_0x28e0('0x1d')]=_0x4db9bc;if(_0x2ef604['query']['includeAll']){_0x5a9358[_0x28e0('0x40')]=[{'all':!![]}];}return db[_0x28e0('0x2a')]['findAll'](_0x5a9358);})['then'](function(_0x1ee111){_0x9eaf2a[_0x28e0('0x41')]=_0x1ee111;return _0x9eaf2a;})[_0x28e0('0x3f')](respondWithFilteredResult(_0x255f69,_0x5a9358))[_0x28e0('0x42')](handleError(_0x255f69,null));};exports[_0x28e0('0x43')]=function(_0x38cb9e,_0x5f0f80){var _0x4aec3e={'raw':!![],'where':{'id':_0x38cb9e['params']['id']}},_0x54dbf4={};_0x54dbf4[_0x28e0('0x2f')]=_[_0x28e0('0x44')](db[_0x28e0('0x2a')][_0x28e0('0x2b')]);_0x54dbf4[_0x28e0('0x33')]=_[_0x28e0('0x44')](_0x38cb9e[_0x28e0('0x33')]);_0x54dbf4[_0x28e0('0x30')]=_[_0x28e0('0x31')](_0x54dbf4[_0x28e0('0x2f')],_0x54dbf4[_0x28e0('0x33')]);_0x4aec3e['attributes']=_['intersection'](_0x54dbf4['model'],qs['fields'](_0x38cb9e['query'][_0x28e0('0x45')]));_0x4aec3e[_0x28e0('0x32')]=_0x4aec3e[_0x28e0('0x32')][_0x28e0('0x34')]?_0x4aec3e[_0x28e0('0x32')]:_0x54dbf4['model'];if(_0x38cb9e[_0x28e0('0x33')]['includeAll']){_0x4aec3e[_0x28e0('0x40')]=[{'all':!![]}];}_0x4aec3e=_[_0x28e0('0x3c')]({},_0x4aec3e,_0x38cb9e[_0x28e0('0x3e')]);return db[_0x28e0('0x2a')]['find'](_0x4aec3e)[_0x28e0('0x3f')](handleEntityNotFound(_0x5f0f80,null))[_0x28e0('0x3f')](respondWithResult(_0x5f0f80,null))[_0x28e0('0x42')](handleError(_0x5f0f80,null));};exports[_0x28e0('0x46')]=function(_0x3b495c,_0x4141ca){return db['OpenchannelQueueReport'][_0x28e0('0x46')](_0x3b495c[_0x28e0('0x47')],{})[_0x28e0('0x3f')](respondWithResult(_0x4141ca,0xc9))[_0x28e0('0x42')](handleError(_0x4141ca,null));};exports['update']=function(_0x3a00ac,_0x1e0013){if(_0x3a00ac[_0x28e0('0x47')]['id']){delete _0x3a00ac[_0x28e0('0x47')]['id'];}return db[_0x28e0('0x2a')][_0x28e0('0x48')]({'where':{'id':_0x3a00ac[_0x28e0('0x49')]['id']}})[_0x28e0('0x3f')](handleEntityNotFound(_0x1e0013,null))['then'](saveUpdates(_0x3a00ac[_0x28e0('0x47')],null))[_0x28e0('0x3f')](respondWithResult(_0x1e0013,null))['catch'](handleError(_0x1e0013,null));};exports['destroy']=function(_0x176e49,_0x4f9b0e){return db['OpenchannelQueueReport'][_0x28e0('0x48')]({'where':{'id':_0x176e49['params']['id']}})[_0x28e0('0x3f')](handleEntityNotFound(_0x4f9b0e,null))[_0x28e0('0x3f')](removeEntity(_0x4f9b0e,null))[_0x28e0('0x42')](handleError(_0x4f9b0e,null));};exports[_0x28e0('0x4a')]=function(_0x322c34,_0x1028db){return db[_0x28e0('0x2a')][_0x28e0('0x4a')]()['then'](respondWithResult(_0x1028db,null))[_0x28e0('0x42')](handleError(_0x1028db,null));};