Built motion from commit f623a78c.|2.6.31
[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 _0x1ee3=['count','Content-Range','apply','reject','then','destroy','error','stack','name','send','index','IntegrationReport','rawAttributes','fieldName','model','map','query','keys','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','merge','type','VIRTUAL','options','include','findAll','rows','show','includeAll','find','catch','create','body','params','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','path','sox','fs-extra','lodash','crypto','desk.js','to-csv','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','limit','undefined'];(function(_0x5a2d95,_0xb362e5){var _0x2c3986=function(_0x5cce7c){while(--_0x5cce7c){_0x5a2d95['push'](_0x5a2d95['shift']());}};_0x2c3986(++_0xb362e5);}(_0x1ee3,0x7b));var _0x31ee=function(_0x25bc11,_0x393bbc){_0x25bc11=_0x25bc11-0x0;var _0x42dadc=_0x1ee3[_0x25bc11];return _0x42dadc;};'use strict';var emlformat=require(_0x31ee('0x0'));var rimraf=require(_0x31ee('0x1'));var zipdir=require(_0x31ee('0x2'));var jsonpatch=require(_0x31ee('0x3'));var rp=require(_0x31ee('0x4'));var moment=require(_0x31ee('0x5'));var BPromise=require(_0x31ee('0x6'));var Mustache=require(_0x31ee('0x7'));var util=require('util');var path=require(_0x31ee('0x8'));var sox=require(_0x31ee('0x9'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x31ee('0xa'));var _=require(_0x31ee('0xb'));var squel=require('squel');var crypto=require(_0x31ee('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x31ee('0xd'));var toCsv=require(_0x31ee('0xe'));var querystring=require(_0x31ee('0xf'));var Papa=require('papaparse');var Redis=require(_0x31ee('0x10'));var authService=require(_0x31ee('0x11'));var qs=require(_0x31ee('0x12'));var as=require(_0x31ee('0x13'));var hardwareService=require(_0x31ee('0x14'));var logger=require(_0x31ee('0x15'))('api');var utils=require(_0x31ee('0x16'));var config=require(_0x31ee('0x17'));var licenseUtil=require(_0x31ee('0x18'));var db=require(_0x31ee('0x19'))['db'];function respondWithStatusCode(_0x1a1ab1,_0x457e2c){_0x457e2c=_0x457e2c||0xcc;return function(_0x2376df){if(_0x2376df){return _0x1a1ab1[_0x31ee('0x1a')](_0x457e2c);}return _0x1a1ab1[_0x31ee('0x1b')](_0x457e2c)[_0x31ee('0x1c')]();};}function respondWithResult(_0x89a4a6,_0x120da6){_0x120da6=_0x120da6||0xc8;return function(_0x3078a5){if(_0x3078a5){return _0x89a4a6[_0x31ee('0x1b')](_0x120da6)[_0x31ee('0x1d')](_0x3078a5);}};}function respondWithFilteredResult(_0x3d1e8d,_0x187011){return function(_0x272894){if(_0x272894){var _0x2b0aed=typeof _0x187011[_0x31ee('0x1e')]==='undefined'&&typeof _0x187011[_0x31ee('0x1f')]===_0x31ee('0x20');var _0x424337=_0x272894['count'];var _0x3f290b=_0x2b0aed?0x0:_0x187011[_0x31ee('0x1e')];var _0x592809=_0x2b0aed?_0x272894[_0x31ee('0x21')]:_0x187011[_0x31ee('0x1e')]+_0x187011[_0x31ee('0x1f')];var _0x345d27;if(_0x592809>=_0x424337){_0x592809=_0x424337;_0x345d27=0xc8;}else{_0x345d27=0xce;}_0x3d1e8d[_0x31ee('0x1b')](_0x345d27);return _0x3d1e8d['set'](_0x31ee('0x22'),_0x3f290b+'-'+_0x592809+'/'+_0x424337)[_0x31ee('0x1d')](_0x272894);}return null;};}function patchUpdates(_0xc169d6){return function(_0x41cad5){try{jsonpatch[_0x31ee('0x23')](_0x41cad5,_0xc169d6,!![]);}catch(_0xa9d3e2){return BPromise[_0x31ee('0x24')](_0xa9d3e2);}return _0x41cad5['save']();};}function saveUpdates(_0x5bdb06,_0x1d4512){return function(_0x2cbc6c){if(_0x2cbc6c){return _0x2cbc6c['update'](_0x5bdb06)[_0x31ee('0x25')](function(_0x10a1d0){return _0x10a1d0;});}return null;};}function removeEntity(_0x42012f,_0x13d3ba){return function(_0x445e06){if(_0x445e06){return _0x445e06[_0x31ee('0x26')]()[_0x31ee('0x25')](function(){_0x42012f['status'](0xcc)[_0x31ee('0x1c')]();});}};}function handleEntityNotFound(_0x564861,_0x9e699f){return function(_0x207c58){if(!_0x207c58){_0x564861[_0x31ee('0x1a')](0x194);}return _0x207c58;};}function handleError(_0xa48d6,_0x4ffed7){_0x4ffed7=_0x4ffed7||0x1f4;return function(_0x1ef888){logger[_0x31ee('0x27')](_0x1ef888[_0x31ee('0x28')]);if(_0x1ef888[_0x31ee('0x29')]){delete _0x1ef888['name'];}_0xa48d6[_0x31ee('0x1b')](_0x4ffed7)[_0x31ee('0x2a')](_0x1ef888);};}exports[_0x31ee('0x2b')]=function(_0x2cd4a3,_0x105bd4){var _0x420d08={},_0x5434e2={},_0x4596b5={'count':0x0,'rows':[]};var _0x3bb113=_['map'](db[_0x31ee('0x2c')][_0x31ee('0x2d')],function(_0x52659e){return{'name':_0x52659e[_0x31ee('0x2e')],'type':_0x52659e['type']['key']};});_0x5434e2[_0x31ee('0x2f')]=_[_0x31ee('0x30')](_0x3bb113,_0x31ee('0x29'));_0x5434e2[_0x31ee('0x31')]=_[_0x31ee('0x32')](_0x2cd4a3[_0x31ee('0x31')]);_0x5434e2['filters']=_[_0x31ee('0x33')](_0x5434e2[_0x31ee('0x2f')],_0x5434e2[_0x31ee('0x31')]);_0x420d08['attributes']=_[_0x31ee('0x33')](_0x5434e2[_0x31ee('0x2f')],qs[_0x31ee('0x34')](_0x2cd4a3[_0x31ee('0x31')]['fields']));_0x420d08[_0x31ee('0x35')]=_0x420d08[_0x31ee('0x35')][_0x31ee('0x36')]?_0x420d08[_0x31ee('0x35')]:_0x5434e2[_0x31ee('0x2f')];if(!_0x2cd4a3[_0x31ee('0x31')][_0x31ee('0x37')](_0x31ee('0x38'))){_0x420d08[_0x31ee('0x1f')]=qs[_0x31ee('0x1f')](_0x2cd4a3['query']['limit']);_0x420d08[_0x31ee('0x1e')]=qs[_0x31ee('0x1e')](_0x2cd4a3[_0x31ee('0x31')][_0x31ee('0x1e')]);}_0x420d08[_0x31ee('0x39')]=qs[_0x31ee('0x3a')](_0x2cd4a3['query']['sort']);_0x420d08[_0x31ee('0x3b')]=qs[_0x31ee('0x3c')](_[_0x31ee('0x3d')](_0x2cd4a3['query'],_0x5434e2[_0x31ee('0x3c')]),_0x3bb113);if(_0x2cd4a3[_0x31ee('0x31')][_0x31ee('0x3e')]){_0x420d08[_0x31ee('0x3b')]=_[_0x31ee('0x3f')](_0x420d08[_0x31ee('0x3b')],{'$or':_[_0x31ee('0x30')](_0x3bb113,function(_0x58efc8){if(_0x58efc8[_0x31ee('0x40')]!==_0x31ee('0x41')){var _0x3b726e={};_0x3b726e[_0x58efc8[_0x31ee('0x29')]]={'$like':'%'+_0x2cd4a3[_0x31ee('0x31')][_0x31ee('0x3e')]+'%'};return _0x3b726e;}})});}_0x420d08=_[_0x31ee('0x3f')]({},_0x420d08,_0x2cd4a3[_0x31ee('0x42')]);var _0x12eeac={'where':_0x420d08[_0x31ee('0x3b')]};return db['IntegrationReport'][_0x31ee('0x21')](_0x12eeac)[_0x31ee('0x25')](function(_0x1b26a0){_0x4596b5[_0x31ee('0x21')]=_0x1b26a0;if(_0x2cd4a3[_0x31ee('0x31')]['includeAll']){_0x420d08[_0x31ee('0x43')]=[{'all':!![]}];}return db['IntegrationReport'][_0x31ee('0x44')](_0x420d08);})[_0x31ee('0x25')](function(_0x1d9b5e){_0x4596b5[_0x31ee('0x45')]=_0x1d9b5e;return _0x4596b5;})[_0x31ee('0x25')](respondWithFilteredResult(_0x105bd4,_0x420d08))['catch'](handleError(_0x105bd4,null));};exports[_0x31ee('0x46')]=function(_0x40615a,_0x325ff4){var _0x304b1e={'raw':![],'where':{'id':_0x40615a['params']['id']}},_0x272573={};_0x272573[_0x31ee('0x2f')]=_[_0x31ee('0x32')](db[_0x31ee('0x2c')]['rawAttributes']);_0x272573[_0x31ee('0x31')]=_['keys'](_0x40615a[_0x31ee('0x31')]);_0x272573[_0x31ee('0x3c')]=_[_0x31ee('0x33')](_0x272573['model'],_0x272573['query']);_0x304b1e[_0x31ee('0x35')]=_[_0x31ee('0x33')](_0x272573[_0x31ee('0x2f')],qs[_0x31ee('0x34')](_0x40615a[_0x31ee('0x31')][_0x31ee('0x34')]));_0x304b1e[_0x31ee('0x35')]=_0x304b1e['attributes'][_0x31ee('0x36')]?_0x304b1e[_0x31ee('0x35')]:_0x272573['model'];if(_0x40615a[_0x31ee('0x31')][_0x31ee('0x47')]){_0x304b1e[_0x31ee('0x43')]=[{'all':!![]}];}_0x304b1e=_[_0x31ee('0x3f')]({},_0x304b1e,_0x40615a['options']);return db[_0x31ee('0x2c')][_0x31ee('0x48')](_0x304b1e)['then'](handleEntityNotFound(_0x325ff4,null))[_0x31ee('0x25')](respondWithResult(_0x325ff4,null))[_0x31ee('0x49')](handleError(_0x325ff4,null));};exports[_0x31ee('0x4a')]=function(_0x1763a4,_0x4ab18f){return db['IntegrationReport']['create'](_0x1763a4[_0x31ee('0x4b')],{})[_0x31ee('0x25')](respondWithResult(_0x4ab18f,0xc9))['catch'](handleError(_0x4ab18f,null));};exports['update']=function(_0x18fcb1,_0x4ca6df){if(_0x18fcb1[_0x31ee('0x4b')]['id']){delete _0x18fcb1[_0x31ee('0x4b')]['id'];}return db[_0x31ee('0x2c')][_0x31ee('0x48')]({'where':{'id':_0x18fcb1[_0x31ee('0x4c')]['id']}})[_0x31ee('0x25')](handleEntityNotFound(_0x4ca6df,null))['then'](saveUpdates(_0x18fcb1['body'],null))[_0x31ee('0x25')](respondWithResult(_0x4ca6df,null))[_0x31ee('0x49')](handleError(_0x4ca6df,null));};exports['destroy']=function(_0x274da7,_0x461607){return db[_0x31ee('0x2c')][_0x31ee('0x48')]({'where':{'id':_0x274da7['params']['id']}})[_0x31ee('0x25')](handleEntityNotFound(_0x461607,null))['then'](removeEntity(_0x461607,null))[_0x31ee('0x49')](handleError(_0x461607,null));};exports['describe']=function(_0x55e4af,_0x55ab0d){return db['IntegrationReport'][_0x31ee('0x4d')]()['then'](respondWithResult(_0x55ab0d,null))[_0x31ee('0x49')](handleError(_0x55ab0d,null));};