Built motion from commit (unavailable).|2.5.26
[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 _0xa187=['query','filters','model','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','VIRTUAL','filter','merge','options','count','includeAll','include','findAll','rows','catch','create','bulkCreate','find','destroy','params','bulkDestroy','ids','addFields','sequelize','transaction','html-pdf','eml-format','rimraf','fast-json-patch','request-promise','bluebird','util','path','sox','ejs','fs-extra','lodash','crypto','desk.js','to-csv','querystring','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','offset','limit','set','Content-Range','apply','save','update','then','end','error','stack','name','send','map','AnalyticFieldReport','rawAttributes','fieldName','type','keys'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0xa187,0xbf));var _0x7a18=function(_0x4da196,_0x357dc9){_0x4da196=_0x4da196-0x0;var _0x375df3=_0xa187[_0x4da196];return _0x375df3;};'use strict';var pdf=require(_0x7a18('0x0'));var emlformat=require(_0x7a18('0x1'));var rimraf=require(_0x7a18('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0x7a18('0x3'));var rp=require(_0x7a18('0x4'));var moment=require('moment');var BPromise=require(_0x7a18('0x5'));var Mustache=require('mustache');var util=require(_0x7a18('0x6'));var path=require(_0x7a18('0x7'));var sox=require(_0x7a18('0x8'));var csv=require('to-csv');var ejs=require(_0x7a18('0x9'));var fs=require('fs');var fs_extra=require(_0x7a18('0xa'));var _=require(_0x7a18('0xb'));var squel=require('squel');var crypto=require(_0x7a18('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x7a18('0xd'));var toCsv=require(_0x7a18('0xe'));var querystring=require(_0x7a18('0xf'));var Papa=require('papaparse');var Redis=require(_0x7a18('0x10'));var authService=require(_0x7a18('0x11'));var qs=require('../../components/parsers/qs');var as=require(_0x7a18('0x12'));var hardwareService=require(_0x7a18('0x13'));var logger=require('../../config/logger')('api');var utils=require(_0x7a18('0x14'));var config=require(_0x7a18('0x15'));var licenseUtil=require(_0x7a18('0x16'));var db=require(_0x7a18('0x17'))['db'];function respondWithStatusCode(_0xb6972c,_0x569e1f){_0x569e1f=_0x569e1f||0xcc;return function(_0x782c16){if(_0x782c16){return _0xb6972c[_0x7a18('0x18')](_0x569e1f);}return _0xb6972c['status'](_0x569e1f)['end']();};}function respondWithResult(_0x14bfda,_0x3f25d0){_0x3f25d0=_0x3f25d0||0xc8;return function(_0x3aa338){if(_0x3aa338){return _0x14bfda[_0x7a18('0x19')](_0x3f25d0)[_0x7a18('0x1a')](_0x3aa338);}};}function respondWithFilteredResult(_0x5d3f0f,_0x3e63b9){return function(_0xb24695){if(_0xb24695){var _0x5a69ed=_0xb24695['count'],_0xb1401c=_0x3e63b9[_0x7a18('0x1b')],_0x520964=_0x3e63b9[_0x7a18('0x1b')]+_0x3e63b9[_0x7a18('0x1c')],_0x93f011;if(_0x520964>=_0x5a69ed){_0x520964=_0x5a69ed;_0x93f011=0xc8;}else{_0x93f011=0xce;}_0x5d3f0f[_0x7a18('0x19')](_0x93f011);return _0x5d3f0f[_0x7a18('0x1d')](_0x7a18('0x1e'),_0xb1401c+'-'+_0x520964+'/'+_0x5a69ed)[_0x7a18('0x1a')](_0xb24695);}return null;};}function patchUpdates(_0x377ec7){return function(_0x582d31){try{jsonpatch[_0x7a18('0x1f')](_0x582d31,_0x377ec7,!![]);}catch(_0x445b89){return BPromise['reject'](_0x445b89);}return _0x582d31[_0x7a18('0x20')]();};}function saveUpdates(_0x191603,_0x3ec4fa){return function(_0x567884){if(_0x567884){return _0x567884[_0x7a18('0x21')](_0x191603)[_0x7a18('0x22')](function(_0x149af3){return _0x149af3;});}return null;};}function removeEntity(_0x4e2d20,_0x325f5d){return function(_0x531975){if(_0x531975){return _0x531975['destroy']()['then'](function(){_0x4e2d20['status'](0xcc)[_0x7a18('0x23')]();});}};}function handleEntityNotFound(_0xc2a6e4,_0x1dcfed){return function(_0x29a454){if(!_0x29a454){_0xc2a6e4[_0x7a18('0x18')](0x194);}return _0x29a454;};}function handleError(_0x21e636,_0x3cdf3d){_0x3cdf3d=_0x3cdf3d||0x1f4;return function(_0x4f0aa0){logger[_0x7a18('0x24')](_0x4f0aa0[_0x7a18('0x25')]);if(_0x4f0aa0[_0x7a18('0x26')]){delete _0x4f0aa0[_0x7a18('0x26')];}_0x21e636[_0x7a18('0x19')](_0x3cdf3d)[_0x7a18('0x27')](_0x4f0aa0);};}exports['index']=function(_0xe9b2ef,_0x23968a){var _0x4a40e2={},_0x682404={},_0x2df885={'count':0x0,'rows':[]};var _0x238f6d=_[_0x7a18('0x28')](db[_0x7a18('0x29')][_0x7a18('0x2a')],function(_0x18237b){return{'name':_0x18237b[_0x7a18('0x2b')],'type':_0x18237b[_0x7a18('0x2c')]['key']};});_0x682404['model']=_[_0x7a18('0x28')](_0x238f6d,_0x7a18('0x26'));_0x682404['query']=_[_0x7a18('0x2d')](_0xe9b2ef[_0x7a18('0x2e')]);_0x682404[_0x7a18('0x2f')]=_['intersection'](_0x682404[_0x7a18('0x30')],_0x682404['query']);_0x4a40e2['attributes']=_[_0x7a18('0x31')](_0x682404[_0x7a18('0x30')],qs[_0x7a18('0x32')](_0xe9b2ef[_0x7a18('0x2e')][_0x7a18('0x32')]));_0x4a40e2[_0x7a18('0x33')]=_0x4a40e2[_0x7a18('0x33')][_0x7a18('0x34')]?_0x4a40e2[_0x7a18('0x33')]:_0x682404['model'];if(!_0xe9b2ef[_0x7a18('0x2e')][_0x7a18('0x35')](_0x7a18('0x36'))){_0x4a40e2['limit']=qs[_0x7a18('0x1c')](_0xe9b2ef[_0x7a18('0x2e')][_0x7a18('0x1c')]);_0x4a40e2[_0x7a18('0x1b')]=qs[_0x7a18('0x1b')](_0xe9b2ef[_0x7a18('0x2e')][_0x7a18('0x1b')]);}_0x4a40e2[_0x7a18('0x37')]=qs['sort'](_0xe9b2ef['query'][_0x7a18('0x38')]);_0x4a40e2[_0x7a18('0x39')]=qs[_0x7a18('0x2f')](_[_0x7a18('0x3a')](_0xe9b2ef[_0x7a18('0x2e')],_0x682404[_0x7a18('0x2f')]),_0x238f6d);if(_0xe9b2ef[_0x7a18('0x2e')]['filter']){_0x4a40e2[_0x7a18('0x39')]=_['merge'](_0x4a40e2[_0x7a18('0x39')],{'$or':_[_0x7a18('0x28')](_0x238f6d,function(_0x5d0a55){if(_0x5d0a55['type']!==_0x7a18('0x3b')){var _0x487c4c={};_0x487c4c[_0x5d0a55[_0x7a18('0x26')]]={'$like':'%'+_0xe9b2ef[_0x7a18('0x2e')][_0x7a18('0x3c')]+'%'};return _0x487c4c;}})});}_0x4a40e2=_[_0x7a18('0x3d')]({},_0x4a40e2,_0xe9b2ef[_0x7a18('0x3e')]);var _0xe97c95={'where':_0x4a40e2[_0x7a18('0x39')]};return db[_0x7a18('0x29')][_0x7a18('0x3f')](_0xe97c95)[_0x7a18('0x22')](function(_0x5abd07){_0x2df885[_0x7a18('0x3f')]=_0x5abd07;if(_0xe9b2ef['query'][_0x7a18('0x40')]){_0x4a40e2[_0x7a18('0x41')]=[{'all':!![]}];}return db[_0x7a18('0x29')][_0x7a18('0x42')](_0x4a40e2);})['then'](function(_0x289c31){_0x2df885[_0x7a18('0x43')]=_0x289c31;return _0x2df885;})['then'](respondWithFilteredResult(_0x23968a,_0x4a40e2))[_0x7a18('0x44')](handleError(_0x23968a,null));};exports['show']=function(_0x15d56c,_0x84a773){var _0x2a7e7e={'raw':![],'where':{'id':_0x15d56c['params']['id']}},_0x309b5a={};_0x309b5a[_0x7a18('0x30')]=_[_0x7a18('0x2d')](db[_0x7a18('0x29')][_0x7a18('0x2a')]);_0x309b5a[_0x7a18('0x2e')]=_[_0x7a18('0x2d')](_0x15d56c[_0x7a18('0x2e')]);_0x309b5a[_0x7a18('0x2f')]=_[_0x7a18('0x31')](_0x309b5a['model'],_0x309b5a['query']);_0x2a7e7e[_0x7a18('0x33')]=_[_0x7a18('0x31')](_0x309b5a[_0x7a18('0x30')],qs[_0x7a18('0x32')](_0x15d56c['query'][_0x7a18('0x32')]));_0x2a7e7e[_0x7a18('0x33')]=_0x2a7e7e[_0x7a18('0x33')][_0x7a18('0x34')]?_0x2a7e7e[_0x7a18('0x33')]:_0x309b5a[_0x7a18('0x30')];if(_0x15d56c['query'][_0x7a18('0x40')]){_0x2a7e7e[_0x7a18('0x41')]=[{'all':!![]}];}_0x2a7e7e=_[_0x7a18('0x3d')]({},_0x2a7e7e,_0x15d56c['options']);return db[_0x7a18('0x29')]['find'](_0x2a7e7e)[_0x7a18('0x22')](handleEntityNotFound(_0x84a773,null))[_0x7a18('0x22')](respondWithResult(_0x84a773,null))['catch'](handleError(_0x84a773,null));};exports['create']=function(_0x11160e,_0x1a9e38){return db[_0x7a18('0x29')][_0x7a18('0x45')](_0x11160e['body'],{})['then'](respondWithResult(_0x1a9e38,0xc9))['catch'](handleError(_0x1a9e38,null));};exports[_0x7a18('0x46')]=function(_0x264e82,_0x28bde7){return db['AnalyticFieldReport'][_0x7a18('0x46')](_0x264e82['body'],{'raw':![],'individualHooks':!![]})[_0x7a18('0x22')](respondWithResult(_0x28bde7,0xc9))['catch'](handleError(_0x28bde7,null));};exports[_0x7a18('0x21')]=function(_0x5ee266,_0x56e712){if(_0x5ee266['body']['id']){delete _0x5ee266['body']['id'];}return db['AnalyticFieldReport'][_0x7a18('0x47')]({'where':{'id':_0x5ee266['params']['id']}})['then'](handleEntityNotFound(_0x56e712,null))[_0x7a18('0x22')](saveUpdates(_0x5ee266['body'],null))[_0x7a18('0x22')](respondWithResult(_0x56e712,null))[_0x7a18('0x44')](handleError(_0x56e712,null));};exports[_0x7a18('0x48')]=function(_0x1bd17e,_0x2cde85){return db[_0x7a18('0x29')]['find']({'where':{'id':_0x1bd17e[_0x7a18('0x49')]['id']}})[_0x7a18('0x22')](handleEntityNotFound(_0x2cde85,null))[_0x7a18('0x22')](removeEntity(_0x2cde85,null))['catch'](handleError(_0x2cde85,null));};exports[_0x7a18('0x4a')]=function(_0x37cdd8,_0x37e2b9){return db[_0x7a18('0x29')]['destroy']({'where':{'id':_0x37cdd8['query'][_0x7a18('0x4b')]||[]},'raw':![],'individualHooks':!![]})[_0x7a18('0x22')](respondWithResult(_0x37e2b9,0xcc))[_0x7a18('0x44')](handleError(_0x37e2b9,null));};exports[_0x7a18('0x4c')]=function(_0x14c888,_0x2ff822,_0x5140b6){return db['AnalyticCustomReport']['findOne']({'where':{'id':_0x14c888['params']['id']}})[_0x7a18('0x22')](handleEntityNotFound(_0x2ff822,null))[_0x7a18('0x22')](function(_0x231c5d){if(_0x231c5d){return db[_0x7a18('0x4d')][_0x7a18('0x4e')](function(_0x3431a6){return db[_0x7a18('0x29')][_0x7a18('0x48')]({'where':{'CustomReportId':_0x14c888[_0x7a18('0x49')]['id']},'transaction':_0x3431a6})[_0x7a18('0x22')](function(_0x428af7){var _0x3bf216=_[_0x7a18('0x28')](_0x14c888['body'],function(_0xacbc0d){delete _0xacbc0d['id'];_0xacbc0d['CustomReportId']=_0x14c888[_0x7a18('0x49')]['id'];return _0xacbc0d;});return db['AnalyticFieldReport']['bulkCreate'](_0x3bf216,{'transaction':_0x3431a6});});})[_0x7a18('0x22')](function(){return db[_0x7a18('0x29')]['findAll']({'where':{'CustomReportId':_0x14c888[_0x7a18('0x49')]['id']}});});}})[_0x7a18('0x22')](respondWithResult(_0x2ff822,null))[_0x7a18('0x44')](handleError(_0x2ff822,null));};