Built motion from commit (unavailable).|2.5.21
[motion2.git] / server / api / chatQueueReport / chatQueueReport.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 _0xbd2b=['params','find','catch','create','body','describe','html-pdf','eml-format','rimraf','zip-dir','mustache','util','path','sox','to-csv','squel','jsforce','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../mysqldb','status','end','json','count','offset','limit','Content-Range','reject','update','then','destroy','sendStatus','name','send','index','map','ChatQueueReport','rawAttributes','fieldName','type','key','model','query','keys','intersection','attributes','fields','length','hasOwnProperty','order','sort','where','filters','pick','filter','merge','VIRTUAL','options','includeAll','include','findAll','rows','show'];(function(_0x321bb2,_0x202794){var _0x9c12ed=function(_0x263dd3){while(--_0x263dd3){_0x321bb2['push'](_0x321bb2['shift']());}};_0x9c12ed(++_0x202794);}(_0xbd2b,0x92));var _0xbbd2=function(_0x12c2c9,_0x6f2f51){_0x12c2c9=_0x12c2c9-0x0;var _0x21f841=_0xbd2b[_0x12c2c9];return _0x21f841;};'use strict';var pdf=require(_0xbbd2('0x0'));var emlformat=require(_0xbbd2('0x1'));var rimraf=require(_0xbbd2('0x2'));var zipdir=require(_0xbbd2('0x3'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0xbbd2('0x4'));var util=require(_0xbbd2('0x5'));var path=require(_0xbbd2('0x6'));var sox=require(_0xbbd2('0x7'));var csv=require(_0xbbd2('0x8'));var ejs=require('ejs');var fs=require('fs');var _=require('lodash');var squel=require(_0xbbd2('0x9'));var crypto=require('crypto');var jsforce=require(_0xbbd2('0xa'));var deskjs=require('desk.js');var toCsv=require(_0xbbd2('0x8'));var querystring=require('querystring');var Papa=require(_0xbbd2('0xb'));var Redis=require(_0xbbd2('0xc'));var authService=require(_0xbbd2('0xd'));var qs=require(_0xbbd2('0xe'));var as=require(_0xbbd2('0xf'));var hardwareService=require(_0xbbd2('0x10'));var logger=require(_0xbbd2('0x11'))(_0xbbd2('0x12'));var utils=require(_0xbbd2('0x13'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0xbbd2('0x14'))['db'];function respondWithStatusCode(_0x49f477,_0x28e6af){_0x28e6af=_0x28e6af||0xcc;return function(_0x29d350){if(_0x29d350){return _0x49f477['sendStatus'](_0x28e6af);}return _0x49f477[_0xbbd2('0x15')](_0x28e6af)[_0xbbd2('0x16')]();};}function respondWithResult(_0xe6b855,_0x5b4d60){_0x5b4d60=_0x5b4d60||0xc8;return function(_0x1df6ca){if(_0x1df6ca){return _0xe6b855[_0xbbd2('0x15')](_0x5b4d60)[_0xbbd2('0x17')](_0x1df6ca);}};}function respondWithFilteredResult(_0x8e7337,_0x2482ac){return function(_0xf7afd6){if(_0xf7afd6){var _0x28ac36=_0xf7afd6[_0xbbd2('0x18')],_0x10a3e8=_0x2482ac[_0xbbd2('0x19')],_0x42c0ab=_0x2482ac[_0xbbd2('0x19')]+_0x2482ac[_0xbbd2('0x1a')],_0x881676;if(_0x42c0ab>=_0x28ac36){_0x42c0ab=_0x28ac36;_0x881676=0xc8;}else{_0x881676=0xce;}_0x8e7337[_0xbbd2('0x15')](_0x881676);return _0x8e7337['set'](_0xbbd2('0x1b'),_0x10a3e8+'-'+_0x42c0ab+'/'+_0x28ac36)[_0xbbd2('0x17')](_0xf7afd6);}return null;};}function patchUpdates(_0x4816eb){return function(_0x154f74){try{jsonpatch['apply'](_0x154f74,_0x4816eb,!![]);}catch(_0x39d1bc){return BPromise[_0xbbd2('0x1c')](_0x39d1bc);}return _0x154f74['save']();};}function saveUpdates(_0x3b14c5,_0x2dea4e){return function(_0x47d3ba){if(_0x47d3ba){return _0x47d3ba[_0xbbd2('0x1d')](_0x3b14c5)[_0xbbd2('0x1e')](function(_0x592af7){return _0x592af7;});}return null;};}function removeEntity(_0x113cc1,_0x311bb6){return function(_0x24be77){if(_0x24be77){return _0x24be77[_0xbbd2('0x1f')]()[_0xbbd2('0x1e')](function(){_0x113cc1['status'](0xcc)[_0xbbd2('0x16')]();});}};}function handleEntityNotFound(_0x4d0fb0,_0x4ea39b){return function(_0x208f05){if(!_0x208f05){_0x4d0fb0[_0xbbd2('0x20')](0x194);}return _0x208f05;};}function handleError(_0x3ac400,_0x5b65a2){_0x5b65a2=_0x5b65a2||0x1f4;return function(_0x3cf778){logger['error'](_0x3cf778['stack']);if(_0x3cf778['name']){delete _0x3cf778[_0xbbd2('0x21')];}_0x3ac400[_0xbbd2('0x15')](_0x5b65a2)[_0xbbd2('0x22')](_0x3cf778);};}exports[_0xbbd2('0x23')]=function(_0x35fb5f,_0x3accba){var _0x55fa47={},_0x1f0d44={},_0x107303={'count':0x0,'rows':[]};var _0x41b59b=_[_0xbbd2('0x24')](db[_0xbbd2('0x25')][_0xbbd2('0x26')],function(_0x5d562b){return{'name':_0x5d562b[_0xbbd2('0x27')],'type':_0x5d562b[_0xbbd2('0x28')][_0xbbd2('0x29')]};});_0x1f0d44[_0xbbd2('0x2a')]=_[_0xbbd2('0x24')](_0x41b59b,'name');_0x1f0d44[_0xbbd2('0x2b')]=_[_0xbbd2('0x2c')](_0x35fb5f[_0xbbd2('0x2b')]);_0x1f0d44['filters']=_[_0xbbd2('0x2d')](_0x1f0d44[_0xbbd2('0x2a')],_0x1f0d44[_0xbbd2('0x2b')]);_0x55fa47[_0xbbd2('0x2e')]=_[_0xbbd2('0x2d')](_0x1f0d44[_0xbbd2('0x2a')],qs['fields'](_0x35fb5f['query'][_0xbbd2('0x2f')]));_0x55fa47[_0xbbd2('0x2e')]=_0x55fa47['attributes'][_0xbbd2('0x30')]?_0x55fa47[_0xbbd2('0x2e')]:_0x1f0d44[_0xbbd2('0x2a')];if(!_0x35fb5f[_0xbbd2('0x2b')][_0xbbd2('0x31')]('nolimit')){_0x55fa47['limit']=qs[_0xbbd2('0x1a')](_0x35fb5f[_0xbbd2('0x2b')]['limit']);_0x55fa47[_0xbbd2('0x19')]=qs['offset'](_0x35fb5f[_0xbbd2('0x2b')]['offset']);}_0x55fa47[_0xbbd2('0x32')]=qs[_0xbbd2('0x33')](_0x35fb5f[_0xbbd2('0x2b')][_0xbbd2('0x33')]);_0x55fa47[_0xbbd2('0x34')]=qs[_0xbbd2('0x35')](_[_0xbbd2('0x36')](_0x35fb5f['query'],_0x1f0d44['filters']),_0x41b59b);if(_0x35fb5f[_0xbbd2('0x2b')][_0xbbd2('0x37')]){_0x55fa47[_0xbbd2('0x34')]=_[_0xbbd2('0x38')](_0x55fa47['where'],{'$or':_[_0xbbd2('0x24')](_0x41b59b,function(_0x5bc88f){if(_0x5bc88f[_0xbbd2('0x28')]!==_0xbbd2('0x39')){var _0x477542={};_0x477542[_0x5bc88f['name']]={'$like':'%'+_0x35fb5f[_0xbbd2('0x2b')]['filter']+'%'};return _0x477542;}})});}_0x55fa47=_[_0xbbd2('0x38')]({},_0x55fa47,_0x35fb5f[_0xbbd2('0x3a')]);var _0x2a89c3={'where':_0x55fa47[_0xbbd2('0x34')]};return db[_0xbbd2('0x25')][_0xbbd2('0x18')](_0x2a89c3)[_0xbbd2('0x1e')](function(_0x126520){_0x107303[_0xbbd2('0x18')]=_0x126520;if(_0x35fb5f[_0xbbd2('0x2b')][_0xbbd2('0x3b')]){_0x55fa47[_0xbbd2('0x3c')]=[{'all':!![]}];}return db[_0xbbd2('0x25')][_0xbbd2('0x3d')](_0x55fa47);})[_0xbbd2('0x1e')](function(_0x28e67b){_0x107303[_0xbbd2('0x3e')]=_0x28e67b;return _0x107303;})[_0xbbd2('0x1e')](respondWithFilteredResult(_0x3accba,_0x55fa47))['catch'](handleError(_0x3accba,null));};exports[_0xbbd2('0x3f')]=function(_0x538dd1,_0x828560){var _0x25650d={'raw':!![],'where':{'id':_0x538dd1[_0xbbd2('0x40')]['id']}},_0x21061c={};_0x21061c[_0xbbd2('0x2a')]=_[_0xbbd2('0x2c')](db['ChatQueueReport']['rawAttributes']);_0x21061c['query']=_[_0xbbd2('0x2c')](_0x538dd1[_0xbbd2('0x2b')]);_0x21061c[_0xbbd2('0x35')]=_[_0xbbd2('0x2d')](_0x21061c['model'],_0x21061c[_0xbbd2('0x2b')]);_0x25650d[_0xbbd2('0x2e')]=_[_0xbbd2('0x2d')](_0x21061c[_0xbbd2('0x2a')],qs[_0xbbd2('0x2f')](_0x538dd1['query'][_0xbbd2('0x2f')]));_0x25650d[_0xbbd2('0x2e')]=_0x25650d[_0xbbd2('0x2e')][_0xbbd2('0x30')]?_0x25650d[_0xbbd2('0x2e')]:_0x21061c[_0xbbd2('0x2a')];if(_0x538dd1[_0xbbd2('0x2b')]['includeAll']){_0x25650d[_0xbbd2('0x3c')]=[{'all':!![]}];}_0x25650d=_['merge']({},_0x25650d,_0x538dd1['options']);return db[_0xbbd2('0x25')][_0xbbd2('0x41')](_0x25650d)[_0xbbd2('0x1e')](handleEntityNotFound(_0x828560,null))[_0xbbd2('0x1e')](respondWithResult(_0x828560,null))[_0xbbd2('0x42')](handleError(_0x828560,null));};exports[_0xbbd2('0x43')]=function(_0x31796e,_0x2f801b){return db[_0xbbd2('0x25')]['create'](_0x31796e[_0xbbd2('0x44')],{})[_0xbbd2('0x1e')](respondWithResult(_0x2f801b,0xc9))[_0xbbd2('0x42')](handleError(_0x2f801b,null));};exports['update']=function(_0x514d93,_0x4c3a04){if(_0x514d93[_0xbbd2('0x44')]['id']){delete _0x514d93[_0xbbd2('0x44')]['id'];}return db[_0xbbd2('0x25')][_0xbbd2('0x41')]({'where':{'id':_0x514d93[_0xbbd2('0x40')]['id']}})[_0xbbd2('0x1e')](handleEntityNotFound(_0x4c3a04,null))['then'](saveUpdates(_0x514d93[_0xbbd2('0x44')],null))['then'](respondWithResult(_0x4c3a04,null))[_0xbbd2('0x42')](handleError(_0x4c3a04,null));};exports['destroy']=function(_0x59beb9,_0x50a192){return db['ChatQueueReport']['find']({'where':{'id':_0x59beb9[_0xbbd2('0x40')]['id']}})['then'](handleEntityNotFound(_0x50a192,null))[_0xbbd2('0x1e')](removeEntity(_0x50a192,null))[_0xbbd2('0x42')](handleError(_0x50a192,null));};exports[_0xbbd2('0x45')]=function(_0x3a45b4,_0x27d581){return db['ChatQueueReport']['describe']()['then'](respondWithResult(_0x27d581,null))['catch'](handleError(_0x27d581,null));};