Built motion from commit 3d3e98f2.|2.6.29
[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 _0x76a9=['destroy','bulkDestroy','ids','addFields','sequelize','transaction','CustomReportId','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','sendStatus','end','status','offset','undefined','limit','count','set','Content-Range','json','apply','reject','save','then','error','name','send','index','map','AnalyticFieldReport','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','fields','attributes','length','hasOwnProperty','order','sort','where','pick','filter','merge','VIRTUAL','includeAll','include','findAll','rows','catch','show','params','options','find','body','bulkCreate'];(function(_0x4d41d8,_0x20e104){var _0x13ac12=function(_0x1d4f70){while(--_0x1d4f70){_0x4d41d8['push'](_0x4d41d8['shift']());}};_0x13ac12(++_0x20e104);}(_0x76a9,0x14f));var _0x976a=function(_0x14add3,_0x13ce8d){_0x14add3=_0x14add3-0x0;var _0x4a174f=_0x76a9[_0x14add3];return _0x4a174f;};'use strict';var emlformat=require(_0x976a('0x0'));var rimraf=require(_0x976a('0x1'));var zipdir=require(_0x976a('0x2'));var jsonpatch=require(_0x976a('0x3'));var rp=require(_0x976a('0x4'));var moment=require('moment');var BPromise=require(_0x976a('0x5'));var Mustache=require(_0x976a('0x6'));var util=require(_0x976a('0x7'));var path=require(_0x976a('0x8'));var sox=require('sox');var csv=require(_0x976a('0x9'));var ejs=require(_0x976a('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x976a('0xb'));var squel=require(_0x976a('0xc'));var crypto=require(_0x976a('0xd'));var jsforce=require(_0x976a('0xe'));var deskjs=require(_0x976a('0xf'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x976a('0x10'));var authService=require(_0x976a('0x11'));var qs=require(_0x976a('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x976a('0x13'));var logger=require(_0x976a('0x14'))(_0x976a('0x15'));var utils=require('../../config/utils');var config=require(_0x976a('0x16'));var licenseUtil=require(_0x976a('0x17'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x49c2da,_0x1db7d8){_0x1db7d8=_0x1db7d8||0xcc;return function(_0x48de17){if(_0x48de17){return _0x49c2da[_0x976a('0x18')](_0x1db7d8);}return _0x49c2da['status'](_0x1db7d8)[_0x976a('0x19')]();};}function respondWithResult(_0x19b414,_0x38a747){_0x38a747=_0x38a747||0xc8;return function(_0x3485f8){if(_0x3485f8){return _0x19b414[_0x976a('0x1a')](_0x38a747)['json'](_0x3485f8);}};}function respondWithFilteredResult(_0x56386b,_0x1937cc){return function(_0x3c13aa){if(_0x3c13aa){var _0xf47e1c=typeof _0x1937cc[_0x976a('0x1b')]===_0x976a('0x1c')&&typeof _0x1937cc[_0x976a('0x1d')]===_0x976a('0x1c');var _0x24e2e5=_0x3c13aa[_0x976a('0x1e')];var _0x447b7f=_0xf47e1c?0x0:_0x1937cc['offset'];var _0x41a307=_0xf47e1c?_0x3c13aa[_0x976a('0x1e')]:_0x1937cc[_0x976a('0x1b')]+_0x1937cc['limit'];var _0x203531;if(_0x41a307>=_0x24e2e5){_0x41a307=_0x24e2e5;_0x203531=0xc8;}else{_0x203531=0xce;}_0x56386b[_0x976a('0x1a')](_0x203531);return _0x56386b[_0x976a('0x1f')](_0x976a('0x20'),_0x447b7f+'-'+_0x41a307+'/'+_0x24e2e5)[_0x976a('0x21')](_0x3c13aa);}return null;};}function patchUpdates(_0x4a648e){return function(_0x5951cf){try{jsonpatch[_0x976a('0x22')](_0x5951cf,_0x4a648e,!![]);}catch(_0x2ea5cf){return BPromise[_0x976a('0x23')](_0x2ea5cf);}return _0x5951cf[_0x976a('0x24')]();};}function saveUpdates(_0x496755,_0x269064){return function(_0x3c9567){if(_0x3c9567){return _0x3c9567['update'](_0x496755)[_0x976a('0x25')](function(_0x47aa3c){return _0x47aa3c;});}return null;};}function removeEntity(_0x21da92,_0x7d5b9c){return function(_0x278663){if(_0x278663){return _0x278663['destroy']()[_0x976a('0x25')](function(){_0x21da92[_0x976a('0x1a')](0xcc)[_0x976a('0x19')]();});}};}function handleEntityNotFound(_0x532fb9,_0x11ef1e){return function(_0x1c1624){if(!_0x1c1624){_0x532fb9[_0x976a('0x18')](0x194);}return _0x1c1624;};}function handleError(_0x1f0545,_0x33cb40){_0x33cb40=_0x33cb40||0x1f4;return function(_0x3b0ed5){logger[_0x976a('0x26')](_0x3b0ed5['stack']);if(_0x3b0ed5[_0x976a('0x27')]){delete _0x3b0ed5[_0x976a('0x27')];}_0x1f0545['status'](_0x33cb40)[_0x976a('0x28')](_0x3b0ed5);};}exports[_0x976a('0x29')]=function(_0x179708,_0x4758ed){var _0x4babc4={},_0x5168cb={},_0x171dbd={'count':0x0,'rows':[]};var _0x5581b2=_[_0x976a('0x2a')](db[_0x976a('0x2b')][_0x976a('0x2c')],function(_0x24ad59){return{'name':_0x24ad59[_0x976a('0x2d')],'type':_0x24ad59[_0x976a('0x2e')][_0x976a('0x2f')]};});_0x5168cb[_0x976a('0x30')]=_[_0x976a('0x2a')](_0x5581b2,_0x976a('0x27'));_0x5168cb[_0x976a('0x31')]=_[_0x976a('0x32')](_0x179708['query']);_0x5168cb[_0x976a('0x33')]=_[_0x976a('0x34')](_0x5168cb[_0x976a('0x30')],_0x5168cb['query']);_0x4babc4['attributes']=_[_0x976a('0x34')](_0x5168cb[_0x976a('0x30')],qs[_0x976a('0x35')](_0x179708['query'][_0x976a('0x35')]));_0x4babc4[_0x976a('0x36')]=_0x4babc4[_0x976a('0x36')][_0x976a('0x37')]?_0x4babc4['attributes']:_0x5168cb[_0x976a('0x30')];if(!_0x179708['query'][_0x976a('0x38')]('nolimit')){_0x4babc4[_0x976a('0x1d')]=qs[_0x976a('0x1d')](_0x179708[_0x976a('0x31')][_0x976a('0x1d')]);_0x4babc4[_0x976a('0x1b')]=qs[_0x976a('0x1b')](_0x179708[_0x976a('0x31')]['offset']);}_0x4babc4[_0x976a('0x39')]=qs[_0x976a('0x3a')](_0x179708[_0x976a('0x31')][_0x976a('0x3a')]);_0x4babc4[_0x976a('0x3b')]=qs[_0x976a('0x33')](_[_0x976a('0x3c')](_0x179708[_0x976a('0x31')],_0x5168cb[_0x976a('0x33')]),_0x5581b2);if(_0x179708[_0x976a('0x31')][_0x976a('0x3d')]){_0x4babc4['where']=_[_0x976a('0x3e')](_0x4babc4[_0x976a('0x3b')],{'$or':_[_0x976a('0x2a')](_0x5581b2,function(_0x594ffa){if(_0x594ffa[_0x976a('0x2e')]!==_0x976a('0x3f')){var _0x51c7d1={};_0x51c7d1[_0x594ffa[_0x976a('0x27')]]={'$like':'%'+_0x179708['query'][_0x976a('0x3d')]+'%'};return _0x51c7d1;}})});}_0x4babc4=_[_0x976a('0x3e')]({},_0x4babc4,_0x179708['options']);var _0x293e2f={'where':_0x4babc4[_0x976a('0x3b')]};return db['AnalyticFieldReport'][_0x976a('0x1e')](_0x293e2f)[_0x976a('0x25')](function(_0x5c2a4d){_0x171dbd['count']=_0x5c2a4d;if(_0x179708['query'][_0x976a('0x40')]){_0x4babc4[_0x976a('0x41')]=[{'all':!![]}];}return db[_0x976a('0x2b')][_0x976a('0x42')](_0x4babc4);})[_0x976a('0x25')](function(_0x1fc1da){_0x171dbd[_0x976a('0x43')]=_0x1fc1da;return _0x171dbd;})[_0x976a('0x25')](respondWithFilteredResult(_0x4758ed,_0x4babc4))[_0x976a('0x44')](handleError(_0x4758ed,null));};exports[_0x976a('0x45')]=function(_0x50b8c8,_0x3c48d8){var _0x2fbe77={'raw':![],'where':{'id':_0x50b8c8[_0x976a('0x46')]['id']}},_0x55a025={};_0x55a025['model']=_[_0x976a('0x32')](db['AnalyticFieldReport'][_0x976a('0x2c')]);_0x55a025['query']=_[_0x976a('0x32')](_0x50b8c8[_0x976a('0x31')]);_0x55a025[_0x976a('0x33')]=_[_0x976a('0x34')](_0x55a025['model'],_0x55a025[_0x976a('0x31')]);_0x2fbe77[_0x976a('0x36')]=_[_0x976a('0x34')](_0x55a025[_0x976a('0x30')],qs['fields'](_0x50b8c8[_0x976a('0x31')]['fields']));_0x2fbe77[_0x976a('0x36')]=_0x2fbe77['attributes'][_0x976a('0x37')]?_0x2fbe77[_0x976a('0x36')]:_0x55a025[_0x976a('0x30')];if(_0x50b8c8[_0x976a('0x31')]['includeAll']){_0x2fbe77['include']=[{'all':!![]}];}_0x2fbe77=_['merge']({},_0x2fbe77,_0x50b8c8[_0x976a('0x47')]);return db[_0x976a('0x2b')][_0x976a('0x48')](_0x2fbe77)[_0x976a('0x25')](handleEntityNotFound(_0x3c48d8,null))[_0x976a('0x25')](respondWithResult(_0x3c48d8,null))[_0x976a('0x44')](handleError(_0x3c48d8,null));};exports['create']=function(_0x2a7a73,_0x44b942){return db['AnalyticFieldReport']['create'](_0x2a7a73[_0x976a('0x49')],{})[_0x976a('0x25')](respondWithResult(_0x44b942,0xc9))['catch'](handleError(_0x44b942,null));};exports[_0x976a('0x4a')]=function(_0x3180f7,_0x5bb6d1){return db[_0x976a('0x2b')]['bulkCreate'](_0x3180f7[_0x976a('0x49')],{'raw':![],'individualHooks':!![]})[_0x976a('0x25')](respondWithResult(_0x5bb6d1,0xc9))[_0x976a('0x44')](handleError(_0x5bb6d1,null));};exports['update']=function(_0x15c878,_0x4bef70){if(_0x15c878[_0x976a('0x49')]['id']){delete _0x15c878[_0x976a('0x49')]['id'];}return db['AnalyticFieldReport'][_0x976a('0x48')]({'where':{'id':_0x15c878[_0x976a('0x46')]['id']}})[_0x976a('0x25')](handleEntityNotFound(_0x4bef70,null))[_0x976a('0x25')](saveUpdates(_0x15c878[_0x976a('0x49')],null))[_0x976a('0x25')](respondWithResult(_0x4bef70,null))['catch'](handleError(_0x4bef70,null));};exports[_0x976a('0x4b')]=function(_0x4128f4,_0x54ba13){return db[_0x976a('0x2b')][_0x976a('0x48')]({'where':{'id':_0x4128f4['params']['id']}})[_0x976a('0x25')](handleEntityNotFound(_0x54ba13,null))[_0x976a('0x25')](removeEntity(_0x54ba13,null))[_0x976a('0x44')](handleError(_0x54ba13,null));};exports[_0x976a('0x4c')]=function(_0x1bd1f0,_0x51eb9f){return db[_0x976a('0x2b')][_0x976a('0x4b')]({'where':{'id':_0x1bd1f0[_0x976a('0x31')][_0x976a('0x4d')]||[]},'raw':![],'individualHooks':!![]})[_0x976a('0x25')](respondWithResult(_0x51eb9f,0xcc))['catch'](handleError(_0x51eb9f,null));};exports[_0x976a('0x4e')]=function(_0x1568f4,_0x5c4970,_0x3a4190){return db['AnalyticCustomReport']['findOne']({'where':{'id':_0x1568f4[_0x976a('0x46')]['id']}})[_0x976a('0x25')](handleEntityNotFound(_0x5c4970,null))[_0x976a('0x25')](function(_0x4b9ead){if(_0x4b9ead){return db[_0x976a('0x4f')][_0x976a('0x50')](function(_0x522abb){return db['AnalyticFieldReport'][_0x976a('0x4b')]({'where':{'CustomReportId':_0x1568f4['params']['id']},'transaction':_0x522abb})['then'](function(_0x1166f9){var _0x2f38c3=_[_0x976a('0x2a')](_0x1568f4[_0x976a('0x49')],function(_0x322509){delete _0x322509['id'];_0x322509[_0x976a('0x51')]=_0x1568f4[_0x976a('0x46')]['id'];return _0x322509;});return db['AnalyticFieldReport'][_0x976a('0x4a')](_0x2f38c3,{'transaction':_0x522abb});});})[_0x976a('0x25')](function(){return db['AnalyticFieldReport']['findAll']({'where':{'CustomReportId':_0x1568f4[_0x976a('0x46')]['id']}});});}})[_0x976a('0x25')](respondWithResult(_0x5c4970,null))[_0x976a('0x44')](handleError(_0x5c4970,null));};