11b2fdf74bc0ce35983ad42e894e274798c21178
[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 _0xc153=['fields','hasOwnProperty','nolimit','order','sort','filter','where','merge','VIRTUAL','options','OpenchannelQueueReport','include','findAll','rows','catch','show','params','includeAll','find','create','update','body','describe','eml-format','zip-dir','request-promise','moment','bluebird','mustache','util','path','to-csv','ejs','lodash','squel','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','json','offset','undefined','limit','count','set','Content-Range','apply','save','then','destroy','end','stack','name','send','map','rawAttributes','type','key','model','query','keys','filters','intersection','attributes'];(function(_0x4b76a0,_0x16d860){var _0x32f9c3=function(_0x2e8f14){while(--_0x2e8f14){_0x4b76a0['push'](_0x4b76a0['shift']());}};_0x32f9c3(++_0x16d860);}(_0xc153,0x1d3));var _0x3c15=function(_0x187c4c,_0x92a5d7){_0x187c4c=_0x187c4c-0x0;var _0xe8a30c=_0xc153[_0x187c4c];return _0xe8a30c;};'use strict';var emlformat=require(_0x3c15('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x3c15('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0x3c15('0x2'));var moment=require(_0x3c15('0x3'));var BPromise=require(_0x3c15('0x4'));var Mustache=require(_0x3c15('0x5'));var util=require(_0x3c15('0x6'));var path=require(_0x3c15('0x7'));var sox=require('sox');var csv=require(_0x3c15('0x8'));var ejs=require(_0x3c15('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x3c15('0xa'));var squel=require(_0x3c15('0xb'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x3c15('0xc'));var toCsv=require('to-csv');var querystring=require(_0x3c15('0xd'));var Papa=require(_0x3c15('0xe'));var Redis=require(_0x3c15('0xf'));var authService=require(_0x3c15('0x10'));var qs=require(_0x3c15('0x11'));var as=require(_0x3c15('0x12'));var hardwareService=require(_0x3c15('0x13'));var logger=require(_0x3c15('0x14'))('api');var utils=require(_0x3c15('0x15'));var config=require(_0x3c15('0x16'));var licenseUtil=require(_0x3c15('0x17'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x2cceea,_0x2388cf){_0x2388cf=_0x2388cf||0xcc;return function(_0x45b82c){if(_0x45b82c){return _0x2cceea[_0x3c15('0x18')](_0x2388cf);}return _0x2cceea[_0x3c15('0x19')](_0x2388cf)['end']();};}function respondWithResult(_0x252c33,_0x16e13c){_0x16e13c=_0x16e13c||0xc8;return function(_0xa09b5c){if(_0xa09b5c){return _0x252c33[_0x3c15('0x19')](_0x16e13c)[_0x3c15('0x1a')](_0xa09b5c);}};}function respondWithFilteredResult(_0x4d15d7,_0x2bd1dd){return function(_0xd27510){if(_0xd27510){var _0x3c5941=typeof _0x2bd1dd[_0x3c15('0x1b')]===_0x3c15('0x1c')&&typeof _0x2bd1dd[_0x3c15('0x1d')]==='undefined';var _0x4d4d61=_0xd27510[_0x3c15('0x1e')];var _0x1190bb=_0x3c5941?0x0:_0x2bd1dd[_0x3c15('0x1b')];var _0x5b28fa=_0x3c5941?_0xd27510[_0x3c15('0x1e')]:_0x2bd1dd['offset']+_0x2bd1dd[_0x3c15('0x1d')];var _0x4f8449;if(_0x5b28fa>=_0x4d4d61){_0x5b28fa=_0x4d4d61;_0x4f8449=0xc8;}else{_0x4f8449=0xce;}_0x4d15d7[_0x3c15('0x19')](_0x4f8449);return _0x4d15d7[_0x3c15('0x1f')](_0x3c15('0x20'),_0x1190bb+'-'+_0x5b28fa+'/'+_0x4d4d61)['json'](_0xd27510);}return null;};}function patchUpdates(_0x335559){return function(_0x421177){try{jsonpatch[_0x3c15('0x21')](_0x421177,_0x335559,!![]);}catch(_0x4562ca){return BPromise['reject'](_0x4562ca);}return _0x421177[_0x3c15('0x22')]();};}function saveUpdates(_0x3fad31,_0x43e1e7){return function(_0x812647){if(_0x812647){return _0x812647['update'](_0x3fad31)[_0x3c15('0x23')](function(_0x2b7b5f){return _0x2b7b5f;});}return null;};}function removeEntity(_0x19d710,_0x1d18de){return function(_0x5c3f04){if(_0x5c3f04){return _0x5c3f04[_0x3c15('0x24')]()[_0x3c15('0x23')](function(){_0x19d710[_0x3c15('0x19')](0xcc)[_0x3c15('0x25')]();});}};}function handleEntityNotFound(_0x5b4d74,_0x15546f){return function(_0x231ebc){if(!_0x231ebc){_0x5b4d74[_0x3c15('0x18')](0x194);}return _0x231ebc;};}function handleError(_0x3c3742,_0x26b2a6){_0x26b2a6=_0x26b2a6||0x1f4;return function(_0x5f2728){logger['error'](_0x5f2728[_0x3c15('0x26')]);if(_0x5f2728[_0x3c15('0x27')]){delete _0x5f2728[_0x3c15('0x27')];}_0x3c3742[_0x3c15('0x19')](_0x26b2a6)[_0x3c15('0x28')](_0x5f2728);};}exports['index']=function(_0x1d077d,_0x21d1e8){var _0x526ae3={},_0x47ef44={},_0x7f1962={'count':0x0,'rows':[]};var _0x48cdc0=_[_0x3c15('0x29')](db['OpenchannelQueueReport'][_0x3c15('0x2a')],function(_0x112c90){return{'name':_0x112c90['fieldName'],'type':_0x112c90[_0x3c15('0x2b')][_0x3c15('0x2c')]};});_0x47ef44[_0x3c15('0x2d')]=_['map'](_0x48cdc0,_0x3c15('0x27'));_0x47ef44[_0x3c15('0x2e')]=_[_0x3c15('0x2f')](_0x1d077d[_0x3c15('0x2e')]);_0x47ef44[_0x3c15('0x30')]=_[_0x3c15('0x31')](_0x47ef44[_0x3c15('0x2d')],_0x47ef44[_0x3c15('0x2e')]);_0x526ae3[_0x3c15('0x32')]=_[_0x3c15('0x31')](_0x47ef44[_0x3c15('0x2d')],qs[_0x3c15('0x33')](_0x1d077d['query'][_0x3c15('0x33')]));_0x526ae3[_0x3c15('0x32')]=_0x526ae3[_0x3c15('0x32')]['length']?_0x526ae3[_0x3c15('0x32')]:_0x47ef44[_0x3c15('0x2d')];if(!_0x1d077d[_0x3c15('0x2e')][_0x3c15('0x34')](_0x3c15('0x35'))){_0x526ae3[_0x3c15('0x1d')]=qs['limit'](_0x1d077d[_0x3c15('0x2e')][_0x3c15('0x1d')]);_0x526ae3[_0x3c15('0x1b')]=qs[_0x3c15('0x1b')](_0x1d077d['query']['offset']);}_0x526ae3[_0x3c15('0x36')]=qs[_0x3c15('0x37')](_0x1d077d[_0x3c15('0x2e')][_0x3c15('0x37')]);_0x526ae3['where']=qs['filters'](_['pick'](_0x1d077d['query'],_0x47ef44[_0x3c15('0x30')]),_0x48cdc0);if(_0x1d077d[_0x3c15('0x2e')][_0x3c15('0x38')]){_0x526ae3[_0x3c15('0x39')]=_[_0x3c15('0x3a')](_0x526ae3[_0x3c15('0x39')],{'$or':_[_0x3c15('0x29')](_0x48cdc0,function(_0x23eb4f){if(_0x23eb4f[_0x3c15('0x2b')]!==_0x3c15('0x3b')){var _0x278c54={};_0x278c54[_0x23eb4f[_0x3c15('0x27')]]={'$like':'%'+_0x1d077d[_0x3c15('0x2e')][_0x3c15('0x38')]+'%'};return _0x278c54;}})});}_0x526ae3=_['merge']({},_0x526ae3,_0x1d077d[_0x3c15('0x3c')]);var _0x312327={'where':_0x526ae3[_0x3c15('0x39')]};return db[_0x3c15('0x3d')]['count'](_0x312327)[_0x3c15('0x23')](function(_0x322298){_0x7f1962[_0x3c15('0x1e')]=_0x322298;if(_0x1d077d[_0x3c15('0x2e')]['includeAll']){_0x526ae3[_0x3c15('0x3e')]=[{'all':!![]}];}return db['OpenchannelQueueReport'][_0x3c15('0x3f')](_0x526ae3);})[_0x3c15('0x23')](function(_0x45f108){_0x7f1962[_0x3c15('0x40')]=_0x45f108;return _0x7f1962;})[_0x3c15('0x23')](respondWithFilteredResult(_0x21d1e8,_0x526ae3))[_0x3c15('0x41')](handleError(_0x21d1e8,null));};exports[_0x3c15('0x42')]=function(_0x56275f,_0x4ebd9e){var _0x5cdfbd={'raw':!![],'where':{'id':_0x56275f[_0x3c15('0x43')]['id']}},_0x465e55={};_0x465e55[_0x3c15('0x2d')]=_[_0x3c15('0x2f')](db[_0x3c15('0x3d')][_0x3c15('0x2a')]);_0x465e55[_0x3c15('0x2e')]=_['keys'](_0x56275f[_0x3c15('0x2e')]);_0x465e55[_0x3c15('0x30')]=_[_0x3c15('0x31')](_0x465e55[_0x3c15('0x2d')],_0x465e55[_0x3c15('0x2e')]);_0x5cdfbd[_0x3c15('0x32')]=_[_0x3c15('0x31')](_0x465e55[_0x3c15('0x2d')],qs[_0x3c15('0x33')](_0x56275f[_0x3c15('0x2e')]['fields']));_0x5cdfbd[_0x3c15('0x32')]=_0x5cdfbd['attributes']['length']?_0x5cdfbd['attributes']:_0x465e55[_0x3c15('0x2d')];if(_0x56275f[_0x3c15('0x2e')][_0x3c15('0x44')]){_0x5cdfbd[_0x3c15('0x3e')]=[{'all':!![]}];}_0x5cdfbd=_[_0x3c15('0x3a')]({},_0x5cdfbd,_0x56275f[_0x3c15('0x3c')]);return db[_0x3c15('0x3d')][_0x3c15('0x45')](_0x5cdfbd)[_0x3c15('0x23')](handleEntityNotFound(_0x4ebd9e,null))[_0x3c15('0x23')](respondWithResult(_0x4ebd9e,null))[_0x3c15('0x41')](handleError(_0x4ebd9e,null));};exports[_0x3c15('0x46')]=function(_0x2131c5,_0x3cc7ca){return db[_0x3c15('0x3d')][_0x3c15('0x46')](_0x2131c5['body'],{})['then'](respondWithResult(_0x3cc7ca,0xc9))['catch'](handleError(_0x3cc7ca,null));};exports[_0x3c15('0x47')]=function(_0x4ac667,_0x261530){if(_0x4ac667[_0x3c15('0x48')]['id']){delete _0x4ac667[_0x3c15('0x48')]['id'];}return db['OpenchannelQueueReport']['find']({'where':{'id':_0x4ac667[_0x3c15('0x43')]['id']}})[_0x3c15('0x23')](handleEntityNotFound(_0x261530,null))['then'](saveUpdates(_0x4ac667[_0x3c15('0x48')],null))[_0x3c15('0x23')](respondWithResult(_0x261530,null))['catch'](handleError(_0x261530,null));};exports[_0x3c15('0x24')]=function(_0x43bd76,_0xd27221){return db['OpenchannelQueueReport'][_0x3c15('0x45')]({'where':{'id':_0x43bd76[_0x3c15('0x43')]['id']}})['then'](handleEntityNotFound(_0xd27221,null))[_0x3c15('0x23')](removeEntity(_0xd27221,null))[_0x3c15('0x41')](handleError(_0xd27221,null));};exports['describe']=function(_0x232c2a,_0x4a9bac){return db[_0x3c15('0x3d')][_0x3c15('0x49')]()['then'](respondWithResult(_0x4a9bac,null))[_0x3c15('0x41')](handleError(_0x4a9bac,null));};