d41952c75af84d7379b79f0c291a895d656e0f93
[motion2.git] / server / api / integrationReport / integrationReport.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 _0x68ce=['../../config/environment','sendStatus','status','end','offset','limit','set','Content-Range','apply','reject','save','update','then','destroy','error','stack','name','send','index','map','IntegrationReport','rawAttributes','fieldName','type','key','model','keys','query','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','filters','pick','filter','where','merge','count','includeAll','include','findAll','rows','catch','show','params','options','find','create','body','describe','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','sox','ejs','squel','crypto','to-csv','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils'];(function(_0x1d211b,_0x475f3b){var _0x47c88b=function(_0x3126f5){while(--_0x3126f5){_0x1d211b['push'](_0x1d211b['shift']());}};_0x47c88b(++_0x475f3b);}(_0x68ce,0x117));var _0xe68c=function(_0x39d625,_0xcbd247){_0x39d625=_0x39d625-0x0;var _0x45bafa=_0x68ce[_0x39d625];return _0x45bafa;};'use strict';var pdf=require(_0xe68c('0x0'));var emlformat=require(_0xe68c('0x1'));var rimraf=require('rimraf');var zipdir=require(_0xe68c('0x2'));var jsonpatch=require(_0xe68c('0x3'));var rp=require(_0xe68c('0x4'));var moment=require(_0xe68c('0x5'));var BPromise=require(_0xe68c('0x6'));var Mustache=require('mustache');var util=require('util');var path=require('path');var sox=require(_0xe68c('0x7'));var csv=require('to-csv');var ejs=require(_0xe68c('0x8'));var fs=require('fs');var _=require('lodash');var squel=require(_0xe68c('0x9'));var crypto=require(_0xe68c('0xa'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0xe68c('0xb'));var querystring=require(_0xe68c('0xc'));var Papa=require(_0xe68c('0xd'));var Redis=require(_0xe68c('0xe'));var authService=require('../../components/auth/service');var qs=require(_0xe68c('0xf'));var as=require(_0xe68c('0x10'));var hardwareService=require(_0xe68c('0x11'));var logger=require(_0xe68c('0x12'))(_0xe68c('0x13'));var utils=require(_0xe68c('0x14'));var config=require(_0xe68c('0x15'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x41be8c,_0x269b67){_0x269b67=_0x269b67||0xcc;return function(_0x4048ec){if(_0x4048ec){return _0x41be8c[_0xe68c('0x16')](_0x269b67);}return _0x41be8c[_0xe68c('0x17')](_0x269b67)[_0xe68c('0x18')]();};}function respondWithResult(_0x2572b0,_0x412f58){_0x412f58=_0x412f58||0xc8;return function(_0x4794d5){if(_0x4794d5){return _0x2572b0['status'](_0x412f58)['json'](_0x4794d5);}};}function respondWithFilteredResult(_0x97cff3,_0xb093f8){return function(_0x2c41cd){if(_0x2c41cd){var _0xfd41ef=_0x2c41cd['count'],_0x3884b2=_0xb093f8[_0xe68c('0x19')],_0x329d70=_0xb093f8[_0xe68c('0x19')]+_0xb093f8[_0xe68c('0x1a')],_0x4441c7;if(_0x329d70>=_0xfd41ef){_0x329d70=_0xfd41ef;_0x4441c7=0xc8;}else{_0x4441c7=0xce;}_0x97cff3[_0xe68c('0x17')](_0x4441c7);return _0x97cff3[_0xe68c('0x1b')](_0xe68c('0x1c'),_0x3884b2+'-'+_0x329d70+'/'+_0xfd41ef)['json'](_0x2c41cd);}return null;};}function patchUpdates(_0x2144c4){return function(_0x40f557){try{jsonpatch[_0xe68c('0x1d')](_0x40f557,_0x2144c4,!![]);}catch(_0xe3edd7){return BPromise[_0xe68c('0x1e')](_0xe3edd7);}return _0x40f557[_0xe68c('0x1f')]();};}function saveUpdates(_0xe0e512,_0x24e603){return function(_0x440e56){if(_0x440e56){return _0x440e56[_0xe68c('0x20')](_0xe0e512)[_0xe68c('0x21')](function(_0x2f5afa){return _0x2f5afa;});}return null;};}function removeEntity(_0x13c4ea,_0x1d11e4){return function(_0x473839){if(_0x473839){return _0x473839[_0xe68c('0x22')]()[_0xe68c('0x21')](function(){_0x13c4ea[_0xe68c('0x17')](0xcc)['end']();});}};}function handleEntityNotFound(_0x14ba8e,_0x2c5745){return function(_0x2cdf73){if(!_0x2cdf73){_0x14ba8e[_0xe68c('0x16')](0x194);}return _0x2cdf73;};}function handleError(_0x4eb190,_0x320708){_0x320708=_0x320708||0x1f4;return function(_0x38b4d6){logger[_0xe68c('0x23')](_0x38b4d6[_0xe68c('0x24')]);if(_0x38b4d6[_0xe68c('0x25')]){delete _0x38b4d6[_0xe68c('0x25')];}_0x4eb190[_0xe68c('0x17')](_0x320708)[_0xe68c('0x26')](_0x38b4d6);};}exports[_0xe68c('0x27')]=function(_0x2436c6,_0xee92c7){var _0x37a70d={},_0x38ac47={},_0x32760a={'count':0x0,'rows':[]};var _0x8eae5c=_[_0xe68c('0x28')](db[_0xe68c('0x29')][_0xe68c('0x2a')],function(_0x2a6c1e){return{'name':_0x2a6c1e[_0xe68c('0x2b')],'type':_0x2a6c1e[_0xe68c('0x2c')][_0xe68c('0x2d')]};});_0x38ac47[_0xe68c('0x2e')]=_[_0xe68c('0x28')](_0x8eae5c,'name');_0x38ac47['query']=_[_0xe68c('0x2f')](_0x2436c6[_0xe68c('0x30')]);_0x38ac47['filters']=_[_0xe68c('0x31')](_0x38ac47[_0xe68c('0x2e')],_0x38ac47['query']);_0x37a70d[_0xe68c('0x32')]=_['intersection'](_0x38ac47[_0xe68c('0x2e')],qs[_0xe68c('0x33')](_0x2436c6['query'][_0xe68c('0x33')]));_0x37a70d[_0xe68c('0x32')]=_0x37a70d[_0xe68c('0x32')][_0xe68c('0x34')]?_0x37a70d[_0xe68c('0x32')]:_0x38ac47[_0xe68c('0x2e')];if(!_0x2436c6[_0xe68c('0x30')][_0xe68c('0x35')](_0xe68c('0x36'))){_0x37a70d[_0xe68c('0x1a')]=qs[_0xe68c('0x1a')](_0x2436c6[_0xe68c('0x30')][_0xe68c('0x1a')]);_0x37a70d[_0xe68c('0x19')]=qs[_0xe68c('0x19')](_0x2436c6[_0xe68c('0x30')][_0xe68c('0x19')]);}_0x37a70d[_0xe68c('0x37')]=qs[_0xe68c('0x38')](_0x2436c6[_0xe68c('0x30')][_0xe68c('0x38')]);_0x37a70d['where']=qs[_0xe68c('0x39')](_[_0xe68c('0x3a')](_0x2436c6['query'],_0x38ac47[_0xe68c('0x39')]),_0x8eae5c);if(_0x2436c6['query'][_0xe68c('0x3b')]){_0x37a70d[_0xe68c('0x3c')]=_[_0xe68c('0x3d')](_0x37a70d[_0xe68c('0x3c')],{'$or':_[_0xe68c('0x28')](_0x8eae5c,function(_0x1545e3){if(_0x1545e3[_0xe68c('0x2c')]!=='VIRTUAL'){var _0x12bbfe={};_0x12bbfe[_0x1545e3['name']]={'$like':'%'+_0x2436c6[_0xe68c('0x30')][_0xe68c('0x3b')]+'%'};return _0x12bbfe;}})});}_0x37a70d=_[_0xe68c('0x3d')]({},_0x37a70d,_0x2436c6['options']);var _0x45ec13={'where':_0x37a70d[_0xe68c('0x3c')]};return db['IntegrationReport'][_0xe68c('0x3e')](_0x45ec13)[_0xe68c('0x21')](function(_0x8e0a62){_0x32760a['count']=_0x8e0a62;if(_0x2436c6['query'][_0xe68c('0x3f')]){_0x37a70d[_0xe68c('0x40')]=[{'all':!![]}];}return db[_0xe68c('0x29')][_0xe68c('0x41')](_0x37a70d);})[_0xe68c('0x21')](function(_0x5b0ce1){_0x32760a[_0xe68c('0x42')]=_0x5b0ce1;return _0x32760a;})[_0xe68c('0x21')](respondWithFilteredResult(_0xee92c7,_0x37a70d))[_0xe68c('0x43')](handleError(_0xee92c7,null));};exports[_0xe68c('0x44')]=function(_0x37a414,_0x2ac2bb){var _0x34bbd4={'raw':![],'where':{'id':_0x37a414[_0xe68c('0x45')]['id']}},_0xb2550a={};_0xb2550a['model']=_[_0xe68c('0x2f')](db['IntegrationReport'][_0xe68c('0x2a')]);_0xb2550a[_0xe68c('0x30')]=_['keys'](_0x37a414[_0xe68c('0x30')]);_0xb2550a[_0xe68c('0x39')]=_[_0xe68c('0x31')](_0xb2550a[_0xe68c('0x2e')],_0xb2550a[_0xe68c('0x30')]);_0x34bbd4[_0xe68c('0x32')]=_[_0xe68c('0x31')](_0xb2550a[_0xe68c('0x2e')],qs[_0xe68c('0x33')](_0x37a414[_0xe68c('0x30')][_0xe68c('0x33')]));_0x34bbd4[_0xe68c('0x32')]=_0x34bbd4[_0xe68c('0x32')][_0xe68c('0x34')]?_0x34bbd4['attributes']:_0xb2550a[_0xe68c('0x2e')];if(_0x37a414[_0xe68c('0x30')][_0xe68c('0x3f')]){_0x34bbd4[_0xe68c('0x40')]=[{'all':!![]}];}_0x34bbd4=_[_0xe68c('0x3d')]({},_0x34bbd4,_0x37a414[_0xe68c('0x46')]);return db[_0xe68c('0x29')][_0xe68c('0x47')](_0x34bbd4)[_0xe68c('0x21')](handleEntityNotFound(_0x2ac2bb,null))[_0xe68c('0x21')](respondWithResult(_0x2ac2bb,null))[_0xe68c('0x43')](handleError(_0x2ac2bb,null));};exports[_0xe68c('0x48')]=function(_0x1e71ef,_0xc89724){return db[_0xe68c('0x29')][_0xe68c('0x48')](_0x1e71ef['body'],{})['then'](respondWithResult(_0xc89724,0xc9))[_0xe68c('0x43')](handleError(_0xc89724,null));};exports[_0xe68c('0x20')]=function(_0x27bd57,_0x557992){if(_0x27bd57[_0xe68c('0x49')]['id']){delete _0x27bd57['body']['id'];}return db['IntegrationReport'][_0xe68c('0x47')]({'where':{'id':_0x27bd57['params']['id']}})[_0xe68c('0x21')](handleEntityNotFound(_0x557992,null))[_0xe68c('0x21')](saveUpdates(_0x27bd57[_0xe68c('0x49')],null))[_0xe68c('0x21')](respondWithResult(_0x557992,null))['catch'](handleError(_0x557992,null));};exports[_0xe68c('0x22')]=function(_0x291405,_0x4d90a0){return db[_0xe68c('0x29')][_0xe68c('0x47')]({'where':{'id':_0x291405[_0xe68c('0x45')]['id']}})[_0xe68c('0x21')](handleEntityNotFound(_0x4d90a0,null))[_0xe68c('0x21')](removeEntity(_0x4d90a0,null))[_0xe68c('0x43')](handleError(_0x4d90a0,null));};exports['describe']=function(_0x34ba62,_0x569190){return db[_0xe68c('0x29')][_0xe68c('0x4a')]()[_0xe68c('0x21')](respondWithResult(_0x569190,null))[_0xe68c('0x43')](handleError(_0x569190,null));};