Built motion from commit 9d7072cc.|2.5.39
[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 _0x9ff7=['offset','Content-Range','reject','save','destroy','then','error','stack','name','send','map','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','where','pick','filter','merge','options','IntegrationReport','includeAll','include','findAll','rows','catch','show','params','find','body','update','describe','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','util','path','sox','ejs','fs-extra','lodash','desk.js','to-csv','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','end','json','undefined','limit','count'];(function(_0x214927,_0x4fe5d9){var _0x26921d=function(_0x5caa4d){while(--_0x5caa4d){_0x214927['push'](_0x214927['shift']());}};_0x26921d(++_0x4fe5d9);}(_0x9ff7,0x10c));var _0x79ff=function(_0x1e4663,_0x1ff630){_0x1e4663=_0x1e4663-0x0;var _0x5b2722=_0x9ff7[_0x1e4663];return _0x5b2722;};'use strict';var emlformat=require(_0x79ff('0x0'));var rimraf=require(_0x79ff('0x1'));var zipdir=require(_0x79ff('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x79ff('0x3'));var moment=require(_0x79ff('0x4'));var BPromise=require(_0x79ff('0x5'));var Mustache=require('mustache');var util=require(_0x79ff('0x6'));var path=require(_0x79ff('0x7'));var sox=require(_0x79ff('0x8'));var csv=require('to-csv');var ejs=require(_0x79ff('0x9'));var fs=require('fs');var fs_extra=require(_0x79ff('0xa'));var _=require(_0x79ff('0xb'));var squel=require('squel');var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x79ff('0xc'));var toCsv=require(_0x79ff('0xd'));var querystring=require(_0x79ff('0xe'));var Papa=require(_0x79ff('0xf'));var Redis=require('ioredis');var authService=require(_0x79ff('0x10'));var qs=require(_0x79ff('0x11'));var as=require(_0x79ff('0x12'));var hardwareService=require(_0x79ff('0x13'));var logger=require(_0x79ff('0x14'))(_0x79ff('0x15'));var utils=require(_0x79ff('0x16'));var config=require('../../config/environment');var licenseUtil=require(_0x79ff('0x17'));var db=require(_0x79ff('0x18'))['db'];function respondWithStatusCode(_0x410e9c,_0x20575f){_0x20575f=_0x20575f||0xcc;return function(_0x553764){if(_0x553764){return _0x410e9c[_0x79ff('0x19')](_0x20575f);}return _0x410e9c[_0x79ff('0x1a')](_0x20575f)[_0x79ff('0x1b')]();};}function respondWithResult(_0x536504,_0x4e2243){_0x4e2243=_0x4e2243||0xc8;return function(_0x2a8af7){if(_0x2a8af7){return _0x536504[_0x79ff('0x1a')](_0x4e2243)[_0x79ff('0x1c')](_0x2a8af7);}};}function respondWithFilteredResult(_0x2f860d,_0x285592){return function(_0x3f6c1d){if(_0x3f6c1d){var _0x2aa9dc=typeof _0x285592['offset']===_0x79ff('0x1d')&&typeof _0x285592[_0x79ff('0x1e')]===_0x79ff('0x1d');var _0xad7ee2=_0x3f6c1d[_0x79ff('0x1f')];var _0x56487c=_0x2aa9dc?0x0:_0x285592[_0x79ff('0x20')];var _0x179ffb=_0x2aa9dc?_0x3f6c1d[_0x79ff('0x1f')]:_0x285592['offset']+_0x285592[_0x79ff('0x1e')];var _0x410f80;if(_0x179ffb>=_0xad7ee2){_0x179ffb=_0xad7ee2;_0x410f80=0xc8;}else{_0x410f80=0xce;}_0x2f860d[_0x79ff('0x1a')](_0x410f80);return _0x2f860d['set'](_0x79ff('0x21'),_0x56487c+'-'+_0x179ffb+'/'+_0xad7ee2)[_0x79ff('0x1c')](_0x3f6c1d);}return null;};}function patchUpdates(_0x4d50f8){return function(_0x22de4d){try{jsonpatch['apply'](_0x22de4d,_0x4d50f8,!![]);}catch(_0x4c40d9){return BPromise[_0x79ff('0x22')](_0x4c40d9);}return _0x22de4d[_0x79ff('0x23')]();};}function saveUpdates(_0x2825dd,_0xc8cb06){return function(_0x552fcd){if(_0x552fcd){return _0x552fcd['update'](_0x2825dd)['then'](function(_0x23d672){return _0x23d672;});}return null;};}function removeEntity(_0x53310f,_0x33f34a){return function(_0x11a6b4){if(_0x11a6b4){return _0x11a6b4[_0x79ff('0x24')]()[_0x79ff('0x25')](function(){_0x53310f[_0x79ff('0x1a')](0xcc)[_0x79ff('0x1b')]();});}};}function handleEntityNotFound(_0x6f0e7c,_0x4e66c9){return function(_0x50d039){if(!_0x50d039){_0x6f0e7c[_0x79ff('0x19')](0x194);}return _0x50d039;};}function handleError(_0x133305,_0x5e4805){_0x5e4805=_0x5e4805||0x1f4;return function(_0x16b5e8){logger[_0x79ff('0x26')](_0x16b5e8[_0x79ff('0x27')]);if(_0x16b5e8[_0x79ff('0x28')]){delete _0x16b5e8['name'];}_0x133305[_0x79ff('0x1a')](_0x5e4805)[_0x79ff('0x29')](_0x16b5e8);};}exports['index']=function(_0x4ae32c,_0x1f20b3){var _0x3d6f10={},_0x3b158c={},_0x4ff896={'count':0x0,'rows':[]};var _0x2546b9=_[_0x79ff('0x2a')](db['IntegrationReport'][_0x79ff('0x2b')],function(_0x25a4ce){return{'name':_0x25a4ce[_0x79ff('0x2c')],'type':_0x25a4ce[_0x79ff('0x2d')][_0x79ff('0x2e')]};});_0x3b158c[_0x79ff('0x2f')]=_['map'](_0x2546b9,_0x79ff('0x28'));_0x3b158c[_0x79ff('0x30')]=_[_0x79ff('0x31')](_0x4ae32c[_0x79ff('0x30')]);_0x3b158c[_0x79ff('0x32')]=_[_0x79ff('0x33')](_0x3b158c[_0x79ff('0x2f')],_0x3b158c['query']);_0x3d6f10[_0x79ff('0x34')]=_['intersection'](_0x3b158c[_0x79ff('0x2f')],qs[_0x79ff('0x35')](_0x4ae32c['query']['fields']));_0x3d6f10[_0x79ff('0x34')]=_0x3d6f10[_0x79ff('0x34')][_0x79ff('0x36')]?_0x3d6f10[_0x79ff('0x34')]:_0x3b158c[_0x79ff('0x2f')];if(!_0x4ae32c[_0x79ff('0x30')][_0x79ff('0x37')]('nolimit')){_0x3d6f10[_0x79ff('0x1e')]=qs[_0x79ff('0x1e')](_0x4ae32c[_0x79ff('0x30')][_0x79ff('0x1e')]);_0x3d6f10['offset']=qs[_0x79ff('0x20')](_0x4ae32c['query'][_0x79ff('0x20')]);}_0x3d6f10[_0x79ff('0x38')]=qs['sort'](_0x4ae32c[_0x79ff('0x30')][_0x79ff('0x39')]);_0x3d6f10[_0x79ff('0x3a')]=qs[_0x79ff('0x32')](_[_0x79ff('0x3b')](_0x4ae32c[_0x79ff('0x30')],_0x3b158c['filters']),_0x2546b9);if(_0x4ae32c['query'][_0x79ff('0x3c')]){_0x3d6f10[_0x79ff('0x3a')]=_[_0x79ff('0x3d')](_0x3d6f10[_0x79ff('0x3a')],{'$or':_['map'](_0x2546b9,function(_0x8b78ef){if(_0x8b78ef[_0x79ff('0x2d')]!=='VIRTUAL'){var _0x5866e6={};_0x5866e6[_0x8b78ef[_0x79ff('0x28')]]={'$like':'%'+_0x4ae32c[_0x79ff('0x30')]['filter']+'%'};return _0x5866e6;}})});}_0x3d6f10=_[_0x79ff('0x3d')]({},_0x3d6f10,_0x4ae32c[_0x79ff('0x3e')]);var _0x6124a9={'where':_0x3d6f10[_0x79ff('0x3a')]};return db[_0x79ff('0x3f')][_0x79ff('0x1f')](_0x6124a9)[_0x79ff('0x25')](function(_0x5e01db){_0x4ff896[_0x79ff('0x1f')]=_0x5e01db;if(_0x4ae32c['query'][_0x79ff('0x40')]){_0x3d6f10[_0x79ff('0x41')]=[{'all':!![]}];}return db[_0x79ff('0x3f')][_0x79ff('0x42')](_0x3d6f10);})['then'](function(_0x574138){_0x4ff896[_0x79ff('0x43')]=_0x574138;return _0x4ff896;})['then'](respondWithFilteredResult(_0x1f20b3,_0x3d6f10))[_0x79ff('0x44')](handleError(_0x1f20b3,null));};exports[_0x79ff('0x45')]=function(_0x7a3fbc,_0x10f9fd){var _0x1eb1a7={'raw':![],'where':{'id':_0x7a3fbc[_0x79ff('0x46')]['id']}},_0xab1899={};_0xab1899[_0x79ff('0x2f')]=_[_0x79ff('0x31')](db[_0x79ff('0x3f')][_0x79ff('0x2b')]);_0xab1899[_0x79ff('0x30')]=_[_0x79ff('0x31')](_0x7a3fbc[_0x79ff('0x30')]);_0xab1899['filters']=_['intersection'](_0xab1899[_0x79ff('0x2f')],_0xab1899[_0x79ff('0x30')]);_0x1eb1a7[_0x79ff('0x34')]=_[_0x79ff('0x33')](_0xab1899[_0x79ff('0x2f')],qs[_0x79ff('0x35')](_0x7a3fbc['query'][_0x79ff('0x35')]));_0x1eb1a7['attributes']=_0x1eb1a7[_0x79ff('0x34')][_0x79ff('0x36')]?_0x1eb1a7[_0x79ff('0x34')]:_0xab1899[_0x79ff('0x2f')];if(_0x7a3fbc['query'][_0x79ff('0x40')]){_0x1eb1a7[_0x79ff('0x41')]=[{'all':!![]}];}_0x1eb1a7=_['merge']({},_0x1eb1a7,_0x7a3fbc[_0x79ff('0x3e')]);return db['IntegrationReport'][_0x79ff('0x47')](_0x1eb1a7)['then'](handleEntityNotFound(_0x10f9fd,null))[_0x79ff('0x25')](respondWithResult(_0x10f9fd,null))[_0x79ff('0x44')](handleError(_0x10f9fd,null));};exports['create']=function(_0x197197,_0x38cd45){return db[_0x79ff('0x3f')]['create'](_0x197197[_0x79ff('0x48')],{})[_0x79ff('0x25')](respondWithResult(_0x38cd45,0xc9))['catch'](handleError(_0x38cd45,null));};exports[_0x79ff('0x49')]=function(_0xe6ce35,_0x290e84){if(_0xe6ce35[_0x79ff('0x48')]['id']){delete _0xe6ce35['body']['id'];}return db[_0x79ff('0x3f')][_0x79ff('0x47')]({'where':{'id':_0xe6ce35[_0x79ff('0x46')]['id']}})[_0x79ff('0x25')](handleEntityNotFound(_0x290e84,null))['then'](saveUpdates(_0xe6ce35[_0x79ff('0x48')],null))['then'](respondWithResult(_0x290e84,null))[_0x79ff('0x44')](handleError(_0x290e84,null));};exports[_0x79ff('0x24')]=function(_0x2524d4,_0x19fbc1){return db[_0x79ff('0x3f')][_0x79ff('0x47')]({'where':{'id':_0x2524d4[_0x79ff('0x46')]['id']}})[_0x79ff('0x25')](handleEntityNotFound(_0x19fbc1,null))[_0x79ff('0x25')](removeEntity(_0x19fbc1,null))[_0x79ff('0x44')](handleError(_0x19fbc1,null));};exports['describe']=function(_0x2f9845,_0x5addaa){return db[_0x79ff('0x3f')][_0x79ff('0x4a')]()[_0x79ff('0x25')](respondWithResult(_0x5addaa,null))[_0x79ff('0x44')](handleError(_0x5addaa,null));};