802837f9358e7f80b3d9d31f65862990c7177ad6
[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 _0x1794=['BooleanAttributeMetadata','all','StringAttributeMetadata','DoubleAttributeMetadata','BigIntAttributeMetadata','IntegerAttributeMetadata','EntityNameAttributeMetadata','StateAttributeMetadata','DecimalAttributeMetadata','push','concat','statusCode','send','test','Wrong\x20credentials','GET',')/Attributes(','$select=DisplayName,LogicalName&$expand=OptionSet($select=Options)','OptionSet','Options','Label','UserLocalizedLabel','Value','DisplayName','TrueOption','FalseOption','false',')/Microsoft.Dynamics.CRM.','?$select=DisplayName,LogicalName','lodash','../../components/parsers/qs','../../config/logger','api','../../mysqldb','status','json','offset','undefined','count','limit','set','Content-Range','update','then','end','sendStatus','error','stack','name','index','Dynamics365Account','rawAttributes','fieldName','type','key','model','map','query','keys','intersection','attributes','fields','hasOwnProperty','nolimit','sort','where','filters','pick','merge','VIRTUAL','filter','include','rows','catch','length','includeAll','options','create','find','params','destroy','getConfigurations','findOne','Dynamics365Configuration','order','addConfiguration','body','getSubjects','channel','Descriptions','Dynamics365Field','Subjects','slice','substring','lastIndexOf','format','%s/api/data/v9.0/','getFields','Incident','PhoneCall','title','description','ownerid','subject','phonenumber','regardingobjectid','directioncode','phonecall_activity_parties','accountidname','accountidyominame','actualserviceunits','billedserviceunits','contactidname','contactidyominame','contractdetailidname','createdbyexternalpartyname','createdbyexternalpartyyominame','createdbyname','createdbyyominame','createdon','createdonbehalfbyname','createdonbehalfbyyominame','customeridname','customeridtype','customeridyominame','entitlementidname','entityimage_timestamp','entityimage_url','escalatedon','exchangerate','firstresponsebykpiidname','followupby','importsequencenumber','influencescore','kbarticleidname','masteridname','modifiedbyexternalpartyname','modifiedbyname','modifiedon','modifiedonbehalfbyname','msdyn_incidenttypename','numberofchildincidents','onholdtime','overriddencreatedon','owneridname','owneridtype','owneridyominame','parentcaseidname','primarycontactidname','primarycontactidyominame','prioritycodename','productidname','productserialnumber','resolveby','resolvebykpiidname','responseby','responsiblecontactidname','sentimentvalue','slainvokedidname','slaname','socialprofileidname','ticketnumber','transactioncurrencyidname','traversedpath','utcconversiontimezonecode','versionnumber','password','remoteUri','tenantId','clientId','clientSecret','modernAuthentication','CloudProvider','data5','access_token','data7','/oauth2/token','username','EntityDefinitions?$select=DisplayName,EntitySetName&$filter=SchemaName\x20eq\x20\x27','Bearer\x20','4.0','value','MetadataId','EntityDefinitions(',')?$select=LogicalName&$expand=Attributes($select=LogicalName)','Attributes','remove','includes','LogicalName','forEach','@odata.type','PicklistAttributeMetadata'];(function(_0xec091a,_0x39331b){var _0x499b3e=function(_0x351a90){while(--_0x351a90){_0xec091a['push'](_0xec091a['shift']());}};_0x499b3e(++_0x39331b);}(_0x1794,0x19d));var _0x4179=function(_0x1e53b3,_0x4b89a9){_0x1e53b3=_0x1e53b3-0x0;var _0x50018a=_0x1794[_0x1e53b3];return _0x50018a;};'use strict';var rp=require('request-promise');var util=require('util');var _=require(_0x4179('0x0'));var qs=require(_0x4179('0x1'));var logger=require(_0x4179('0x2'))(_0x4179('0x3'));var db=require(_0x4179('0x4'))['db'];var integrations=require('../../components/integrations/configuration');function respondWithResult(_0x5c14ac,_0x338291){_0x338291=_0x338291||0xc8;return function(_0x144830){if(_0x144830){return _0x5c14ac[_0x4179('0x5')](_0x338291)[_0x4179('0x6')](_0x144830);}};}function respondWithFilteredResult(_0x37d5f7,_0x840dda){return function(_0xcfdd0b){if(_0xcfdd0b){var _0x24f3ff=typeof _0x840dda[_0x4179('0x7')]===_0x4179('0x8')&&typeof _0x840dda['limit']===_0x4179('0x8');var _0x1e52a6=_0xcfdd0b[_0x4179('0x9')];var _0x5ed1c6=_0x24f3ff?0x0:_0x840dda[_0x4179('0x7')];var _0x591de5=_0x24f3ff?_0xcfdd0b[_0x4179('0x9')]:_0x840dda['offset']+_0x840dda[_0x4179('0xa')];var _0x5ad5e7;if(_0x591de5>=_0x1e52a6){_0x591de5=_0x1e52a6;_0x5ad5e7=0xc8;}else{_0x5ad5e7=0xce;}_0x37d5f7[_0x4179('0x5')](_0x5ad5e7);return _0x37d5f7[_0x4179('0xb')](_0x4179('0xc'),_0x5ed1c6+'-'+_0x591de5+'/'+_0x1e52a6)['json'](_0xcfdd0b);}return null;};}function saveUpdates(_0x2b26f1){return function(_0x5f49e1){if(_0x5f49e1){return _0x5f49e1[_0x4179('0xd')](_0x2b26f1)[_0x4179('0xe')](function(_0x4aaaf8){return _0x4aaaf8;});}return null;};}function removeEntity(_0x20d964){return function(_0x2f6cbc){if(_0x2f6cbc){return _0x2f6cbc['destroy']()[_0x4179('0xe')](function(){_0x20d964[_0x4179('0x5')](0xcc)[_0x4179('0xf')]();});}};}function handleEntityNotFound(_0x1c6ea4){return function(_0x1b0d10){if(!_0x1b0d10){_0x1c6ea4[_0x4179('0x10')](0x194);}return _0x1b0d10;};}function handleError(_0x8b2442,_0x2d638a){_0x2d638a=_0x2d638a||0x1f4;return function(_0x2b82d0){logger[_0x4179('0x11')](_0x2b82d0[_0x4179('0x12')]);if(_0x2b82d0[_0x4179('0x13')]){delete _0x2b82d0[_0x4179('0x13')];}_0x8b2442[_0x4179('0x5')](_0x2d638a)['send'](_0x2b82d0);};}exports[_0x4179('0x14')]=function(_0x508074,_0x3e8864){var _0x5d496b={},_0x4b158d={},_0x2cdea0={'count':0x0,'rows':[]};var _0x55b04f=_['map'](db[_0x4179('0x15')][_0x4179('0x16')],function(_0x2b2b99){return{'name':_0x2b2b99[_0x4179('0x17')],'type':_0x2b2b99[_0x4179('0x18')][_0x4179('0x19')]};});_0x4b158d[_0x4179('0x1a')]=_[_0x4179('0x1b')](_0x55b04f,_0x4179('0x13'));_0x4b158d[_0x4179('0x1c')]=_[_0x4179('0x1d')](_0x508074['query']);_0x4b158d['filters']=_[_0x4179('0x1e')](_0x4b158d[_0x4179('0x1a')],_0x4b158d[_0x4179('0x1c')]);_0x5d496b[_0x4179('0x1f')]=_[_0x4179('0x1e')](_0x4b158d[_0x4179('0x1a')],qs['fields'](_0x508074[_0x4179('0x1c')][_0x4179('0x20')]));_0x5d496b[_0x4179('0x1f')]=_0x5d496b[_0x4179('0x1f')]['length']?_0x5d496b[_0x4179('0x1f')]:_0x4b158d[_0x4179('0x1a')];if(!_0x508074[_0x4179('0x1c')][_0x4179('0x21')](_0x4179('0x22'))){_0x5d496b[_0x4179('0xa')]=qs[_0x4179('0xa')](_0x508074['query']['limit']);_0x5d496b[_0x4179('0x7')]=qs[_0x4179('0x7')](_0x508074['query'][_0x4179('0x7')]);}_0x5d496b['order']=qs['sort'](_0x508074[_0x4179('0x1c')][_0x4179('0x23')]);_0x5d496b[_0x4179('0x24')]=qs[_0x4179('0x25')](_[_0x4179('0x26')](_0x508074['query'],_0x4b158d['filters']),_0x55b04f);if(_0x508074[_0x4179('0x1c')]['filter']){_0x5d496b['where']=_[_0x4179('0x27')](_0x5d496b[_0x4179('0x24')],{'$or':_[_0x4179('0x1b')](_0x55b04f,function(_0x49bf5d){if(_0x49bf5d[_0x4179('0x18')]!==_0x4179('0x28')){var _0x59b453={};_0x59b453[_0x49bf5d[_0x4179('0x13')]]={'$like':'%'+_0x508074['query'][_0x4179('0x29')]+'%'};return _0x59b453;}})});}_0x5d496b=_[_0x4179('0x27')]({},_0x5d496b,_0x508074['options']);var _0x20da17={'where':_0x5d496b[_0x4179('0x24')]};return db[_0x4179('0x15')][_0x4179('0x9')](_0x20da17)[_0x4179('0xe')](function(_0xb859d){_0x2cdea0[_0x4179('0x9')]=_0xb859d;if(_0x508074['query']['includeAll']){_0x5d496b[_0x4179('0x2a')]=[{'all':!![]}];}return db[_0x4179('0x15')]['findAll'](_0x5d496b);})[_0x4179('0xe')](function(_0x34687a){_0x2cdea0[_0x4179('0x2b')]=_0x34687a;return _0x2cdea0;})[_0x4179('0xe')](respondWithFilteredResult(_0x3e8864,_0x5d496b))[_0x4179('0x2c')](handleError(_0x3e8864,null));};exports['show']=function(_0x380f05,_0x40856d){var _0x384747={'raw':![],'where':{'id':_0x380f05['params']['id']}},_0x5c4999={};_0x5c4999[_0x4179('0x1a')]=_[_0x4179('0x1d')](db[_0x4179('0x15')][_0x4179('0x16')]);_0x5c4999[_0x4179('0x1c')]=_['keys'](_0x380f05['query']);_0x5c4999[_0x4179('0x25')]=_[_0x4179('0x1e')](_0x5c4999[_0x4179('0x1a')],_0x5c4999[_0x4179('0x1c')]);_0x384747['attributes']=_[_0x4179('0x1e')](_0x5c4999['model'],qs[_0x4179('0x20')](_0x380f05['query']['fields']));_0x384747['attributes']=_0x384747[_0x4179('0x1f')][_0x4179('0x2d')]?_0x384747[_0x4179('0x1f')]:_0x5c4999[_0x4179('0x1a')];if(_0x380f05['query'][_0x4179('0x2e')]){_0x384747[_0x4179('0x2a')]=[{'all':!![]}];}_0x384747=_[_0x4179('0x27')]({},_0x384747,_0x380f05[_0x4179('0x2f')]);return db[_0x4179('0x15')]['find'](_0x384747)[_0x4179('0xe')](handleEntityNotFound(_0x40856d,null))[_0x4179('0xe')](respondWithResult(_0x40856d,null))['catch'](handleError(_0x40856d,null));};exports[_0x4179('0x30')]=function(_0x472146,_0x55b50c){return db[_0x4179('0x15')][_0x4179('0x30')](_0x472146['body'],{})[_0x4179('0xe')](respondWithResult(_0x55b50c,0xc9))['catch'](handleError(_0x55b50c,null));};exports['update']=function(_0x5dbc94,_0x3aa75d){if(_0x5dbc94['body']['id']){delete _0x5dbc94['body']['id'];}return db[_0x4179('0x15')][_0x4179('0x31')]({'where':{'id':_0x5dbc94[_0x4179('0x32')]['id']}})['then'](handleEntityNotFound(_0x3aa75d,null))['then'](saveUpdates(_0x5dbc94['body'],null))[_0x4179('0xe')](respondWithResult(_0x3aa75d,null))['catch'](handleError(_0x3aa75d,null));};exports[_0x4179('0x33')]=function(_0x54aa47,_0x9c19a2){return db[_0x4179('0x15')][_0x4179('0x31')]({'where':{'id':_0x54aa47[_0x4179('0x32')]['id']}})[_0x4179('0xe')](handleEntityNotFound(_0x9c19a2,null))[_0x4179('0xe')](removeEntity(_0x9c19a2,null))['catch'](handleError(_0x9c19a2,null));};exports[_0x4179('0x34')]=function(_0x20e1ec,_0x283eee){var _0x4753cd={};var _0x241560={};var _0x4ecc66;var _0x495cf5;return db['Dynamics365Account'][_0x4179('0x35')]({'where':{'id':_0x20e1ec[_0x4179('0x32')]['id']}})[_0x4179('0xe')](handleEntityNotFound(_0x283eee,null))[_0x4179('0xe')](function(_0xa7a8b2){if(_0xa7a8b2){_0x4ecc66=_0xa7a8b2;_0x241560[_0x4179('0x1a')]=_[_0x4179('0x1d')](db[_0x4179('0x36')][_0x4179('0x16')]);_0x241560['query']=_[_0x4179('0x1d')](_0x20e1ec[_0x4179('0x1c')]);_0x241560[_0x4179('0x25')]=_['intersection'](_0x241560[_0x4179('0x1a')],_0x241560['query']);_0x4753cd[_0x4179('0x1f')]=_[_0x4179('0x1e')](_0x241560['model'],qs[_0x4179('0x20')](_0x20e1ec[_0x4179('0x1c')][_0x4179('0x20')]));_0x4753cd[_0x4179('0x1f')]=_0x4753cd[_0x4179('0x1f')][_0x4179('0x2d')]?_0x4753cd[_0x4179('0x1f')]:_0x241560[_0x4179('0x1a')];_0x4753cd[_0x4179('0x37')]=qs[_0x4179('0x23')](_0x20e1ec['query'][_0x4179('0x23')]);_0x4753cd[_0x4179('0x24')]=qs[_0x4179('0x25')](_[_0x4179('0x26')](_0x20e1ec[_0x4179('0x1c')],_0x241560[_0x4179('0x25')]));if(_0x20e1ec['query'][_0x4179('0x29')]){_0x4753cd[_0x4179('0x24')]=_[_0x4179('0x27')](_0x4753cd['where'],{'$or':_['map'](_0x4753cd['attributes'],function(_0x893621){var _0xe4ffcb={};_0xe4ffcb[_0x893621]={'$like':'%'+_0x20e1ec[_0x4179('0x1c')]['filter']+'%'};return _0xe4ffcb;})});}_0x4753cd=_[_0x4179('0x27')]({},_0x4753cd,_0x20e1ec[_0x4179('0x2f')]);return _0x4ecc66[_0x4179('0x34')](_0x4753cd);}})[_0x4179('0xe')](function(_0x3f3b7d){if(_0x3f3b7d){_0x495cf5=_0x3f3b7d['length'];if(!_0x20e1ec['query']['hasOwnProperty']('nolimit')){_0x4753cd[_0x4179('0xa')]=qs[_0x4179('0xa')](_0x20e1ec[_0x4179('0x1c')][_0x4179('0xa')]);_0x4753cd['offset']=qs[_0x4179('0x7')](_0x20e1ec[_0x4179('0x1c')][_0x4179('0x7')]);}return _0x4ecc66[_0x4179('0x34')](_0x4753cd);}})[_0x4179('0xe')](function(_0x466b7d){if(_0x466b7d){return _0x466b7d?{'count':_0x495cf5,'rows':_0x466b7d}:null;}})['then'](respondWithResult(_0x283eee,null))['catch'](handleError(_0x283eee,null));};exports[_0x4179('0x38')]=function(_0x2816c1,_0x3f2082){if(_0x2816c1[_0x4179('0x39')]['id']){delete _0x2816c1[_0x4179('0x39')]['id'];}return db[_0x4179('0x15')][_0x4179('0x35')]({'where':{'id':_0x2816c1['params']['id']}})[_0x4179('0xe')](handleEntityNotFound(_0x3f2082,null))[_0x4179('0xe')](function(_0x3902cd){if(_0x3902cd){_0x2816c1[_0x4179('0x39')]['AccountId']=_0x3902cd['id'];_0x2816c1[_0x4179('0x39')]['Subjects']=integrations[_0x4179('0x3a')](_0x2816c1[_0x4179('0x39')][_0x4179('0x3b')],_0x2816c1[_0x4179('0x39')][_0x4179('0x18')]);_0x2816c1[_0x4179('0x39')][_0x4179('0x3c')]=integrations['getDescriptions'](_0x2816c1[_0x4179('0x39')][_0x4179('0x3b')],_0x2816c1[_0x4179('0x39')][_0x4179('0x18')]);return db[_0x4179('0x36')]['create'](_0x2816c1[_0x4179('0x39')],{'include':[{'model':db[_0x4179('0x3d')],'as':_0x4179('0x3e')},{'model':db[_0x4179('0x3d')],'as':_0x4179('0x3c')}]});}return null;})[_0x4179('0xe')](respondWithResult(_0x3f2082,null))[_0x4179('0x2c')](handleError(_0x3f2082,null));};function sanitizeRemoteUri(_0x4eb13f){var _0x1b93fb=_0x4eb13f[_0x4179('0x3f')](-0x1);if(_0x1b93fb==='/')return _0x4eb13f[_0x4179('0x40')](0x0,_0x4eb13f[_0x4179('0x41')](_0x1b93fb));return _0x4eb13f;}function getWebApiUrl(_0x1df92f){return util[_0x4179('0x42')](_0x4179('0x43'),_0x1df92f);}exports[_0x4179('0x44')]=function(_0x5a3bde,_0x1a8a10){var _0x4efc05=_0x5a3bde[_0x4179('0x1c')]['ticketType'];var _0x1fc56d=_0x4efc05==='incident'?_0x4179('0x45'):_0x4179('0x46');var _0x4ab990='';var _0x1b7313='';var _0x378aba='';var _0x18b484='';var _0x2f8a2b='';var _0x58e010='';var _0x50c1b3='';var _0x44a664='';var _0x33a38c=[_0x4179('0x47'),_0x4179('0x48'),'customerid',_0x4179('0x49'),'caseorigincode',_0x4179('0x4a'),_0x4179('0x4b'),_0x4179('0x4c'),_0x4179('0x4d'),_0x4179('0x4e')];var _0x56b253=[_0x4179('0x4f'),_0x4179('0x50'),_0x4179('0x51'),_0x4179('0x52'),_0x4179('0x53'),_0x4179('0x54'),_0x4179('0x55'),'contractidname',_0x4179('0x56'),_0x4179('0x57'),_0x4179('0x58'),_0x4179('0x59'),_0x4179('0x5a'),_0x4179('0x5b'),_0x4179('0x5c'),_0x4179('0x5d'),_0x4179('0x5e'),_0x4179('0x5f'),'emailaddress',_0x4179('0x60'),_0x4179('0x61'),_0x4179('0x62'),_0x4179('0x63'),_0x4179('0x64'),_0x4179('0x65'),_0x4179('0x66'),_0x4179('0x67'),_0x4179('0x68'),_0x4179('0x69'),'lastonholdtime',_0x4179('0x6a'),_0x4179('0x6b'),'modifiedbyexternalpartyyominame',_0x4179('0x6c'),'modifiedbyyominame',_0x4179('0x6d'),_0x4179('0x6e'),'modifiedonbehalfbyyominame',_0x4179('0x6f'),'msdyn_iotalertname',_0x4179('0x70'),_0x4179('0x71'),_0x4179('0x72'),_0x4179('0x73'),_0x4179('0x74'),_0x4179('0x75'),_0x4179('0x76'),_0x4179('0x77'),_0x4179('0x78'),_0x4179('0x79'),_0x4179('0x7a'),_0x4179('0x7b'),_0x4179('0x7c'),_0x4179('0x7d'),_0x4179('0x7e'),_0x4179('0x7f'),'responsiblecontactidyominame',_0x4179('0x80'),_0x4179('0x81'),_0x4179('0x82'),_0x4179('0x83'),'statecode','statuscode','subjectidname',_0x4179('0x84'),'timezoneruleversionnumber',_0x4179('0x85'),_0x4179('0x86'),_0x4179('0x87'),_0x4179('0x88')];var _0x572874=_0x33a38c['concat'](_0x56b253);return db[_0x4179('0x15')][_0x4179('0x35')]({'where':{'id':_0x5a3bde[_0x4179('0x32')]['id']},'attributes':['id','username',_0x4179('0x89'),_0x4179('0x8a'),_0x4179('0x8b'),_0x4179('0x8c'),_0x4179('0x8d'),_0x4179('0x8e')],'include':[{'model':db[_0x4179('0x8f')],'as':'CloudProvider','attributes':['id',_0x4179('0x90'),'data7']}]})['then'](handleEntityNotFound(_0x1a8a10,null))['then'](function(_0x29c684){if(_0x29c684){if(_0x29c684[_0x4179('0x8e')]){_0x29c684[_0x4179('0x91')]=_0x29c684[_0x4179('0x8f')][_0x4179('0x90')];_0x44a664=sanitizeRemoteUri(_0x29c684['CloudProvider'][_0x4179('0x92')]);_0x50c1b3=getWebApiUrl(_0x44a664);return _0x29c684;}_0x44a664=sanitizeRemoteUri(_0x29c684[_0x4179('0x8a')]);_0x50c1b3=getWebApiUrl(_0x44a664);var _0x51be83={'method':'POST','uri':'https://login.microsoftonline.com/'+_0x29c684['tenantId']+_0x4179('0x93'),'form':{'client_id':_0x29c684[_0x4179('0x8c')],'resource':_0x44a664,'username':_0x29c684[_0x4179('0x94')],'password':_0x29c684[_0x4179('0x89')],'grant_type':_0x4179('0x89'),'client_secret':_0x29c684[_0x4179('0x8d')]},'json':!![]};return rp(_0x51be83);}})[_0x4179('0xe')](function(_0x505f5c){_0x58e010=_0x505f5c['access_token'];var _0x5e8786={'method':'GET','uri':encodeURI(_0x50c1b3+_0x4179('0x95')+_0x1fc56d+'\x27'),'headers':{'Authorization':_0x4179('0x96')+_0x58e010,'If-None-Match':null,'OData-Version':_0x4179('0x97')},'json':!![]};return rp(_0x5e8786);})[_0x4179('0xe')](function(_0xbb5f2d){var _0x44ab51=_0xbb5f2d[_0x4179('0x98')][0x0];var _0x3702e8=_0x44ab51[_0x4179('0x99')];var _0x4ee9a8={'method':'GET','uri':_0x50c1b3+_0x4179('0x9a')+_0x3702e8+_0x4179('0x9b'),'headers':{'Authorization':_0x4179('0x96')+_0x58e010,'If-None-Match':null,'OData-Version':_0x4179('0x97')},'json':!![]};return rp(_0x4ee9a8);})['then'](function(_0x2239a1){_0x4ab990=_0x2239a1;_0x1b7313=_0x4ab990[_0x4179('0x9c')];_0x1b7313=_[_0x4179('0x9d')](_0x1b7313,function(_0x186e4d){return!_0x572874[_0x4179('0x9e')](_0x186e4d[_0x4179('0x9f')]);});var _0x2300eb=[];var _0x55bb50=[];_0x1b7313[_0x4179('0xa0')](function(_0x2dbda3){if(_0x2dbda3[_0x4179('0xa1')]){var _0x2063fa=_0x2dbda3['@odata.type'][_0x4179('0x40')](_0x2dbda3['@odata.type'][_0x4179('0x41')]('.')+0x1);if(_0x2063fa===_0x4179('0xa2')){_0x2300eb['push'](getSelectList(_0x50c1b3,_0x4efc05,_0x55bb50,_0x4ab990[_0x4179('0x99')],_0x2dbda3[_0x4179('0x99')],_0x58e010));}}});return Promise['all'](_0x2300eb);})['then'](function(_0x14bf06){_0x378aba=_0x14bf06[0x0];var _0x4ef28f=[];var _0x26cfa9=[];_0x1b7313[_0x4179('0xa0')](function(_0x2936df){if(!_['isNil'](_0x2936df['@odata.type'])){var _0x3c10df=_0x2936df[_0x4179('0xa1')][_0x4179('0x40')](_0x2936df[_0x4179('0xa1')][_0x4179('0x41')]('.')+0x1);if(_0x3c10df===_0x4179('0xa3')){_0x4ef28f['push'](getBooleanList(_0x50c1b3,_0x4efc05,_0x26cfa9,_0x4ab990[_0x4179('0x99')],_0x2936df[_0x4179('0x99')],_0x58e010));}}});return Promise[_0x4179('0xa4')](_0x4ef28f);})[_0x4179('0xe')](function(_0x52ce92){_0x18b484=_0x52ce92[0x0];var _0x51509b=[];var _0x5d7aed=[];_0x1b7313[_0x4179('0xa0')](function(_0x54ace1){if(_0x54ace1['@odata.type']){var _0xbecd41=_0x54ace1[_0x4179('0xa1')][_0x4179('0x40')](_0x54ace1[_0x4179('0xa1')][_0x4179('0x41')]('.')+0x1);if(_0xbecd41===_0x4179('0xa5')||_0xbecd41===_0x4179('0xa6')||_0xbecd41===_0x4179('0xa7')||_0xbecd41===_0x4179('0xa8')||_0xbecd41==='MemoAttributeMetadata'||_0xbecd41==='DateTimeAttributeMetadata'||_0xbecd41==='StatusAttributeMetadata'||_0xbecd41===_0x4179('0xa9')||_0xbecd41===_0x4179('0xaa')||_0xbecd41===_0x4179('0xab')){_0x51509b[_0x4179('0xac')](getInputList(_0x50c1b3,_0x4efc05,_0xbecd41,_0x5d7aed,_0x4ab990['MetadataId'],_0x54ace1['MetadataId'],_0x58e010));}}});return Promise[_0x4179('0xa4')](_0x51509b);})['then'](function(_0x590a80){_0x2f8a2b=_0x590a80[0x0];var _0x79dd85=_0x378aba[_0x4179('0xad')](_0x18b484)[_0x4179('0xad')](_0x2f8a2b);var _0x1388a1={'count':_0x79dd85[_0x4179('0x2d')],'rows':_0x79dd85};return _0x1388a1;})[_0x4179('0xe')](respondWithResult(_0x1a8a10,null))[_0x4179('0x2c')](function(_0x54533f){var _0x1f5557=_0x5a3bde[_0x4179('0x1c')]['test']?0x1f4:_0x54533f[_0x4179('0xae')]||0x1f4;logger[_0x4179('0x11')](_0x54533f['stack']);delete _0x54533f[_0x4179('0x13')];if(_0x1f5557===0x191){_0x1f5557=0x190;}_0x1a8a10[_0x4179('0x5')](_0x1f5557)[_0x4179('0xaf')](_0x5a3bde['query'][_0x4179('0xb0')]?{'message':_0x4179('0xb1'),'statusCode':_0x54533f['statusCode']}:_0x54533f);});};function getSelectList(_0x26eae7,_0x4d59a3,_0x22e61d,_0x484cb1,_0xccb748,_0x22f868){var _0x36d014={'method':_0x4179('0xb2'),'uri':_0x26eae7+'EntityDefinitions('+_0x484cb1+_0x4179('0xb3')+_0xccb748+')/Microsoft.Dynamics.CRM.PicklistAttributeMetadata?'+_0x4179('0xb4'),'headers':{'Authorization':_0x4179('0x96')+_0x22f868,'If-None-Match':null,'OData-Version':_0x4179('0x97')},'json':!![]};return rp(_0x36d014)[_0x4179('0xe')](function(_0x3a036e){var _0x1a746a=[];var _0x7dd3a9=_0x3a036e[_0x4179('0xb5')][_0x4179('0xb6')];_0x7dd3a9[_0x4179('0xa0')](function(_0x5cb021){_0x1a746a['push']({'name':_0x5cb021[_0x4179('0xb7')][_0x4179('0xb8')]['Label'],'value':String(_0x5cb021[_0x4179('0xb9')])});});var _0x313a35={'id':_0x4d59a3+'_'+_0x3a036e['LogicalName'],'name':_0x3a036e[_0x4179('0xba')][_0x4179('0xb8')][_0x4179('0xb7')],'custom':![],'options':_0x1a746a};_0x22e61d['push'](_0x313a35);return _0x22e61d;});}function getBooleanList(_0x3cdc8e,_0x597b77,_0x283d5c,_0x3fc8b8,_0x32ff0f,_0x21442b){var _0x48612e={'method':'GET','uri':_0x3cdc8e+_0x4179('0x9a')+_0x3fc8b8+_0x4179('0xb3')+_0x32ff0f+')/Microsoft.Dynamics.CRM.BooleanAttributeMetadata?$select=DisplayName,LogicalName&$expand=OptionSet($select=FalseOption,\x20TrueOption)','headers':{'Authorization':_0x4179('0x96')+_0x21442b,'If-None-Match':null,'OData-Version':'4.0'},'json':!![]};return rp(_0x48612e)[_0x4179('0xe')](function(_0x256c56){var _0x27af5c=[];_0x27af5c['push']({'name':_0x256c56['OptionSet'][_0x4179('0xbb')][_0x4179('0xb7')][_0x4179('0xb8')]['Label'],'value':'true'},{'name':_0x256c56[_0x4179('0xb5')][_0x4179('0xbc')][_0x4179('0xb7')]['UserLocalizedLabel']['Label'],'value':_0x4179('0xbd')});var _0x378d42={'id':_0x597b77+'_'+_0x256c56[_0x4179('0x9f')],'name':_0x256c56[_0x4179('0xba')][_0x4179('0xb8')][_0x4179('0xb7')],'custom':![],'options':_0x27af5c};_0x283d5c['push'](_0x378d42);return _0x283d5c;});}function getInputList(_0x366165,_0x3bbb1a,_0x46623c,_0x5727f4,_0x4a4c1b,_0x53d530,_0x4446a4){var _0x5490c3={'method':'GET','uri':_0x366165+_0x4179('0x9a')+_0x4a4c1b+')/Attributes('+_0x53d530+_0x4179('0xbe')+_0x46623c+_0x4179('0xbf'),'headers':{'Authorization':'Bearer\x20'+_0x4446a4,'If-None-Match':null,'OData-Version':_0x4179('0x97')},'json':!![]};return rp(_0x5490c3)[_0x4179('0xe')](function(_0x19e120){var _0x1c565f={'id':_0x3bbb1a+'_'+_0x19e120[_0x4179('0x9f')],'name':_0x19e120['DisplayName'][_0x4179('0xb8')]?_0x19e120[_0x4179('0xba')][_0x4179('0xb8')][_0x4179('0xb7')]:_0x19e120[_0x4179('0x9f')],'custom':![],'options':[]};_0x5727f4['push'](_0x1c565f);return _0x5727f4;});}