Built motion from commit d1eab355.|2.6.28
[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 _0x65a8=['index','map','ServicenowConfiguration','rawAttributes','type','key','model','query','intersection','attributes','fields','length','hasOwnProperty','nolimit','where','filters','pick','filter','merge','VIRTUAL','includeAll','include','findAll','catch','show','params','keys','options','find','create','body','destroy','getFields','findOne','ServicenowField','order','sort','getSubjects','getDescriptions','eml-format','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','jsforce','querystring','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','status','end','json','offset','count','limit','set','reject','save','update','then','sendStatus','error','stack','name'];(function(_0x2a99f5,_0x3e9be5){var _0x495c0c=function(_0x586ddd){while(--_0x586ddd){_0x2a99f5['push'](_0x2a99f5['shift']());}};_0x495c0c(++_0x3e9be5);}(_0x65a8,0x74));var _0x865a=function(_0x199572,_0x33e667){_0x199572=_0x199572-0x0;var _0x13cfa3=_0x65a8[_0x199572];return _0x13cfa3;};'use strict';var emlformat=require(_0x865a('0x0'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0x865a('0x1'));var rp=require(_0x865a('0x2'));var moment=require('moment');var BPromise=require(_0x865a('0x3'));var Mustache=require(_0x865a('0x4'));var util=require(_0x865a('0x5'));var path=require(_0x865a('0x6'));var sox=require(_0x865a('0x7'));var csv=require(_0x865a('0x8'));var ejs=require(_0x865a('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x865a('0xa'));var squel=require(_0x865a('0xb'));var crypto=require('crypto');var jsforce=require(_0x865a('0xc'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x865a('0xd'));var Papa=require('papaparse');var Redis=require(_0x865a('0xe'));var authService=require(_0x865a('0xf'));var qs=require('../../components/parsers/qs');var as=require(_0x865a('0x10'));var hardwareService=require(_0x865a('0x11'));var logger=require(_0x865a('0x12'))(_0x865a('0x13'));var utils=require('../../config/utils');var config=require(_0x865a('0x14'));var licenseUtil=require(_0x865a('0x15'));var db=require(_0x865a('0x16'))['db'];function respondWithStatusCode(_0xff91db,_0x2bdccf){_0x2bdccf=_0x2bdccf||0xcc;return function(_0x204f62){if(_0x204f62){return _0xff91db['sendStatus'](_0x2bdccf);}return _0xff91db[_0x865a('0x17')](_0x2bdccf)[_0x865a('0x18')]();};}function respondWithResult(_0x277d37,_0xfadee7){_0xfadee7=_0xfadee7||0xc8;return function(_0x27aa96){if(_0x27aa96){return _0x277d37[_0x865a('0x17')](_0xfadee7)[_0x865a('0x19')](_0x27aa96);}};}function respondWithFilteredResult(_0x570550,_0x1d7bcf){return function(_0x54b39e){if(_0x54b39e){var _0x34803e=typeof _0x1d7bcf[_0x865a('0x1a')]==='undefined'&&typeof _0x1d7bcf['limit']==='undefined';var _0x203676=_0x54b39e[_0x865a('0x1b')];var _0x37ad4d=_0x34803e?0x0:_0x1d7bcf[_0x865a('0x1a')];var _0x2f4e4e=_0x34803e?_0x54b39e['count']:_0x1d7bcf[_0x865a('0x1a')]+_0x1d7bcf[_0x865a('0x1c')];var _0x7ecb45;if(_0x2f4e4e>=_0x203676){_0x2f4e4e=_0x203676;_0x7ecb45=0xc8;}else{_0x7ecb45=0xce;}_0x570550['status'](_0x7ecb45);return _0x570550[_0x865a('0x1d')]('Content-Range',_0x37ad4d+'-'+_0x2f4e4e+'/'+_0x203676)[_0x865a('0x19')](_0x54b39e);}return null;};}function patchUpdates(_0x2a0274){return function(_0x437970){try{jsonpatch['apply'](_0x437970,_0x2a0274,!![]);}catch(_0x3bb9a3){return BPromise[_0x865a('0x1e')](_0x3bb9a3);}return _0x437970[_0x865a('0x1f')]();};}function saveUpdates(_0x7b4e3b,_0x4145a3){return function(_0xa74daf){if(_0xa74daf){return _0xa74daf[_0x865a('0x20')](_0x7b4e3b)['then'](function(_0x4329bc){return _0x4329bc;});}return null;};}function removeEntity(_0x5e1f7b,_0x4cb686){return function(_0x5a6dc8){if(_0x5a6dc8){return _0x5a6dc8['destroy']()[_0x865a('0x21')](function(){_0x5e1f7b['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x216aff,_0x9ecabd){return function(_0x4f9738){if(!_0x4f9738){_0x216aff[_0x865a('0x22')](0x194);}return _0x4f9738;};}function handleError(_0x2b4792,_0x3aedf0){_0x3aedf0=_0x3aedf0||0x1f4;return function(_0x12f437){logger[_0x865a('0x23')](_0x12f437[_0x865a('0x24')]);if(_0x12f437[_0x865a('0x25')]){delete _0x12f437[_0x865a('0x25')];}_0x2b4792[_0x865a('0x17')](_0x3aedf0)['send'](_0x12f437);};}exports[_0x865a('0x26')]=function(_0x1d1d1a,_0x26a084){var _0xbe27af={},_0x181696={},_0x45a0ec={'count':0x0,'rows':[]};var _0xf99d3e=_[_0x865a('0x27')](db[_0x865a('0x28')][_0x865a('0x29')],function(_0x1df3e6){return{'name':_0x1df3e6['fieldName'],'type':_0x1df3e6[_0x865a('0x2a')][_0x865a('0x2b')]};});_0x181696[_0x865a('0x2c')]=_[_0x865a('0x27')](_0xf99d3e,_0x865a('0x25'));_0x181696[_0x865a('0x2d')]=_['keys'](_0x1d1d1a['query']);_0x181696['filters']=_[_0x865a('0x2e')](_0x181696[_0x865a('0x2c')],_0x181696['query']);_0xbe27af[_0x865a('0x2f')]=_[_0x865a('0x2e')](_0x181696[_0x865a('0x2c')],qs[_0x865a('0x30')](_0x1d1d1a[_0x865a('0x2d')][_0x865a('0x30')]));_0xbe27af[_0x865a('0x2f')]=_0xbe27af['attributes'][_0x865a('0x31')]?_0xbe27af['attributes']:_0x181696[_0x865a('0x2c')];if(!_0x1d1d1a[_0x865a('0x2d')][_0x865a('0x32')](_0x865a('0x33'))){_0xbe27af[_0x865a('0x1c')]=qs['limit'](_0x1d1d1a[_0x865a('0x2d')]['limit']);_0xbe27af['offset']=qs['offset'](_0x1d1d1a[_0x865a('0x2d')][_0x865a('0x1a')]);}_0xbe27af['order']=qs['sort'](_0x1d1d1a[_0x865a('0x2d')]['sort']);_0xbe27af[_0x865a('0x34')]=qs[_0x865a('0x35')](_[_0x865a('0x36')](_0x1d1d1a[_0x865a('0x2d')],_0x181696[_0x865a('0x35')]),_0xf99d3e);if(_0x1d1d1a[_0x865a('0x2d')][_0x865a('0x37')]){_0xbe27af['where']=_[_0x865a('0x38')](_0xbe27af[_0x865a('0x34')],{'$or':_[_0x865a('0x27')](_0xf99d3e,function(_0x22ff47){if(_0x22ff47[_0x865a('0x2a')]!==_0x865a('0x39')){var _0x28ec72={};_0x28ec72[_0x22ff47[_0x865a('0x25')]]={'$like':'%'+_0x1d1d1a[_0x865a('0x2d')][_0x865a('0x37')]+'%'};return _0x28ec72;}})});}_0xbe27af=_[_0x865a('0x38')]({},_0xbe27af,_0x1d1d1a['options']);var _0x524081={'where':_0xbe27af[_0x865a('0x34')]};return db[_0x865a('0x28')][_0x865a('0x1b')](_0x524081)[_0x865a('0x21')](function(_0x58b842){_0x45a0ec[_0x865a('0x1b')]=_0x58b842;if(_0x1d1d1a[_0x865a('0x2d')][_0x865a('0x3a')]){_0xbe27af[_0x865a('0x3b')]=[{'all':!![]}];}return db['ServicenowConfiguration'][_0x865a('0x3c')](_0xbe27af);})[_0x865a('0x21')](function(_0x304cd0){_0x45a0ec['rows']=_0x304cd0;return _0x45a0ec;})[_0x865a('0x21')](respondWithFilteredResult(_0x26a084,_0xbe27af))[_0x865a('0x3d')](handleError(_0x26a084,null));};exports[_0x865a('0x3e')]=function(_0x499fc2,_0x4ddf3f){var _0x2bf6f0={'raw':![],'where':{'id':_0x499fc2[_0x865a('0x3f')]['id']}},_0x4f573c={};_0x4f573c[_0x865a('0x2c')]=_[_0x865a('0x40')](db[_0x865a('0x28')][_0x865a('0x29')]);_0x4f573c[_0x865a('0x2d')]=_[_0x865a('0x40')](_0x499fc2[_0x865a('0x2d')]);_0x4f573c[_0x865a('0x35')]=_['intersection'](_0x4f573c['model'],_0x4f573c['query']);_0x2bf6f0[_0x865a('0x2f')]=_[_0x865a('0x2e')](_0x4f573c[_0x865a('0x2c')],qs[_0x865a('0x30')](_0x499fc2[_0x865a('0x2d')][_0x865a('0x30')]));_0x2bf6f0[_0x865a('0x2f')]=_0x2bf6f0['attributes'][_0x865a('0x31')]?_0x2bf6f0[_0x865a('0x2f')]:_0x4f573c[_0x865a('0x2c')];if(_0x499fc2[_0x865a('0x2d')][_0x865a('0x3a')]){_0x2bf6f0[_0x865a('0x3b')]=[{'all':!![]}];}_0x2bf6f0=_[_0x865a('0x38')]({},_0x2bf6f0,_0x499fc2[_0x865a('0x41')]);return db[_0x865a('0x28')][_0x865a('0x42')](_0x2bf6f0)[_0x865a('0x21')](handleEntityNotFound(_0x4ddf3f,null))[_0x865a('0x21')](respondWithResult(_0x4ddf3f,null))[_0x865a('0x3d')](handleError(_0x4ddf3f,null));};exports[_0x865a('0x43')]=function(_0x1c63d9,_0x5be8b3){return db[_0x865a('0x28')][_0x865a('0x43')](_0x1c63d9[_0x865a('0x44')],{})['then'](respondWithResult(_0x5be8b3,0xc9))['catch'](handleError(_0x5be8b3,null));};exports[_0x865a('0x20')]=function(_0x2a3da2,_0x46711b){if(_0x2a3da2['body']['id']){delete _0x2a3da2[_0x865a('0x44')]['id'];}return db[_0x865a('0x28')]['find']({'where':{'id':_0x2a3da2[_0x865a('0x3f')]['id']}})[_0x865a('0x21')](handleEntityNotFound(_0x46711b,null))[_0x865a('0x21')](saveUpdates(_0x2a3da2[_0x865a('0x44')],null))[_0x865a('0x21')](respondWithResult(_0x46711b,null))['catch'](handleError(_0x46711b,null));};exports[_0x865a('0x45')]=function(_0x900e26,_0x74b87a){return db[_0x865a('0x28')]['find']({'where':{'id':_0x900e26['params']['id']}})[_0x865a('0x21')](handleEntityNotFound(_0x74b87a,null))['then'](removeEntity(_0x74b87a,null))[_0x865a('0x3d')](handleError(_0x74b87a,null));};exports[_0x865a('0x46')]=function(_0xba579c,_0x3447c0,_0x26da32){var _0x38d608={};var _0x3032cb={};var _0x457935;var _0x145baa;return db['ServicenowConfiguration'][_0x865a('0x47')]({'where':{'id':_0xba579c[_0x865a('0x3f')]['id']}})[_0x865a('0x21')](handleEntityNotFound(_0x3447c0,null))[_0x865a('0x21')](function(_0x598b40){if(_0x598b40){_0x457935=_0x598b40;_0x3032cb['model']=_[_0x865a('0x40')](db[_0x865a('0x48')][_0x865a('0x29')]);_0x3032cb[_0x865a('0x2d')]=_[_0x865a('0x40')](_0xba579c[_0x865a('0x2d')]);_0x3032cb[_0x865a('0x35')]=_[_0x865a('0x2e')](_0x3032cb[_0x865a('0x2c')],_0x3032cb[_0x865a('0x2d')]);_0x38d608[_0x865a('0x2f')]=_['intersection'](_0x3032cb[_0x865a('0x2c')],qs[_0x865a('0x30')](_0xba579c[_0x865a('0x2d')][_0x865a('0x30')]));_0x38d608[_0x865a('0x2f')]=_0x38d608[_0x865a('0x2f')]['length']?_0x38d608[_0x865a('0x2f')]:_0x3032cb[_0x865a('0x2c')];_0x38d608[_0x865a('0x49')]=qs[_0x865a('0x4a')](_0xba579c[_0x865a('0x2d')]['sort']);_0x38d608['where']=qs[_0x865a('0x35')](_[_0x865a('0x36')](_0xba579c[_0x865a('0x2d')],_0x3032cb[_0x865a('0x35')]));if(_0xba579c['query']['filter']){_0x38d608[_0x865a('0x34')]=_[_0x865a('0x38')](_0x38d608[_0x865a('0x34')],{'$or':_[_0x865a('0x27')](_0x38d608[_0x865a('0x2f')],function(_0x22b9a1){var _0x467f98={};_0x467f98[_0x22b9a1]={'$like':'%'+_0xba579c['query'][_0x865a('0x37')]+'%'};return _0x467f98;})});}_0x38d608=_[_0x865a('0x38')]({},_0x38d608,_0xba579c[_0x865a('0x41')]);return _0x457935['getFields'](_0x38d608);}})[_0x865a('0x21')](function(_0x4ba41e){if(_0x4ba41e){_0x145baa=_0x4ba41e[_0x865a('0x31')];if(!_0xba579c[_0x865a('0x2d')][_0x865a('0x32')]('nolimit')){_0x38d608[_0x865a('0x1c')]=qs[_0x865a('0x1c')](_0xba579c[_0x865a('0x2d')][_0x865a('0x1c')]);_0x38d608[_0x865a('0x1a')]=qs['offset'](_0xba579c['query'][_0x865a('0x1a')]);}return _0x457935['getFields'](_0x38d608);}})[_0x865a('0x21')](function(_0x15fa94){if(_0x15fa94){return _0x15fa94?{'count':_0x145baa,'rows':_0x15fa94}:null;}})[_0x865a('0x21')](respondWithResult(_0x3447c0,null))[_0x865a('0x3d')](handleError(_0x3447c0,null));};exports[_0x865a('0x4b')]=function(_0x4e8b6a,_0x9f481c,_0x530be4){var _0xb7dd79={};var _0x4c1984={};var _0x104b56;var _0x3339bb;return db[_0x865a('0x28')][_0x865a('0x47')]({'where':{'id':_0x4e8b6a[_0x865a('0x3f')]['id']}})[_0x865a('0x21')](handleEntityNotFound(_0x9f481c,null))[_0x865a('0x21')](function(_0x14687a){if(_0x14687a){_0x104b56=_0x14687a;_0x4c1984['model']=_[_0x865a('0x40')](db[_0x865a('0x48')][_0x865a('0x29')]);_0x4c1984[_0x865a('0x2d')]=_[_0x865a('0x40')](_0x4e8b6a[_0x865a('0x2d')]);_0x4c1984['filters']=_[_0x865a('0x2e')](_0x4c1984[_0x865a('0x2c')],_0x4c1984[_0x865a('0x2d')]);_0xb7dd79[_0x865a('0x2f')]=_[_0x865a('0x2e')](_0x4c1984[_0x865a('0x2c')],qs[_0x865a('0x30')](_0x4e8b6a[_0x865a('0x2d')][_0x865a('0x30')]));_0xb7dd79[_0x865a('0x2f')]=_0xb7dd79[_0x865a('0x2f')][_0x865a('0x31')]?_0xb7dd79['attributes']:_0x4c1984[_0x865a('0x2c')];_0xb7dd79[_0x865a('0x49')]=qs[_0x865a('0x4a')](_0x4e8b6a[_0x865a('0x2d')][_0x865a('0x4a')]);_0xb7dd79['where']=qs[_0x865a('0x35')](_[_0x865a('0x36')](_0x4e8b6a['query'],_0x4c1984['filters']));if(_0x4e8b6a['query'][_0x865a('0x37')]){_0xb7dd79[_0x865a('0x34')]=_[_0x865a('0x38')](_0xb7dd79[_0x865a('0x34')],{'$or':_[_0x865a('0x27')](_0xb7dd79[_0x865a('0x2f')],function(_0x3005af){var _0x489e8a={};_0x489e8a[_0x3005af]={'$like':'%'+_0x4e8b6a[_0x865a('0x2d')]['filter']+'%'};return _0x489e8a;})});}_0xb7dd79=_[_0x865a('0x38')]({},_0xb7dd79,_0x4e8b6a['options']);return _0x104b56[_0x865a('0x4b')](_0xb7dd79);}})[_0x865a('0x21')](function(_0x443152){if(_0x443152){_0x3339bb=_0x443152[_0x865a('0x31')];if(!_0x4e8b6a['query'][_0x865a('0x32')]('nolimit')){_0xb7dd79['limit']=qs[_0x865a('0x1c')](_0x4e8b6a[_0x865a('0x2d')]['limit']);_0xb7dd79[_0x865a('0x1a')]=qs[_0x865a('0x1a')](_0x4e8b6a['query'][_0x865a('0x1a')]);}return _0x104b56['getSubjects'](_0xb7dd79);}})[_0x865a('0x21')](function(_0x597fd0){if(_0x597fd0){return _0x597fd0?{'count':_0x3339bb,'rows':_0x597fd0}:null;}})['then'](respondWithResult(_0x9f481c,null))[_0x865a('0x3d')](handleError(_0x9f481c,null));};exports[_0x865a('0x4c')]=function(_0x4b74fb,_0x3a083e,_0x2c6a9e){var _0x3e930e={};var _0x167fbd={};var _0x2eef40;var _0x2d333a;return db[_0x865a('0x28')][_0x865a('0x47')]({'where':{'id':_0x4b74fb[_0x865a('0x3f')]['id']}})[_0x865a('0x21')](handleEntityNotFound(_0x3a083e,null))[_0x865a('0x21')](function(_0x49861c){if(_0x49861c){_0x2eef40=_0x49861c;_0x167fbd['model']=_[_0x865a('0x40')](db[_0x865a('0x48')][_0x865a('0x29')]);_0x167fbd[_0x865a('0x2d')]=_['keys'](_0x4b74fb[_0x865a('0x2d')]);_0x167fbd[_0x865a('0x35')]=_[_0x865a('0x2e')](_0x167fbd[_0x865a('0x2c')],_0x167fbd['query']);_0x3e930e[_0x865a('0x2f')]=_[_0x865a('0x2e')](_0x167fbd['model'],qs[_0x865a('0x30')](_0x4b74fb['query']['fields']));_0x3e930e[_0x865a('0x2f')]=_0x3e930e[_0x865a('0x2f')][_0x865a('0x31')]?_0x3e930e[_0x865a('0x2f')]:_0x167fbd[_0x865a('0x2c')];_0x3e930e[_0x865a('0x49')]=qs['sort'](_0x4b74fb['query'][_0x865a('0x4a')]);_0x3e930e[_0x865a('0x34')]=qs[_0x865a('0x35')](_[_0x865a('0x36')](_0x4b74fb[_0x865a('0x2d')],_0x167fbd[_0x865a('0x35')]));if(_0x4b74fb['query']['filter']){_0x3e930e[_0x865a('0x34')]=_[_0x865a('0x38')](_0x3e930e[_0x865a('0x34')],{'$or':_[_0x865a('0x27')](_0x3e930e['attributes'],function(_0x2f257c){var _0x41bf40={};_0x41bf40[_0x2f257c]={'$like':'%'+_0x4b74fb[_0x865a('0x2d')][_0x865a('0x37')]+'%'};return _0x41bf40;})});}_0x3e930e=_[_0x865a('0x38')]({},_0x3e930e,_0x4b74fb[_0x865a('0x41')]);return _0x2eef40[_0x865a('0x4c')](_0x3e930e);}})[_0x865a('0x21')](function(_0x1909b8){if(_0x1909b8){_0x2d333a=_0x1909b8[_0x865a('0x31')];if(!_0x4b74fb[_0x865a('0x2d')][_0x865a('0x32')](_0x865a('0x33'))){_0x3e930e[_0x865a('0x1c')]=qs[_0x865a('0x1c')](_0x4b74fb[_0x865a('0x2d')]['limit']);_0x3e930e[_0x865a('0x1a')]=qs[_0x865a('0x1a')](_0x4b74fb[_0x865a('0x2d')][_0x865a('0x1a')]);}return _0x2eef40[_0x865a('0x4c')](_0x3e930e);}})[_0x865a('0x21')](function(_0x4c2819){if(_0x4c2819){return _0x4c2819?{'count':_0x2d333a,'rows':_0x4c2819}:null;}})['then'](respondWithResult(_0x3a083e,null))[_0x865a('0x3d')](handleError(_0x3a083e,null));};