Built motion from commit (unavailable).|2.5.11
[motion2.git] / server / api / analyticFieldReport / analyticFieldReport.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 _0x0e89=['end','json','count','offset','limit','Content-Range','apply','update','then','destroy','error','stack','name','send','map','AnalyticFieldReport','fieldName','key','model','query','keys','filters','intersection','fields','attributes','length','nolimit','sort','where','filter','merge','type','VIRTUAL','options','includeAll','include','findAll','rows','catch','show','params','rawAttributes','create','body','bulkCreate','find','bulkDestroy','ids','addFields','AnalyticCustomReport','findOne','transaction','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','sox','ejs','lodash','squel','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status'];(function(_0x5196e1,_0x5466cd){var _0xaf48e9=function(_0x41d5d0){while(--_0x41d5d0){_0x5196e1['push'](_0x5196e1['shift']());}};_0xaf48e9(++_0x5466cd);}(_0x0e89,0xd6));var _0x90e8=function(_0x465028,_0x4570ac){_0x465028=_0x465028-0x0;var _0xb783d4=_0x0e89[_0x465028];return _0xb783d4;};'use strict';var pdf=require(_0x90e8('0x0'));var emlformat=require(_0x90e8('0x1'));var rimraf=require(_0x90e8('0x2'));var zipdir=require(_0x90e8('0x3'));var jsonpatch=require(_0x90e8('0x4'));var rp=require(_0x90e8('0x5'));var moment=require(_0x90e8('0x6'));var BPromise=require('bluebird');var Mustache=require(_0x90e8('0x7'));var util=require(_0x90e8('0x8'));var path=require(_0x90e8('0x9'));var sox=require(_0x90e8('0xa'));var csv=require('to-csv');var ejs=require(_0x90e8('0xb'));var fs=require('fs');var _=require(_0x90e8('0xc'));var squel=require(_0x90e8('0xd'));var crypto=require(_0x90e8('0xe'));var jsforce=require(_0x90e8('0xf'));var deskjs=require(_0x90e8('0x10'));var toCsv=require(_0x90e8('0x11'));var querystring=require(_0x90e8('0x12'));var Papa=require(_0x90e8('0x13'));var Redis=require(_0x90e8('0x14'));var authService=require('../../components/auth/service');var qs=require(_0x90e8('0x15'));var as=require(_0x90e8('0x16'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x90e8('0x17'));var utils=require(_0x90e8('0x18'));var config=require(_0x90e8('0x19'));var licenseUtil=require(_0x90e8('0x1a'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x36bfa2,_0x51e5b0){_0x51e5b0=_0x51e5b0||0xcc;return function(_0x3af949){if(_0x3af949){return _0x36bfa2[_0x90e8('0x1b')](_0x51e5b0);}return _0x36bfa2[_0x90e8('0x1c')](_0x51e5b0)[_0x90e8('0x1d')]();};}function respondWithResult(_0x3b0099,_0x5b04bd){_0x5b04bd=_0x5b04bd||0xc8;return function(_0x5e7ce4){if(_0x5e7ce4){return _0x3b0099[_0x90e8('0x1c')](_0x5b04bd)[_0x90e8('0x1e')](_0x5e7ce4);}};}function respondWithFilteredResult(_0x231aab,_0x84db3d){return function(_0x29efcd){if(_0x29efcd){var _0x2debfd=_0x29efcd[_0x90e8('0x1f')],_0x2acbd3=_0x84db3d['offset'],_0x37b593=_0x84db3d[_0x90e8('0x20')]+_0x84db3d[_0x90e8('0x21')],_0x4df8e2;if(_0x37b593>=_0x2debfd){_0x37b593=_0x2debfd;_0x4df8e2=0xc8;}else{_0x4df8e2=0xce;}_0x231aab[_0x90e8('0x1c')](_0x4df8e2);return _0x231aab['set'](_0x90e8('0x22'),_0x2acbd3+'-'+_0x37b593+'/'+_0x2debfd)[_0x90e8('0x1e')](_0x29efcd);}return null;};}function patchUpdates(_0x3f27f4){return function(_0x5a97b4){try{jsonpatch[_0x90e8('0x23')](_0x5a97b4,_0x3f27f4,!![]);}catch(_0x420eb7){return BPromise['reject'](_0x420eb7);}return _0x5a97b4['save']();};}function saveUpdates(_0x1f24df,_0x4ed1b9){return function(_0x5a18b5){if(_0x5a18b5){return _0x5a18b5[_0x90e8('0x24')](_0x1f24df)[_0x90e8('0x25')](function(_0x44e5d6){return _0x44e5d6;});}return null;};}function removeEntity(_0x260237,_0x4df4ea){return function(_0x2bab58){if(_0x2bab58){return _0x2bab58[_0x90e8('0x26')]()[_0x90e8('0x25')](function(){_0x260237[_0x90e8('0x1c')](0xcc)[_0x90e8('0x1d')]();});}};}function handleEntityNotFound(_0x326ac1,_0x171ffb){return function(_0x25a5f1){if(!_0x25a5f1){_0x326ac1[_0x90e8('0x1b')](0x194);}return _0x25a5f1;};}function handleError(_0x5d44d5,_0x32253c){_0x32253c=_0x32253c||0x1f4;return function(_0x47fe6a){logger[_0x90e8('0x27')](_0x47fe6a[_0x90e8('0x28')]);if(_0x47fe6a[_0x90e8('0x29')]){delete _0x47fe6a[_0x90e8('0x29')];}_0x5d44d5['status'](_0x32253c)[_0x90e8('0x2a')](_0x47fe6a);};}exports['index']=function(_0x53c9a3,_0x2f0d85){var _0x30c9a2={},_0x2ab78b={},_0xb9273e={'count':0x0,'rows':[]};var _0x42a6a5=_[_0x90e8('0x2b')](db[_0x90e8('0x2c')]['rawAttributes'],function(_0x67a26b){return{'name':_0x67a26b[_0x90e8('0x2d')],'type':_0x67a26b['type'][_0x90e8('0x2e')]};});_0x2ab78b[_0x90e8('0x2f')]=_[_0x90e8('0x2b')](_0x42a6a5,_0x90e8('0x29'));_0x2ab78b[_0x90e8('0x30')]=_[_0x90e8('0x31')](_0x53c9a3[_0x90e8('0x30')]);_0x2ab78b[_0x90e8('0x32')]=_[_0x90e8('0x33')](_0x2ab78b[_0x90e8('0x2f')],_0x2ab78b[_0x90e8('0x30')]);_0x30c9a2['attributes']=_[_0x90e8('0x33')](_0x2ab78b[_0x90e8('0x2f')],qs[_0x90e8('0x34')](_0x53c9a3['query']['fields']));_0x30c9a2[_0x90e8('0x35')]=_0x30c9a2[_0x90e8('0x35')][_0x90e8('0x36')]?_0x30c9a2[_0x90e8('0x35')]:_0x2ab78b[_0x90e8('0x2f')];if(!_0x53c9a3[_0x90e8('0x30')]['hasOwnProperty'](_0x90e8('0x37'))){_0x30c9a2[_0x90e8('0x21')]=qs['limit'](_0x53c9a3[_0x90e8('0x30')]['limit']);_0x30c9a2[_0x90e8('0x20')]=qs['offset'](_0x53c9a3[_0x90e8('0x30')][_0x90e8('0x20')]);}_0x30c9a2['order']=qs['sort'](_0x53c9a3['query'][_0x90e8('0x38')]);_0x30c9a2[_0x90e8('0x39')]=qs['filters'](_['pick'](_0x53c9a3[_0x90e8('0x30')],_0x2ab78b[_0x90e8('0x32')]),_0x42a6a5);if(_0x53c9a3[_0x90e8('0x30')][_0x90e8('0x3a')]){_0x30c9a2[_0x90e8('0x39')]=_[_0x90e8('0x3b')](_0x30c9a2[_0x90e8('0x39')],{'$or':_[_0x90e8('0x2b')](_0x42a6a5,function(_0x529c29){if(_0x529c29[_0x90e8('0x3c')]!==_0x90e8('0x3d')){var _0x4ffc33={};_0x4ffc33[_0x529c29[_0x90e8('0x29')]]={'$like':'%'+_0x53c9a3[_0x90e8('0x30')]['filter']+'%'};return _0x4ffc33;}})});}_0x30c9a2=_[_0x90e8('0x3b')]({},_0x30c9a2,_0x53c9a3[_0x90e8('0x3e')]);var _0x33643b={'where':_0x30c9a2['where']};return db[_0x90e8('0x2c')][_0x90e8('0x1f')](_0x33643b)['then'](function(_0x2d6ad6){_0xb9273e['count']=_0x2d6ad6;if(_0x53c9a3[_0x90e8('0x30')][_0x90e8('0x3f')]){_0x30c9a2[_0x90e8('0x40')]=[{'all':!![]}];}return db[_0x90e8('0x2c')][_0x90e8('0x41')](_0x30c9a2);})[_0x90e8('0x25')](function(_0x5a2d7b){_0xb9273e[_0x90e8('0x42')]=_0x5a2d7b;return _0xb9273e;})['then'](respondWithFilteredResult(_0x2f0d85,_0x30c9a2))[_0x90e8('0x43')](handleError(_0x2f0d85,null));};exports[_0x90e8('0x44')]=function(_0x1edd18,_0x506a7d){var _0x38addc={'raw':![],'where':{'id':_0x1edd18[_0x90e8('0x45')]['id']}},_0x3e0d94={};_0x3e0d94[_0x90e8('0x2f')]=_[_0x90e8('0x31')](db[_0x90e8('0x2c')][_0x90e8('0x46')]);_0x3e0d94[_0x90e8('0x30')]=_[_0x90e8('0x31')](_0x1edd18[_0x90e8('0x30')]);_0x3e0d94[_0x90e8('0x32')]=_['intersection'](_0x3e0d94[_0x90e8('0x2f')],_0x3e0d94[_0x90e8('0x30')]);_0x38addc[_0x90e8('0x35')]=_[_0x90e8('0x33')](_0x3e0d94[_0x90e8('0x2f')],qs[_0x90e8('0x34')](_0x1edd18[_0x90e8('0x30')][_0x90e8('0x34')]));_0x38addc[_0x90e8('0x35')]=_0x38addc[_0x90e8('0x35')][_0x90e8('0x36')]?_0x38addc[_0x90e8('0x35')]:_0x3e0d94[_0x90e8('0x2f')];if(_0x1edd18[_0x90e8('0x30')]['includeAll']){_0x38addc[_0x90e8('0x40')]=[{'all':!![]}];}_0x38addc=_[_0x90e8('0x3b')]({},_0x38addc,_0x1edd18[_0x90e8('0x3e')]);return db['AnalyticFieldReport']['find'](_0x38addc)['then'](handleEntityNotFound(_0x506a7d,null))[_0x90e8('0x25')](respondWithResult(_0x506a7d,null))[_0x90e8('0x43')](handleError(_0x506a7d,null));};exports[_0x90e8('0x47')]=function(_0x24792d,_0x4d9c5a){return db[_0x90e8('0x2c')][_0x90e8('0x47')](_0x24792d[_0x90e8('0x48')],{})[_0x90e8('0x25')](respondWithResult(_0x4d9c5a,0xc9))[_0x90e8('0x43')](handleError(_0x4d9c5a,null));};exports['bulkCreate']=function(_0x3598e0,_0x8316f7){return db['AnalyticFieldReport'][_0x90e8('0x49')](_0x3598e0[_0x90e8('0x48')],{'raw':![],'individualHooks':!![]})[_0x90e8('0x25')](respondWithResult(_0x8316f7,0xc9))[_0x90e8('0x43')](handleError(_0x8316f7,null));};exports[_0x90e8('0x24')]=function(_0x17a773,_0x5af8c4){if(_0x17a773[_0x90e8('0x48')]['id']){delete _0x17a773[_0x90e8('0x48')]['id'];}return db['AnalyticFieldReport'][_0x90e8('0x4a')]({'where':{'id':_0x17a773['params']['id']}})[_0x90e8('0x25')](handleEntityNotFound(_0x5af8c4,null))['then'](saveUpdates(_0x17a773['body'],null))[_0x90e8('0x25')](respondWithResult(_0x5af8c4,null))[_0x90e8('0x43')](handleError(_0x5af8c4,null));};exports[_0x90e8('0x26')]=function(_0x2b3a4f,_0x33f0d7){return db[_0x90e8('0x2c')][_0x90e8('0x4a')]({'where':{'id':_0x2b3a4f['params']['id']}})[_0x90e8('0x25')](handleEntityNotFound(_0x33f0d7,null))['then'](removeEntity(_0x33f0d7,null))['catch'](handleError(_0x33f0d7,null));};exports[_0x90e8('0x4b')]=function(_0x5612fa,_0x9c1de6){return db[_0x90e8('0x2c')][_0x90e8('0x26')]({'where':{'id':_0x5612fa[_0x90e8('0x30')][_0x90e8('0x4c')]||[]},'raw':![],'individualHooks':!![]})[_0x90e8('0x25')](respondWithResult(_0x9c1de6,0xcc))[_0x90e8('0x43')](handleError(_0x9c1de6,null));};exports[_0x90e8('0x4d')]=function(_0xdf025b,_0xe4dd8a,_0x5ef11d){return db[_0x90e8('0x4e')][_0x90e8('0x4f')]({'where':{'id':_0xdf025b[_0x90e8('0x45')]['id']}})[_0x90e8('0x25')](handleEntityNotFound(_0xe4dd8a,null))[_0x90e8('0x25')](function(_0x58a40f){if(_0x58a40f){return db['sequelize'][_0x90e8('0x50')](function(_0x438730){return db[_0x90e8('0x2c')][_0x90e8('0x26')]({'where':{'CustomReportId':_0xdf025b[_0x90e8('0x45')]['id']},'transaction':_0x438730})[_0x90e8('0x25')](function(_0x3c0792){var _0x48afb4=_[_0x90e8('0x2b')](_0xdf025b['body'],function(_0x5e03a1){delete _0x5e03a1['id'];_0x5e03a1['CustomReportId']=_0xdf025b[_0x90e8('0x45')]['id'];return _0x5e03a1;});return db['AnalyticFieldReport'][_0x90e8('0x49')](_0x48afb4,{'transaction':_0x438730});});})[_0x90e8('0x25')](function(){return db['AnalyticFieldReport'][_0x90e8('0x41')]({'where':{'CustomReportId':_0xdf025b[_0x90e8('0x45')]['id']}});});}})[_0x90e8('0x25')](respondWithResult(_0xe4dd8a,null))['catch'](handleError(_0xe4dd8a,null));};