8782249862974db298d3849f63a089068276bd78
[motion2.git] / server / api / intDynamics365Account / intDynamics365Account.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 _0xf679=['createdon','customeridname','customeridtype','customeridyominame','emailaddress','entitlementidname','entityimage_timestamp','entityimage_url','exchangerate','influencescore','kbarticleidname','lastonholdtime','masteridname','modifiedbyexternalpartyname','modifiedbyexternalpartyyominame','modifiedbyname','modifiedbyyominame','modifiedon','modifiedonbehalfbyname','modifiedonbehalfbyyominame','msdyn_iotalertname','numberofchildincidents','overriddencreatedon','owneridname','owneridtype','primarycontactidyominame','productidname','productserialnumber','resolveby','responseby','responsiblecontactidname','responsiblecontactidyominame','sentimentvalue','socialprofileidname','ticketnumber','transactioncurrencyidname','traversedpath','versionnumber','concat','tenantId','clientId','modernAuthentication','CloudProvider','data5','data7','access_token','remoteUri','POST','https://login.microsoftonline.com/','username','password','clientSecret','GET','EntityDefinitions?$select=DisplayName,EntitySetName&$filter=SchemaName\x20eq\x20\x27','4.0','value','MetadataId','EntityDefinitions(',')?$select=LogicalName&$expand=Attributes($select=LogicalName)','Bearer\x20','Attributes','remove','includes','@odata.type','substring','PicklistAttributeMetadata','all','forEach','isNil','BooleanAttributeMetadata','push','StringAttributeMetadata','DoubleAttributeMetadata','IntegerAttributeMetadata','MemoAttributeMetadata','DateTimeAttributeMetadata','EntityNameAttributeMetadata','StateAttributeMetadata','DecimalAttributeMetadata','test','statusCode','send','Wrong\x20credentials',')/Attributes(',')/Microsoft.Dynamics.CRM.PicklistAttributeMetadata?','$select=DisplayName,LogicalName&$expand=OptionSet($select=Options)','OptionSet','Options','Label','UserLocalizedLabel','Value','LogicalName','DisplayName',')/Microsoft.Dynamics.CRM.BooleanAttributeMetadata?$select=DisplayName,LogicalName&$expand=OptionSet($select=FalseOption,\x20TrueOption)','TrueOption','FalseOption','false','request-promise','util','lodash','../../config/logger','api','../../mysqldb','status','undefined','limit','count','offset','set','Content-Range','json','destroy','then','end','error','stack','name','index','map','Dynamics365Account','rawAttributes','fieldName','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','where','pick','filter','merge','type','options','includeAll','findAll','rows','catch','params','include','find','create','body','update','getConfigurations','findOne','AccountId','Subjects','getSubjects','channel','getDescriptions','Dynamics365Configuration','Dynamics365Field','Descriptions','slice','lastIndexOf','format','%s/api/data/v9.0/','getFields','ticketType','incident','Incident','PhoneCall','description','customerid','caseorigincode','subject','phonenumber','regardingobjectid','phonecall_activity_parties','accountidname','accountidyominame','billedserviceunits','contactidyominame','contractdetailidname','contractidname','createdbyexternalpartyname','createdbyexternalpartyyominame','createdbyname'];(function(_0x1c75e1,_0x151481){var _0x184692=function(_0x11e498){while(--_0x11e498){_0x1c75e1['push'](_0x1c75e1['shift']());}};_0x184692(++_0x151481);}(_0xf679,0x11a));var _0x9f67=function(_0x5d38c1,_0x711f59){_0x5d38c1=_0x5d38c1-0x0;var _0x25c459=_0xf679[_0x5d38c1];return _0x25c459;};'use strict';var rp=require(_0x9f67('0x0'));var util=require(_0x9f67('0x1'));var _=require(_0x9f67('0x2'));var qs=require('../../components/parsers/qs');var logger=require(_0x9f67('0x3'))(_0x9f67('0x4'));var db=require(_0x9f67('0x5'))['db'];var integrations=require('../../components/integrations/configuration');function respondWithResult(_0x4f6287,_0x19bbd4){_0x19bbd4=_0x19bbd4||0xc8;return function(_0x1a3241){if(_0x1a3241){return _0x4f6287[_0x9f67('0x6')](_0x19bbd4)['json'](_0x1a3241);}};}function respondWithFilteredResult(_0x2b44c3,_0x1b5944){return function(_0x5e39a3){if(_0x5e39a3){var _0x39ef22=typeof _0x1b5944['offset']===_0x9f67('0x7')&&typeof _0x1b5944[_0x9f67('0x8')]===_0x9f67('0x7');var _0x3bec44=_0x5e39a3[_0x9f67('0x9')];var _0x5e429d=_0x39ef22?0x0:_0x1b5944[_0x9f67('0xa')];var _0x53305f=_0x39ef22?_0x5e39a3[_0x9f67('0x9')]:_0x1b5944['offset']+_0x1b5944[_0x9f67('0x8')];var _0x40cba5;if(_0x53305f>=_0x3bec44){_0x53305f=_0x3bec44;_0x40cba5=0xc8;}else{_0x40cba5=0xce;}_0x2b44c3[_0x9f67('0x6')](_0x40cba5);return _0x2b44c3[_0x9f67('0xb')](_0x9f67('0xc'),_0x5e429d+'-'+_0x53305f+'/'+_0x3bec44)[_0x9f67('0xd')](_0x5e39a3);}return null;};}function saveUpdates(_0x178698){return function(_0x4d7130){if(_0x4d7130){return _0x4d7130['update'](_0x178698)['then'](function(_0x1d432f){return _0x1d432f;});}return null;};}function removeEntity(_0x36a863){return function(_0x378c17){if(_0x378c17){return _0x378c17[_0x9f67('0xe')]()[_0x9f67('0xf')](function(){_0x36a863[_0x9f67('0x6')](0xcc)[_0x9f67('0x10')]();});}};}function handleEntityNotFound(_0x110a77){return function(_0x3dbdb9){if(!_0x3dbdb9){_0x110a77['sendStatus'](0x194);}return _0x3dbdb9;};}function handleError(_0x30b8e5,_0x1b63a7){_0x1b63a7=_0x1b63a7||0x1f4;return function(_0x1286c8){logger[_0x9f67('0x11')](_0x1286c8[_0x9f67('0x12')]);if(_0x1286c8[_0x9f67('0x13')]){delete _0x1286c8[_0x9f67('0x13')];}_0x30b8e5[_0x9f67('0x6')](_0x1b63a7)['send'](_0x1286c8);};}exports[_0x9f67('0x14')]=function(_0x351aeb,_0x31712e){var _0x25928c={},_0xcaeda4={},_0x1f0287={'count':0x0,'rows':[]};var _0x21fc57=_[_0x9f67('0x15')](db[_0x9f67('0x16')][_0x9f67('0x17')],function(_0x2e016e){return{'name':_0x2e016e[_0x9f67('0x18')],'type':_0x2e016e['type'][_0x9f67('0x19')]};});_0xcaeda4[_0x9f67('0x1a')]=_['map'](_0x21fc57,_0x9f67('0x13'));_0xcaeda4[_0x9f67('0x1b')]=_[_0x9f67('0x1c')](_0x351aeb['query']);_0xcaeda4[_0x9f67('0x1d')]=_[_0x9f67('0x1e')](_0xcaeda4[_0x9f67('0x1a')],_0xcaeda4['query']);_0x25928c[_0x9f67('0x1f')]=_['intersection'](_0xcaeda4[_0x9f67('0x1a')],qs[_0x9f67('0x20')](_0x351aeb['query'][_0x9f67('0x20')]));_0x25928c[_0x9f67('0x1f')]=_0x25928c[_0x9f67('0x1f')][_0x9f67('0x21')]?_0x25928c[_0x9f67('0x1f')]:_0xcaeda4[_0x9f67('0x1a')];if(!_0x351aeb['query'][_0x9f67('0x22')]('nolimit')){_0x25928c[_0x9f67('0x8')]=qs[_0x9f67('0x8')](_0x351aeb[_0x9f67('0x1b')][_0x9f67('0x8')]);_0x25928c[_0x9f67('0xa')]=qs[_0x9f67('0xa')](_0x351aeb[_0x9f67('0x1b')][_0x9f67('0xa')]);}_0x25928c[_0x9f67('0x23')]=qs['sort'](_0x351aeb['query'][_0x9f67('0x24')]);_0x25928c[_0x9f67('0x25')]=qs['filters'](_[_0x9f67('0x26')](_0x351aeb[_0x9f67('0x1b')],_0xcaeda4[_0x9f67('0x1d')]),_0x21fc57);if(_0x351aeb[_0x9f67('0x1b')][_0x9f67('0x27')]){_0x25928c[_0x9f67('0x25')]=_[_0x9f67('0x28')](_0x25928c[_0x9f67('0x25')],{'$or':_[_0x9f67('0x15')](_0x21fc57,function(_0x224e05){if(_0x224e05[_0x9f67('0x29')]!=='VIRTUAL'){var _0xb48388={};_0xb48388[_0x224e05['name']]={'$like':'%'+_0x351aeb[_0x9f67('0x1b')][_0x9f67('0x27')]+'%'};return _0xb48388;}})});}_0x25928c=_[_0x9f67('0x28')]({},_0x25928c,_0x351aeb[_0x9f67('0x2a')]);var _0xb7d764={'where':_0x25928c[_0x9f67('0x25')]};return db['Dynamics365Account']['count'](_0xb7d764)['then'](function(_0x52358d){_0x1f0287[_0x9f67('0x9')]=_0x52358d;if(_0x351aeb[_0x9f67('0x1b')][_0x9f67('0x2b')]){_0x25928c['include']=[{'all':!![]}];}return db['Dynamics365Account'][_0x9f67('0x2c')](_0x25928c);})[_0x9f67('0xf')](function(_0xaeb9dc){_0x1f0287[_0x9f67('0x2d')]=_0xaeb9dc;return _0x1f0287;})[_0x9f67('0xf')](respondWithFilteredResult(_0x31712e,_0x25928c))[_0x9f67('0x2e')](handleError(_0x31712e,null));};exports['show']=function(_0x32ab2e,_0x5cde90){var _0x4effc1={'raw':![],'where':{'id':_0x32ab2e[_0x9f67('0x2f')]['id']}},_0x508d37={};_0x508d37[_0x9f67('0x1a')]=_[_0x9f67('0x1c')](db[_0x9f67('0x16')][_0x9f67('0x17')]);_0x508d37[_0x9f67('0x1b')]=_[_0x9f67('0x1c')](_0x32ab2e[_0x9f67('0x1b')]);_0x508d37['filters']=_[_0x9f67('0x1e')](_0x508d37[_0x9f67('0x1a')],_0x508d37[_0x9f67('0x1b')]);_0x4effc1[_0x9f67('0x1f')]=_[_0x9f67('0x1e')](_0x508d37[_0x9f67('0x1a')],qs['fields'](_0x32ab2e[_0x9f67('0x1b')][_0x9f67('0x20')]));_0x4effc1[_0x9f67('0x1f')]=_0x4effc1[_0x9f67('0x1f')][_0x9f67('0x21')]?_0x4effc1[_0x9f67('0x1f')]:_0x508d37[_0x9f67('0x1a')];if(_0x32ab2e['query'][_0x9f67('0x2b')]){_0x4effc1[_0x9f67('0x30')]=[{'all':!![]}];}_0x4effc1=_[_0x9f67('0x28')]({},_0x4effc1,_0x32ab2e[_0x9f67('0x2a')]);return db[_0x9f67('0x16')][_0x9f67('0x31')](_0x4effc1)['then'](handleEntityNotFound(_0x5cde90,null))['then'](respondWithResult(_0x5cde90,null))['catch'](handleError(_0x5cde90,null));};exports[_0x9f67('0x32')]=function(_0x230363,_0x53d97e){return db[_0x9f67('0x16')][_0x9f67('0x32')](_0x230363[_0x9f67('0x33')],{})['then'](respondWithResult(_0x53d97e,0xc9))[_0x9f67('0x2e')](handleError(_0x53d97e,null));};exports[_0x9f67('0x34')]=function(_0x1b41c0,_0x11c4aa){if(_0x1b41c0[_0x9f67('0x33')]['id']){delete _0x1b41c0[_0x9f67('0x33')]['id'];}return db[_0x9f67('0x16')][_0x9f67('0x31')]({'where':{'id':_0x1b41c0[_0x9f67('0x2f')]['id']}})['then'](handleEntityNotFound(_0x11c4aa,null))['then'](saveUpdates(_0x1b41c0[_0x9f67('0x33')],null))[_0x9f67('0xf')](respondWithResult(_0x11c4aa,null))[_0x9f67('0x2e')](handleError(_0x11c4aa,null));};exports[_0x9f67('0xe')]=function(_0xc97a07,_0x117521){return db['Dynamics365Account']['find']({'where':{'id':_0xc97a07[_0x9f67('0x2f')]['id']}})[_0x9f67('0xf')](handleEntityNotFound(_0x117521,null))[_0x9f67('0xf')](removeEntity(_0x117521,null))[_0x9f67('0x2e')](handleError(_0x117521,null));};exports[_0x9f67('0x35')]=function(_0x2ca593,_0x5bbd50){var _0xa02d8b={};var _0xc90fb6={};var _0xb01b4d;var _0x3992f1;return db['Dynamics365Account'][_0x9f67('0x36')]({'where':{'id':_0x2ca593[_0x9f67('0x2f')]['id']}})[_0x9f67('0xf')](handleEntityNotFound(_0x5bbd50,null))[_0x9f67('0xf')](function(_0x52a374){if(_0x52a374){_0xb01b4d=_0x52a374;_0xc90fb6[_0x9f67('0x1a')]=_[_0x9f67('0x1c')](db['Dynamics365Configuration']['rawAttributes']);_0xc90fb6[_0x9f67('0x1b')]=_[_0x9f67('0x1c')](_0x2ca593[_0x9f67('0x1b')]);_0xc90fb6['filters']=_[_0x9f67('0x1e')](_0xc90fb6[_0x9f67('0x1a')],_0xc90fb6['query']);_0xa02d8b[_0x9f67('0x1f')]=_[_0x9f67('0x1e')](_0xc90fb6[_0x9f67('0x1a')],qs[_0x9f67('0x20')](_0x2ca593[_0x9f67('0x1b')]['fields']));_0xa02d8b[_0x9f67('0x1f')]=_0xa02d8b[_0x9f67('0x1f')][_0x9f67('0x21')]?_0xa02d8b['attributes']:_0xc90fb6[_0x9f67('0x1a')];_0xa02d8b[_0x9f67('0x23')]=qs[_0x9f67('0x24')](_0x2ca593[_0x9f67('0x1b')]['sort']);_0xa02d8b[_0x9f67('0x25')]=qs[_0x9f67('0x1d')](_[_0x9f67('0x26')](_0x2ca593[_0x9f67('0x1b')],_0xc90fb6['filters']));if(_0x2ca593[_0x9f67('0x1b')][_0x9f67('0x27')]){_0xa02d8b[_0x9f67('0x25')]=_[_0x9f67('0x28')](_0xa02d8b[_0x9f67('0x25')],{'$or':_['map'](_0xa02d8b[_0x9f67('0x1f')],function(_0x21b53e){var _0x455b15={};_0x455b15[_0x21b53e]={'$like':'%'+_0x2ca593[_0x9f67('0x1b')][_0x9f67('0x27')]+'%'};return _0x455b15;})});}_0xa02d8b=_[_0x9f67('0x28')]({},_0xa02d8b,_0x2ca593[_0x9f67('0x2a')]);return _0xb01b4d[_0x9f67('0x35')](_0xa02d8b);}})[_0x9f67('0xf')](function(_0x2cfba8){if(_0x2cfba8){_0x3992f1=_0x2cfba8[_0x9f67('0x21')];if(!_0x2ca593[_0x9f67('0x1b')][_0x9f67('0x22')]('nolimit')){_0xa02d8b[_0x9f67('0x8')]=qs[_0x9f67('0x8')](_0x2ca593[_0x9f67('0x1b')][_0x9f67('0x8')]);_0xa02d8b[_0x9f67('0xa')]=qs[_0x9f67('0xa')](_0x2ca593['query']['offset']);}return _0xb01b4d[_0x9f67('0x35')](_0xa02d8b);}})['then'](function(_0x53d8e3){if(_0x53d8e3){return _0x53d8e3?{'count':_0x3992f1,'rows':_0x53d8e3}:null;}})[_0x9f67('0xf')](respondWithResult(_0x5bbd50,null))[_0x9f67('0x2e')](handleError(_0x5bbd50,null));};exports['addConfiguration']=function(_0x2a6afc,_0x29c4ba){if(_0x2a6afc[_0x9f67('0x33')]['id']){delete _0x2a6afc['body']['id'];}return db[_0x9f67('0x16')][_0x9f67('0x36')]({'where':{'id':_0x2a6afc[_0x9f67('0x2f')]['id']}})[_0x9f67('0xf')](handleEntityNotFound(_0x29c4ba,null))[_0x9f67('0xf')](function(_0x34d450){if(_0x34d450){_0x2a6afc[_0x9f67('0x33')][_0x9f67('0x37')]=_0x34d450['id'];_0x2a6afc[_0x9f67('0x33')][_0x9f67('0x38')]=integrations[_0x9f67('0x39')](_0x2a6afc[_0x9f67('0x33')][_0x9f67('0x3a')],_0x2a6afc[_0x9f67('0x33')]['type']);_0x2a6afc['body']['Descriptions']=integrations[_0x9f67('0x3b')](_0x2a6afc[_0x9f67('0x33')]['channel'],_0x2a6afc[_0x9f67('0x33')]['type']);return db[_0x9f67('0x3c')][_0x9f67('0x32')](_0x2a6afc[_0x9f67('0x33')],{'include':[{'model':db[_0x9f67('0x3d')],'as':_0x9f67('0x38')},{'model':db[_0x9f67('0x3d')],'as':_0x9f67('0x3e')}]});}return null;})[_0x9f67('0xf')](respondWithResult(_0x29c4ba,null))[_0x9f67('0x2e')](handleError(_0x29c4ba,null));};function sanitizeRemoteUri(_0x132194){var _0xe0e797=_0x132194[_0x9f67('0x3f')](-0x1);if(_0xe0e797==='/')return _0x132194['substring'](0x0,_0x132194[_0x9f67('0x40')](_0xe0e797));return _0x132194;}function getWebApiUrl(_0x2b68cf){return util[_0x9f67('0x41')](_0x9f67('0x42'),_0x2b68cf);}exports[_0x9f67('0x43')]=function(_0x586ccb,_0x4467ee){var _0x29d5f3=_0x586ccb[_0x9f67('0x1b')][_0x9f67('0x44')];var _0x4131e6=_0x29d5f3===_0x9f67('0x45')?_0x9f67('0x46'):_0x9f67('0x47');var _0x549259='';var _0x42d3c9='';var _0x16940b='';var _0x345c99='';var _0x39b749='';var _0x2dc2f5='';var _0x14e1b6='';var _0x385610='';var _0x1240da=['title',_0x9f67('0x48'),_0x9f67('0x49'),'ownerid',_0x9f67('0x4a'),_0x9f67('0x4b'),_0x9f67('0x4c'),_0x9f67('0x4d'),'directioncode',_0x9f67('0x4e')];var _0x1b1d7f=[_0x9f67('0x4f'),_0x9f67('0x50'),'actualserviceunits',_0x9f67('0x51'),'contactidname',_0x9f67('0x52'),_0x9f67('0x53'),_0x9f67('0x54'),_0x9f67('0x55'),_0x9f67('0x56'),_0x9f67('0x57'),'createdbyyominame',_0x9f67('0x58'),'createdonbehalfbyname','createdonbehalfbyyominame',_0x9f67('0x59'),_0x9f67('0x5a'),_0x9f67('0x5b'),_0x9f67('0x5c'),_0x9f67('0x5d'),_0x9f67('0x5e'),_0x9f67('0x5f'),'escalatedon',_0x9f67('0x60'),'firstresponsebykpiidname','followupby','importsequencenumber',_0x9f67('0x61'),_0x9f67('0x62'),_0x9f67('0x63'),_0x9f67('0x64'),_0x9f67('0x65'),_0x9f67('0x66'),_0x9f67('0x67'),_0x9f67('0x68'),_0x9f67('0x69'),_0x9f67('0x6a'),_0x9f67('0x6b'),'msdyn_incidenttypename',_0x9f67('0x6c'),_0x9f67('0x6d'),'onholdtime',_0x9f67('0x6e'),_0x9f67('0x6f'),_0x9f67('0x70'),'owneridyominame','parentcaseidname','primarycontactidname',_0x9f67('0x71'),'prioritycodename',_0x9f67('0x72'),_0x9f67('0x73'),_0x9f67('0x74'),'resolvebykpiidname',_0x9f67('0x75'),_0x9f67('0x76'),_0x9f67('0x77'),_0x9f67('0x78'),'slainvokedidname','slaname',_0x9f67('0x79'),'statecode','statuscode','subjectidname',_0x9f67('0x7a'),'timezoneruleversionnumber',_0x9f67('0x7b'),_0x9f67('0x7c'),'utcconversiontimezonecode',_0x9f67('0x7d')];var _0x561927=_0x1240da[_0x9f67('0x7e')](_0x1b1d7f);return db[_0x9f67('0x16')]['findOne']({'where':{'id':_0x586ccb[_0x9f67('0x2f')]['id']},'attributes':['id','username','password','remoteUri',_0x9f67('0x7f'),_0x9f67('0x80'),'clientSecret',_0x9f67('0x81')],'include':[{'model':db['CloudProvider'],'as':_0x9f67('0x82'),'attributes':['id',_0x9f67('0x83'),_0x9f67('0x84')]}]})['then'](handleEntityNotFound(_0x4467ee,null))[_0x9f67('0xf')](function(_0x12cb63){if(_0x12cb63){if(_0x12cb63[_0x9f67('0x81')]){_0x12cb63[_0x9f67('0x85')]=_0x12cb63[_0x9f67('0x82')][_0x9f67('0x83')];_0x385610=sanitizeRemoteUri(_0x12cb63[_0x9f67('0x82')][_0x9f67('0x84')]);_0x14e1b6=getWebApiUrl(_0x385610);return _0x12cb63;}_0x385610=sanitizeRemoteUri(_0x12cb63[_0x9f67('0x86')]);_0x14e1b6=getWebApiUrl(_0x385610);var _0xcf4c2d={'method':_0x9f67('0x87'),'uri':_0x9f67('0x88')+_0x12cb63[_0x9f67('0x7f')]+'/oauth2/token','form':{'client_id':_0x12cb63[_0x9f67('0x80')],'resource':_0x385610,'username':_0x12cb63[_0x9f67('0x89')],'password':_0x12cb63['password'],'grant_type':_0x9f67('0x8a'),'client_secret':_0x12cb63[_0x9f67('0x8b')]},'json':!![]};return rp(_0xcf4c2d);}})[_0x9f67('0xf')](function(_0x2ae923){_0x2dc2f5=_0x2ae923[_0x9f67('0x85')];var _0x4ba374={'method':_0x9f67('0x8c'),'uri':encodeURI(_0x14e1b6+_0x9f67('0x8d')+_0x4131e6+'\x27'),'headers':{'Authorization':'Bearer\x20'+_0x2dc2f5,'If-None-Match':null,'OData-Version':_0x9f67('0x8e')},'json':!![]};return rp(_0x4ba374);})[_0x9f67('0xf')](function(_0x3685fd){var _0x510e31=_0x3685fd[_0x9f67('0x8f')][0x0];var _0x19bc3d=_0x510e31[_0x9f67('0x90')];var _0x50a023={'method':'GET','uri':_0x14e1b6+_0x9f67('0x91')+_0x19bc3d+_0x9f67('0x92'),'headers':{'Authorization':_0x9f67('0x93')+_0x2dc2f5,'If-None-Match':null,'OData-Version':_0x9f67('0x8e')},'json':!![]};return rp(_0x50a023);})[_0x9f67('0xf')](function(_0x1840dc){_0x549259=_0x1840dc;_0x42d3c9=_0x549259[_0x9f67('0x94')];_0x42d3c9=_[_0x9f67('0x95')](_0x42d3c9,function(_0x1b151f){return!_0x561927[_0x9f67('0x96')](_0x1b151f['LogicalName']);});var _0x3c9415=[];var _0x3be8e4=[];_0x42d3c9['forEach'](function(_0x585792){if(_0x585792[_0x9f67('0x97')]){var _0x2878f4=_0x585792[_0x9f67('0x97')][_0x9f67('0x98')](_0x585792[_0x9f67('0x97')][_0x9f67('0x40')]('.')+0x1);if(_0x2878f4===_0x9f67('0x99')){_0x3c9415['push'](getSelectList(_0x14e1b6,_0x29d5f3,_0x3be8e4,_0x549259[_0x9f67('0x90')],_0x585792[_0x9f67('0x90')],_0x2dc2f5));}}});return Promise[_0x9f67('0x9a')](_0x3c9415);})['then'](function(_0x4ba284){_0x16940b=_0x4ba284[0x0];var _0xbb7e5c=[];var _0x4177fb=[];_0x42d3c9[_0x9f67('0x9b')](function(_0x164ebe){if(!_[_0x9f67('0x9c')](_0x164ebe[_0x9f67('0x97')])){var _0x132b9b=_0x164ebe['@odata.type'][_0x9f67('0x98')](_0x164ebe[_0x9f67('0x97')][_0x9f67('0x40')]('.')+0x1);if(_0x132b9b===_0x9f67('0x9d')){_0xbb7e5c[_0x9f67('0x9e')](getBooleanList(_0x14e1b6,_0x29d5f3,_0x4177fb,_0x549259[_0x9f67('0x90')],_0x164ebe[_0x9f67('0x90')],_0x2dc2f5));}}});return Promise[_0x9f67('0x9a')](_0xbb7e5c);})[_0x9f67('0xf')](function(_0x30f04f){_0x345c99=_0x30f04f[0x0];var _0x58e9ef=[];var _0x440cec=[];_0x42d3c9['forEach'](function(_0x24f5f4){if(_0x24f5f4[_0x9f67('0x97')]){var _0x189ad0=_0x24f5f4['@odata.type'][_0x9f67('0x98')](_0x24f5f4['@odata.type'][_0x9f67('0x40')]('.')+0x1);if(_0x189ad0===_0x9f67('0x9f')||_0x189ad0===_0x9f67('0xa0')||_0x189ad0==='BigIntAttributeMetadata'||_0x189ad0===_0x9f67('0xa1')||_0x189ad0===_0x9f67('0xa2')||_0x189ad0===_0x9f67('0xa3')||_0x189ad0==='StatusAttributeMetadata'||_0x189ad0===_0x9f67('0xa4')||_0x189ad0===_0x9f67('0xa5')||_0x189ad0===_0x9f67('0xa6')){_0x58e9ef[_0x9f67('0x9e')](getInputList(_0x14e1b6,_0x29d5f3,_0x189ad0,_0x440cec,_0x549259[_0x9f67('0x90')],_0x24f5f4['MetadataId'],_0x2dc2f5));}}});return Promise[_0x9f67('0x9a')](_0x58e9ef);})[_0x9f67('0xf')](function(_0x5d6353){_0x39b749=_0x5d6353[0x0];var _0x2a3bd8=_0x16940b[_0x9f67('0x7e')](_0x345c99)[_0x9f67('0x7e')](_0x39b749);var _0x3144b8={'count':_0x2a3bd8[_0x9f67('0x21')],'rows':_0x2a3bd8};return _0x3144b8;})['then'](respondWithResult(_0x4467ee,null))['catch'](function(_0x5bac95){var _0x28916f=_0x586ccb['query'][_0x9f67('0xa7')]?0x1f4:_0x5bac95[_0x9f67('0xa8')]||0x1f4;logger[_0x9f67('0x11')](_0x5bac95[_0x9f67('0x12')]);delete _0x5bac95[_0x9f67('0x13')];if(_0x28916f===0x191){_0x28916f=0x190;}_0x4467ee[_0x9f67('0x6')](_0x28916f)[_0x9f67('0xa9')](_0x586ccb['query'][_0x9f67('0xa7')]?{'message':_0x9f67('0xaa'),'statusCode':_0x5bac95[_0x9f67('0xa8')]}:_0x5bac95);});};function getSelectList(_0x2fea8b,_0x3541ca,_0x4d2ebc,_0x35b1af,_0x247406,_0x18721b){var _0x3fde2a={'method':_0x9f67('0x8c'),'uri':_0x2fea8b+'EntityDefinitions('+_0x35b1af+_0x9f67('0xab')+_0x247406+_0x9f67('0xac')+_0x9f67('0xad'),'headers':{'Authorization':_0x9f67('0x93')+_0x18721b,'If-None-Match':null,'OData-Version':_0x9f67('0x8e')},'json':!![]};return rp(_0x3fde2a)[_0x9f67('0xf')](function(_0x55259e){var _0x1e94e7=[];var _0x34cc1c=_0x55259e[_0x9f67('0xae')][_0x9f67('0xaf')];_0x34cc1c[_0x9f67('0x9b')](function(_0x3fcf51){_0x1e94e7['push']({'name':_0x3fcf51[_0x9f67('0xb0')][_0x9f67('0xb1')]['Label'],'value':String(_0x3fcf51[_0x9f67('0xb2')])});});var _0x5050d9={'id':_0x3541ca+'_'+_0x55259e[_0x9f67('0xb3')],'name':_0x55259e[_0x9f67('0xb4')]['UserLocalizedLabel'][_0x9f67('0xb0')],'custom':![],'options':_0x1e94e7};_0x4d2ebc[_0x9f67('0x9e')](_0x5050d9);return _0x4d2ebc;});}function getBooleanList(_0x16dc4c,_0x1d0827,_0x449b9e,_0x1ef45a,_0x4a7e55,_0x173062){var _0x53d66e={'method':_0x9f67('0x8c'),'uri':_0x16dc4c+_0x9f67('0x91')+_0x1ef45a+_0x9f67('0xab')+_0x4a7e55+_0x9f67('0xb5'),'headers':{'Authorization':_0x9f67('0x93')+_0x173062,'If-None-Match':null,'OData-Version':_0x9f67('0x8e')},'json':!![]};return rp(_0x53d66e)[_0x9f67('0xf')](function(_0x28c7e0){var _0x18afd8=[];_0x18afd8[_0x9f67('0x9e')]({'name':_0x28c7e0['OptionSet'][_0x9f67('0xb6')]['Label']['UserLocalizedLabel'][_0x9f67('0xb0')],'value':'true'},{'name':_0x28c7e0[_0x9f67('0xae')][_0x9f67('0xb7')]['Label'][_0x9f67('0xb1')][_0x9f67('0xb0')],'value':_0x9f67('0xb8')});var _0x4e8621={'id':_0x1d0827+'_'+_0x28c7e0[_0x9f67('0xb3')],'name':_0x28c7e0[_0x9f67('0xb4')]['UserLocalizedLabel']['Label'],'custom':![],'options':_0x18afd8};_0x449b9e['push'](_0x4e8621);return _0x449b9e;});}function getInputList(_0x42c056,_0x320633,_0xb32ab2,_0x23122e,_0x50bfdb,_0x22df35,_0x595624){var _0x2faec8={'method':'GET','uri':_0x42c056+_0x9f67('0x91')+_0x50bfdb+_0x9f67('0xab')+_0x22df35+')/Microsoft.Dynamics.CRM.'+_0xb32ab2+'?$select=DisplayName,LogicalName','headers':{'Authorization':_0x9f67('0x93')+_0x595624,'If-None-Match':null,'OData-Version':_0x9f67('0x8e')},'json':!![]};return rp(_0x2faec8)[_0x9f67('0xf')](function(_0x9e3a62){var _0x841290={'id':_0x320633+'_'+_0x9e3a62['LogicalName'],'name':_0x9e3a62[_0x9f67('0xb4')][_0x9f67('0xb1')]?_0x9e3a62['DisplayName']['UserLocalizedLabel'][_0x9f67('0xb0')]:_0x9e3a62[_0x9f67('0xb3')],'custom':![],'options':[]};_0x23122e[_0x9f67('0x9e')](_0x841290);return _0x23122e;});}