Built motion from commit (unavailable).|2.5.31
[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 _0x4e37=['name','send','merge','body','contact','message','agent','account','index','map','OpenchannelQueueReport','rawAttributes','fieldName','type','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','VIRTUAL','includeAll','include','findAll','catch','show','params','find','create','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','ejs','fs-extra','jsforce','to-csv','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined','limit','count','Content-Range','apply','reject','save','update','then','destroy','stack'];(function(_0x18fbf0,_0x3829b7){var _0x17bb4f=function(_0x4447fd){while(--_0x4447fd){_0x18fbf0['push'](_0x18fbf0['shift']());}};_0x17bb4f(++_0x3829b7);}(_0x4e37,0x1a8));var _0x74e3=function(_0x526074,_0x5e5d09){_0x526074=_0x526074-0x0;var _0x83c6c8=_0x4e37[_0x526074];return _0x83c6c8;};'use strict';var emlformat=require(_0x74e3('0x0'));var rimraf=require(_0x74e3('0x1'));var zipdir=require(_0x74e3('0x2'));var jsonpatch=require(_0x74e3('0x3'));var rp=require(_0x74e3('0x4'));var moment=require(_0x74e3('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x74e3('0x6'));var util=require(_0x74e3('0x7'));var path=require(_0x74e3('0x8'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x74e3('0x9'));var fs=require('fs');var fs_extra=require(_0x74e3('0xa'));var _=require('lodash');var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0x74e3('0xb'));var deskjs=require('desk.js');var toCsv=require(_0x74e3('0xc'));var querystring=require(_0x74e3('0xd'));var Papa=require('papaparse');var Redis=require(_0x74e3('0xe'));var authService=require(_0x74e3('0xf'));var qs=require(_0x74e3('0x10'));var as=require(_0x74e3('0x11'));var hardwareService=require(_0x74e3('0x12'));var logger=require('../../config/logger')('api');var utils=require(_0x74e3('0x13'));var config=require('../../config/environment');var licenseUtil=require(_0x74e3('0x14'));var db=require(_0x74e3('0x15'))['db'];function respondWithStatusCode(_0x4ff1ce,_0x187ad9){_0x187ad9=_0x187ad9||0xcc;return function(_0x5488dd){if(_0x5488dd){return _0x4ff1ce[_0x74e3('0x16')](_0x187ad9);}return _0x4ff1ce[_0x74e3('0x17')](_0x187ad9)[_0x74e3('0x18')]();};}function respondWithResult(_0x183d78,_0xb70b8c){_0xb70b8c=_0xb70b8c||0xc8;return function(_0x35165f){if(_0x35165f){return _0x183d78[_0x74e3('0x17')](_0xb70b8c)[_0x74e3('0x19')](_0x35165f);}};}function respondWithFilteredResult(_0x34e0a1,_0x5ef618){return function(_0x288502){if(_0x288502){var _0x32cf69=typeof _0x5ef618[_0x74e3('0x1a')]===_0x74e3('0x1b')&&typeof _0x5ef618[_0x74e3('0x1c')]==='undefined';var _0x8280f5=_0x288502[_0x74e3('0x1d')];var _0xbefc25=_0x32cf69?0x0:_0x5ef618[_0x74e3('0x1a')];var _0x13a224=_0x32cf69?_0x288502[_0x74e3('0x1d')]:_0x5ef618[_0x74e3('0x1a')]+_0x5ef618[_0x74e3('0x1c')];var _0x1fa123;if(_0x13a224>=_0x8280f5){_0x13a224=_0x8280f5;_0x1fa123=0xc8;}else{_0x1fa123=0xce;}_0x34e0a1[_0x74e3('0x17')](_0x1fa123);return _0x34e0a1['set'](_0x74e3('0x1e'),_0xbefc25+'-'+_0x13a224+'/'+_0x8280f5)[_0x74e3('0x19')](_0x288502);}return null;};}function patchUpdates(_0x20c92d){return function(_0x1cbc06){try{jsonpatch[_0x74e3('0x1f')](_0x1cbc06,_0x20c92d,!![]);}catch(_0x203a1f){return BPromise[_0x74e3('0x20')](_0x203a1f);}return _0x1cbc06[_0x74e3('0x21')]();};}function saveUpdates(_0x3d2b6e,_0x2dd9ef){return function(_0xa92085){if(_0xa92085){return _0xa92085[_0x74e3('0x22')](_0x3d2b6e)[_0x74e3('0x23')](function(_0x45b977){return _0x45b977;});}return null;};}function removeEntity(_0xcc0719,_0x120f5b){return function(_0x115daf){if(_0x115daf){return _0x115daf[_0x74e3('0x24')]()['then'](function(){_0xcc0719['status'](0xcc)[_0x74e3('0x18')]();});}};}function handleEntityNotFound(_0x18f4ee,_0x248649){return function(_0x194e62){if(!_0x194e62){_0x18f4ee[_0x74e3('0x16')](0x194);}return _0x194e62;};}function handleError(_0x125378,_0x4b8fcb){_0x4b8fcb=_0x4b8fcb||0x1f4;return function(_0x2a5722){logger['error'](_0x2a5722[_0x74e3('0x25')]);if(_0x2a5722[_0x74e3('0x26')]){delete _0x2a5722[_0x74e3('0x26')];}_0x125378['status'](_0x4b8fcb)[_0x74e3('0x27')](_0x2a5722);};}function getMustacheRender(_0x3f7582,_0x457f42){return Mustache['render'](_0x3f7582,_[_0x74e3('0x28')](_0x457f42[_0x74e3('0x29')],{'contact':_0x457f42[_0x74e3('0x2a')],'message':_0x457f42[_0x74e3('0x2b')],'agent':_0x457f42[_0x74e3('0x2c')],'interaction':_0x457f42['interaction'],'account':_0x457f42[_0x74e3('0x2d')]}))||'';}exports[_0x74e3('0x2e')]=function(_0x53034c,_0x4081c4){var _0x19cac9={},_0x2df4c5={},_0x42cdf2={'count':0x0,'rows':[]};var _0x95ed3=_[_0x74e3('0x2f')](db[_0x74e3('0x30')][_0x74e3('0x31')],function(_0x5bfbff){return{'name':_0x5bfbff[_0x74e3('0x32')],'type':_0x5bfbff[_0x74e3('0x33')]['key']};});_0x2df4c5[_0x74e3('0x34')]=_[_0x74e3('0x2f')](_0x95ed3,_0x74e3('0x26'));_0x2df4c5[_0x74e3('0x35')]=_[_0x74e3('0x36')](_0x53034c[_0x74e3('0x35')]);_0x2df4c5[_0x74e3('0x37')]=_[_0x74e3('0x38')](_0x2df4c5[_0x74e3('0x34')],_0x2df4c5[_0x74e3('0x35')]);_0x19cac9[_0x74e3('0x39')]=_[_0x74e3('0x38')](_0x2df4c5[_0x74e3('0x34')],qs[_0x74e3('0x3a')](_0x53034c['query']['fields']));_0x19cac9[_0x74e3('0x39')]=_0x19cac9[_0x74e3('0x39')][_0x74e3('0x3b')]?_0x19cac9['attributes']:_0x2df4c5['model'];if(!_0x53034c[_0x74e3('0x35')][_0x74e3('0x3c')](_0x74e3('0x3d'))){_0x19cac9[_0x74e3('0x1c')]=qs['limit'](_0x53034c[_0x74e3('0x35')][_0x74e3('0x1c')]);_0x19cac9['offset']=qs['offset'](_0x53034c[_0x74e3('0x35')][_0x74e3('0x1a')]);}_0x19cac9[_0x74e3('0x3e')]=qs[_0x74e3('0x3f')](_0x53034c[_0x74e3('0x35')]['sort']);_0x19cac9[_0x74e3('0x40')]=qs[_0x74e3('0x37')](_[_0x74e3('0x41')](_0x53034c['query'],_0x2df4c5[_0x74e3('0x37')]),_0x95ed3);if(_0x53034c['query'][_0x74e3('0x42')]){_0x19cac9[_0x74e3('0x40')]=_[_0x74e3('0x28')](_0x19cac9[_0x74e3('0x40')],{'$or':_['map'](_0x95ed3,function(_0x14a265){if(_0x14a265['type']!==_0x74e3('0x43')){var _0x39dfc2={};_0x39dfc2[_0x14a265[_0x74e3('0x26')]]={'$like':'%'+_0x53034c['query'][_0x74e3('0x42')]+'%'};return _0x39dfc2;}})});}_0x19cac9=_[_0x74e3('0x28')]({},_0x19cac9,_0x53034c['options']);var _0x47c6cf={'where':_0x19cac9[_0x74e3('0x40')]};return db[_0x74e3('0x30')][_0x74e3('0x1d')](_0x47c6cf)[_0x74e3('0x23')](function(_0x271551){_0x42cdf2[_0x74e3('0x1d')]=_0x271551;if(_0x53034c[_0x74e3('0x35')][_0x74e3('0x44')]){_0x19cac9[_0x74e3('0x45')]=[{'all':!![]}];}return db[_0x74e3('0x30')][_0x74e3('0x46')](_0x19cac9);})['then'](function(_0x109783){_0x42cdf2['rows']=_0x109783;return _0x42cdf2;})[_0x74e3('0x23')](respondWithFilteredResult(_0x4081c4,_0x19cac9))[_0x74e3('0x47')](handleError(_0x4081c4,null));};exports[_0x74e3('0x48')]=function(_0x30cd1f,_0xe37402){var _0xda4345={'raw':!![],'where':{'id':_0x30cd1f[_0x74e3('0x49')]['id']}},_0x119f14={};_0x119f14[_0x74e3('0x34')]=_[_0x74e3('0x36')](db[_0x74e3('0x30')][_0x74e3('0x31')]);_0x119f14['query']=_[_0x74e3('0x36')](_0x30cd1f[_0x74e3('0x35')]);_0x119f14[_0x74e3('0x37')]=_[_0x74e3('0x38')](_0x119f14[_0x74e3('0x34')],_0x119f14[_0x74e3('0x35')]);_0xda4345[_0x74e3('0x39')]=_[_0x74e3('0x38')](_0x119f14[_0x74e3('0x34')],qs[_0x74e3('0x3a')](_0x30cd1f[_0x74e3('0x35')][_0x74e3('0x3a')]));_0xda4345[_0x74e3('0x39')]=_0xda4345['attributes'][_0x74e3('0x3b')]?_0xda4345[_0x74e3('0x39')]:_0x119f14['model'];if(_0x30cd1f['query'][_0x74e3('0x44')]){_0xda4345[_0x74e3('0x45')]=[{'all':!![]}];}_0xda4345=_['merge']({},_0xda4345,_0x30cd1f['options']);return db[_0x74e3('0x30')][_0x74e3('0x4a')](_0xda4345)[_0x74e3('0x23')](handleEntityNotFound(_0xe37402,null))[_0x74e3('0x23')](respondWithResult(_0xe37402,null))[_0x74e3('0x47')](handleError(_0xe37402,null));};exports['create']=function(_0x5a960d,_0x2525c3){return db['OpenchannelQueueReport'][_0x74e3('0x4b')](_0x5a960d[_0x74e3('0x29')],{})[_0x74e3('0x23')](respondWithResult(_0x2525c3,0xc9))[_0x74e3('0x47')](handleError(_0x2525c3,null));};exports['update']=function(_0x3c8a3a,_0x86c2eb){if(_0x3c8a3a[_0x74e3('0x29')]['id']){delete _0x3c8a3a[_0x74e3('0x29')]['id'];}return db[_0x74e3('0x30')]['find']({'where':{'id':_0x3c8a3a[_0x74e3('0x49')]['id']}})[_0x74e3('0x23')](handleEntityNotFound(_0x86c2eb,null))[_0x74e3('0x23')](saveUpdates(_0x3c8a3a[_0x74e3('0x29')],null))[_0x74e3('0x23')](respondWithResult(_0x86c2eb,null))[_0x74e3('0x47')](handleError(_0x86c2eb,null));};exports[_0x74e3('0x24')]=function(_0x31c7c5,_0x21c984){return db['OpenchannelQueueReport'][_0x74e3('0x4a')]({'where':{'id':_0x31c7c5[_0x74e3('0x49')]['id']}})[_0x74e3('0x23')](handleEntityNotFound(_0x21c984,null))[_0x74e3('0x23')](removeEntity(_0x21c984,null))[_0x74e3('0x47')](handleError(_0x21c984,null));};exports[_0x74e3('0x4c')]=function(_0x3d40bd,_0x24c9a0){return db[_0x74e3('0x30')][_0x74e3('0x4c')]()[_0x74e3('0x23')](respondWithResult(_0x24c9a0,null))[_0x74e3('0x47')](handleError(_0x24c9a0,null));};