Built motion from commit (unavailable).|2.5.1
[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 _0xcb57=['find','catch','create','body','bulkCreate','update','params','addFields','sequelize','transaction','CustomReportId','html-pdf','eml-format','zip-dir','request-promise','bluebird','mustache','path','sox','to-csv','lodash','squel','crypto','jsforce','desk.js','../../components/auth/service','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','offset','limit','set','Content-Range','json','apply','reject','then','destroy','error','name','index','map','AnalyticFieldReport','rawAttributes','fieldName','type','key','model','query','keys','filters','attributes','intersection','fields','length','hasOwnProperty','nolimit','order','sort','filter','merge','where','VIRTUAL','options','count','include','findAll','rows','includeAll'];(function(_0x51f145,_0xd7b709){var _0x463121=function(_0x2557a9){while(--_0x2557a9){_0x51f145['push'](_0x51f145['shift']());}};_0x463121(++_0xd7b709);}(_0xcb57,0xa1));var _0x7cb5=function(_0x4ae6ef,_0xc2af80){_0x4ae6ef=_0x4ae6ef-0x0;var _0x3cbb4e=_0xcb57[_0x4ae6ef];return _0x3cbb4e;};'use strict';var pdf=require(_0x7cb5('0x0'));var emlformat=require(_0x7cb5('0x1'));var rimraf=require('rimraf');var zipdir=require(_0x7cb5('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x7cb5('0x3'));var moment=require('moment');var BPromise=require(_0x7cb5('0x4'));var Mustache=require(_0x7cb5('0x5'));var util=require('util');var path=require(_0x7cb5('0x6'));var sox=require(_0x7cb5('0x7'));var csv=require(_0x7cb5('0x8'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x7cb5('0x9'));var squel=require(_0x7cb5('0xa'));var crypto=require(_0x7cb5('0xb'));var jsforce=require(_0x7cb5('0xc'));var deskjs=require(_0x7cb5('0xd'));var toCsv=require(_0x7cb5('0x8'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0x7cb5('0xe'));var qs=require('../../components/parsers/qs');var as=require(_0x7cb5('0xf'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x7cb5('0x10'))(_0x7cb5('0x11'));var utils=require(_0x7cb5('0x12'));var config=require(_0x7cb5('0x13'));var db=require(_0x7cb5('0x14'))['db'];function respondWithStatusCode(_0x2a1e06,_0x14efa5){_0x14efa5=_0x14efa5||0xcc;return function(_0x3e230e){if(_0x3e230e){return _0x2a1e06[_0x7cb5('0x15')](_0x14efa5);}return _0x2a1e06[_0x7cb5('0x16')](_0x14efa5)[_0x7cb5('0x17')]();};}function respondWithResult(_0x27d634,_0xc5ddf1){_0xc5ddf1=_0xc5ddf1||0xc8;return function(_0x3648cb){if(_0x3648cb){return _0x27d634['status'](_0xc5ddf1)['json'](_0x3648cb);}};}function respondWithFilteredResult(_0x34c88d,_0x30ba6a){return function(_0x579d58){if(_0x579d58){var _0x2774f4=_0x579d58['count'],_0x268d3d=_0x30ba6a[_0x7cb5('0x18')],_0x238fb4=_0x30ba6a[_0x7cb5('0x18')]+_0x30ba6a[_0x7cb5('0x19')],_0x509a7f;if(_0x238fb4>=_0x2774f4){_0x238fb4=_0x2774f4;_0x509a7f=0xc8;}else{_0x509a7f=0xce;}_0x34c88d['status'](_0x509a7f);return _0x34c88d[_0x7cb5('0x1a')](_0x7cb5('0x1b'),_0x268d3d+'-'+_0x238fb4+'/'+_0x2774f4)[_0x7cb5('0x1c')](_0x579d58);}return null;};}function patchUpdates(_0x190032){return function(_0x776e1c){try{jsonpatch[_0x7cb5('0x1d')](_0x776e1c,_0x190032,!![]);}catch(_0x3c3951){return BPromise[_0x7cb5('0x1e')](_0x3c3951);}return _0x776e1c['save']();};}function saveUpdates(_0x208277,_0x3f2860){return function(_0x43341d){if(_0x43341d){return _0x43341d['update'](_0x208277)[_0x7cb5('0x1f')](function(_0x4c7d72){return _0x4c7d72;});}return null;};}function removeEntity(_0x1435e1,_0x23d623){return function(_0x5932cc){if(_0x5932cc){return _0x5932cc[_0x7cb5('0x20')]()[_0x7cb5('0x1f')](function(){_0x1435e1[_0x7cb5('0x16')](0xcc)[_0x7cb5('0x17')]();});}};}function handleEntityNotFound(_0x2c6846,_0x279f78){return function(_0x2d34b3){if(!_0x2d34b3){_0x2c6846[_0x7cb5('0x15')](0x194);}return _0x2d34b3;};}function handleError(_0x464d37,_0xfd36ef){_0xfd36ef=_0xfd36ef||0x1f4;return function(_0x5c4fb1){logger[_0x7cb5('0x21')](_0x5c4fb1['stack']);if(_0x5c4fb1['name']){delete _0x5c4fb1[_0x7cb5('0x22')];}_0x464d37[_0x7cb5('0x16')](_0xfd36ef)['send'](_0x5c4fb1);};}exports[_0x7cb5('0x23')]=function(_0x1c0791,_0x35fbf0){var _0x43fa9d={},_0x1e5e89={},_0x3c465b={'count':0x0,'rows':[]};var _0x198510=_[_0x7cb5('0x24')](db[_0x7cb5('0x25')][_0x7cb5('0x26')],function(_0x6eb07){return{'name':_0x6eb07[_0x7cb5('0x27')],'type':_0x6eb07[_0x7cb5('0x28')][_0x7cb5('0x29')]};});_0x1e5e89[_0x7cb5('0x2a')]=_['map'](_0x198510,_0x7cb5('0x22'));_0x1e5e89[_0x7cb5('0x2b')]=_[_0x7cb5('0x2c')](_0x1c0791[_0x7cb5('0x2b')]);_0x1e5e89[_0x7cb5('0x2d')]=_['intersection'](_0x1e5e89[_0x7cb5('0x2a')],_0x1e5e89[_0x7cb5('0x2b')]);_0x43fa9d[_0x7cb5('0x2e')]=_[_0x7cb5('0x2f')](_0x1e5e89[_0x7cb5('0x2a')],qs[_0x7cb5('0x30')](_0x1c0791[_0x7cb5('0x2b')][_0x7cb5('0x30')]));_0x43fa9d['attributes']=_0x43fa9d[_0x7cb5('0x2e')][_0x7cb5('0x31')]?_0x43fa9d['attributes']:_0x1e5e89[_0x7cb5('0x2a')];if(!_0x1c0791['query'][_0x7cb5('0x32')](_0x7cb5('0x33'))){_0x43fa9d['limit']=qs[_0x7cb5('0x19')](_0x1c0791[_0x7cb5('0x2b')]['limit']);_0x43fa9d[_0x7cb5('0x18')]=qs[_0x7cb5('0x18')](_0x1c0791[_0x7cb5('0x2b')][_0x7cb5('0x18')]);}_0x43fa9d[_0x7cb5('0x34')]=qs['sort'](_0x1c0791[_0x7cb5('0x2b')][_0x7cb5('0x35')]);_0x43fa9d['where']=qs['filters'](_['pick'](_0x1c0791[_0x7cb5('0x2b')],_0x1e5e89[_0x7cb5('0x2d')]),_0x198510);if(_0x1c0791[_0x7cb5('0x2b')][_0x7cb5('0x36')]){_0x43fa9d['where']=_[_0x7cb5('0x37')](_0x43fa9d[_0x7cb5('0x38')],{'$or':_[_0x7cb5('0x24')](_0x198510,function(_0x4d7d83){if(_0x4d7d83[_0x7cb5('0x28')]!==_0x7cb5('0x39')){var _0x17711e={};_0x17711e[_0x4d7d83[_0x7cb5('0x22')]]={'$like':'%'+_0x1c0791[_0x7cb5('0x2b')][_0x7cb5('0x36')]+'%'};return _0x17711e;}})});}_0x43fa9d=_[_0x7cb5('0x37')]({},_0x43fa9d,_0x1c0791[_0x7cb5('0x3a')]);var _0x3a5507={'where':_0x43fa9d[_0x7cb5('0x38')]};return db[_0x7cb5('0x25')][_0x7cb5('0x3b')](_0x3a5507)[_0x7cb5('0x1f')](function(_0x58f661){_0x3c465b['count']=_0x58f661;if(_0x1c0791[_0x7cb5('0x2b')]['includeAll']){_0x43fa9d[_0x7cb5('0x3c')]=[{'all':!![]}];}return db['AnalyticFieldReport'][_0x7cb5('0x3d')](_0x43fa9d);})[_0x7cb5('0x1f')](function(_0x52e636){_0x3c465b[_0x7cb5('0x3e')]=_0x52e636;return _0x3c465b;})[_0x7cb5('0x1f')](respondWithFilteredResult(_0x35fbf0,_0x43fa9d))['catch'](handleError(_0x35fbf0,null));};exports['show']=function(_0x53f99e,_0x439aab){var _0x3eab39={'raw':![],'where':{'id':_0x53f99e['params']['id']}},_0x5e9fab={};_0x5e9fab['model']=_[_0x7cb5('0x2c')](db[_0x7cb5('0x25')][_0x7cb5('0x26')]);_0x5e9fab[_0x7cb5('0x2b')]=_[_0x7cb5('0x2c')](_0x53f99e['query']);_0x5e9fab['filters']=_['intersection'](_0x5e9fab[_0x7cb5('0x2a')],_0x5e9fab[_0x7cb5('0x2b')]);_0x3eab39[_0x7cb5('0x2e')]=_['intersection'](_0x5e9fab['model'],qs[_0x7cb5('0x30')](_0x53f99e['query'][_0x7cb5('0x30')]));_0x3eab39[_0x7cb5('0x2e')]=_0x3eab39[_0x7cb5('0x2e')][_0x7cb5('0x31')]?_0x3eab39['attributes']:_0x5e9fab[_0x7cb5('0x2a')];if(_0x53f99e[_0x7cb5('0x2b')][_0x7cb5('0x3f')]){_0x3eab39['include']=[{'all':!![]}];}_0x3eab39=_[_0x7cb5('0x37')]({},_0x3eab39,_0x53f99e[_0x7cb5('0x3a')]);return db[_0x7cb5('0x25')][_0x7cb5('0x40')](_0x3eab39)[_0x7cb5('0x1f')](handleEntityNotFound(_0x439aab,null))[_0x7cb5('0x1f')](respondWithResult(_0x439aab,null))[_0x7cb5('0x41')](handleError(_0x439aab,null));};exports[_0x7cb5('0x42')]=function(_0x1d2d06,_0x1b4b4a){return db[_0x7cb5('0x25')]['create'](_0x1d2d06[_0x7cb5('0x43')],{})[_0x7cb5('0x1f')](respondWithResult(_0x1b4b4a,0xc9))['catch'](handleError(_0x1b4b4a,null));};exports[_0x7cb5('0x44')]=function(_0x28222d,_0xd3acad){return db[_0x7cb5('0x25')][_0x7cb5('0x44')](_0x28222d[_0x7cb5('0x43')],{'raw':![],'individualHooks':!![]})[_0x7cb5('0x1f')](respondWithResult(_0xd3acad,0xc9))[_0x7cb5('0x41')](handleError(_0xd3acad,null));};exports[_0x7cb5('0x45')]=function(_0x562da0,_0x1325c2){if(_0x562da0[_0x7cb5('0x43')]['id']){delete _0x562da0[_0x7cb5('0x43')]['id'];}return db[_0x7cb5('0x25')][_0x7cb5('0x40')]({'where':{'id':_0x562da0[_0x7cb5('0x46')]['id']}})[_0x7cb5('0x1f')](handleEntityNotFound(_0x1325c2,null))[_0x7cb5('0x1f')](saveUpdates(_0x562da0[_0x7cb5('0x43')],null))['then'](respondWithResult(_0x1325c2,null))['catch'](handleError(_0x1325c2,null));};exports[_0x7cb5('0x20')]=function(_0x53a682,_0x3f8739){return db[_0x7cb5('0x25')]['find']({'where':{'id':_0x53a682['params']['id']}})[_0x7cb5('0x1f')](handleEntityNotFound(_0x3f8739,null))[_0x7cb5('0x1f')](removeEntity(_0x3f8739,null))[_0x7cb5('0x41')](handleError(_0x3f8739,null));};exports['bulkDestroy']=function(_0x475094,_0x1bfa74){return db[_0x7cb5('0x25')][_0x7cb5('0x20')]({'where':{'id':_0x475094[_0x7cb5('0x2b')]['ids']||[]},'raw':![],'individualHooks':!![]})['then'](respondWithResult(_0x1bfa74,0xcc))[_0x7cb5('0x41')](handleError(_0x1bfa74,null));};exports[_0x7cb5('0x47')]=function(_0x3cf8a6,_0x532fcb,_0x14d456){return db['AnalyticCustomReport']['findOne']({'where':{'id':_0x3cf8a6[_0x7cb5('0x46')]['id']}})['then'](handleEntityNotFound(_0x532fcb,null))[_0x7cb5('0x1f')](function(_0x1f5288){if(_0x1f5288){return db[_0x7cb5('0x48')][_0x7cb5('0x49')](function(_0x4d81c3){return db[_0x7cb5('0x25')][_0x7cb5('0x20')]({'where':{'CustomReportId':_0x3cf8a6['params']['id']},'transaction':_0x4d81c3})['then'](function(_0x2271a6){var _0x5429a2=_[_0x7cb5('0x24')](_0x3cf8a6[_0x7cb5('0x43')],function(_0xf7eaba){delete _0xf7eaba['id'];_0xf7eaba[_0x7cb5('0x4a')]=_0x3cf8a6[_0x7cb5('0x46')]['id'];return _0xf7eaba;});return db[_0x7cb5('0x25')][_0x7cb5('0x44')](_0x5429a2,{'transaction':_0x4d81c3});});})[_0x7cb5('0x1f')](function(){return db['AnalyticFieldReport'][_0x7cb5('0x3d')]({'where':{'CustomReportId':_0x3cf8a6[_0x7cb5('0x46')]['id']}});});}})[_0x7cb5('0x1f')](respondWithResult(_0x532fcb,null))[_0x7cb5('0x41')](handleError(_0x532fcb,null));};