Built motion from commit 9d0783e6.|2.6.13
[motion2.git] / server / api / intServicenowConfiguration / intServicenowConfiguration.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 _0x7153=['name','send','index','map','ServicenowConfiguration','fieldName','type','key','model','query','keys','intersection','fields','attributes','order','sort','where','filters','pick','merge','VIRTUAL','filter','options','includeAll','rows','catch','show','rawAttributes','length','include','find','create','update','body','params','getFields','findOne','ServicenowField','nolimit','getSubjects','hasOwnProperty','getDescriptions','eml-format','rimraf','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','lodash','squel','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','status','end','json','offset','undefined','limit','count','set','apply','reject','then','sendStatus','error'];(function(_0x1cf544,_0x1e27b0){var _0xd9a935=function(_0x394d08){while(--_0x394d08){_0x1cf544['push'](_0x1cf544['shift']());}};_0xd9a935(++_0x1e27b0);}(_0x7153,0x78));var _0x3715=function(_0x1030ce,_0xbe3f74){_0x1030ce=_0x1030ce-0x0;var _0x3367fd=_0x7153[_0x1030ce];return _0x3367fd;};'use strict';var emlformat=require(_0x3715('0x0'));var rimraf=require(_0x3715('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x3715('0x2'));var rp=require(_0x3715('0x3'));var moment=require('moment');var BPromise=require(_0x3715('0x4'));var Mustache=require(_0x3715('0x5'));var util=require(_0x3715('0x6'));var path=require(_0x3715('0x7'));var sox=require(_0x3715('0x8'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x3715('0x9'));var squel=require(_0x3715('0xa'));var crypto=require('crypto');var jsforce=require(_0x3715('0xb'));var deskjs=require(_0x3715('0xc'));var toCsv=require('to-csv');var querystring=require(_0x3715('0xd'));var Papa=require(_0x3715('0xe'));var Redis=require('ioredis');var authService=require(_0x3715('0xf'));var qs=require(_0x3715('0x10'));var as=require(_0x3715('0x11'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x3715('0x12'))(_0x3715('0x13'));var utils=require('../../config/utils');var config=require(_0x3715('0x14'));var licenseUtil=require(_0x3715('0x15'));var db=require(_0x3715('0x16'))['db'];function respondWithStatusCode(_0x48ce52,_0x1fdf4f){_0x1fdf4f=_0x1fdf4f||0xcc;return function(_0x2239c4){if(_0x2239c4){return _0x48ce52['sendStatus'](_0x1fdf4f);}return _0x48ce52[_0x3715('0x17')](_0x1fdf4f)[_0x3715('0x18')]();};}function respondWithResult(_0x93a3d,_0x5535e7){_0x5535e7=_0x5535e7||0xc8;return function(_0x1efdd4){if(_0x1efdd4){return _0x93a3d[_0x3715('0x17')](_0x5535e7)[_0x3715('0x19')](_0x1efdd4);}};}function respondWithFilteredResult(_0x3adca2,_0x23151b){return function(_0x185f0b){if(_0x185f0b){var _0x57965c=typeof _0x23151b[_0x3715('0x1a')]===_0x3715('0x1b')&&typeof _0x23151b[_0x3715('0x1c')]==='undefined';var _0x3347b4=_0x185f0b[_0x3715('0x1d')];var _0x89b7a9=_0x57965c?0x0:_0x23151b[_0x3715('0x1a')];var _0x5d6f73=_0x57965c?_0x185f0b['count']:_0x23151b[_0x3715('0x1a')]+_0x23151b[_0x3715('0x1c')];var _0x3f5b82;if(_0x5d6f73>=_0x3347b4){_0x5d6f73=_0x3347b4;_0x3f5b82=0xc8;}else{_0x3f5b82=0xce;}_0x3adca2[_0x3715('0x17')](_0x3f5b82);return _0x3adca2[_0x3715('0x1e')]('Content-Range',_0x89b7a9+'-'+_0x5d6f73+'/'+_0x3347b4)[_0x3715('0x19')](_0x185f0b);}return null;};}function patchUpdates(_0x339610){return function(_0x5dafc6){try{jsonpatch[_0x3715('0x1f')](_0x5dafc6,_0x339610,!![]);}catch(_0x55ea83){return BPromise[_0x3715('0x20')](_0x55ea83);}return _0x5dafc6['save']();};}function saveUpdates(_0x438af2,_0x5b4850){return function(_0x4579c2){if(_0x4579c2){return _0x4579c2['update'](_0x438af2)[_0x3715('0x21')](function(_0x35629f){return _0x35629f;});}return null;};}function removeEntity(_0x1b0fb7,_0x5b9f63){return function(_0x49476c){if(_0x49476c){return _0x49476c['destroy']()[_0x3715('0x21')](function(){_0x1b0fb7[_0x3715('0x17')](0xcc)[_0x3715('0x18')]();});}};}function handleEntityNotFound(_0x10c499,_0x2ec92a){return function(_0x1fc825){if(!_0x1fc825){_0x10c499[_0x3715('0x22')](0x194);}return _0x1fc825;};}function handleError(_0x10300e,_0x2aa300){_0x2aa300=_0x2aa300||0x1f4;return function(_0x3d8297){logger[_0x3715('0x23')](_0x3d8297['stack']);if(_0x3d8297['name']){delete _0x3d8297[_0x3715('0x24')];}_0x10300e['status'](_0x2aa300)[_0x3715('0x25')](_0x3d8297);};}exports[_0x3715('0x26')]=function(_0x2b401e,_0x27a4dc){var _0x455f32={},_0x5a857c={},_0x35466a={'count':0x0,'rows':[]};var _0x3a76d3=_[_0x3715('0x27')](db[_0x3715('0x28')]['rawAttributes'],function(_0x23f103){return{'name':_0x23f103[_0x3715('0x29')],'type':_0x23f103[_0x3715('0x2a')][_0x3715('0x2b')]};});_0x5a857c[_0x3715('0x2c')]=_[_0x3715('0x27')](_0x3a76d3,_0x3715('0x24'));_0x5a857c[_0x3715('0x2d')]=_[_0x3715('0x2e')](_0x2b401e[_0x3715('0x2d')]);_0x5a857c['filters']=_[_0x3715('0x2f')](_0x5a857c['model'],_0x5a857c['query']);_0x455f32['attributes']=_[_0x3715('0x2f')](_0x5a857c['model'],qs['fields'](_0x2b401e[_0x3715('0x2d')][_0x3715('0x30')]));_0x455f32['attributes']=_0x455f32['attributes']['length']?_0x455f32[_0x3715('0x31')]:_0x5a857c[_0x3715('0x2c')];if(!_0x2b401e[_0x3715('0x2d')]['hasOwnProperty']('nolimit')){_0x455f32[_0x3715('0x1c')]=qs['limit'](_0x2b401e[_0x3715('0x2d')][_0x3715('0x1c')]);_0x455f32[_0x3715('0x1a')]=qs['offset'](_0x2b401e[_0x3715('0x2d')][_0x3715('0x1a')]);}_0x455f32[_0x3715('0x32')]=qs[_0x3715('0x33')](_0x2b401e['query'][_0x3715('0x33')]);_0x455f32[_0x3715('0x34')]=qs[_0x3715('0x35')](_[_0x3715('0x36')](_0x2b401e[_0x3715('0x2d')],_0x5a857c[_0x3715('0x35')]),_0x3a76d3);if(_0x2b401e[_0x3715('0x2d')]['filter']){_0x455f32['where']=_[_0x3715('0x37')](_0x455f32[_0x3715('0x34')],{'$or':_[_0x3715('0x27')](_0x3a76d3,function(_0x3c908b){if(_0x3c908b[_0x3715('0x2a')]!==_0x3715('0x38')){var _0xef1b52={};_0xef1b52[_0x3c908b[_0x3715('0x24')]]={'$like':'%'+_0x2b401e[_0x3715('0x2d')][_0x3715('0x39')]+'%'};return _0xef1b52;}})});}_0x455f32=_['merge']({},_0x455f32,_0x2b401e[_0x3715('0x3a')]);var _0x451b53={'where':_0x455f32[_0x3715('0x34')]};return db['ServicenowConfiguration'][_0x3715('0x1d')](_0x451b53)['then'](function(_0x5b1914){_0x35466a[_0x3715('0x1d')]=_0x5b1914;if(_0x2b401e['query'][_0x3715('0x3b')]){_0x455f32['include']=[{'all':!![]}];}return db[_0x3715('0x28')]['findAll'](_0x455f32);})['then'](function(_0xf7a59c){_0x35466a[_0x3715('0x3c')]=_0xf7a59c;return _0x35466a;})['then'](respondWithFilteredResult(_0x27a4dc,_0x455f32))[_0x3715('0x3d')](handleError(_0x27a4dc,null));};exports[_0x3715('0x3e')]=function(_0xc9c01f,_0x595f17){var _0x515454={'raw':![],'where':{'id':_0xc9c01f['params']['id']}},_0x1e4524={};_0x1e4524['model']=_[_0x3715('0x2e')](db[_0x3715('0x28')][_0x3715('0x3f')]);_0x1e4524[_0x3715('0x2d')]=_[_0x3715('0x2e')](_0xc9c01f[_0x3715('0x2d')]);_0x1e4524[_0x3715('0x35')]=_[_0x3715('0x2f')](_0x1e4524[_0x3715('0x2c')],_0x1e4524[_0x3715('0x2d')]);_0x515454[_0x3715('0x31')]=_[_0x3715('0x2f')](_0x1e4524[_0x3715('0x2c')],qs['fields'](_0xc9c01f['query'][_0x3715('0x30')]));_0x515454['attributes']=_0x515454[_0x3715('0x31')][_0x3715('0x40')]?_0x515454[_0x3715('0x31')]:_0x1e4524['model'];if(_0xc9c01f[_0x3715('0x2d')][_0x3715('0x3b')]){_0x515454[_0x3715('0x41')]=[{'all':!![]}];}_0x515454=_[_0x3715('0x37')]({},_0x515454,_0xc9c01f[_0x3715('0x3a')]);return db[_0x3715('0x28')][_0x3715('0x42')](_0x515454)['then'](handleEntityNotFound(_0x595f17,null))[_0x3715('0x21')](respondWithResult(_0x595f17,null))[_0x3715('0x3d')](handleError(_0x595f17,null));};exports['create']=function(_0x224d3a,_0xa89a22){return db[_0x3715('0x28')][_0x3715('0x43')](_0x224d3a['body'],{})[_0x3715('0x21')](respondWithResult(_0xa89a22,0xc9))[_0x3715('0x3d')](handleError(_0xa89a22,null));};exports[_0x3715('0x44')]=function(_0x120123,_0x338d5f){if(_0x120123[_0x3715('0x45')]['id']){delete _0x120123[_0x3715('0x45')]['id'];}return db[_0x3715('0x28')][_0x3715('0x42')]({'where':{'id':_0x120123[_0x3715('0x46')]['id']}})['then'](handleEntityNotFound(_0x338d5f,null))[_0x3715('0x21')](saveUpdates(_0x120123[_0x3715('0x45')],null))[_0x3715('0x21')](respondWithResult(_0x338d5f,null))[_0x3715('0x3d')](handleError(_0x338d5f,null));};exports['destroy']=function(_0x3015d9,_0x3a9231){return db[_0x3715('0x28')][_0x3715('0x42')]({'where':{'id':_0x3015d9[_0x3715('0x46')]['id']}})[_0x3715('0x21')](handleEntityNotFound(_0x3a9231,null))[_0x3715('0x21')](removeEntity(_0x3a9231,null))[_0x3715('0x3d')](handleError(_0x3a9231,null));};exports[_0x3715('0x47')]=function(_0x37803a,_0x25b7a0,_0x5c8e92){var _0x1656c9={};var _0x43e531={};var _0x32af02;var _0x319b9f;return db[_0x3715('0x28')][_0x3715('0x48')]({'where':{'id':_0x37803a[_0x3715('0x46')]['id']}})[_0x3715('0x21')](handleEntityNotFound(_0x25b7a0,null))[_0x3715('0x21')](function(_0x256827){if(_0x256827){_0x32af02=_0x256827;_0x43e531['model']=_['keys'](db[_0x3715('0x49')]['rawAttributes']);_0x43e531['query']=_['keys'](_0x37803a[_0x3715('0x2d')]);_0x43e531[_0x3715('0x35')]=_['intersection'](_0x43e531['model'],_0x43e531[_0x3715('0x2d')]);_0x1656c9[_0x3715('0x31')]=_[_0x3715('0x2f')](_0x43e531['model'],qs['fields'](_0x37803a[_0x3715('0x2d')]['fields']));_0x1656c9[_0x3715('0x31')]=_0x1656c9[_0x3715('0x31')][_0x3715('0x40')]?_0x1656c9[_0x3715('0x31')]:_0x43e531[_0x3715('0x2c')];_0x1656c9[_0x3715('0x32')]=qs[_0x3715('0x33')](_0x37803a['query'][_0x3715('0x33')]);_0x1656c9['where']=qs[_0x3715('0x35')](_['pick'](_0x37803a[_0x3715('0x2d')],_0x43e531['filters']));if(_0x37803a['query'][_0x3715('0x39')]){_0x1656c9['where']=_[_0x3715('0x37')](_0x1656c9[_0x3715('0x34')],{'$or':_[_0x3715('0x27')](_0x1656c9['attributes'],function(_0x3ad4c8){var _0x17bdcb={};_0x17bdcb[_0x3ad4c8]={'$like':'%'+_0x37803a[_0x3715('0x2d')][_0x3715('0x39')]+'%'};return _0x17bdcb;})});}_0x1656c9=_['merge']({},_0x1656c9,_0x37803a[_0x3715('0x3a')]);return _0x32af02['getFields'](_0x1656c9);}})['then'](function(_0x329a66){if(_0x329a66){_0x319b9f=_0x329a66[_0x3715('0x40')];if(!_0x37803a[_0x3715('0x2d')]['hasOwnProperty'](_0x3715('0x4a'))){_0x1656c9['limit']=qs[_0x3715('0x1c')](_0x37803a[_0x3715('0x2d')][_0x3715('0x1c')]);_0x1656c9[_0x3715('0x1a')]=qs[_0x3715('0x1a')](_0x37803a[_0x3715('0x2d')]['offset']);}return _0x32af02[_0x3715('0x47')](_0x1656c9);}})['then'](function(_0x4a9147){if(_0x4a9147){return _0x4a9147?{'count':_0x319b9f,'rows':_0x4a9147}:null;}})[_0x3715('0x21')](respondWithResult(_0x25b7a0,null))[_0x3715('0x3d')](handleError(_0x25b7a0,null));};exports[_0x3715('0x4b')]=function(_0x58398d,_0x36c527,_0x3f1f5c){var _0xb8f550={};var _0xbded69={};var _0x38093d;var _0x3d1741;return db[_0x3715('0x28')][_0x3715('0x48')]({'where':{'id':_0x58398d[_0x3715('0x46')]['id']}})[_0x3715('0x21')](handleEntityNotFound(_0x36c527,null))[_0x3715('0x21')](function(_0x1268d2){if(_0x1268d2){_0x38093d=_0x1268d2;_0xbded69['model']=_[_0x3715('0x2e')](db[_0x3715('0x49')][_0x3715('0x3f')]);_0xbded69[_0x3715('0x2d')]=_['keys'](_0x58398d[_0x3715('0x2d')]);_0xbded69[_0x3715('0x35')]=_['intersection'](_0xbded69[_0x3715('0x2c')],_0xbded69[_0x3715('0x2d')]);_0xb8f550[_0x3715('0x31')]=_[_0x3715('0x2f')](_0xbded69['model'],qs[_0x3715('0x30')](_0x58398d['query'][_0x3715('0x30')]));_0xb8f550[_0x3715('0x31')]=_0xb8f550['attributes'][_0x3715('0x40')]?_0xb8f550[_0x3715('0x31')]:_0xbded69['model'];_0xb8f550[_0x3715('0x32')]=qs['sort'](_0x58398d[_0x3715('0x2d')][_0x3715('0x33')]);_0xb8f550[_0x3715('0x34')]=qs['filters'](_['pick'](_0x58398d[_0x3715('0x2d')],_0xbded69[_0x3715('0x35')]));if(_0x58398d[_0x3715('0x2d')][_0x3715('0x39')]){_0xb8f550['where']=_['merge'](_0xb8f550[_0x3715('0x34')],{'$or':_[_0x3715('0x27')](_0xb8f550['attributes'],function(_0x57d9cd){var _0x551534={};_0x551534[_0x57d9cd]={'$like':'%'+_0x58398d['query'][_0x3715('0x39')]+'%'};return _0x551534;})});}_0xb8f550=_[_0x3715('0x37')]({},_0xb8f550,_0x58398d[_0x3715('0x3a')]);return _0x38093d[_0x3715('0x4b')](_0xb8f550);}})[_0x3715('0x21')](function(_0x2c682e){if(_0x2c682e){_0x3d1741=_0x2c682e[_0x3715('0x40')];if(!_0x58398d[_0x3715('0x2d')][_0x3715('0x4c')](_0x3715('0x4a'))){_0xb8f550[_0x3715('0x1c')]=qs['limit'](_0x58398d[_0x3715('0x2d')][_0x3715('0x1c')]);_0xb8f550[_0x3715('0x1a')]=qs[_0x3715('0x1a')](_0x58398d[_0x3715('0x2d')][_0x3715('0x1a')]);}return _0x38093d[_0x3715('0x4b')](_0xb8f550);}})['then'](function(_0x239047){if(_0x239047){return _0x239047?{'count':_0x3d1741,'rows':_0x239047}:null;}})[_0x3715('0x21')](respondWithResult(_0x36c527,null))[_0x3715('0x3d')](handleError(_0x36c527,null));};exports[_0x3715('0x4d')]=function(_0x4c81f4,_0x1599d0,_0x48c5e5){var _0x4ed4ad={};var _0x669645={};var _0x550c06;var _0x19f9bc;return db[_0x3715('0x28')]['findOne']({'where':{'id':_0x4c81f4[_0x3715('0x46')]['id']}})[_0x3715('0x21')](handleEntityNotFound(_0x1599d0,null))[_0x3715('0x21')](function(_0x4fc322){if(_0x4fc322){_0x550c06=_0x4fc322;_0x669645[_0x3715('0x2c')]=_[_0x3715('0x2e')](db[_0x3715('0x49')][_0x3715('0x3f')]);_0x669645['query']=_['keys'](_0x4c81f4['query']);_0x669645[_0x3715('0x35')]=_[_0x3715('0x2f')](_0x669645[_0x3715('0x2c')],_0x669645[_0x3715('0x2d')]);_0x4ed4ad[_0x3715('0x31')]=_['intersection'](_0x669645['model'],qs[_0x3715('0x30')](_0x4c81f4[_0x3715('0x2d')][_0x3715('0x30')]));_0x4ed4ad[_0x3715('0x31')]=_0x4ed4ad[_0x3715('0x31')]['length']?_0x4ed4ad[_0x3715('0x31')]:_0x669645[_0x3715('0x2c')];_0x4ed4ad[_0x3715('0x32')]=qs[_0x3715('0x33')](_0x4c81f4[_0x3715('0x2d')]['sort']);_0x4ed4ad['where']=qs[_0x3715('0x35')](_[_0x3715('0x36')](_0x4c81f4['query'],_0x669645['filters']));if(_0x4c81f4[_0x3715('0x2d')]['filter']){_0x4ed4ad['where']=_['merge'](_0x4ed4ad[_0x3715('0x34')],{'$or':_[_0x3715('0x27')](_0x4ed4ad[_0x3715('0x31')],function(_0xfec0b3){var _0x5370a9={};_0x5370a9[_0xfec0b3]={'$like':'%'+_0x4c81f4[_0x3715('0x2d')][_0x3715('0x39')]+'%'};return _0x5370a9;})});}_0x4ed4ad=_['merge']({},_0x4ed4ad,_0x4c81f4[_0x3715('0x3a')]);return _0x550c06[_0x3715('0x4d')](_0x4ed4ad);}})['then'](function(_0x34834){if(_0x34834){_0x19f9bc=_0x34834[_0x3715('0x40')];if(!_0x4c81f4[_0x3715('0x2d')][_0x3715('0x4c')]('nolimit')){_0x4ed4ad[_0x3715('0x1c')]=qs['limit'](_0x4c81f4[_0x3715('0x2d')][_0x3715('0x1c')]);_0x4ed4ad[_0x3715('0x1a')]=qs[_0x3715('0x1a')](_0x4c81f4[_0x3715('0x2d')][_0x3715('0x1a')]);}return _0x550c06[_0x3715('0x4d')](_0x4ed4ad);}})[_0x3715('0x21')](function(_0x34c93b){if(_0x34c93b){return _0x34c93b?{'count':_0x19f9bc,'rows':_0x34c93b}:null;}})[_0x3715('0x21')](respondWithResult(_0x1599d0,null))['catch'](handleError(_0x1599d0,null));};