Built motion from commit 994c64e1.|2.6.1
[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 _0x2898=['status','json','offset','undefined','limit','count','set','Content-Range','apply','reject','then','stack','send','index','map','OpenchannelQueueReport','fieldName','type','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','name','options','includeAll','include','findAll','rows','catch','show','params','rawAttributes','create','body','update','find','describe','rimraf','request-promise','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','squel','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/license/util','../../mysqldb','sendStatus','end'];(function(_0x81818e,_0x2346cb){var _0x555ce5=function(_0x219c3d){while(--_0x219c3d){_0x81818e['push'](_0x81818e['shift']());}};_0x555ce5(++_0x2346cb);}(_0x2898,0xc5));var _0x8289=function(_0x445101,_0x2414bf){_0x445101=_0x445101-0x0;var _0x3c3d04=_0x2898[_0x445101];return _0x3c3d04;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x8289('0x0'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x8289('0x1'));var moment=require('moment');var BPromise=require(_0x8289('0x2'));var Mustache=require(_0x8289('0x3'));var util=require(_0x8289('0x4'));var path=require(_0x8289('0x5'));var sox=require(_0x8289('0x6'));var csv=require(_0x8289('0x7'));var ejs=require(_0x8289('0x8'));var fs=require('fs');var fs_extra=require(_0x8289('0x9'));var _=require('lodash');var squel=require(_0x8289('0xa'));var crypto=require(_0x8289('0xb'));var jsforce=require(_0x8289('0xc'));var deskjs=require(_0x8289('0xd'));var toCsv=require(_0x8289('0x7'));var querystring=require(_0x8289('0xe'));var Papa=require(_0x8289('0xf'));var Redis=require('ioredis');var authService=require(_0x8289('0x10'));var qs=require(_0x8289('0x11'));var as=require(_0x8289('0x12'));var hardwareService=require(_0x8289('0x13'));var logger=require('../../config/logger')(_0x8289('0x14'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0x8289('0x15'));var db=require(_0x8289('0x16'))['db'];function respondWithStatusCode(_0x33b617,_0x51dcb8){_0x51dcb8=_0x51dcb8||0xcc;return function(_0x41fda1){if(_0x41fda1){return _0x33b617[_0x8289('0x17')](_0x51dcb8);}return _0x33b617['status'](_0x51dcb8)[_0x8289('0x18')]();};}function respondWithResult(_0x1ab06b,_0x4c3db6){_0x4c3db6=_0x4c3db6||0xc8;return function(_0x495f9d){if(_0x495f9d){return _0x1ab06b[_0x8289('0x19')](_0x4c3db6)[_0x8289('0x1a')](_0x495f9d);}};}function respondWithFilteredResult(_0x2eed34,_0x3ad578){return function(_0x58a6e4){if(_0x58a6e4){var _0x4bf79f=typeof _0x3ad578[_0x8289('0x1b')]===_0x8289('0x1c')&&typeof _0x3ad578[_0x8289('0x1d')]===_0x8289('0x1c');var _0x2e1d2c=_0x58a6e4[_0x8289('0x1e')];var _0x3b9f73=_0x4bf79f?0x0:_0x3ad578[_0x8289('0x1b')];var _0x3821d5=_0x4bf79f?_0x58a6e4[_0x8289('0x1e')]:_0x3ad578[_0x8289('0x1b')]+_0x3ad578[_0x8289('0x1d')];var _0x471191;if(_0x3821d5>=_0x2e1d2c){_0x3821d5=_0x2e1d2c;_0x471191=0xc8;}else{_0x471191=0xce;}_0x2eed34[_0x8289('0x19')](_0x471191);return _0x2eed34[_0x8289('0x1f')](_0x8289('0x20'),_0x3b9f73+'-'+_0x3821d5+'/'+_0x2e1d2c)['json'](_0x58a6e4);}return null;};}function patchUpdates(_0x1ee8df){return function(_0x1f6af){try{jsonpatch[_0x8289('0x21')](_0x1f6af,_0x1ee8df,!![]);}catch(_0x51e617){return BPromise[_0x8289('0x22')](_0x51e617);}return _0x1f6af['save']();};}function saveUpdates(_0x536f9f,_0xf6aad2){return function(_0x2688c6){if(_0x2688c6){return _0x2688c6['update'](_0x536f9f)[_0x8289('0x23')](function(_0x4bcfed){return _0x4bcfed;});}return null;};}function removeEntity(_0x456101,_0x4bbc58){return function(_0x27700a){if(_0x27700a){return _0x27700a['destroy']()[_0x8289('0x23')](function(){_0x456101[_0x8289('0x19')](0xcc)[_0x8289('0x18')]();});}};}function handleEntityNotFound(_0x5bc409,_0xda423e){return function(_0x1e2c25){if(!_0x1e2c25){_0x5bc409[_0x8289('0x17')](0x194);}return _0x1e2c25;};}function handleError(_0x3d50ec,_0x625907){_0x625907=_0x625907||0x1f4;return function(_0x488391){logger['error'](_0x488391[_0x8289('0x24')]);if(_0x488391['name']){delete _0x488391['name'];}_0x3d50ec['status'](_0x625907)[_0x8289('0x25')](_0x488391);};}exports[_0x8289('0x26')]=function(_0x489401,_0x46435c){var _0x3a2b59={},_0x563405={},_0x2691db={'count':0x0,'rows':[]};var _0x47c363=_[_0x8289('0x27')](db[_0x8289('0x28')]['rawAttributes'],function(_0x2464a1){return{'name':_0x2464a1[_0x8289('0x29')],'type':_0x2464a1[_0x8289('0x2a')]['key']};});_0x563405[_0x8289('0x2b')]=_[_0x8289('0x27')](_0x47c363,'name');_0x563405[_0x8289('0x2c')]=_[_0x8289('0x2d')](_0x489401[_0x8289('0x2c')]);_0x563405[_0x8289('0x2e')]=_[_0x8289('0x2f')](_0x563405[_0x8289('0x2b')],_0x563405[_0x8289('0x2c')]);_0x3a2b59[_0x8289('0x30')]=_[_0x8289('0x2f')](_0x563405[_0x8289('0x2b')],qs[_0x8289('0x31')](_0x489401['query'][_0x8289('0x31')]));_0x3a2b59[_0x8289('0x30')]=_0x3a2b59[_0x8289('0x30')][_0x8289('0x32')]?_0x3a2b59[_0x8289('0x30')]:_0x563405['model'];if(!_0x489401[_0x8289('0x2c')][_0x8289('0x33')](_0x8289('0x34'))){_0x3a2b59[_0x8289('0x1d')]=qs[_0x8289('0x1d')](_0x489401[_0x8289('0x2c')][_0x8289('0x1d')]);_0x3a2b59[_0x8289('0x1b')]=qs['offset'](_0x489401[_0x8289('0x2c')][_0x8289('0x1b')]);}_0x3a2b59[_0x8289('0x35')]=qs[_0x8289('0x36')](_0x489401[_0x8289('0x2c')][_0x8289('0x36')]);_0x3a2b59[_0x8289('0x37')]=qs[_0x8289('0x2e')](_[_0x8289('0x38')](_0x489401[_0x8289('0x2c')],_0x563405[_0x8289('0x2e')]),_0x47c363);if(_0x489401['query'][_0x8289('0x39')]){_0x3a2b59[_0x8289('0x37')]=_[_0x8289('0x3a')](_0x3a2b59[_0x8289('0x37')],{'$or':_[_0x8289('0x27')](_0x47c363,function(_0x8ce31a){if(_0x8ce31a['type']!=='VIRTUAL'){var _0xb97dc6={};_0xb97dc6[_0x8ce31a[_0x8289('0x3b')]]={'$like':'%'+_0x489401[_0x8289('0x2c')]['filter']+'%'};return _0xb97dc6;}})});}_0x3a2b59=_['merge']({},_0x3a2b59,_0x489401[_0x8289('0x3c')]);var _0x3aa46e={'where':_0x3a2b59[_0x8289('0x37')]};return db[_0x8289('0x28')]['count'](_0x3aa46e)[_0x8289('0x23')](function(_0x524762){_0x2691db[_0x8289('0x1e')]=_0x524762;if(_0x489401[_0x8289('0x2c')][_0x8289('0x3d')]){_0x3a2b59[_0x8289('0x3e')]=[{'all':!![]}];}return db[_0x8289('0x28')][_0x8289('0x3f')](_0x3a2b59);})[_0x8289('0x23')](function(_0x4285a0){_0x2691db[_0x8289('0x40')]=_0x4285a0;return _0x2691db;})['then'](respondWithFilteredResult(_0x46435c,_0x3a2b59))[_0x8289('0x41')](handleError(_0x46435c,null));};exports[_0x8289('0x42')]=function(_0x25dfe0,_0x1e035f){var _0x55c23f={'raw':!![],'where':{'id':_0x25dfe0[_0x8289('0x43')]['id']}},_0x1a920a={};_0x1a920a[_0x8289('0x2b')]=_[_0x8289('0x2d')](db[_0x8289('0x28')][_0x8289('0x44')]);_0x1a920a[_0x8289('0x2c')]=_['keys'](_0x25dfe0[_0x8289('0x2c')]);_0x1a920a['filters']=_[_0x8289('0x2f')](_0x1a920a['model'],_0x1a920a['query']);_0x55c23f['attributes']=_[_0x8289('0x2f')](_0x1a920a['model'],qs[_0x8289('0x31')](_0x25dfe0['query'][_0x8289('0x31')]));_0x55c23f[_0x8289('0x30')]=_0x55c23f['attributes']['length']?_0x55c23f[_0x8289('0x30')]:_0x1a920a['model'];if(_0x25dfe0[_0x8289('0x2c')][_0x8289('0x3d')]){_0x55c23f[_0x8289('0x3e')]=[{'all':!![]}];}_0x55c23f=_[_0x8289('0x3a')]({},_0x55c23f,_0x25dfe0[_0x8289('0x3c')]);return db['OpenchannelQueueReport']['find'](_0x55c23f)[_0x8289('0x23')](handleEntityNotFound(_0x1e035f,null))[_0x8289('0x23')](respondWithResult(_0x1e035f,null))[_0x8289('0x41')](handleError(_0x1e035f,null));};exports[_0x8289('0x45')]=function(_0x83cedd,_0xa4d3ee){return db[_0x8289('0x28')][_0x8289('0x45')](_0x83cedd[_0x8289('0x46')],{})[_0x8289('0x23')](respondWithResult(_0xa4d3ee,0xc9))[_0x8289('0x41')](handleError(_0xa4d3ee,null));};exports[_0x8289('0x47')]=function(_0x361bdd,_0x2263bb){if(_0x361bdd[_0x8289('0x46')]['id']){delete _0x361bdd[_0x8289('0x46')]['id'];}return db['OpenchannelQueueReport'][_0x8289('0x48')]({'where':{'id':_0x361bdd[_0x8289('0x43')]['id']}})[_0x8289('0x23')](handleEntityNotFound(_0x2263bb,null))[_0x8289('0x23')](saveUpdates(_0x361bdd[_0x8289('0x46')],null))[_0x8289('0x23')](respondWithResult(_0x2263bb,null))[_0x8289('0x41')](handleError(_0x2263bb,null));};exports['destroy']=function(_0x2569ea,_0x43c427){return db[_0x8289('0x28')][_0x8289('0x48')]({'where':{'id':_0x2569ea[_0x8289('0x43')]['id']}})[_0x8289('0x23')](handleEntityNotFound(_0x43c427,null))['then'](removeEntity(_0x43c427,null))[_0x8289('0x41')](handleError(_0x43c427,null));};exports[_0x8289('0x49')]=function(_0x171b11,_0x1d2a44){return db['OpenchannelQueueReport'][_0x8289('0x49')]()[_0x8289('0x23')](respondWithResult(_0x1d2a44,null))[_0x8289('0x41')](handleError(_0x1d2a44,null));};