Built motion from commit (unavailable).|2.5.23
[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 _0x9615=['set','Content-Range','reject','save','update','then','destroy','error','name','send','map','IntegrationReport','rawAttributes','fieldName','type','model','query','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','merge','VIRTUAL','filter','options','includeAll','include','findAll','rows','catch','show','keys','find','create','body','params','describe','html-pdf','eml-format','rimraf','zip-dir','request-promise','moment','mustache','util','sox','to-csv','ejs','crypto','jsforce','desk.js','querystring','papaparse','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','count','offset','limit'];(function(_0x4fbc56,_0x16fde1){var _0x37886d=function(_0x5e992e){while(--_0x5e992e){_0x4fbc56['push'](_0x4fbc56['shift']());}};_0x37886d(++_0x16fde1);}(_0x9615,0x154));var _0x5961=function(_0x44a790,_0x568a4f){_0x44a790=_0x44a790-0x0;var _0x1cf2b0=_0x9615[_0x44a790];return _0x1cf2b0;};'use strict';var pdf=require(_0x5961('0x0'));var emlformat=require(_0x5961('0x1'));var rimraf=require(_0x5961('0x2'));var zipdir=require(_0x5961('0x3'));var jsonpatch=require('fast-json-patch');var rp=require(_0x5961('0x4'));var moment=require(_0x5961('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x5961('0x6'));var util=require(_0x5961('0x7'));var path=require('path');var sox=require(_0x5961('0x8'));var csv=require(_0x5961('0x9'));var ejs=require(_0x5961('0xa'));var fs=require('fs');var _=require('lodash');var squel=require('squel');var crypto=require(_0x5961('0xb'));var jsforce=require(_0x5961('0xc'));var deskjs=require(_0x5961('0xd'));var toCsv=require(_0x5961('0x9'));var querystring=require(_0x5961('0xe'));var Papa=require(_0x5961('0xf'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0x5961('0x10'));var hardwareService=require(_0x5961('0x11'));var logger=require(_0x5961('0x12'))('api');var utils=require(_0x5961('0x13'));var config=require(_0x5961('0x14'));var licenseUtil=require(_0x5961('0x15'));var db=require(_0x5961('0x16'))['db'];function respondWithStatusCode(_0x4b69bf,_0x3c5822){_0x3c5822=_0x3c5822||0xcc;return function(_0x3aead3){if(_0x3aead3){return _0x4b69bf[_0x5961('0x17')](_0x3c5822);}return _0x4b69bf[_0x5961('0x18')](_0x3c5822)[_0x5961('0x19')]();};}function respondWithResult(_0x3ad5e2,_0x3e4f64){_0x3e4f64=_0x3e4f64||0xc8;return function(_0x4af3b2){if(_0x4af3b2){return _0x3ad5e2[_0x5961('0x18')](_0x3e4f64)[_0x5961('0x1a')](_0x4af3b2);}};}function respondWithFilteredResult(_0x2f3df3,_0x4fac6c){return function(_0x5852ba){if(_0x5852ba){var _0x8e58e=_0x5852ba[_0x5961('0x1b')],_0x141fdb=_0x4fac6c[_0x5961('0x1c')],_0xf5d1e2=_0x4fac6c[_0x5961('0x1c')]+_0x4fac6c[_0x5961('0x1d')],_0xea86af;if(_0xf5d1e2>=_0x8e58e){_0xf5d1e2=_0x8e58e;_0xea86af=0xc8;}else{_0xea86af=0xce;}_0x2f3df3[_0x5961('0x18')](_0xea86af);return _0x2f3df3[_0x5961('0x1e')](_0x5961('0x1f'),_0x141fdb+'-'+_0xf5d1e2+'/'+_0x8e58e)[_0x5961('0x1a')](_0x5852ba);}return null;};}function patchUpdates(_0x23901b){return function(_0x41c0bf){try{jsonpatch['apply'](_0x41c0bf,_0x23901b,!![]);}catch(_0x106465){return BPromise[_0x5961('0x20')](_0x106465);}return _0x41c0bf[_0x5961('0x21')]();};}function saveUpdates(_0x2705e2,_0x1f3082){return function(_0x4ca8d9){if(_0x4ca8d9){return _0x4ca8d9[_0x5961('0x22')](_0x2705e2)[_0x5961('0x23')](function(_0x118dcd){return _0x118dcd;});}return null;};}function removeEntity(_0x25073e,_0x11122a){return function(_0x58f774){if(_0x58f774){return _0x58f774[_0x5961('0x24')]()[_0x5961('0x23')](function(){_0x25073e[_0x5961('0x18')](0xcc)[_0x5961('0x19')]();});}};}function handleEntityNotFound(_0xe1110a,_0x311d03){return function(_0x2baff5){if(!_0x2baff5){_0xe1110a[_0x5961('0x17')](0x194);}return _0x2baff5;};}function handleError(_0x3eb724,_0x59ccc6){_0x59ccc6=_0x59ccc6||0x1f4;return function(_0x8b5073){logger[_0x5961('0x25')](_0x8b5073['stack']);if(_0x8b5073[_0x5961('0x26')]){delete _0x8b5073[_0x5961('0x26')];}_0x3eb724[_0x5961('0x18')](_0x59ccc6)[_0x5961('0x27')](_0x8b5073);};}exports['index']=function(_0xa6ffb3,_0x318e6e){var _0x115b60={},_0x346a31={},_0x1ddf4a={'count':0x0,'rows':[]};var _0x51f268=_[_0x5961('0x28')](db[_0x5961('0x29')][_0x5961('0x2a')],function(_0x4a65b8){return{'name':_0x4a65b8[_0x5961('0x2b')],'type':_0x4a65b8[_0x5961('0x2c')]['key']};});_0x346a31[_0x5961('0x2d')]=_[_0x5961('0x28')](_0x51f268,_0x5961('0x26'));_0x346a31[_0x5961('0x2e')]=_['keys'](_0xa6ffb3[_0x5961('0x2e')]);_0x346a31['filters']=_[_0x5961('0x2f')](_0x346a31[_0x5961('0x2d')],_0x346a31['query']);_0x115b60['attributes']=_[_0x5961('0x2f')](_0x346a31[_0x5961('0x2d')],qs[_0x5961('0x30')](_0xa6ffb3[_0x5961('0x2e')][_0x5961('0x30')]));_0x115b60['attributes']=_0x115b60[_0x5961('0x31')][_0x5961('0x32')]?_0x115b60[_0x5961('0x31')]:_0x346a31[_0x5961('0x2d')];if(!_0xa6ffb3['query'][_0x5961('0x33')](_0x5961('0x34'))){_0x115b60[_0x5961('0x1d')]=qs[_0x5961('0x1d')](_0xa6ffb3['query'][_0x5961('0x1d')]);_0x115b60[_0x5961('0x1c')]=qs['offset'](_0xa6ffb3[_0x5961('0x2e')][_0x5961('0x1c')]);}_0x115b60[_0x5961('0x35')]=qs[_0x5961('0x36')](_0xa6ffb3[_0x5961('0x2e')]['sort']);_0x115b60[_0x5961('0x37')]=qs[_0x5961('0x38')](_[_0x5961('0x39')](_0xa6ffb3[_0x5961('0x2e')],_0x346a31[_0x5961('0x38')]),_0x51f268);if(_0xa6ffb3['query']['filter']){_0x115b60[_0x5961('0x37')]=_[_0x5961('0x3a')](_0x115b60[_0x5961('0x37')],{'$or':_['map'](_0x51f268,function(_0x5a6ff4){if(_0x5a6ff4[_0x5961('0x2c')]!==_0x5961('0x3b')){var _0x1f4a7f={};_0x1f4a7f[_0x5a6ff4[_0x5961('0x26')]]={'$like':'%'+_0xa6ffb3[_0x5961('0x2e')][_0x5961('0x3c')]+'%'};return _0x1f4a7f;}})});}_0x115b60=_['merge']({},_0x115b60,_0xa6ffb3[_0x5961('0x3d')]);var _0x5ccd5c={'where':_0x115b60[_0x5961('0x37')]};return db[_0x5961('0x29')][_0x5961('0x1b')](_0x5ccd5c)['then'](function(_0x4643f7){_0x1ddf4a[_0x5961('0x1b')]=_0x4643f7;if(_0xa6ffb3[_0x5961('0x2e')][_0x5961('0x3e')]){_0x115b60[_0x5961('0x3f')]=[{'all':!![]}];}return db[_0x5961('0x29')][_0x5961('0x40')](_0x115b60);})[_0x5961('0x23')](function(_0x4680d1){_0x1ddf4a[_0x5961('0x41')]=_0x4680d1;return _0x1ddf4a;})[_0x5961('0x23')](respondWithFilteredResult(_0x318e6e,_0x115b60))[_0x5961('0x42')](handleError(_0x318e6e,null));};exports[_0x5961('0x43')]=function(_0xd22af5,_0x3415e5){var _0x232ef1={'raw':![],'where':{'id':_0xd22af5['params']['id']}},_0x468102={};_0x468102[_0x5961('0x2d')]=_[_0x5961('0x44')](db[_0x5961('0x29')]['rawAttributes']);_0x468102['query']=_[_0x5961('0x44')](_0xd22af5[_0x5961('0x2e')]);_0x468102[_0x5961('0x38')]=_[_0x5961('0x2f')](_0x468102[_0x5961('0x2d')],_0x468102[_0x5961('0x2e')]);_0x232ef1[_0x5961('0x31')]=_[_0x5961('0x2f')](_0x468102[_0x5961('0x2d')],qs['fields'](_0xd22af5[_0x5961('0x2e')][_0x5961('0x30')]));_0x232ef1[_0x5961('0x31')]=_0x232ef1[_0x5961('0x31')]['length']?_0x232ef1[_0x5961('0x31')]:_0x468102[_0x5961('0x2d')];if(_0xd22af5[_0x5961('0x2e')][_0x5961('0x3e')]){_0x232ef1[_0x5961('0x3f')]=[{'all':!![]}];}_0x232ef1=_[_0x5961('0x3a')]({},_0x232ef1,_0xd22af5[_0x5961('0x3d')]);return db[_0x5961('0x29')][_0x5961('0x45')](_0x232ef1)['then'](handleEntityNotFound(_0x3415e5,null))['then'](respondWithResult(_0x3415e5,null))[_0x5961('0x42')](handleError(_0x3415e5,null));};exports['create']=function(_0x3f7a24,_0x3ca728){return db[_0x5961('0x29')][_0x5961('0x46')](_0x3f7a24[_0x5961('0x47')],{})['then'](respondWithResult(_0x3ca728,0xc9))[_0x5961('0x42')](handleError(_0x3ca728,null));};exports[_0x5961('0x22')]=function(_0x426c95,_0x14c1f8){if(_0x426c95['body']['id']){delete _0x426c95[_0x5961('0x47')]['id'];}return db['IntegrationReport'][_0x5961('0x45')]({'where':{'id':_0x426c95[_0x5961('0x48')]['id']}})[_0x5961('0x23')](handleEntityNotFound(_0x14c1f8,null))[_0x5961('0x23')](saveUpdates(_0x426c95[_0x5961('0x47')],null))['then'](respondWithResult(_0x14c1f8,null))[_0x5961('0x42')](handleError(_0x14c1f8,null));};exports[_0x5961('0x24')]=function(_0x1074c1,_0x46ec15){return db[_0x5961('0x29')][_0x5961('0x45')]({'where':{'id':_0x1074c1[_0x5961('0x48')]['id']}})['then'](handleEntityNotFound(_0x46ec15,null))['then'](removeEntity(_0x46ec15,null))['catch'](handleError(_0x46ec15,null));};exports[_0x5961('0x49')]=function(_0x415141,_0x1f2092){return db['IntegrationReport'][_0x5961('0x49')]()[_0x5961('0x23')](respondWithResult(_0x1f2092,null))[_0x5961('0x42')](handleError(_0x1f2092,null));};