3e07bd66cb25055a3f1ab3d08321afb461169fb2
[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 _0x2fed=['../../mysqldb','sendStatus','end','offset','undefined','limit','count','status','set','Content-Range','json','save','then','error','stack','name','send','index','map','OpenchannelQueueReport','rawAttributes','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','filter','where','merge','VIRTUAL','options','includeAll','include','findAll','rows','catch','params','create','body','update','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','sox','to-csv','ejs','lodash','squel','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util'];(function(_0x34b87f,_0x28aef2){var _0x449805=function(_0x3735b7){while(--_0x3735b7){_0x34b87f['push'](_0x34b87f['shift']());}};_0x449805(++_0x28aef2);}(_0x2fed,0x7c));var _0xd2fe=function(_0x573468,_0x2921b6){_0x573468=_0x573468-0x0;var _0x227738=_0x2fed[_0x573468];return _0x227738;};'use strict';var emlformat=require(_0xd2fe('0x0'));var rimraf=require(_0xd2fe('0x1'));var zipdir=require(_0xd2fe('0x2'));var jsonpatch=require(_0xd2fe('0x3'));var rp=require(_0xd2fe('0x4'));var moment=require('moment');var BPromise=require(_0xd2fe('0x5'));var Mustache=require(_0xd2fe('0x6'));var util=require('util');var path=require('path');var sox=require(_0xd2fe('0x7'));var csv=require(_0xd2fe('0x8'));var ejs=require(_0xd2fe('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xd2fe('0xa'));var squel=require(_0xd2fe('0xb'));var crypto=require(_0xd2fe('0xc'));var jsforce=require(_0xd2fe('0xd'));var deskjs=require('desk.js');var toCsv=require(_0xd2fe('0x8'));var querystring=require(_0xd2fe('0xe'));var Papa=require(_0xd2fe('0xf'));var Redis=require(_0xd2fe('0x10'));var authService=require(_0xd2fe('0x11'));var qs=require(_0xd2fe('0x12'));var as=require(_0xd2fe('0x13'));var hardwareService=require(_0xd2fe('0x14'));var logger=require(_0xd2fe('0x15'))(_0xd2fe('0x16'));var utils=require(_0xd2fe('0x17'));var config=require(_0xd2fe('0x18'));var licenseUtil=require(_0xd2fe('0x19'));var db=require(_0xd2fe('0x1a'))['db'];function respondWithStatusCode(_0x72f7e0,_0x2431da){_0x2431da=_0x2431da||0xcc;return function(_0x22e414){if(_0x22e414){return _0x72f7e0[_0xd2fe('0x1b')](_0x2431da);}return _0x72f7e0['status'](_0x2431da)[_0xd2fe('0x1c')]();};}function respondWithResult(_0x30fad9,_0x2a9355){_0x2a9355=_0x2a9355||0xc8;return function(_0x5607a3){if(_0x5607a3){return _0x30fad9['status'](_0x2a9355)['json'](_0x5607a3);}};}function respondWithFilteredResult(_0x203bea,_0x54f4cc){return function(_0x458f87){if(_0x458f87){var _0x3085b4=typeof _0x54f4cc[_0xd2fe('0x1d')]===_0xd2fe('0x1e')&&typeof _0x54f4cc[_0xd2fe('0x1f')]===_0xd2fe('0x1e');var _0x588d03=_0x458f87['count'];var _0xe958a0=_0x3085b4?0x0:_0x54f4cc[_0xd2fe('0x1d')];var _0x57f517=_0x3085b4?_0x458f87[_0xd2fe('0x20')]:_0x54f4cc[_0xd2fe('0x1d')]+_0x54f4cc[_0xd2fe('0x1f')];var _0x29f69f;if(_0x57f517>=_0x588d03){_0x57f517=_0x588d03;_0x29f69f=0xc8;}else{_0x29f69f=0xce;}_0x203bea[_0xd2fe('0x21')](_0x29f69f);return _0x203bea[_0xd2fe('0x22')](_0xd2fe('0x23'),_0xe958a0+'-'+_0x57f517+'/'+_0x588d03)[_0xd2fe('0x24')](_0x458f87);}return null;};}function patchUpdates(_0x194749){return function(_0x235b01){try{jsonpatch['apply'](_0x235b01,_0x194749,!![]);}catch(_0x116823){return BPromise['reject'](_0x116823);}return _0x235b01[_0xd2fe('0x25')]();};}function saveUpdates(_0x118d45,_0x123187){return function(_0x285fe5){if(_0x285fe5){return _0x285fe5['update'](_0x118d45)[_0xd2fe('0x26')](function(_0x574e6d){return _0x574e6d;});}return null;};}function removeEntity(_0x39e7c,_0x39948a){return function(_0x251385){if(_0x251385){return _0x251385['destroy']()['then'](function(){_0x39e7c[_0xd2fe('0x21')](0xcc)[_0xd2fe('0x1c')]();});}};}function handleEntityNotFound(_0x236294,_0x28bef3){return function(_0x202531){if(!_0x202531){_0x236294['sendStatus'](0x194);}return _0x202531;};}function handleError(_0x487f8a,_0x516340){_0x516340=_0x516340||0x1f4;return function(_0x39e20a){logger[_0xd2fe('0x27')](_0x39e20a[_0xd2fe('0x28')]);if(_0x39e20a[_0xd2fe('0x29')]){delete _0x39e20a['name'];}_0x487f8a[_0xd2fe('0x21')](_0x516340)[_0xd2fe('0x2a')](_0x39e20a);};}exports[_0xd2fe('0x2b')]=function(_0x6bba0d,_0x49ab21){var _0x391e93={},_0x327730={},_0x3250c6={'count':0x0,'rows':[]};var _0x5a0ba4=_[_0xd2fe('0x2c')](db[_0xd2fe('0x2d')][_0xd2fe('0x2e')],function(_0x21f2ac){return{'name':_0x21f2ac['fieldName'],'type':_0x21f2ac[_0xd2fe('0x2f')][_0xd2fe('0x30')]};});_0x327730[_0xd2fe('0x31')]=_[_0xd2fe('0x2c')](_0x5a0ba4,'name');_0x327730[_0xd2fe('0x32')]=_[_0xd2fe('0x33')](_0x6bba0d[_0xd2fe('0x32')]);_0x327730[_0xd2fe('0x34')]=_[_0xd2fe('0x35')](_0x327730[_0xd2fe('0x31')],_0x327730['query']);_0x391e93[_0xd2fe('0x36')]=_[_0xd2fe('0x35')](_0x327730['model'],qs[_0xd2fe('0x37')](_0x6bba0d[_0xd2fe('0x32')][_0xd2fe('0x37')]));_0x391e93['attributes']=_0x391e93[_0xd2fe('0x36')][_0xd2fe('0x38')]?_0x391e93['attributes']:_0x327730[_0xd2fe('0x31')];if(!_0x6bba0d[_0xd2fe('0x32')][_0xd2fe('0x39')](_0xd2fe('0x3a'))){_0x391e93[_0xd2fe('0x1f')]=qs[_0xd2fe('0x1f')](_0x6bba0d['query']['limit']);_0x391e93[_0xd2fe('0x1d')]=qs['offset'](_0x6bba0d['query'][_0xd2fe('0x1d')]);}_0x391e93[_0xd2fe('0x3b')]=qs[_0xd2fe('0x3c')](_0x6bba0d[_0xd2fe('0x32')][_0xd2fe('0x3c')]);_0x391e93['where']=qs[_0xd2fe('0x34')](_['pick'](_0x6bba0d['query'],_0x327730[_0xd2fe('0x34')]),_0x5a0ba4);if(_0x6bba0d[_0xd2fe('0x32')][_0xd2fe('0x3d')]){_0x391e93[_0xd2fe('0x3e')]=_[_0xd2fe('0x3f')](_0x391e93[_0xd2fe('0x3e')],{'$or':_[_0xd2fe('0x2c')](_0x5a0ba4,function(_0x5ba9a6){if(_0x5ba9a6[_0xd2fe('0x2f')]!==_0xd2fe('0x40')){var _0x2346c6={};_0x2346c6[_0x5ba9a6['name']]={'$like':'%'+_0x6bba0d['query'][_0xd2fe('0x3d')]+'%'};return _0x2346c6;}})});}_0x391e93=_[_0xd2fe('0x3f')]({},_0x391e93,_0x6bba0d[_0xd2fe('0x41')]);var _0x1151e7={'where':_0x391e93[_0xd2fe('0x3e')]};return db[_0xd2fe('0x2d')][_0xd2fe('0x20')](_0x1151e7)['then'](function(_0x2eb74f){_0x3250c6[_0xd2fe('0x20')]=_0x2eb74f;if(_0x6bba0d['query'][_0xd2fe('0x42')]){_0x391e93[_0xd2fe('0x43')]=[{'all':!![]}];}return db[_0xd2fe('0x2d')][_0xd2fe('0x44')](_0x391e93);})['then'](function(_0x2a9b7f){_0x3250c6[_0xd2fe('0x45')]=_0x2a9b7f;return _0x3250c6;})[_0xd2fe('0x26')](respondWithFilteredResult(_0x49ab21,_0x391e93))[_0xd2fe('0x46')](handleError(_0x49ab21,null));};exports['show']=function(_0xe06ee2,_0x12a60c){var _0x475de3={'raw':!![],'where':{'id':_0xe06ee2[_0xd2fe('0x47')]['id']}},_0x48d9c2={};_0x48d9c2[_0xd2fe('0x31')]=_[_0xd2fe('0x33')](db['OpenchannelQueueReport'][_0xd2fe('0x2e')]);_0x48d9c2[_0xd2fe('0x32')]=_['keys'](_0xe06ee2['query']);_0x48d9c2['filters']=_[_0xd2fe('0x35')](_0x48d9c2[_0xd2fe('0x31')],_0x48d9c2['query']);_0x475de3[_0xd2fe('0x36')]=_[_0xd2fe('0x35')](_0x48d9c2[_0xd2fe('0x31')],qs['fields'](_0xe06ee2[_0xd2fe('0x32')][_0xd2fe('0x37')]));_0x475de3[_0xd2fe('0x36')]=_0x475de3[_0xd2fe('0x36')][_0xd2fe('0x38')]?_0x475de3[_0xd2fe('0x36')]:_0x48d9c2[_0xd2fe('0x31')];if(_0xe06ee2['query'][_0xd2fe('0x42')]){_0x475de3[_0xd2fe('0x43')]=[{'all':!![]}];}_0x475de3=_[_0xd2fe('0x3f')]({},_0x475de3,_0xe06ee2[_0xd2fe('0x41')]);return db[_0xd2fe('0x2d')]['find'](_0x475de3)['then'](handleEntityNotFound(_0x12a60c,null))[_0xd2fe('0x26')](respondWithResult(_0x12a60c,null))[_0xd2fe('0x46')](handleError(_0x12a60c,null));};exports[_0xd2fe('0x48')]=function(_0x481f50,_0x5c4956){return db[_0xd2fe('0x2d')][_0xd2fe('0x48')](_0x481f50[_0xd2fe('0x49')],{})[_0xd2fe('0x26')](respondWithResult(_0x5c4956,0xc9))[_0xd2fe('0x46')](handleError(_0x5c4956,null));};exports[_0xd2fe('0x4a')]=function(_0x377e88,_0x13ec7d){if(_0x377e88[_0xd2fe('0x49')]['id']){delete _0x377e88[_0xd2fe('0x49')]['id'];}return db[_0xd2fe('0x2d')]['find']({'where':{'id':_0x377e88[_0xd2fe('0x47')]['id']}})[_0xd2fe('0x26')](handleEntityNotFound(_0x13ec7d,null))[_0xd2fe('0x26')](saveUpdates(_0x377e88['body'],null))[_0xd2fe('0x26')](respondWithResult(_0x13ec7d,null))['catch'](handleError(_0x13ec7d,null));};exports['destroy']=function(_0x2238be,_0x4a9393){return db[_0xd2fe('0x2d')]['find']({'where':{'id':_0x2238be[_0xd2fe('0x47')]['id']}})['then'](handleEntityNotFound(_0x4a9393,null))[_0xd2fe('0x26')](removeEntity(_0x4a9393,null))[_0xd2fe('0x46')](handleError(_0x4a9393,null));};exports['describe']=function(_0x5e0793,_0x11cb96){return db[_0xd2fe('0x2d')]['describe']()[_0xd2fe('0x26')](respondWithResult(_0x11cb96,null))[_0xd2fe('0x46')](handleError(_0x11cb96,null));};