Built motion from commit (unavailable).|2.5.21
[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 _0x5626=['../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','end','json','offset','limit','status','Content-Range','apply','save','update','then','destroy','error','stack','send','map','AnalyticFieldReport','fieldName','type','key','model','name','query','filters','intersection','fields','length','attributes','hasOwnProperty','nolimit','order','sort','pick','where','merge','VIRTUAL','filter','options','count','includeAll','include','findAll','rows','catch','params','keys','find','create','body','bulkCreate','bulkDestroy','ids','addFields','AnalyticCustomReport','findOne','sequelize','transaction','CustomReportId','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','util','path','sox','ejs','lodash','crypto','desk.js','to-csv','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware'];(function(_0x705b98,_0x1c345b){var _0x47b72f=function(_0x44f02a){while(--_0x44f02a){_0x705b98['push'](_0x705b98['shift']());}};_0x47b72f(++_0x1c345b);}(_0x5626,0x138));var _0x6562=function(_0x11b6f2,_0x96cd01){_0x11b6f2=_0x11b6f2-0x0;var _0x1f6c49=_0x5626[_0x11b6f2];return _0x1f6c49;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x6562('0x0'));var rimraf=require(_0x6562('0x1'));var zipdir=require(_0x6562('0x2'));var jsonpatch=require(_0x6562('0x3'));var rp=require('request-promise');var moment=require(_0x6562('0x4'));var BPromise=require(_0x6562('0x5'));var Mustache=require(_0x6562('0x6'));var util=require(_0x6562('0x7'));var path=require(_0x6562('0x8'));var sox=require(_0x6562('0x9'));var csv=require('to-csv');var ejs=require(_0x6562('0xa'));var fs=require('fs');var _=require(_0x6562('0xb'));var squel=require('squel');var crypto=require(_0x6562('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x6562('0xd'));var toCsv=require(_0x6562('0xe'));var querystring=require('querystring');var Papa=require(_0x6562('0xf'));var Redis=require('ioredis');var authService=require(_0x6562('0x10'));var qs=require(_0x6562('0x11'));var as=require(_0x6562('0x12'));var hardwareService=require(_0x6562('0x13'));var logger=require(_0x6562('0x14'))(_0x6562('0x15'));var utils=require(_0x6562('0x16'));var config=require(_0x6562('0x17'));var licenseUtil=require('../../config/license/util');var db=require(_0x6562('0x18'))['db'];function respondWithStatusCode(_0x4fb783,_0xfe348c){_0xfe348c=_0xfe348c||0xcc;return function(_0x2ee09b){if(_0x2ee09b){return _0x4fb783[_0x6562('0x19')](_0xfe348c);}return _0x4fb783['status'](_0xfe348c)[_0x6562('0x1a')]();};}function respondWithResult(_0x179eb9,_0x341ef3){_0x341ef3=_0x341ef3||0xc8;return function(_0x255edb){if(_0x255edb){return _0x179eb9['status'](_0x341ef3)[_0x6562('0x1b')](_0x255edb);}};}function respondWithFilteredResult(_0x23ff3b,_0x4dd0aa){return function(_0x2720eb){if(_0x2720eb){var _0x5081eb=_0x2720eb['count'],_0x562a2d=_0x4dd0aa[_0x6562('0x1c')],_0x319a5d=_0x4dd0aa[_0x6562('0x1c')]+_0x4dd0aa[_0x6562('0x1d')],_0x2a638a;if(_0x319a5d>=_0x5081eb){_0x319a5d=_0x5081eb;_0x2a638a=0xc8;}else{_0x2a638a=0xce;}_0x23ff3b[_0x6562('0x1e')](_0x2a638a);return _0x23ff3b['set'](_0x6562('0x1f'),_0x562a2d+'-'+_0x319a5d+'/'+_0x5081eb)[_0x6562('0x1b')](_0x2720eb);}return null;};}function patchUpdates(_0x4aab90){return function(_0x1f306c){try{jsonpatch[_0x6562('0x20')](_0x1f306c,_0x4aab90,!![]);}catch(_0x9750f1){return BPromise['reject'](_0x9750f1);}return _0x1f306c[_0x6562('0x21')]();};}function saveUpdates(_0x210fb6,_0x3f6cd1){return function(_0x26a122){if(_0x26a122){return _0x26a122[_0x6562('0x22')](_0x210fb6)[_0x6562('0x23')](function(_0x33818f){return _0x33818f;});}return null;};}function removeEntity(_0x484771,_0x56aa9a){return function(_0x5baa80){if(_0x5baa80){return _0x5baa80[_0x6562('0x24')]()[_0x6562('0x23')](function(){_0x484771[_0x6562('0x1e')](0xcc)[_0x6562('0x1a')]();});}};}function handleEntityNotFound(_0x2ea052,_0x460a4c){return function(_0x141b72){if(!_0x141b72){_0x2ea052[_0x6562('0x19')](0x194);}return _0x141b72;};}function handleError(_0x101204,_0x164e36){_0x164e36=_0x164e36||0x1f4;return function(_0x20bd45){logger[_0x6562('0x25')](_0x20bd45[_0x6562('0x26')]);if(_0x20bd45['name']){delete _0x20bd45['name'];}_0x101204[_0x6562('0x1e')](_0x164e36)[_0x6562('0x27')](_0x20bd45);};}exports['index']=function(_0x494e5a,_0x433a33){var _0x1440d7={},_0xbecc40={},_0x2df271={'count':0x0,'rows':[]};var _0x506cca=_[_0x6562('0x28')](db[_0x6562('0x29')]['rawAttributes'],function(_0x3399af){return{'name':_0x3399af[_0x6562('0x2a')],'type':_0x3399af[_0x6562('0x2b')][_0x6562('0x2c')]};});_0xbecc40[_0x6562('0x2d')]=_[_0x6562('0x28')](_0x506cca,_0x6562('0x2e'));_0xbecc40[_0x6562('0x2f')]=_['keys'](_0x494e5a[_0x6562('0x2f')]);_0xbecc40[_0x6562('0x30')]=_[_0x6562('0x31')](_0xbecc40[_0x6562('0x2d')],_0xbecc40[_0x6562('0x2f')]);_0x1440d7['attributes']=_[_0x6562('0x31')](_0xbecc40[_0x6562('0x2d')],qs['fields'](_0x494e5a[_0x6562('0x2f')][_0x6562('0x32')]));_0x1440d7['attributes']=_0x1440d7['attributes'][_0x6562('0x33')]?_0x1440d7[_0x6562('0x34')]:_0xbecc40[_0x6562('0x2d')];if(!_0x494e5a[_0x6562('0x2f')][_0x6562('0x35')](_0x6562('0x36'))){_0x1440d7['limit']=qs[_0x6562('0x1d')](_0x494e5a[_0x6562('0x2f')][_0x6562('0x1d')]);_0x1440d7[_0x6562('0x1c')]=qs[_0x6562('0x1c')](_0x494e5a[_0x6562('0x2f')][_0x6562('0x1c')]);}_0x1440d7[_0x6562('0x37')]=qs[_0x6562('0x38')](_0x494e5a['query']['sort']);_0x1440d7['where']=qs['filters'](_[_0x6562('0x39')](_0x494e5a[_0x6562('0x2f')],_0xbecc40[_0x6562('0x30')]),_0x506cca);if(_0x494e5a[_0x6562('0x2f')]['filter']){_0x1440d7[_0x6562('0x3a')]=_[_0x6562('0x3b')](_0x1440d7['where'],{'$or':_[_0x6562('0x28')](_0x506cca,function(_0x5b03e2){if(_0x5b03e2[_0x6562('0x2b')]!==_0x6562('0x3c')){var _0x42228d={};_0x42228d[_0x5b03e2['name']]={'$like':'%'+_0x494e5a['query'][_0x6562('0x3d')]+'%'};return _0x42228d;}})});}_0x1440d7=_[_0x6562('0x3b')]({},_0x1440d7,_0x494e5a[_0x6562('0x3e')]);var _0x116a76={'where':_0x1440d7['where']};return db[_0x6562('0x29')][_0x6562('0x3f')](_0x116a76)[_0x6562('0x23')](function(_0x1d3a48){_0x2df271[_0x6562('0x3f')]=_0x1d3a48;if(_0x494e5a['query'][_0x6562('0x40')]){_0x1440d7[_0x6562('0x41')]=[{'all':!![]}];}return db[_0x6562('0x29')][_0x6562('0x42')](_0x1440d7);})[_0x6562('0x23')](function(_0x25f21c){_0x2df271[_0x6562('0x43')]=_0x25f21c;return _0x2df271;})[_0x6562('0x23')](respondWithFilteredResult(_0x433a33,_0x1440d7))[_0x6562('0x44')](handleError(_0x433a33,null));};exports['show']=function(_0x122ce8,_0x3f90cc){var _0x55f8f8={'raw':![],'where':{'id':_0x122ce8[_0x6562('0x45')]['id']}},_0x25438f={};_0x25438f[_0x6562('0x2d')]=_[_0x6562('0x46')](db[_0x6562('0x29')]['rawAttributes']);_0x25438f[_0x6562('0x2f')]=_[_0x6562('0x46')](_0x122ce8['query']);_0x25438f[_0x6562('0x30')]=_[_0x6562('0x31')](_0x25438f['model'],_0x25438f[_0x6562('0x2f')]);_0x55f8f8[_0x6562('0x34')]=_['intersection'](_0x25438f[_0x6562('0x2d')],qs[_0x6562('0x32')](_0x122ce8['query'][_0x6562('0x32')]));_0x55f8f8[_0x6562('0x34')]=_0x55f8f8[_0x6562('0x34')]['length']?_0x55f8f8[_0x6562('0x34')]:_0x25438f[_0x6562('0x2d')];if(_0x122ce8[_0x6562('0x2f')]['includeAll']){_0x55f8f8['include']=[{'all':!![]}];}_0x55f8f8=_[_0x6562('0x3b')]({},_0x55f8f8,_0x122ce8[_0x6562('0x3e')]);return db[_0x6562('0x29')][_0x6562('0x47')](_0x55f8f8)[_0x6562('0x23')](handleEntityNotFound(_0x3f90cc,null))[_0x6562('0x23')](respondWithResult(_0x3f90cc,null))[_0x6562('0x44')](handleError(_0x3f90cc,null));};exports[_0x6562('0x48')]=function(_0x48b9da,_0x5a80ca){return db[_0x6562('0x29')][_0x6562('0x48')](_0x48b9da[_0x6562('0x49')],{})['then'](respondWithResult(_0x5a80ca,0xc9))[_0x6562('0x44')](handleError(_0x5a80ca,null));};exports[_0x6562('0x4a')]=function(_0x2170f0,_0x1ac602){return db[_0x6562('0x29')][_0x6562('0x4a')](_0x2170f0[_0x6562('0x49')],{'raw':![],'individualHooks':!![]})[_0x6562('0x23')](respondWithResult(_0x1ac602,0xc9))['catch'](handleError(_0x1ac602,null));};exports['update']=function(_0x458df9,_0x17d2f2){if(_0x458df9[_0x6562('0x49')]['id']){delete _0x458df9[_0x6562('0x49')]['id'];}return db[_0x6562('0x29')][_0x6562('0x47')]({'where':{'id':_0x458df9[_0x6562('0x45')]['id']}})['then'](handleEntityNotFound(_0x17d2f2,null))[_0x6562('0x23')](saveUpdates(_0x458df9[_0x6562('0x49')],null))[_0x6562('0x23')](respondWithResult(_0x17d2f2,null))[_0x6562('0x44')](handleError(_0x17d2f2,null));};exports[_0x6562('0x24')]=function(_0x4a9dda,_0x2c16eb){return db[_0x6562('0x29')][_0x6562('0x47')]({'where':{'id':_0x4a9dda[_0x6562('0x45')]['id']}})['then'](handleEntityNotFound(_0x2c16eb,null))['then'](removeEntity(_0x2c16eb,null))[_0x6562('0x44')](handleError(_0x2c16eb,null));};exports[_0x6562('0x4b')]=function(_0x2d40cd,_0x2e46cf){return db[_0x6562('0x29')][_0x6562('0x24')]({'where':{'id':_0x2d40cd[_0x6562('0x2f')][_0x6562('0x4c')]||[]},'raw':![],'individualHooks':!![]})[_0x6562('0x23')](respondWithResult(_0x2e46cf,0xcc))[_0x6562('0x44')](handleError(_0x2e46cf,null));};exports[_0x6562('0x4d')]=function(_0x1875dc,_0xa38d94,_0x429e1e){return db[_0x6562('0x4e')][_0x6562('0x4f')]({'where':{'id':_0x1875dc[_0x6562('0x45')]['id']}})[_0x6562('0x23')](handleEntityNotFound(_0xa38d94,null))[_0x6562('0x23')](function(_0x3d7880){if(_0x3d7880){return db[_0x6562('0x50')][_0x6562('0x51')](function(_0x217865){return db['AnalyticFieldReport'][_0x6562('0x24')]({'where':{'CustomReportId':_0x1875dc[_0x6562('0x45')]['id']},'transaction':_0x217865})['then'](function(_0x1f50cb){var _0xde0100=_[_0x6562('0x28')](_0x1875dc[_0x6562('0x49')],function(_0xe7234){delete _0xe7234['id'];_0xe7234[_0x6562('0x52')]=_0x1875dc[_0x6562('0x45')]['id'];return _0xe7234;});return db[_0x6562('0x29')][_0x6562('0x4a')](_0xde0100,{'transaction':_0x217865});});})[_0x6562('0x23')](function(){return db[_0x6562('0x29')][_0x6562('0x42')]({'where':{'CustomReportId':_0x1875dc['params']['id']}});});}})['then'](respondWithResult(_0xa38d94,null))[_0x6562('0x44')](handleError(_0xa38d94,null));};