Built motion from commit (unavailable).|2.5.22
[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 _0x7af4=['then','destroy','error','stack','name','send','index','map','IntegrationReport','rawAttributes','fieldName','type','key','model','query','filters','intersection','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','include','findAll','rows','catch','show','params','keys','fields','create','body','find','describe','eml-format','fast-json-patch','mustache','path','sox','ejs','lodash','jsforce','desk.js','to-csv','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','count','offset','limit','set','apply','reject','save','update'];(function(_0x234889,_0xfdad61){var _0x1e07ba=function(_0x51d7d3){while(--_0x51d7d3){_0x234889['push'](_0x234889['shift']());}};_0x1e07ba(++_0xfdad61);}(_0x7af4,0x14e));var _0x47af=function(_0x4fb9ed,_0x187ea0){_0x4fb9ed=_0x4fb9ed-0x0;var _0x263645=_0x7af4[_0x4fb9ed];return _0x263645;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x47af('0x0'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0x47af('0x1'));var rp=require('request-promise');var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x47af('0x2'));var util=require('util');var path=require(_0x47af('0x3'));var sox=require(_0x47af('0x4'));var csv=require('to-csv');var ejs=require(_0x47af('0x5'));var fs=require('fs');var _=require(_0x47af('0x6'));var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0x47af('0x7'));var deskjs=require(_0x47af('0x8'));var toCsv=require(_0x47af('0x9'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x47af('0xa'));var authService=require('../../components/auth/service');var qs=require(_0x47af('0xb'));var as=require(_0x47af('0xc'));var hardwareService=require(_0x47af('0xd'));var logger=require(_0x47af('0xe'))('api');var utils=require(_0x47af('0xf'));var config=require(_0x47af('0x10'));var licenseUtil=require(_0x47af('0x11'));var db=require(_0x47af('0x12'))['db'];function respondWithStatusCode(_0x16be03,_0x22ccf7){_0x22ccf7=_0x22ccf7||0xcc;return function(_0x3e38f2){if(_0x3e38f2){return _0x16be03[_0x47af('0x13')](_0x22ccf7);}return _0x16be03[_0x47af('0x14')](_0x22ccf7)[_0x47af('0x15')]();};}function respondWithResult(_0x108f47,_0x5241f8){_0x5241f8=_0x5241f8||0xc8;return function(_0xf4a217){if(_0xf4a217){return _0x108f47[_0x47af('0x14')](_0x5241f8)[_0x47af('0x16')](_0xf4a217);}};}function respondWithFilteredResult(_0x3eb799,_0x44639f){return function(_0x147604){if(_0x147604){var _0x586b07=_0x147604[_0x47af('0x17')],_0x1ff738=_0x44639f[_0x47af('0x18')],_0x546d77=_0x44639f['offset']+_0x44639f[_0x47af('0x19')],_0x89830f;if(_0x546d77>=_0x586b07){_0x546d77=_0x586b07;_0x89830f=0xc8;}else{_0x89830f=0xce;}_0x3eb799['status'](_0x89830f);return _0x3eb799[_0x47af('0x1a')]('Content-Range',_0x1ff738+'-'+_0x546d77+'/'+_0x586b07)[_0x47af('0x16')](_0x147604);}return null;};}function patchUpdates(_0x3e8ce1){return function(_0x36ca11){try{jsonpatch[_0x47af('0x1b')](_0x36ca11,_0x3e8ce1,!![]);}catch(_0x28a49f){return BPromise[_0x47af('0x1c')](_0x28a49f);}return _0x36ca11[_0x47af('0x1d')]();};}function saveUpdates(_0x14bc8a,_0x96470){return function(_0x1f44a1){if(_0x1f44a1){return _0x1f44a1[_0x47af('0x1e')](_0x14bc8a)[_0x47af('0x1f')](function(_0x4de9b3){return _0x4de9b3;});}return null;};}function removeEntity(_0x36378c,_0x376934){return function(_0x1c91b3){if(_0x1c91b3){return _0x1c91b3[_0x47af('0x20')]()[_0x47af('0x1f')](function(){_0x36378c['status'](0xcc)[_0x47af('0x15')]();});}};}function handleEntityNotFound(_0x1f7aab,_0x1aee97){return function(_0x498e09){if(!_0x498e09){_0x1f7aab[_0x47af('0x13')](0x194);}return _0x498e09;};}function handleError(_0x1652c6,_0x3b2688){_0x3b2688=_0x3b2688||0x1f4;return function(_0x16c81f){logger[_0x47af('0x21')](_0x16c81f[_0x47af('0x22')]);if(_0x16c81f['name']){delete _0x16c81f[_0x47af('0x23')];}_0x1652c6[_0x47af('0x14')](_0x3b2688)[_0x47af('0x24')](_0x16c81f);};}exports[_0x47af('0x25')]=function(_0x5bb86d,_0x271b50){var _0x3ad8e0={},_0x10948c={},_0x1f9d10={'count':0x0,'rows':[]};var _0x556d5a=_[_0x47af('0x26')](db[_0x47af('0x27')][_0x47af('0x28')],function(_0xa5c09b){return{'name':_0xa5c09b[_0x47af('0x29')],'type':_0xa5c09b[_0x47af('0x2a')][_0x47af('0x2b')]};});_0x10948c[_0x47af('0x2c')]=_[_0x47af('0x26')](_0x556d5a,_0x47af('0x23'));_0x10948c[_0x47af('0x2d')]=_['keys'](_0x5bb86d[_0x47af('0x2d')]);_0x10948c[_0x47af('0x2e')]=_[_0x47af('0x2f')](_0x10948c['model'],_0x10948c['query']);_0x3ad8e0[_0x47af('0x30')]=_['intersection'](_0x10948c['model'],qs['fields'](_0x5bb86d[_0x47af('0x2d')]['fields']));_0x3ad8e0['attributes']=_0x3ad8e0[_0x47af('0x30')][_0x47af('0x31')]?_0x3ad8e0['attributes']:_0x10948c[_0x47af('0x2c')];if(!_0x5bb86d['query'][_0x47af('0x32')](_0x47af('0x33'))){_0x3ad8e0[_0x47af('0x19')]=qs['limit'](_0x5bb86d[_0x47af('0x2d')][_0x47af('0x19')]);_0x3ad8e0[_0x47af('0x18')]=qs['offset'](_0x5bb86d[_0x47af('0x2d')]['offset']);}_0x3ad8e0[_0x47af('0x34')]=qs[_0x47af('0x35')](_0x5bb86d[_0x47af('0x2d')][_0x47af('0x35')]);_0x3ad8e0[_0x47af('0x36')]=qs['filters'](_[_0x47af('0x37')](_0x5bb86d[_0x47af('0x2d')],_0x10948c[_0x47af('0x2e')]),_0x556d5a);if(_0x5bb86d[_0x47af('0x2d')][_0x47af('0x38')]){_0x3ad8e0[_0x47af('0x36')]=_[_0x47af('0x39')](_0x3ad8e0[_0x47af('0x36')],{'$or':_[_0x47af('0x26')](_0x556d5a,function(_0x13efdf){if(_0x13efdf[_0x47af('0x2a')]!==_0x47af('0x3a')){var _0x2c4e51={};_0x2c4e51[_0x13efdf[_0x47af('0x23')]]={'$like':'%'+_0x5bb86d['query'][_0x47af('0x38')]+'%'};return _0x2c4e51;}})});}_0x3ad8e0=_[_0x47af('0x39')]({},_0x3ad8e0,_0x5bb86d[_0x47af('0x3b')]);var _0xb9944d={'where':_0x3ad8e0[_0x47af('0x36')]};return db[_0x47af('0x27')][_0x47af('0x17')](_0xb9944d)[_0x47af('0x1f')](function(_0x2269f9){_0x1f9d10[_0x47af('0x17')]=_0x2269f9;if(_0x5bb86d[_0x47af('0x2d')][_0x47af('0x3c')]){_0x3ad8e0[_0x47af('0x3d')]=[{'all':!![]}];}return db['IntegrationReport'][_0x47af('0x3e')](_0x3ad8e0);})[_0x47af('0x1f')](function(_0x35ed76){_0x1f9d10[_0x47af('0x3f')]=_0x35ed76;return _0x1f9d10;})[_0x47af('0x1f')](respondWithFilteredResult(_0x271b50,_0x3ad8e0))[_0x47af('0x40')](handleError(_0x271b50,null));};exports[_0x47af('0x41')]=function(_0x59aa2d,_0x56f84b){var _0x32765d={'raw':![],'where':{'id':_0x59aa2d[_0x47af('0x42')]['id']}},_0x418811={};_0x418811[_0x47af('0x2c')]=_[_0x47af('0x43')](db['IntegrationReport'][_0x47af('0x28')]);_0x418811[_0x47af('0x2d')]=_['keys'](_0x59aa2d[_0x47af('0x2d')]);_0x418811[_0x47af('0x2e')]=_[_0x47af('0x2f')](_0x418811[_0x47af('0x2c')],_0x418811[_0x47af('0x2d')]);_0x32765d[_0x47af('0x30')]=_[_0x47af('0x2f')](_0x418811[_0x47af('0x2c')],qs[_0x47af('0x44')](_0x59aa2d[_0x47af('0x2d')][_0x47af('0x44')]));_0x32765d[_0x47af('0x30')]=_0x32765d['attributes'][_0x47af('0x31')]?_0x32765d[_0x47af('0x30')]:_0x418811[_0x47af('0x2c')];if(_0x59aa2d[_0x47af('0x2d')][_0x47af('0x3c')]){_0x32765d[_0x47af('0x3d')]=[{'all':!![]}];}_0x32765d=_[_0x47af('0x39')]({},_0x32765d,_0x59aa2d[_0x47af('0x3b')]);return db['IntegrationReport']['find'](_0x32765d)[_0x47af('0x1f')](handleEntityNotFound(_0x56f84b,null))['then'](respondWithResult(_0x56f84b,null))[_0x47af('0x40')](handleError(_0x56f84b,null));};exports[_0x47af('0x45')]=function(_0x4302f3,_0x76f41c){return db[_0x47af('0x27')]['create'](_0x4302f3[_0x47af('0x46')],{})[_0x47af('0x1f')](respondWithResult(_0x76f41c,0xc9))[_0x47af('0x40')](handleError(_0x76f41c,null));};exports['update']=function(_0x10030e,_0x543dcb){if(_0x10030e['body']['id']){delete _0x10030e['body']['id'];}return db[_0x47af('0x27')][_0x47af('0x47')]({'where':{'id':_0x10030e['params']['id']}})[_0x47af('0x1f')](handleEntityNotFound(_0x543dcb,null))['then'](saveUpdates(_0x10030e[_0x47af('0x46')],null))[_0x47af('0x1f')](respondWithResult(_0x543dcb,null))[_0x47af('0x40')](handleError(_0x543dcb,null));};exports[_0x47af('0x20')]=function(_0x5a69a5,_0x3969f0){return db['IntegrationReport']['find']({'where':{'id':_0x5a69a5[_0x47af('0x42')]['id']}})[_0x47af('0x1f')](handleEntityNotFound(_0x3969f0,null))[_0x47af('0x1f')](removeEntity(_0x3969f0,null))[_0x47af('0x40')](handleError(_0x3969f0,null));};exports[_0x47af('0x48')]=function(_0xae26b6,_0x22ca7e){return db[_0x47af('0x27')]['describe']()['then'](respondWithResult(_0x22ca7e,null))[_0x47af('0x40')](handleError(_0x22ca7e,null));};