Built motion from commit (unavailable).|2.5.14
[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 _0x934d=['set','Content-Range','apply','reject','save','destroy','name','send','index','ServicenowConfiguration','rawAttributes','fieldName','type','model','map','query','keys','filters','intersection','attributes','hasOwnProperty','nolimit','sort','where','pick','filter','merge','includeAll','include','findAll','rows','catch','show','params','fields','options','find','create','update','body','getFields','findOne','order','ServicenowField','getSubjects','getDescriptions','length','html-pdf','eml-format','rimraf','zip-dir','request-promise','bluebird','util','path','sox','to-csv','lodash','squel','crypto','jsforce','desk.js','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/environment','../../config/license/util','client','http','request','then','info','ServicenowConfiguration,\x20%s,\x20%s','request\x20sent','debug','ServicenowConfiguration,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','sendStatus','end','status','json','count','offset','limit'];(function(_0x321bb2,_0x202794){var _0x9c12ed=function(_0x263dd3){while(--_0x263dd3){_0x321bb2['push'](_0x321bb2['shift']());}};_0x9c12ed(++_0x202794);}(_0x934d,0xe1));var _0xd934=function(_0xbd08b4,_0x4790ed){_0xbd08b4=_0xbd08b4-0x0;var _0x314f1e=_0x934d[_0xbd08b4];return _0x314f1e;};'use strict';var pdf=require(_0xd934('0x0'));var emlformat=require(_0xd934('0x1'));var rimraf=require(_0xd934('0x2'));var zipdir=require(_0xd934('0x3'));var jsonpatch=require('fast-json-patch');var rp=require(_0xd934('0x4'));var moment=require('moment');var BPromise=require(_0xd934('0x5'));var Mustache=require('mustache');var util=require(_0xd934('0x6'));var path=require(_0xd934('0x7'));var sox=require(_0xd934('0x8'));var csv=require(_0xd934('0x9'));var ejs=require('ejs');var fs=require('fs');var _=require(_0xd934('0xa'));var squel=require(_0xd934('0xb'));var crypto=require(_0xd934('0xc'));var jsforce=require(_0xd934('0xd'));var deskjs=require(_0xd934('0xe'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0xd934('0xf'));var qs=require(_0xd934('0x10'));var as=require(_0xd934('0x11'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0xd934('0x12'));var utils=require('../../config/utils');var config=require(_0xd934('0x13'));var licenseUtil=require(_0xd934('0x14'));var db=require('../../mysqldb')['db'];var jayson=require('jayson/promise');var client=jayson[_0xd934('0x15')][_0xd934('0x16')]({'port':0x232a});function respondWithRpcPromise(_0x2ac45d,_0x49621a,_0x1126a0,_0xe7a495){return new BPromise(function(_0x2da733,_0x9ef0bc){var _0x37323e=_0xe7a495||client;return _0x37323e[_0xd934('0x17')](_0x2ac45d,_0x1126a0)[_0xd934('0x18')](function(_0x5362fb){logger[_0xd934('0x19')](_0xd934('0x1a'),_0x49621a,_0xd934('0x1b'));logger[_0xd934('0x1c')](_0xd934('0x1d'),_0x49621a,_0xd934('0x1b'),JSON[_0xd934('0x1e')](_0x5362fb));if(_0x5362fb[_0xd934('0x1f')]){if(_0x5362fb[_0xd934('0x1f')][_0xd934('0x20')]===0x1f4){logger[_0xd934('0x1f')](_0xd934('0x1a'),_0x49621a,_0x5362fb[_0xd934('0x1f')]['message']);return _0x9ef0bc(_0x5362fb[_0xd934('0x1f')][_0xd934('0x21')]);}logger[_0xd934('0x1f')](_0xd934('0x1a'),_0x49621a,_0x5362fb[_0xd934('0x1f')]['message']);return _0x2da733(_0x5362fb['error'][_0xd934('0x21')]);}else{logger[_0xd934('0x19')]('ServicenowConfiguration,\x20%s,\x20%s',_0x49621a,_0xd934('0x1b'));_0x2da733(_0x5362fb[_0xd934('0x22')]['message']);}})['catch'](function(_0x41412f){logger['error']('ServicenowConfiguration,\x20%s,\x20%s',_0x49621a,_0x41412f);_0x9ef0bc(_0x41412f);});});}function respondWithStatusCode(_0x500f03,_0x39dae7){_0x39dae7=_0x39dae7||0xcc;return function(_0x2c68e5){if(_0x2c68e5){return _0x500f03[_0xd934('0x23')](_0x39dae7);}return _0x500f03['status'](_0x39dae7)[_0xd934('0x24')]();};}function respondWithResult(_0x16d3f0,_0x32c026){_0x32c026=_0x32c026||0xc8;return function(_0xd00622){if(_0xd00622){return _0x16d3f0[_0xd934('0x25')](_0x32c026)[_0xd934('0x26')](_0xd00622);}};}function respondWithFilteredResult(_0x387d7e,_0x199a40){return function(_0x33a6ee){if(_0x33a6ee){var _0xb4e1b8=_0x33a6ee[_0xd934('0x27')],_0x1335eb=_0x199a40[_0xd934('0x28')],_0x2a54a4=_0x199a40[_0xd934('0x28')]+_0x199a40[_0xd934('0x29')],_0x397150;if(_0x2a54a4>=_0xb4e1b8){_0x2a54a4=_0xb4e1b8;_0x397150=0xc8;}else{_0x397150=0xce;}_0x387d7e[_0xd934('0x25')](_0x397150);return _0x387d7e[_0xd934('0x2a')](_0xd934('0x2b'),_0x1335eb+'-'+_0x2a54a4+'/'+_0xb4e1b8)[_0xd934('0x26')](_0x33a6ee);}return null;};}function patchUpdates(_0x1959bc){return function(_0x4caabe){try{jsonpatch[_0xd934('0x2c')](_0x4caabe,_0x1959bc,!![]);}catch(_0x57acc3){return BPromise[_0xd934('0x2d')](_0x57acc3);}return _0x4caabe[_0xd934('0x2e')]();};}function saveUpdates(_0x42f078,_0x241250){return function(_0x268143){if(_0x268143){return _0x268143['update'](_0x42f078)[_0xd934('0x18')](function(_0x14378b){return _0x14378b;});}return null;};}function removeEntity(_0x6e6179,_0x5a6ccd){return function(_0x528006){if(_0x528006){return _0x528006[_0xd934('0x2f')]()[_0xd934('0x18')](function(){_0x6e6179[_0xd934('0x25')](0xcc)[_0xd934('0x24')]();});}};}function handleEntityNotFound(_0x3aca1e,_0x29031a){return function(_0x108bb2){if(!_0x108bb2){_0x3aca1e['sendStatus'](0x194);}return _0x108bb2;};}function handleError(_0x8afcdb,_0x545c98){_0x545c98=_0x545c98||0x1f4;return function(_0x5d87fd){logger[_0xd934('0x1f')](_0x5d87fd['stack']);if(_0x5d87fd[_0xd934('0x30')]){delete _0x5d87fd['name'];}_0x8afcdb['status'](_0x545c98)[_0xd934('0x31')](_0x5d87fd);};}exports[_0xd934('0x32')]=function(_0x18b3d3,_0x11306f){var _0x248ed5={},_0x18122a={},_0x332453={'count':0x0,'rows':[]};var _0x53a260=_['map'](db[_0xd934('0x33')][_0xd934('0x34')],function(_0x3d8a4e){return{'name':_0x3d8a4e[_0xd934('0x35')],'type':_0x3d8a4e[_0xd934('0x36')]['key']};});_0x18122a[_0xd934('0x37')]=_[_0xd934('0x38')](_0x53a260,_0xd934('0x30'));_0x18122a[_0xd934('0x39')]=_[_0xd934('0x3a')](_0x18b3d3[_0xd934('0x39')]);_0x18122a[_0xd934('0x3b')]=_[_0xd934('0x3c')](_0x18122a[_0xd934('0x37')],_0x18122a[_0xd934('0x39')]);_0x248ed5[_0xd934('0x3d')]=_['intersection'](_0x18122a[_0xd934('0x37')],qs['fields'](_0x18b3d3[_0xd934('0x39')]['fields']));_0x248ed5[_0xd934('0x3d')]=_0x248ed5[_0xd934('0x3d')]['length']?_0x248ed5[_0xd934('0x3d')]:_0x18122a[_0xd934('0x37')];if(!_0x18b3d3[_0xd934('0x39')][_0xd934('0x3e')](_0xd934('0x3f'))){_0x248ed5['limit']=qs[_0xd934('0x29')](_0x18b3d3[_0xd934('0x39')][_0xd934('0x29')]);_0x248ed5[_0xd934('0x28')]=qs[_0xd934('0x28')](_0x18b3d3['query'][_0xd934('0x28')]);}_0x248ed5['order']=qs['sort'](_0x18b3d3[_0xd934('0x39')][_0xd934('0x40')]);_0x248ed5[_0xd934('0x41')]=qs[_0xd934('0x3b')](_[_0xd934('0x42')](_0x18b3d3[_0xd934('0x39')],_0x18122a['filters']),_0x53a260);if(_0x18b3d3['query'][_0xd934('0x43')]){_0x248ed5['where']=_[_0xd934('0x44')](_0x248ed5[_0xd934('0x41')],{'$or':_[_0xd934('0x38')](_0x53a260,function(_0x5e2b74){if(_0x5e2b74['type']!=='VIRTUAL'){var _0x142d43={};_0x142d43[_0x5e2b74[_0xd934('0x30')]]={'$like':'%'+_0x18b3d3[_0xd934('0x39')][_0xd934('0x43')]+'%'};return _0x142d43;}})});}_0x248ed5=_[_0xd934('0x44')]({},_0x248ed5,_0x18b3d3['options']);var _0x2e5504={'where':_0x248ed5[_0xd934('0x41')]};return db[_0xd934('0x33')][_0xd934('0x27')](_0x2e5504)[_0xd934('0x18')](function(_0x116cf4){_0x332453[_0xd934('0x27')]=_0x116cf4;if(_0x18b3d3[_0xd934('0x39')][_0xd934('0x45')]){_0x248ed5[_0xd934('0x46')]=[{'all':!![]}];}return db[_0xd934('0x33')][_0xd934('0x47')](_0x248ed5);})['then'](function(_0x67c552){_0x332453[_0xd934('0x48')]=_0x67c552;return _0x332453;})[_0xd934('0x18')](respondWithFilteredResult(_0x11306f,_0x248ed5))[_0xd934('0x49')](handleError(_0x11306f,null));};exports[_0xd934('0x4a')]=function(_0x297332,_0x319a99){var _0x5a4001={'raw':![],'where':{'id':_0x297332[_0xd934('0x4b')]['id']}},_0x4c94a2={};_0x4c94a2['model']=_[_0xd934('0x3a')](db['ServicenowConfiguration'][_0xd934('0x34')]);_0x4c94a2[_0xd934('0x39')]=_[_0xd934('0x3a')](_0x297332[_0xd934('0x39')]);_0x4c94a2[_0xd934('0x3b')]=_[_0xd934('0x3c')](_0x4c94a2[_0xd934('0x37')],_0x4c94a2[_0xd934('0x39')]);_0x5a4001[_0xd934('0x3d')]=_[_0xd934('0x3c')](_0x4c94a2['model'],qs[_0xd934('0x4c')](_0x297332[_0xd934('0x39')][_0xd934('0x4c')]));_0x5a4001[_0xd934('0x3d')]=_0x5a4001[_0xd934('0x3d')]['length']?_0x5a4001[_0xd934('0x3d')]:_0x4c94a2[_0xd934('0x37')];if(_0x297332[_0xd934('0x39')][_0xd934('0x45')]){_0x5a4001[_0xd934('0x46')]=[{'all':!![]}];}_0x5a4001=_['merge']({},_0x5a4001,_0x297332[_0xd934('0x4d')]);return db[_0xd934('0x33')][_0xd934('0x4e')](_0x5a4001)[_0xd934('0x18')](handleEntityNotFound(_0x319a99,null))[_0xd934('0x18')](respondWithResult(_0x319a99,null))[_0xd934('0x49')](handleError(_0x319a99,null));};exports[_0xd934('0x4f')]=function(_0x4744a8,_0x3414f5){return db[_0xd934('0x33')][_0xd934('0x4f')](_0x4744a8['body'],{})[_0xd934('0x18')](respondWithResult(_0x3414f5,0xc9))[_0xd934('0x49')](handleError(_0x3414f5,null));};exports[_0xd934('0x50')]=function(_0x3b5ce9,_0x14bb91){if(_0x3b5ce9[_0xd934('0x51')]['id']){delete _0x3b5ce9[_0xd934('0x51')]['id'];}return db[_0xd934('0x33')][_0xd934('0x4e')]({'where':{'id':_0x3b5ce9[_0xd934('0x4b')]['id']}})[_0xd934('0x18')](handleEntityNotFound(_0x14bb91,null))['then'](saveUpdates(_0x3b5ce9['body'],null))[_0xd934('0x18')](respondWithResult(_0x14bb91,null))['catch'](handleError(_0x14bb91,null));};exports[_0xd934('0x2f')]=function(_0x27e479,_0x3ebe90){return db['ServicenowConfiguration'][_0xd934('0x4e')]({'where':{'id':_0x27e479[_0xd934('0x4b')]['id']}})['then'](handleEntityNotFound(_0x3ebe90,null))['then'](removeEntity(_0x3ebe90,null))[_0xd934('0x49')](handleError(_0x3ebe90,null));};exports[_0xd934('0x52')]=function(_0x15d9c7,_0x5b2aca,_0x1b6214){var _0x58f844={};var _0x460458={};var _0x41585c;var _0xf7ae4;return db['ServicenowConfiguration'][_0xd934('0x53')]({'where':{'id':_0x15d9c7[_0xd934('0x4b')]['id']}})[_0xd934('0x18')](handleEntityNotFound(_0x5b2aca,null))[_0xd934('0x18')](function(_0x4ea5c3){if(_0x4ea5c3){_0x41585c=_0x4ea5c3;_0x460458['model']=_[_0xd934('0x3a')](db['ServicenowField'][_0xd934('0x34')]);_0x460458['query']=_[_0xd934('0x3a')](_0x15d9c7[_0xd934('0x39')]);_0x460458[_0xd934('0x3b')]=_[_0xd934('0x3c')](_0x460458['model'],_0x460458[_0xd934('0x39')]);_0x58f844[_0xd934('0x3d')]=_['intersection'](_0x460458[_0xd934('0x37')],qs[_0xd934('0x4c')](_0x15d9c7['query'][_0xd934('0x4c')]));_0x58f844[_0xd934('0x3d')]=_0x58f844['attributes']['length']?_0x58f844[_0xd934('0x3d')]:_0x460458[_0xd934('0x37')];_0x58f844[_0xd934('0x54')]=qs[_0xd934('0x40')](_0x15d9c7[_0xd934('0x39')][_0xd934('0x40')]);_0x58f844['where']=qs[_0xd934('0x3b')](_[_0xd934('0x42')](_0x15d9c7[_0xd934('0x39')],_0x460458[_0xd934('0x3b')]));if(_0x15d9c7[_0xd934('0x39')][_0xd934('0x43')]){_0x58f844['where']=_[_0xd934('0x44')](_0x58f844[_0xd934('0x41')],{'$or':_['map'](_0x58f844[_0xd934('0x3d')],function(_0xefd973){var _0x30fa2d={};_0x30fa2d[_0xefd973]={'$like':'%'+_0x15d9c7['query']['filter']+'%'};return _0x30fa2d;})});}_0x58f844=_[_0xd934('0x44')]({},_0x58f844,_0x15d9c7[_0xd934('0x4d')]);return _0x41585c[_0xd934('0x52')](_0x58f844);}})[_0xd934('0x18')](function(_0x25616a){if(_0x25616a){_0xf7ae4=_0x25616a['length'];if(!_0x15d9c7['query'][_0xd934('0x3e')]('nolimit')){_0x58f844[_0xd934('0x29')]=qs[_0xd934('0x29')](_0x15d9c7[_0xd934('0x39')][_0xd934('0x29')]);_0x58f844['offset']=qs[_0xd934('0x28')](_0x15d9c7[_0xd934('0x39')]['offset']);}return _0x41585c['getFields'](_0x58f844);}})[_0xd934('0x18')](function(_0x37f164){if(_0x37f164){return _0x37f164?{'count':_0xf7ae4,'rows':_0x37f164}:null;}})[_0xd934('0x18')](respondWithResult(_0x5b2aca,null))[_0xd934('0x49')](handleError(_0x5b2aca,null));};exports['getSubjects']=function(_0x331a35,_0x41c4cd,_0xe870a2){var _0x4d234d={};var _0x3b83ba={};var _0x113692;var _0x1b41d2;return db['ServicenowConfiguration'][_0xd934('0x53')]({'where':{'id':_0x331a35[_0xd934('0x4b')]['id']}})[_0xd934('0x18')](handleEntityNotFound(_0x41c4cd,null))['then'](function(_0xfa82a6){if(_0xfa82a6){_0x113692=_0xfa82a6;_0x3b83ba[_0xd934('0x37')]=_[_0xd934('0x3a')](db[_0xd934('0x55')]['rawAttributes']);_0x3b83ba[_0xd934('0x39')]=_[_0xd934('0x3a')](_0x331a35[_0xd934('0x39')]);_0x3b83ba['filters']=_[_0xd934('0x3c')](_0x3b83ba['model'],_0x3b83ba['query']);_0x4d234d[_0xd934('0x3d')]=_[_0xd934('0x3c')](_0x3b83ba[_0xd934('0x37')],qs[_0xd934('0x4c')](_0x331a35['query']['fields']));_0x4d234d[_0xd934('0x3d')]=_0x4d234d[_0xd934('0x3d')]['length']?_0x4d234d[_0xd934('0x3d')]:_0x3b83ba['model'];_0x4d234d[_0xd934('0x54')]=qs[_0xd934('0x40')](_0x331a35[_0xd934('0x39')][_0xd934('0x40')]);_0x4d234d[_0xd934('0x41')]=qs[_0xd934('0x3b')](_[_0xd934('0x42')](_0x331a35[_0xd934('0x39')],_0x3b83ba[_0xd934('0x3b')]));if(_0x331a35[_0xd934('0x39')]['filter']){_0x4d234d[_0xd934('0x41')]=_[_0xd934('0x44')](_0x4d234d[_0xd934('0x41')],{'$or':_[_0xd934('0x38')](_0x4d234d[_0xd934('0x3d')],function(_0x5237dd){var _0x5f1729={};_0x5f1729[_0x5237dd]={'$like':'%'+_0x331a35[_0xd934('0x39')][_0xd934('0x43')]+'%'};return _0x5f1729;})});}_0x4d234d=_[_0xd934('0x44')]({},_0x4d234d,_0x331a35[_0xd934('0x4d')]);return _0x113692['getSubjects'](_0x4d234d);}})[_0xd934('0x18')](function(_0x8c6bf){if(_0x8c6bf){_0x1b41d2=_0x8c6bf['length'];if(!_0x331a35[_0xd934('0x39')][_0xd934('0x3e')](_0xd934('0x3f'))){_0x4d234d[_0xd934('0x29')]=qs[_0xd934('0x29')](_0x331a35[_0xd934('0x39')]['limit']);_0x4d234d['offset']=qs[_0xd934('0x28')](_0x331a35['query']['offset']);}return _0x113692[_0xd934('0x56')](_0x4d234d);}})[_0xd934('0x18')](function(_0x4adaad){if(_0x4adaad){return _0x4adaad?{'count':_0x1b41d2,'rows':_0x4adaad}:null;}})[_0xd934('0x18')](respondWithResult(_0x41c4cd,null))['catch'](handleError(_0x41c4cd,null));};exports[_0xd934('0x57')]=function(_0x4792fb,_0x56bf31,_0x211db3){var _0x3b8172={};var _0x2d2784={};var _0x45d0e6;var _0x39038c;return db['ServicenowConfiguration'][_0xd934('0x53')]({'where':{'id':_0x4792fb[_0xd934('0x4b')]['id']}})[_0xd934('0x18')](handleEntityNotFound(_0x56bf31,null))['then'](function(_0xebbaa2){if(_0xebbaa2){_0x45d0e6=_0xebbaa2;_0x2d2784[_0xd934('0x37')]=_[_0xd934('0x3a')](db[_0xd934('0x55')][_0xd934('0x34')]);_0x2d2784['query']=_[_0xd934('0x3a')](_0x4792fb['query']);_0x2d2784[_0xd934('0x3b')]=_[_0xd934('0x3c')](_0x2d2784[_0xd934('0x37')],_0x2d2784[_0xd934('0x39')]);_0x3b8172[_0xd934('0x3d')]=_['intersection'](_0x2d2784[_0xd934('0x37')],qs[_0xd934('0x4c')](_0x4792fb[_0xd934('0x39')][_0xd934('0x4c')]));_0x3b8172[_0xd934('0x3d')]=_0x3b8172[_0xd934('0x3d')][_0xd934('0x58')]?_0x3b8172['attributes']:_0x2d2784[_0xd934('0x37')];_0x3b8172[_0xd934('0x54')]=qs[_0xd934('0x40')](_0x4792fb[_0xd934('0x39')]['sort']);_0x3b8172[_0xd934('0x41')]=qs[_0xd934('0x3b')](_['pick'](_0x4792fb[_0xd934('0x39')],_0x2d2784[_0xd934('0x3b')]));if(_0x4792fb['query'][_0xd934('0x43')]){_0x3b8172['where']=_['merge'](_0x3b8172[_0xd934('0x41')],{'$or':_[_0xd934('0x38')](_0x3b8172[_0xd934('0x3d')],function(_0x103ebe){var _0x405d2a={};_0x405d2a[_0x103ebe]={'$like':'%'+_0x4792fb[_0xd934('0x39')][_0xd934('0x43')]+'%'};return _0x405d2a;})});}_0x3b8172=_[_0xd934('0x44')]({},_0x3b8172,_0x4792fb[_0xd934('0x4d')]);return _0x45d0e6[_0xd934('0x57')](_0x3b8172);}})[_0xd934('0x18')](function(_0x1352eb){if(_0x1352eb){_0x39038c=_0x1352eb[_0xd934('0x58')];if(!_0x4792fb['query'][_0xd934('0x3e')](_0xd934('0x3f'))){_0x3b8172[_0xd934('0x29')]=qs[_0xd934('0x29')](_0x4792fb[_0xd934('0x39')][_0xd934('0x29')]);_0x3b8172['offset']=qs[_0xd934('0x28')](_0x4792fb[_0xd934('0x39')][_0xd934('0x28')]);}return _0x45d0e6[_0xd934('0x57')](_0x3b8172);}})[_0xd934('0x18')](function(_0x1eb58f){if(_0x1eb58f){return _0x1eb58f?{'count':_0x39038c,'rows':_0x1eb58f}:null;}})['then'](respondWithResult(_0x56bf31,null))['catch'](handleError(_0x56bf31,null));};