361859b13ff7840442d42e5b38ef8a8150fa5b45
[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 _0x2584=['../../config/utils','../../config/environment','sendStatus','status','json','offset','undefined','count','limit','set','Content-Range','apply','reject','save','update','then','destroy','end','error','stack','name','send','map','type','key','keys','query','filters','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filter','VIRTUAL','OpenchannelQueueReport','includeAll','include','findAll','rows','catch','show','rawAttributes','options','create','body','find','params','describe','eml-format','rimraf','request-promise','moment','util','sox','ejs','fs-extra','lodash','squel','jsforce','to-csv','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger'];(function(_0x44e949,_0x2757ef){var _0x50c736=function(_0x10e18e){while(--_0x10e18e){_0x44e949['push'](_0x44e949['shift']());}};_0x50c736(++_0x2757ef);}(_0x2584,0x7f));var _0x4258=function(_0x3b1b23,_0x21bccd){_0x3b1b23=_0x3b1b23-0x0;var _0x1efc85=_0x2584[_0x3b1b23];return _0x1efc85;};'use strict';var emlformat=require(_0x4258('0x0'));var rimraf=require(_0x4258('0x1'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x4258('0x2'));var moment=require(_0x4258('0x3'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x4258('0x4'));var path=require('path');var sox=require(_0x4258('0x5'));var csv=require('to-csv');var ejs=require(_0x4258('0x6'));var fs=require('fs');var fs_extra=require(_0x4258('0x7'));var _=require(_0x4258('0x8'));var squel=require(_0x4258('0x9'));var crypto=require('crypto');var jsforce=require(_0x4258('0xa'));var deskjs=require('desk.js');var toCsv=require(_0x4258('0xb'));var querystring=require(_0x4258('0xc'));var Papa=require('papaparse');var Redis=require(_0x4258('0xd'));var authService=require(_0x4258('0xe'));var qs=require(_0x4258('0xf'));var as=require(_0x4258('0x10'));var hardwareService=require(_0x4258('0x11'));var logger=require(_0x4258('0x12'))('api');var utils=require(_0x4258('0x13'));var config=require(_0x4258('0x14'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x23946f,_0x532030){_0x532030=_0x532030||0xcc;return function(_0x30b1e1){if(_0x30b1e1){return _0x23946f[_0x4258('0x15')](_0x532030);}return _0x23946f['status'](_0x532030)['end']();};}function respondWithResult(_0x3fcb07,_0x13e883){_0x13e883=_0x13e883||0xc8;return function(_0x1dfce2){if(_0x1dfce2){return _0x3fcb07[_0x4258('0x16')](_0x13e883)[_0x4258('0x17')](_0x1dfce2);}};}function respondWithFilteredResult(_0x1a1db4,_0x4745e2){return function(_0xc55b57){if(_0xc55b57){var _0x18f600=typeof _0x4745e2[_0x4258('0x18')]===_0x4258('0x19')&&typeof _0x4745e2['limit']===_0x4258('0x19');var _0x4805e5=_0xc55b57[_0x4258('0x1a')];var _0x261d7e=_0x18f600?0x0:_0x4745e2['offset'];var _0x197645=_0x18f600?_0xc55b57[_0x4258('0x1a')]:_0x4745e2['offset']+_0x4745e2[_0x4258('0x1b')];var _0x5ada2e;if(_0x197645>=_0x4805e5){_0x197645=_0x4805e5;_0x5ada2e=0xc8;}else{_0x5ada2e=0xce;}_0x1a1db4['status'](_0x5ada2e);return _0x1a1db4[_0x4258('0x1c')](_0x4258('0x1d'),_0x261d7e+'-'+_0x197645+'/'+_0x4805e5)['json'](_0xc55b57);}return null;};}function patchUpdates(_0x123c58){return function(_0x405ba2){try{jsonpatch[_0x4258('0x1e')](_0x405ba2,_0x123c58,!![]);}catch(_0x1cc359){return BPromise[_0x4258('0x1f')](_0x1cc359);}return _0x405ba2[_0x4258('0x20')]();};}function saveUpdates(_0x1407d8,_0x3cdd75){return function(_0x24053c){if(_0x24053c){return _0x24053c[_0x4258('0x21')](_0x1407d8)[_0x4258('0x22')](function(_0x30d6c8){return _0x30d6c8;});}return null;};}function removeEntity(_0x2faf98,_0x3a0a6c){return function(_0x4662ba){if(_0x4662ba){return _0x4662ba[_0x4258('0x23')]()[_0x4258('0x22')](function(){_0x2faf98[_0x4258('0x16')](0xcc)[_0x4258('0x24')]();});}};}function handleEntityNotFound(_0x4507a7,_0x51d1db){return function(_0x1fd23e){if(!_0x1fd23e){_0x4507a7[_0x4258('0x15')](0x194);}return _0x1fd23e;};}function handleError(_0x1e3b9f,_0x406229){_0x406229=_0x406229||0x1f4;return function(_0x1a674e){logger[_0x4258('0x25')](_0x1a674e[_0x4258('0x26')]);if(_0x1a674e[_0x4258('0x27')]){delete _0x1a674e[_0x4258('0x27')];}_0x1e3b9f['status'](_0x406229)[_0x4258('0x28')](_0x1a674e);};}exports['index']=function(_0x459a17,_0x466f0e){var _0x26bfc0={},_0x2cfc56={},_0x2fb582={'count':0x0,'rows':[]};var _0x10483a=_[_0x4258('0x29')](db['OpenchannelQueueReport']['rawAttributes'],function(_0x17ead3){return{'name':_0x17ead3['fieldName'],'type':_0x17ead3[_0x4258('0x2a')][_0x4258('0x2b')]};});_0x2cfc56['model']=_['map'](_0x10483a,_0x4258('0x27'));_0x2cfc56['query']=_[_0x4258('0x2c')](_0x459a17[_0x4258('0x2d')]);_0x2cfc56[_0x4258('0x2e')]=_[_0x4258('0x2f')](_0x2cfc56[_0x4258('0x30')],_0x2cfc56[_0x4258('0x2d')]);_0x26bfc0[_0x4258('0x31')]=_[_0x4258('0x2f')](_0x2cfc56['model'],qs[_0x4258('0x32')](_0x459a17['query'][_0x4258('0x32')]));_0x26bfc0[_0x4258('0x31')]=_0x26bfc0['attributes'][_0x4258('0x33')]?_0x26bfc0[_0x4258('0x31')]:_0x2cfc56[_0x4258('0x30')];if(!_0x459a17['query'][_0x4258('0x34')](_0x4258('0x35'))){_0x26bfc0[_0x4258('0x1b')]=qs['limit'](_0x459a17[_0x4258('0x2d')]['limit']);_0x26bfc0[_0x4258('0x18')]=qs['offset'](_0x459a17[_0x4258('0x2d')][_0x4258('0x18')]);}_0x26bfc0[_0x4258('0x36')]=qs[_0x4258('0x37')](_0x459a17['query'][_0x4258('0x37')]);_0x26bfc0[_0x4258('0x38')]=qs[_0x4258('0x2e')](_['pick'](_0x459a17[_0x4258('0x2d')],_0x2cfc56['filters']),_0x10483a);if(_0x459a17['query'][_0x4258('0x39')]){_0x26bfc0[_0x4258('0x38')]=_['merge'](_0x26bfc0[_0x4258('0x38')],{'$or':_[_0x4258('0x29')](_0x10483a,function(_0x2b4dbd){if(_0x2b4dbd[_0x4258('0x2a')]!==_0x4258('0x3a')){var _0x52105e={};_0x52105e[_0x2b4dbd[_0x4258('0x27')]]={'$like':'%'+_0x459a17['query'][_0x4258('0x39')]+'%'};return _0x52105e;}})});}_0x26bfc0=_['merge']({},_0x26bfc0,_0x459a17['options']);var _0x16882a={'where':_0x26bfc0[_0x4258('0x38')]};return db[_0x4258('0x3b')][_0x4258('0x1a')](_0x16882a)[_0x4258('0x22')](function(_0x1c9b8c){_0x2fb582[_0x4258('0x1a')]=_0x1c9b8c;if(_0x459a17[_0x4258('0x2d')][_0x4258('0x3c')]){_0x26bfc0[_0x4258('0x3d')]=[{'all':!![]}];}return db[_0x4258('0x3b')][_0x4258('0x3e')](_0x26bfc0);})['then'](function(_0x3a96ee){_0x2fb582[_0x4258('0x3f')]=_0x3a96ee;return _0x2fb582;})[_0x4258('0x22')](respondWithFilteredResult(_0x466f0e,_0x26bfc0))[_0x4258('0x40')](handleError(_0x466f0e,null));};exports[_0x4258('0x41')]=function(_0x28bf74,_0x3a8356){var _0x5c7215={'raw':!![],'where':{'id':_0x28bf74['params']['id']}},_0x537916={};_0x537916[_0x4258('0x30')]=_[_0x4258('0x2c')](db[_0x4258('0x3b')][_0x4258('0x42')]);_0x537916[_0x4258('0x2d')]=_[_0x4258('0x2c')](_0x28bf74[_0x4258('0x2d')]);_0x537916[_0x4258('0x2e')]=_[_0x4258('0x2f')](_0x537916[_0x4258('0x30')],_0x537916[_0x4258('0x2d')]);_0x5c7215[_0x4258('0x31')]=_[_0x4258('0x2f')](_0x537916[_0x4258('0x30')],qs[_0x4258('0x32')](_0x28bf74[_0x4258('0x2d')][_0x4258('0x32')]));_0x5c7215[_0x4258('0x31')]=_0x5c7215[_0x4258('0x31')][_0x4258('0x33')]?_0x5c7215[_0x4258('0x31')]:_0x537916['model'];if(_0x28bf74[_0x4258('0x2d')][_0x4258('0x3c')]){_0x5c7215['include']=[{'all':!![]}];}_0x5c7215=_['merge']({},_0x5c7215,_0x28bf74[_0x4258('0x43')]);return db[_0x4258('0x3b')]['find'](_0x5c7215)[_0x4258('0x22')](handleEntityNotFound(_0x3a8356,null))[_0x4258('0x22')](respondWithResult(_0x3a8356,null))[_0x4258('0x40')](handleError(_0x3a8356,null));};exports['create']=function(_0x5e17cb,_0x291058){return db[_0x4258('0x3b')][_0x4258('0x44')](_0x5e17cb[_0x4258('0x45')],{})[_0x4258('0x22')](respondWithResult(_0x291058,0xc9))[_0x4258('0x40')](handleError(_0x291058,null));};exports['update']=function(_0x20d4c8,_0x10f0b1){if(_0x20d4c8[_0x4258('0x45')]['id']){delete _0x20d4c8['body']['id'];}return db[_0x4258('0x3b')][_0x4258('0x46')]({'where':{'id':_0x20d4c8[_0x4258('0x47')]['id']}})['then'](handleEntityNotFound(_0x10f0b1,null))[_0x4258('0x22')](saveUpdates(_0x20d4c8['body'],null))[_0x4258('0x22')](respondWithResult(_0x10f0b1,null))[_0x4258('0x40')](handleError(_0x10f0b1,null));};exports[_0x4258('0x23')]=function(_0x4e4f23,_0x4293d6){return db[_0x4258('0x3b')][_0x4258('0x46')]({'where':{'id':_0x4e4f23[_0x4258('0x47')]['id']}})[_0x4258('0x22')](handleEntityNotFound(_0x4293d6,null))[_0x4258('0x22')](removeEntity(_0x4293d6,null))[_0x4258('0x40')](handleError(_0x4293d6,null));};exports[_0x4258('0x48')]=function(_0x3c4b10,_0x8e0e36){return db[_0x4258('0x3b')][_0x4258('0x48')]()[_0x4258('0x22')](respondWithResult(_0x8e0e36,null))[_0x4258('0x40')](handleError(_0x8e0e36,null));};