Built motion from commit 092f8824.|2.5.49
[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 _0x9f75=['4.0','value','MetadataId','EntityDefinitions(','Attributes','includes','LogicalName','forEach','@odata.type','PicklistAttributeMetadata','push','isNil','BooleanAttributeMetadata','all','lastIndexOf','StringAttributeMetadata','DoubleAttributeMetadata','IntegerAttributeMetadata','DateTimeAttributeMetadata','EntityNameAttributeMetadata','StateAttributeMetadata','DecimalAttributeMetadata','test','error','Wrong\x20credentials','statusCode',')/Attributes(',')/Microsoft.Dynamics.CRM.PicklistAttributeMetadata?','$select=DisplayName,LogicalName&$expand=OptionSet($select=Options)','OptionSet','Options','Label','UserLocalizedLabel','Value','DisplayName','TrueOption','true','FalseOption','false',')/Microsoft.Dynamics.CRM.','request-promise','lodash','../../components/parsers/qs','../../config/logger','../../mysqldb','status','json','limit','count','offset','set','update','then','destroy','end','sendStatus','stack','name','map','Dynamics365Account','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','fields','attributes','length','hasOwnProperty','sort','pick','where','merge','VIRTUAL','filter','includeAll','include','findAll','show','params','options','find','catch','create','body','findOne','Dynamics365Configuration','order','getConfigurations','nolimit','addConfiguration','AccountId','Subjects','channel','Descriptions','getDescriptions','Dynamics365Field','slice','substring','%s/api/data/v9.0/','getFields','incident','Incident','description','caseorigincode','subject','phonenumber','directioncode','phonecall_activity_parties','accountidname','accountidyominame','billedserviceunits','contactidname','contactidyominame','contractidname','createdbyexternalpartyyominame','createdbyname','createdbyyominame','createdon','createdonbehalfbyyominame','customeridname','customeridtype','customeridyominame','emailaddress','entitlementidname','entityimage_timestamp','entityimage_url','escalatedon','followupby','importsequencenumber','lastonholdtime','masteridname','modifiedbyexternalpartyname','modifiedon','modifiedonbehalfbyyominame','msdyn_incidenttypename','numberofchildincidents','overriddencreatedon','owneridname','owneridtype','owneridyominame','parentcaseidname','primarycontactidname','primarycontactidyominame','prioritycodename','productidname','productserialnumber','resolvebykpiidname','responseby','sentimentvalue','slainvokedidname','slaname','socialprofileidname','statuscode','transactioncurrencyidname','traversedpath','versionnumber','concat','username','password','remoteUri','tenantId','clientId','CloudProvider','data7','modernAuthentication','POST','https://login.microsoftonline.com/','/oauth2/token','access_token','GET','EntityDefinitions?$select=DisplayName,EntitySetName&$filter=SchemaName\x20eq\x20\x27','Bearer\x20'];(function(_0x1dc73e,_0x792805){var _0x35274b=function(_0x364508){while(--_0x364508){_0x1dc73e['push'](_0x1dc73e['shift']());}};_0x35274b(++_0x792805);}(_0x9f75,0x18a));var _0x59f7=function(_0x2071e2,_0x19fa19){_0x2071e2=_0x2071e2-0x0;var _0x241723=_0x9f75[_0x2071e2];return _0x241723;};'use strict';var rp=require(_0x59f7('0x0'));var util=require('util');var _=require(_0x59f7('0x1'));var qs=require(_0x59f7('0x2'));var logger=require(_0x59f7('0x3'))('api');var db=require(_0x59f7('0x4'))['db'];var integrations=require('../../components/integrations/configuration');function respondWithResult(_0x4d98de,_0x1de743){_0x1de743=_0x1de743||0xc8;return function(_0x1eb30c){if(_0x1eb30c){return _0x4d98de[_0x59f7('0x5')](_0x1de743)[_0x59f7('0x6')](_0x1eb30c);}};}function respondWithFilteredResult(_0x4f3b69,_0x2a1ab8){return function(_0x59a332){if(_0x59a332){var _0x4dd33e=typeof _0x2a1ab8['offset']==='undefined'&&typeof _0x2a1ab8[_0x59f7('0x7')]==='undefined';var _0x28fd8b=_0x59a332[_0x59f7('0x8')];var _0x2a7bff=_0x4dd33e?0x0:_0x2a1ab8[_0x59f7('0x9')];var _0x4e82ab=_0x4dd33e?_0x59a332[_0x59f7('0x8')]:_0x2a1ab8[_0x59f7('0x9')]+_0x2a1ab8[_0x59f7('0x7')];var _0x1176dd;if(_0x4e82ab>=_0x28fd8b){_0x4e82ab=_0x28fd8b;_0x1176dd=0xc8;}else{_0x1176dd=0xce;}_0x4f3b69[_0x59f7('0x5')](_0x1176dd);return _0x4f3b69[_0x59f7('0xa')]('Content-Range',_0x2a7bff+'-'+_0x4e82ab+'/'+_0x28fd8b)[_0x59f7('0x6')](_0x59a332);}return null;};}function saveUpdates(_0x10cf9e){return function(_0x5a3452){if(_0x5a3452){return _0x5a3452[_0x59f7('0xb')](_0x10cf9e)[_0x59f7('0xc')](function(_0x29c352){return _0x29c352;});}return null;};}function removeEntity(_0x4006d2){return function(_0x587043){if(_0x587043){return _0x587043[_0x59f7('0xd')]()[_0x59f7('0xc')](function(){_0x4006d2[_0x59f7('0x5')](0xcc)[_0x59f7('0xe')]();});}};}function handleEntityNotFound(_0x164418){return function(_0x239684){if(!_0x239684){_0x164418[_0x59f7('0xf')](0x194);}return _0x239684;};}function handleError(_0x2f9108,_0x44eca7){_0x44eca7=_0x44eca7||0x1f4;return function(_0x193f94){logger['error'](_0x193f94[_0x59f7('0x10')]);if(_0x193f94[_0x59f7('0x11')]){delete _0x193f94[_0x59f7('0x11')];}_0x2f9108[_0x59f7('0x5')](_0x44eca7)['send'](_0x193f94);};}exports['index']=function(_0x5cc20a,_0x1e8dfa){var _0x5e1110={},_0x564235={},_0x5b9edd={'count':0x0,'rows':[]};var _0x516e80=_[_0x59f7('0x12')](db[_0x59f7('0x13')][_0x59f7('0x14')],function(_0x3b9e44){return{'name':_0x3b9e44[_0x59f7('0x15')],'type':_0x3b9e44[_0x59f7('0x16')][_0x59f7('0x17')]};});_0x564235[_0x59f7('0x18')]=_[_0x59f7('0x12')](_0x516e80,'name');_0x564235[_0x59f7('0x19')]=_[_0x59f7('0x1a')](_0x5cc20a[_0x59f7('0x19')]);_0x564235[_0x59f7('0x1b')]=_[_0x59f7('0x1c')](_0x564235[_0x59f7('0x18')],_0x564235['query']);_0x5e1110['attributes']=_[_0x59f7('0x1c')](_0x564235[_0x59f7('0x18')],qs[_0x59f7('0x1d')](_0x5cc20a[_0x59f7('0x19')][_0x59f7('0x1d')]));_0x5e1110[_0x59f7('0x1e')]=_0x5e1110[_0x59f7('0x1e')][_0x59f7('0x1f')]?_0x5e1110[_0x59f7('0x1e')]:_0x564235[_0x59f7('0x18')];if(!_0x5cc20a[_0x59f7('0x19')][_0x59f7('0x20')]('nolimit')){_0x5e1110[_0x59f7('0x7')]=qs[_0x59f7('0x7')](_0x5cc20a['query']['limit']);_0x5e1110[_0x59f7('0x9')]=qs[_0x59f7('0x9')](_0x5cc20a['query'][_0x59f7('0x9')]);}_0x5e1110['order']=qs['sort'](_0x5cc20a[_0x59f7('0x19')][_0x59f7('0x21')]);_0x5e1110['where']=qs[_0x59f7('0x1b')](_[_0x59f7('0x22')](_0x5cc20a['query'],_0x564235[_0x59f7('0x1b')]),_0x516e80);if(_0x5cc20a['query']['filter']){_0x5e1110[_0x59f7('0x23')]=_[_0x59f7('0x24')](_0x5e1110['where'],{'$or':_[_0x59f7('0x12')](_0x516e80,function(_0xf036f8){if(_0xf036f8[_0x59f7('0x16')]!==_0x59f7('0x25')){var _0x5a7c07={};_0x5a7c07[_0xf036f8[_0x59f7('0x11')]]={'$like':'%'+_0x5cc20a['query'][_0x59f7('0x26')]+'%'};return _0x5a7c07;}})});}_0x5e1110=_[_0x59f7('0x24')]({},_0x5e1110,_0x5cc20a['options']);var _0x585988={'where':_0x5e1110[_0x59f7('0x23')]};return db[_0x59f7('0x13')][_0x59f7('0x8')](_0x585988)[_0x59f7('0xc')](function(_0x40a1ca){_0x5b9edd[_0x59f7('0x8')]=_0x40a1ca;if(_0x5cc20a[_0x59f7('0x19')][_0x59f7('0x27')]){_0x5e1110[_0x59f7('0x28')]=[{'all':!![]}];}return db[_0x59f7('0x13')][_0x59f7('0x29')](_0x5e1110);})[_0x59f7('0xc')](function(_0x36aaee){_0x5b9edd['rows']=_0x36aaee;return _0x5b9edd;})[_0x59f7('0xc')](respondWithFilteredResult(_0x1e8dfa,_0x5e1110))['catch'](handleError(_0x1e8dfa,null));};exports[_0x59f7('0x2a')]=function(_0x81f423,_0x40b23a){var _0x34f350={'raw':![],'where':{'id':_0x81f423[_0x59f7('0x2b')]['id']}},_0x2a1218={};_0x2a1218[_0x59f7('0x18')]=_[_0x59f7('0x1a')](db[_0x59f7('0x13')][_0x59f7('0x14')]);_0x2a1218[_0x59f7('0x19')]=_[_0x59f7('0x1a')](_0x81f423[_0x59f7('0x19')]);_0x2a1218['filters']=_[_0x59f7('0x1c')](_0x2a1218['model'],_0x2a1218[_0x59f7('0x19')]);_0x34f350[_0x59f7('0x1e')]=_['intersection'](_0x2a1218['model'],qs['fields'](_0x81f423['query'][_0x59f7('0x1d')]));_0x34f350['attributes']=_0x34f350[_0x59f7('0x1e')][_0x59f7('0x1f')]?_0x34f350[_0x59f7('0x1e')]:_0x2a1218[_0x59f7('0x18')];if(_0x81f423[_0x59f7('0x19')][_0x59f7('0x27')]){_0x34f350[_0x59f7('0x28')]=[{'all':!![]}];}_0x34f350=_['merge']({},_0x34f350,_0x81f423[_0x59f7('0x2c')]);return db[_0x59f7('0x13')][_0x59f7('0x2d')](_0x34f350)[_0x59f7('0xc')](handleEntityNotFound(_0x40b23a,null))[_0x59f7('0xc')](respondWithResult(_0x40b23a,null))[_0x59f7('0x2e')](handleError(_0x40b23a,null));};exports[_0x59f7('0x2f')]=function(_0x164001,_0x5e6895){return db[_0x59f7('0x13')][_0x59f7('0x2f')](_0x164001[_0x59f7('0x30')],{})[_0x59f7('0xc')](respondWithResult(_0x5e6895,0xc9))[_0x59f7('0x2e')](handleError(_0x5e6895,null));};exports[_0x59f7('0xb')]=function(_0x2914e1,_0x22eb53){if(_0x2914e1['body']['id']){delete _0x2914e1[_0x59f7('0x30')]['id'];}return db[_0x59f7('0x13')]['find']({'where':{'id':_0x2914e1[_0x59f7('0x2b')]['id']}})['then'](handleEntityNotFound(_0x22eb53,null))[_0x59f7('0xc')](saveUpdates(_0x2914e1[_0x59f7('0x30')],null))[_0x59f7('0xc')](respondWithResult(_0x22eb53,null))[_0x59f7('0x2e')](handleError(_0x22eb53,null));};exports[_0x59f7('0xd')]=function(_0x93cfe1,_0x20d63b){return db['Dynamics365Account'][_0x59f7('0x2d')]({'where':{'id':_0x93cfe1[_0x59f7('0x2b')]['id']}})[_0x59f7('0xc')](handleEntityNotFound(_0x20d63b,null))['then'](removeEntity(_0x20d63b,null))[_0x59f7('0x2e')](handleError(_0x20d63b,null));};exports['getConfigurations']=function(_0x1c333b,_0x4e73a9){var _0x27ea04={};var _0xe252f4={};var _0xa7c24a;var _0x6c391b;return db[_0x59f7('0x13')][_0x59f7('0x31')]({'where':{'id':_0x1c333b[_0x59f7('0x2b')]['id']}})[_0x59f7('0xc')](handleEntityNotFound(_0x4e73a9,null))[_0x59f7('0xc')](function(_0x2b3bba){if(_0x2b3bba){_0xa7c24a=_0x2b3bba;_0xe252f4[_0x59f7('0x18')]=_[_0x59f7('0x1a')](db[_0x59f7('0x32')]['rawAttributes']);_0xe252f4['query']=_['keys'](_0x1c333b[_0x59f7('0x19')]);_0xe252f4[_0x59f7('0x1b')]=_[_0x59f7('0x1c')](_0xe252f4[_0x59f7('0x18')],_0xe252f4[_0x59f7('0x19')]);_0x27ea04[_0x59f7('0x1e')]=_['intersection'](_0xe252f4['model'],qs['fields'](_0x1c333b[_0x59f7('0x19')][_0x59f7('0x1d')]));_0x27ea04[_0x59f7('0x1e')]=_0x27ea04[_0x59f7('0x1e')][_0x59f7('0x1f')]?_0x27ea04[_0x59f7('0x1e')]:_0xe252f4[_0x59f7('0x18')];_0x27ea04[_0x59f7('0x33')]=qs['sort'](_0x1c333b['query'][_0x59f7('0x21')]);_0x27ea04[_0x59f7('0x23')]=qs[_0x59f7('0x1b')](_[_0x59f7('0x22')](_0x1c333b[_0x59f7('0x19')],_0xe252f4[_0x59f7('0x1b')]));if(_0x1c333b[_0x59f7('0x19')][_0x59f7('0x26')]){_0x27ea04[_0x59f7('0x23')]=_[_0x59f7('0x24')](_0x27ea04[_0x59f7('0x23')],{'$or':_[_0x59f7('0x12')](_0x27ea04['attributes'],function(_0xaa1ad7){var _0x252687={};_0x252687[_0xaa1ad7]={'$like':'%'+_0x1c333b['query'][_0x59f7('0x26')]+'%'};return _0x252687;})});}_0x27ea04=_['merge']({},_0x27ea04,_0x1c333b[_0x59f7('0x2c')]);return _0xa7c24a[_0x59f7('0x34')](_0x27ea04);}})[_0x59f7('0xc')](function(_0x433bff){if(_0x433bff){_0x6c391b=_0x433bff['length'];if(!_0x1c333b[_0x59f7('0x19')][_0x59f7('0x20')](_0x59f7('0x35'))){_0x27ea04[_0x59f7('0x7')]=qs['limit'](_0x1c333b[_0x59f7('0x19')][_0x59f7('0x7')]);_0x27ea04['offset']=qs[_0x59f7('0x9')](_0x1c333b[_0x59f7('0x19')]['offset']);}return _0xa7c24a[_0x59f7('0x34')](_0x27ea04);}})[_0x59f7('0xc')](function(_0x21b8ba){if(_0x21b8ba){return _0x21b8ba?{'count':_0x6c391b,'rows':_0x21b8ba}:null;}})[_0x59f7('0xc')](respondWithResult(_0x4e73a9,null))['catch'](handleError(_0x4e73a9,null));};exports[_0x59f7('0x36')]=function(_0x741d74,_0x483df4){if(_0x741d74[_0x59f7('0x30')]['id']){delete _0x741d74[_0x59f7('0x30')]['id'];}return db[_0x59f7('0x13')][_0x59f7('0x31')]({'where':{'id':_0x741d74[_0x59f7('0x2b')]['id']}})[_0x59f7('0xc')](handleEntityNotFound(_0x483df4,null))[_0x59f7('0xc')](function(_0x1b1d0f){if(_0x1b1d0f){_0x741d74[_0x59f7('0x30')][_0x59f7('0x37')]=_0x1b1d0f['id'];_0x741d74['body'][_0x59f7('0x38')]=integrations['getSubjects'](_0x741d74[_0x59f7('0x30')][_0x59f7('0x39')],_0x741d74[_0x59f7('0x30')][_0x59f7('0x16')]);_0x741d74[_0x59f7('0x30')][_0x59f7('0x3a')]=integrations[_0x59f7('0x3b')](_0x741d74[_0x59f7('0x30')][_0x59f7('0x39')],_0x741d74['body']['type']);return db[_0x59f7('0x32')][_0x59f7('0x2f')](_0x741d74['body'],{'include':[{'model':db[_0x59f7('0x3c')],'as':_0x59f7('0x38')},{'model':db['Dynamics365Field'],'as':'Descriptions'}]});}return null;})['then'](respondWithResult(_0x483df4,null))['catch'](handleError(_0x483df4,null));};function sanitizeRemoteUri(_0x24ffa5){var _0x44c2b4=_0x24ffa5[_0x59f7('0x3d')](-0x1);if(_0x44c2b4==='/')return _0x24ffa5[_0x59f7('0x3e')](0x0,_0x24ffa5['lastIndexOf'](_0x44c2b4));return _0x24ffa5;}function getWebApiUrl(_0x200c92){return util['format'](_0x59f7('0x3f'),_0x200c92);}exports[_0x59f7('0x40')]=function(_0x4ca3c4,_0x13b4e2){var _0x32ef4b=_0x4ca3c4[_0x59f7('0x19')]['ticketType'];var _0x272e77=_0x32ef4b===_0x59f7('0x41')?_0x59f7('0x42'):'PhoneCall';var _0x16ea3c='';var _0x554619='';var _0xe6c4f3='';var _0x4b3307='';var _0x3f333a='';var _0x4e92dd='';var _0x55c9df='';var _0x1bf3dc='';var _0x20864b=['title',_0x59f7('0x43'),'customerid','ownerid',_0x59f7('0x44'),_0x59f7('0x45'),_0x59f7('0x46'),'regardingobjectid',_0x59f7('0x47'),_0x59f7('0x48')];var _0x5a0e68=[_0x59f7('0x49'),_0x59f7('0x4a'),'actualserviceunits',_0x59f7('0x4b'),_0x59f7('0x4c'),_0x59f7('0x4d'),'contractdetailidname',_0x59f7('0x4e'),'createdbyexternalpartyname',_0x59f7('0x4f'),_0x59f7('0x50'),_0x59f7('0x51'),_0x59f7('0x52'),'createdonbehalfbyname',_0x59f7('0x53'),_0x59f7('0x54'),_0x59f7('0x55'),_0x59f7('0x56'),_0x59f7('0x57'),_0x59f7('0x58'),_0x59f7('0x59'),_0x59f7('0x5a'),_0x59f7('0x5b'),'exchangerate','firstresponsebykpiidname',_0x59f7('0x5c'),_0x59f7('0x5d'),'influencescore','kbarticleidname',_0x59f7('0x5e'),_0x59f7('0x5f'),_0x59f7('0x60'),'modifiedbyexternalpartyyominame','modifiedbyname','modifiedbyyominame',_0x59f7('0x61'),'modifiedonbehalfbyname',_0x59f7('0x62'),_0x59f7('0x63'),'msdyn_iotalertname',_0x59f7('0x64'),'onholdtime',_0x59f7('0x65'),_0x59f7('0x66'),_0x59f7('0x67'),_0x59f7('0x68'),_0x59f7('0x69'),_0x59f7('0x6a'),_0x59f7('0x6b'),_0x59f7('0x6c'),_0x59f7('0x6d'),_0x59f7('0x6e'),'resolveby',_0x59f7('0x6f'),_0x59f7('0x70'),'responsiblecontactidname','responsiblecontactidyominame',_0x59f7('0x71'),_0x59f7('0x72'),_0x59f7('0x73'),_0x59f7('0x74'),'statecode',_0x59f7('0x75'),'subjectidname','ticketnumber','timezoneruleversionnumber',_0x59f7('0x76'),_0x59f7('0x77'),'utcconversiontimezonecode',_0x59f7('0x78')];var _0x48a541=_0x20864b[_0x59f7('0x79')](_0x5a0e68);return db['Dynamics365Account'][_0x59f7('0x31')]({'where':{'id':_0x4ca3c4[_0x59f7('0x2b')]['id']},'attributes':['id',_0x59f7('0x7a'),_0x59f7('0x7b'),_0x59f7('0x7c'),_0x59f7('0x7d'),_0x59f7('0x7e'),'clientSecret','modernAuthentication'],'include':[{'model':db[_0x59f7('0x7f')],'as':'CloudProvider','attributes':['id','data5',_0x59f7('0x80')]}]})['then'](handleEntityNotFound(_0x13b4e2,null))[_0x59f7('0xc')](function(_0x178e4d){if(_0x178e4d){if(_0x178e4d[_0x59f7('0x81')]){_0x178e4d['access_token']=_0x178e4d['CloudProvider']['data5'];_0x1bf3dc=sanitizeRemoteUri(_0x178e4d[_0x59f7('0x7f')][_0x59f7('0x80')]);_0x55c9df=getWebApiUrl(_0x1bf3dc);return _0x178e4d;}_0x1bf3dc=sanitizeRemoteUri(_0x178e4d['remoteUri']);_0x55c9df=getWebApiUrl(_0x1bf3dc);var _0x418910={'method':_0x59f7('0x82'),'uri':_0x59f7('0x83')+_0x178e4d['tenantId']+_0x59f7('0x84'),'form':{'client_id':_0x178e4d[_0x59f7('0x7e')],'resource':_0x1bf3dc,'username':_0x178e4d[_0x59f7('0x7a')],'password':_0x178e4d['password'],'grant_type':_0x59f7('0x7b'),'client_secret':_0x178e4d['clientSecret']},'json':!![]};return rp(_0x418910);}})[_0x59f7('0xc')](function(_0x5514d3){_0x4e92dd=_0x5514d3[_0x59f7('0x85')];var _0x34015f={'method':_0x59f7('0x86'),'uri':encodeURI(_0x55c9df+_0x59f7('0x87')+_0x272e77+'\x27'),'headers':{'Authorization':_0x59f7('0x88')+_0x4e92dd,'If-None-Match':null,'OData-Version':_0x59f7('0x89')},'json':!![]};return rp(_0x34015f);})[_0x59f7('0xc')](function(_0x214e8d){var _0x141d91=_0x214e8d[_0x59f7('0x8a')][0x0];var _0xe31fdf=_0x141d91[_0x59f7('0x8b')];var _0x125250={'method':'GET','uri':_0x55c9df+_0x59f7('0x8c')+_0xe31fdf+')?$select=LogicalName&$expand=Attributes($select=LogicalName)','headers':{'Authorization':_0x59f7('0x88')+_0x4e92dd,'If-None-Match':null,'OData-Version':_0x59f7('0x89')},'json':!![]};return rp(_0x125250);})[_0x59f7('0xc')](function(_0x3f4d4e){_0x16ea3c=_0x3f4d4e;_0x554619=_0x16ea3c[_0x59f7('0x8d')];_0x554619=_['remove'](_0x554619,function(_0x477d54){return!_0x48a541[_0x59f7('0x8e')](_0x477d54[_0x59f7('0x8f')]);});var _0x5835f2=[];var _0x2102c0=[];_0x554619[_0x59f7('0x90')](function(_0x4f140c){if(_0x4f140c[_0x59f7('0x91')]){var _0x4ddf3a=_0x4f140c['@odata.type'][_0x59f7('0x3e')](_0x4f140c[_0x59f7('0x91')]['lastIndexOf']('.')+0x1);if(_0x4ddf3a===_0x59f7('0x92')){_0x5835f2[_0x59f7('0x93')](getSelectList(_0x55c9df,_0x32ef4b,_0x2102c0,_0x16ea3c[_0x59f7('0x8b')],_0x4f140c[_0x59f7('0x8b')],_0x4e92dd));}}});return Promise['all'](_0x5835f2);})[_0x59f7('0xc')](function(_0x368a2c){_0xe6c4f3=_0x368a2c[0x0];var _0x24e879=[];var _0x2c2d3c=[];_0x554619[_0x59f7('0x90')](function(_0x45ad2c){if(!_[_0x59f7('0x94')](_0x45ad2c[_0x59f7('0x91')])){var _0x53b1c3=_0x45ad2c['@odata.type']['substring'](_0x45ad2c[_0x59f7('0x91')]['lastIndexOf']('.')+0x1);if(_0x53b1c3===_0x59f7('0x95')){_0x24e879['push'](getBooleanList(_0x55c9df,_0x32ef4b,_0x2c2d3c,_0x16ea3c[_0x59f7('0x8b')],_0x45ad2c['MetadataId'],_0x4e92dd));}}});return Promise[_0x59f7('0x96')](_0x24e879);})[_0x59f7('0xc')](function(_0x34440e){_0x4b3307=_0x34440e[0x0];var _0x22d9ef=[];var _0x54728b=[];_0x554619[_0x59f7('0x90')](function(_0x164cf3){if(_0x164cf3[_0x59f7('0x91')]){var _0x5998ce=_0x164cf3['@odata.type']['substring'](_0x164cf3[_0x59f7('0x91')][_0x59f7('0x97')]('.')+0x1);if(_0x5998ce===_0x59f7('0x98')||_0x5998ce===_0x59f7('0x99')||_0x5998ce==='BigIntAttributeMetadata'||_0x5998ce===_0x59f7('0x9a')||_0x5998ce==='MemoAttributeMetadata'||_0x5998ce===_0x59f7('0x9b')||_0x5998ce==='StatusAttributeMetadata'||_0x5998ce===_0x59f7('0x9c')||_0x5998ce===_0x59f7('0x9d')||_0x5998ce===_0x59f7('0x9e')){_0x22d9ef[_0x59f7('0x93')](getInputList(_0x55c9df,_0x32ef4b,_0x5998ce,_0x54728b,_0x16ea3c[_0x59f7('0x8b')],_0x164cf3['MetadataId'],_0x4e92dd));}}});return Promise[_0x59f7('0x96')](_0x22d9ef);})[_0x59f7('0xc')](function(_0x4376a){_0x3f333a=_0x4376a[0x0];var _0x2e13c7=_0xe6c4f3['concat'](_0x4b3307)[_0x59f7('0x79')](_0x3f333a);var _0x222519={'count':_0x2e13c7['length'],'rows':_0x2e13c7};return _0x222519;})[_0x59f7('0xc')](respondWithResult(_0x13b4e2,null))[_0x59f7('0x2e')](function(_0x188288){var _0x39626c=_0x4ca3c4[_0x59f7('0x19')][_0x59f7('0x9f')]?0x1f4:_0x188288['statusCode']||0x1f4;logger[_0x59f7('0xa0')](_0x188288[_0x59f7('0x10')]);delete _0x188288[_0x59f7('0x11')];if(_0x39626c===0x191){_0x39626c=0x190;}_0x13b4e2[_0x59f7('0x5')](_0x39626c)['send'](_0x4ca3c4[_0x59f7('0x19')][_0x59f7('0x9f')]?{'message':_0x59f7('0xa1'),'statusCode':_0x188288[_0x59f7('0xa2')]}:_0x188288);});};function getSelectList(_0x36388a,_0x388afb,_0x313292,_0xdf3e1e,_0x326491,_0x1ab04c){var _0x5dd1e6={'method':'GET','uri':_0x36388a+_0x59f7('0x8c')+_0xdf3e1e+_0x59f7('0xa3')+_0x326491+_0x59f7('0xa4')+_0x59f7('0xa5'),'headers':{'Authorization':_0x59f7('0x88')+_0x1ab04c,'If-None-Match':null,'OData-Version':_0x59f7('0x89')},'json':!![]};return rp(_0x5dd1e6)['then'](function(_0x2431c4){var _0x53337a=[];var _0x196eff=_0x2431c4[_0x59f7('0xa6')][_0x59f7('0xa7')];_0x196eff[_0x59f7('0x90')](function(_0x578818){_0x53337a[_0x59f7('0x93')]({'name':_0x578818[_0x59f7('0xa8')][_0x59f7('0xa9')][_0x59f7('0xa8')],'value':String(_0x578818[_0x59f7('0xaa')])});});var _0x17f20d={'id':_0x388afb+'_'+_0x2431c4[_0x59f7('0x8f')],'name':_0x2431c4[_0x59f7('0xab')][_0x59f7('0xa9')][_0x59f7('0xa8')],'custom':![],'options':_0x53337a};_0x313292[_0x59f7('0x93')](_0x17f20d);return _0x313292;});}function getBooleanList(_0x1d6ded,_0x481928,_0x5161d8,_0x56d7e3,_0x1875dd,_0x38c2cc){var _0x47f080={'method':_0x59f7('0x86'),'uri':_0x1d6ded+_0x59f7('0x8c')+_0x56d7e3+_0x59f7('0xa3')+_0x1875dd+')/Microsoft.Dynamics.CRM.BooleanAttributeMetadata?$select=DisplayName,LogicalName&$expand=OptionSet($select=FalseOption,\x20TrueOption)','headers':{'Authorization':_0x59f7('0x88')+_0x38c2cc,'If-None-Match':null,'OData-Version':_0x59f7('0x89')},'json':!![]};return rp(_0x47f080)['then'](function(_0x234b27){var _0x2e5179=[];_0x2e5179[_0x59f7('0x93')]({'name':_0x234b27[_0x59f7('0xa6')][_0x59f7('0xac')]['Label']['UserLocalizedLabel'][_0x59f7('0xa8')],'value':_0x59f7('0xad')},{'name':_0x234b27[_0x59f7('0xa6')][_0x59f7('0xae')][_0x59f7('0xa8')][_0x59f7('0xa9')][_0x59f7('0xa8')],'value':_0x59f7('0xaf')});var _0x4eaaa0={'id':_0x481928+'_'+_0x234b27['LogicalName'],'name':_0x234b27['DisplayName'][_0x59f7('0xa9')][_0x59f7('0xa8')],'custom':![],'options':_0x2e5179};_0x5161d8[_0x59f7('0x93')](_0x4eaaa0);return _0x5161d8;});}function getInputList(_0x5c9cfb,_0x3ddad8,_0xce01cf,_0x182782,_0x7a7009,_0x6598ba,_0x195f24){var _0x5c8bbe={'method':'GET','uri':_0x5c9cfb+_0x59f7('0x8c')+_0x7a7009+_0x59f7('0xa3')+_0x6598ba+_0x59f7('0xb0')+_0xce01cf+'?$select=DisplayName,LogicalName','headers':{'Authorization':_0x59f7('0x88')+_0x195f24,'If-None-Match':null,'OData-Version':'4.0'},'json':!![]};return rp(_0x5c8bbe)[_0x59f7('0xc')](function(_0x583042){var _0x17a5ec={'id':_0x3ddad8+'_'+_0x583042[_0x59f7('0x8f')],'name':_0x583042['DisplayName'][_0x59f7('0xa9')]?_0x583042[_0x59f7('0xab')][_0x59f7('0xa9')][_0x59f7('0xa8')]:_0x583042['LogicalName'],'custom':![],'options':[]};_0x182782[_0x59f7('0x93')](_0x17a5ec);return _0x182782;});}