f5f8f6b61373f40f387235a382ea61359de85f9b
[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 _0x7c63=['versionnumber','username','tenantId','modernAuthentication','CloudProvider','data5','access_token','data7','remoteUri','POST','https://login.microsoftonline.com/','clientId','password','clientSecret','GET','EntityDefinitions?$select=DisplayName,EntitySetName&$filter=SchemaName\x20eq\x20\x27','Bearer\x20','4.0','value','MetadataId','EntityDefinitions(',')?$select=LogicalName&$expand=Attributes($select=LogicalName)','includes','LogicalName','forEach','@odata.type','PicklistAttributeMetadata','push','isNil','all','DoubleAttributeMetadata','BigIntAttributeMetadata','IntegerAttributeMetadata','MemoAttributeMetadata','DateTimeAttributeMetadata','StatusAttributeMetadata','StateAttributeMetadata','concat','test','statusCode','Wrong\x20credentials',')/Attributes(',')/Microsoft.Dynamics.CRM.PicklistAttributeMetadata?','$select=DisplayName,LogicalName&$expand=OptionSet($select=Options)','OptionSet','Options','UserLocalizedLabel','Label','Value','DisplayName',')/Microsoft.Dynamics.CRM.BooleanAttributeMetadata?$select=DisplayName,LogicalName&$expand=OptionSet($select=FalseOption,\x20TrueOption)','TrueOption','true','false','?$select=DisplayName,LogicalName','request-promise','util','lodash','../../components/parsers/qs','api','../../mysqldb','../../components/integrations/configuration','status','json','offset','undefined','count','limit','set','Content-Range','update','then','destroy','end','sendStatus','error','stack','name','send','index','map','Dynamics365Account','rawAttributes','key','model','query','keys','filters','intersection','attributes','fields','hasOwnProperty','nolimit','order','sort','where','filter','merge','type','VIRTUAL','options','includeAll','findAll','show','length','find','catch','body','params','getConfigurations','findOne','Dynamics365Configuration','pick','AccountId','Subjects','channel','Dynamics365Field','Descriptions','slice','substring','lastIndexOf','format','%s/api/data/v9.0/','ticketType','incident','Incident','PhoneCall','title','customerid','ownerid','caseorigincode','phonenumber','regardingobjectid','directioncode','phonecall_activity_parties','billedserviceunits','contactidname','contactidyominame','contractdetailidname','createdbyexternalpartyname','createdbyexternalpartyyominame','createdbyname','createdbyyominame','createdonbehalfbyname','customeridtype','customeridyominame','emailaddress','entitlementidname','entityimage_timestamp','entityimage_url','escalatedon','exchangerate','firstresponsebykpiidname','followupby','importsequencenumber','influencescore','kbarticleidname','lastonholdtime','masteridname','modifiedbyexternalpartyname','modifiedbyname','modifiedbyyominame','modifiedonbehalfbyname','modifiedonbehalfbyyominame','msdyn_incidenttypename','msdyn_iotalertname','onholdtime','overriddencreatedon','owneridname','parentcaseidname','primarycontactidyominame','prioritycodename','resolveby','resolvebykpiidname','responseby','responsiblecontactidyominame','sentimentvalue','slainvokedidname','slaname','socialprofileidname','statecode','statuscode','subjectidname','ticketnumber','timezoneruleversionnumber','transactioncurrencyidname','traversedpath','utcconversiontimezonecode'];(function(_0x208385,_0x18fe7b){var _0x206f35=function(_0x55905a){while(--_0x55905a){_0x208385['push'](_0x208385['shift']());}};_0x206f35(++_0x18fe7b);}(_0x7c63,0xf3));var _0x37c6=function(_0x22d617,_0x1e93fd){_0x22d617=_0x22d617-0x0;var _0xe5136e=_0x7c63[_0x22d617];return _0xe5136e;};'use strict';var rp=require(_0x37c6('0x0'));var util=require(_0x37c6('0x1'));var _=require(_0x37c6('0x2'));var qs=require(_0x37c6('0x3'));var logger=require('../../config/logger')(_0x37c6('0x4'));var db=require(_0x37c6('0x5'))['db'];var integrations=require(_0x37c6('0x6'));function respondWithResult(_0x4c6e48,_0x1154f3){_0x1154f3=_0x1154f3||0xc8;return function(_0x4d75dc){if(_0x4d75dc){return _0x4c6e48[_0x37c6('0x7')](_0x1154f3)[_0x37c6('0x8')](_0x4d75dc);}};}function respondWithFilteredResult(_0x4d8401,_0x3685c7){return function(_0x317414){if(_0x317414){var _0x245a44=typeof _0x3685c7[_0x37c6('0x9')]===_0x37c6('0xa')&&typeof _0x3685c7['limit']===_0x37c6('0xa');var _0x79485a=_0x317414[_0x37c6('0xb')];var _0x488e3d=_0x245a44?0x0:_0x3685c7[_0x37c6('0x9')];var _0x3bd170=_0x245a44?_0x317414[_0x37c6('0xb')]:_0x3685c7['offset']+_0x3685c7[_0x37c6('0xc')];var _0x421dd9;if(_0x3bd170>=_0x79485a){_0x3bd170=_0x79485a;_0x421dd9=0xc8;}else{_0x421dd9=0xce;}_0x4d8401[_0x37c6('0x7')](_0x421dd9);return _0x4d8401[_0x37c6('0xd')](_0x37c6('0xe'),_0x488e3d+'-'+_0x3bd170+'/'+_0x79485a)[_0x37c6('0x8')](_0x317414);}return null;};}function saveUpdates(_0x502818){return function(_0x527fab){if(_0x527fab){return _0x527fab[_0x37c6('0xf')](_0x502818)[_0x37c6('0x10')](function(_0x1d01aa){return _0x1d01aa;});}return null;};}function removeEntity(_0x25fa38){return function(_0x582d4b){if(_0x582d4b){return _0x582d4b[_0x37c6('0x11')]()[_0x37c6('0x10')](function(){_0x25fa38['status'](0xcc)[_0x37c6('0x12')]();});}};}function handleEntityNotFound(_0x1def07){return function(_0x1b6bd2){if(!_0x1b6bd2){_0x1def07[_0x37c6('0x13')](0x194);}return _0x1b6bd2;};}function handleError(_0x4effa3,_0x1060ae){_0x1060ae=_0x1060ae||0x1f4;return function(_0x1605e7){logger[_0x37c6('0x14')](_0x1605e7[_0x37c6('0x15')]);if(_0x1605e7[_0x37c6('0x16')]){delete _0x1605e7['name'];}_0x4effa3[_0x37c6('0x7')](_0x1060ae)[_0x37c6('0x17')](_0x1605e7);};}exports[_0x37c6('0x18')]=function(_0x5000e0,_0x581089){var _0x474a4c={},_0x39c0a4={},_0x1ca1f2={'count':0x0,'rows':[]};var _0x319948=_[_0x37c6('0x19')](db[_0x37c6('0x1a')][_0x37c6('0x1b')],function(_0x2c19c7){return{'name':_0x2c19c7['fieldName'],'type':_0x2c19c7['type'][_0x37c6('0x1c')]};});_0x39c0a4[_0x37c6('0x1d')]=_['map'](_0x319948,'name');_0x39c0a4[_0x37c6('0x1e')]=_[_0x37c6('0x1f')](_0x5000e0[_0x37c6('0x1e')]);_0x39c0a4[_0x37c6('0x20')]=_[_0x37c6('0x21')](_0x39c0a4[_0x37c6('0x1d')],_0x39c0a4[_0x37c6('0x1e')]);_0x474a4c[_0x37c6('0x22')]=_['intersection'](_0x39c0a4[_0x37c6('0x1d')],qs[_0x37c6('0x23')](_0x5000e0['query'][_0x37c6('0x23')]));_0x474a4c[_0x37c6('0x22')]=_0x474a4c[_0x37c6('0x22')]['length']?_0x474a4c[_0x37c6('0x22')]:_0x39c0a4['model'];if(!_0x5000e0['query'][_0x37c6('0x24')](_0x37c6('0x25'))){_0x474a4c[_0x37c6('0xc')]=qs[_0x37c6('0xc')](_0x5000e0[_0x37c6('0x1e')][_0x37c6('0xc')]);_0x474a4c[_0x37c6('0x9')]=qs[_0x37c6('0x9')](_0x5000e0['query']['offset']);}_0x474a4c[_0x37c6('0x26')]=qs[_0x37c6('0x27')](_0x5000e0['query'][_0x37c6('0x27')]);_0x474a4c[_0x37c6('0x28')]=qs[_0x37c6('0x20')](_['pick'](_0x5000e0['query'],_0x39c0a4['filters']),_0x319948);if(_0x5000e0['query'][_0x37c6('0x29')]){_0x474a4c[_0x37c6('0x28')]=_[_0x37c6('0x2a')](_0x474a4c[_0x37c6('0x28')],{'$or':_[_0x37c6('0x19')](_0x319948,function(_0x37f584){if(_0x37f584[_0x37c6('0x2b')]!==_0x37c6('0x2c')){var _0x5e15c8={};_0x5e15c8[_0x37f584[_0x37c6('0x16')]]={'$like':'%'+_0x5000e0[_0x37c6('0x1e')][_0x37c6('0x29')]+'%'};return _0x5e15c8;}})});}_0x474a4c=_['merge']({},_0x474a4c,_0x5000e0[_0x37c6('0x2d')]);var _0x3d3792={'where':_0x474a4c[_0x37c6('0x28')]};return db[_0x37c6('0x1a')][_0x37c6('0xb')](_0x3d3792)['then'](function(_0x118f8b){_0x1ca1f2[_0x37c6('0xb')]=_0x118f8b;if(_0x5000e0['query'][_0x37c6('0x2e')]){_0x474a4c['include']=[{'all':!![]}];}return db[_0x37c6('0x1a')][_0x37c6('0x2f')](_0x474a4c);})[_0x37c6('0x10')](function(_0x2f6fc0){_0x1ca1f2['rows']=_0x2f6fc0;return _0x1ca1f2;})[_0x37c6('0x10')](respondWithFilteredResult(_0x581089,_0x474a4c))['catch'](handleError(_0x581089,null));};exports[_0x37c6('0x30')]=function(_0x2f4373,_0x28ce64){var _0x56954e={'raw':![],'where':{'id':_0x2f4373['params']['id']}},_0x5d22b5={};_0x5d22b5[_0x37c6('0x1d')]=_['keys'](db[_0x37c6('0x1a')][_0x37c6('0x1b')]);_0x5d22b5[_0x37c6('0x1e')]=_[_0x37c6('0x1f')](_0x2f4373[_0x37c6('0x1e')]);_0x5d22b5['filters']=_[_0x37c6('0x21')](_0x5d22b5[_0x37c6('0x1d')],_0x5d22b5[_0x37c6('0x1e')]);_0x56954e[_0x37c6('0x22')]=_[_0x37c6('0x21')](_0x5d22b5[_0x37c6('0x1d')],qs[_0x37c6('0x23')](_0x2f4373[_0x37c6('0x1e')][_0x37c6('0x23')]));_0x56954e[_0x37c6('0x22')]=_0x56954e[_0x37c6('0x22')][_0x37c6('0x31')]?_0x56954e[_0x37c6('0x22')]:_0x5d22b5[_0x37c6('0x1d')];if(_0x2f4373[_0x37c6('0x1e')][_0x37c6('0x2e')]){_0x56954e['include']=[{'all':!![]}];}_0x56954e=_[_0x37c6('0x2a')]({},_0x56954e,_0x2f4373[_0x37c6('0x2d')]);return db[_0x37c6('0x1a')][_0x37c6('0x32')](_0x56954e)['then'](handleEntityNotFound(_0x28ce64,null))[_0x37c6('0x10')](respondWithResult(_0x28ce64,null))[_0x37c6('0x33')](handleError(_0x28ce64,null));};exports['create']=function(_0xe600a5,_0x220b1b){return db[_0x37c6('0x1a')]['create'](_0xe600a5[_0x37c6('0x34')],{})[_0x37c6('0x10')](respondWithResult(_0x220b1b,0xc9))['catch'](handleError(_0x220b1b,null));};exports[_0x37c6('0xf')]=function(_0x12951d,_0x320610){if(_0x12951d['body']['id']){delete _0x12951d['body']['id'];}return db['Dynamics365Account'][_0x37c6('0x32')]({'where':{'id':_0x12951d[_0x37c6('0x35')]['id']}})[_0x37c6('0x10')](handleEntityNotFound(_0x320610,null))[_0x37c6('0x10')](saveUpdates(_0x12951d['body'],null))[_0x37c6('0x10')](respondWithResult(_0x320610,null))[_0x37c6('0x33')](handleError(_0x320610,null));};exports['destroy']=function(_0x4bedc7,_0x421b94){return db[_0x37c6('0x1a')][_0x37c6('0x32')]({'where':{'id':_0x4bedc7[_0x37c6('0x35')]['id']}})[_0x37c6('0x10')](handleEntityNotFound(_0x421b94,null))[_0x37c6('0x10')](removeEntity(_0x421b94,null))['catch'](handleError(_0x421b94,null));};exports[_0x37c6('0x36')]=function(_0x1adc89,_0x563919){var _0x919875={};var _0x3327b3={};var _0x298ad4;var _0x2b7a03;return db['Dynamics365Account'][_0x37c6('0x37')]({'where':{'id':_0x1adc89[_0x37c6('0x35')]['id']}})['then'](handleEntityNotFound(_0x563919,null))['then'](function(_0x2451cb){if(_0x2451cb){_0x298ad4=_0x2451cb;_0x3327b3['model']=_[_0x37c6('0x1f')](db[_0x37c6('0x38')][_0x37c6('0x1b')]);_0x3327b3[_0x37c6('0x1e')]=_[_0x37c6('0x1f')](_0x1adc89['query']);_0x3327b3[_0x37c6('0x20')]=_[_0x37c6('0x21')](_0x3327b3['model'],_0x3327b3[_0x37c6('0x1e')]);_0x919875[_0x37c6('0x22')]=_[_0x37c6('0x21')](_0x3327b3[_0x37c6('0x1d')],qs['fields'](_0x1adc89['query'][_0x37c6('0x23')]));_0x919875[_0x37c6('0x22')]=_0x919875['attributes'][_0x37c6('0x31')]?_0x919875['attributes']:_0x3327b3['model'];_0x919875[_0x37c6('0x26')]=qs['sort'](_0x1adc89[_0x37c6('0x1e')][_0x37c6('0x27')]);_0x919875['where']=qs[_0x37c6('0x20')](_[_0x37c6('0x39')](_0x1adc89[_0x37c6('0x1e')],_0x3327b3[_0x37c6('0x20')]));if(_0x1adc89[_0x37c6('0x1e')][_0x37c6('0x29')]){_0x919875[_0x37c6('0x28')]=_[_0x37c6('0x2a')](_0x919875[_0x37c6('0x28')],{'$or':_[_0x37c6('0x19')](_0x919875[_0x37c6('0x22')],function(_0x25955e){var _0x2cb3b1={};_0x2cb3b1[_0x25955e]={'$like':'%'+_0x1adc89[_0x37c6('0x1e')][_0x37c6('0x29')]+'%'};return _0x2cb3b1;})});}_0x919875=_[_0x37c6('0x2a')]({},_0x919875,_0x1adc89[_0x37c6('0x2d')]);return _0x298ad4['getConfigurations'](_0x919875);}})['then'](function(_0x14e605){if(_0x14e605){_0x2b7a03=_0x14e605[_0x37c6('0x31')];if(!_0x1adc89[_0x37c6('0x1e')]['hasOwnProperty']('nolimit')){_0x919875[_0x37c6('0xc')]=qs['limit'](_0x1adc89[_0x37c6('0x1e')][_0x37c6('0xc')]);_0x919875[_0x37c6('0x9')]=qs['offset'](_0x1adc89['query'][_0x37c6('0x9')]);}return _0x298ad4[_0x37c6('0x36')](_0x919875);}})[_0x37c6('0x10')](function(_0x3085c4){if(_0x3085c4){return _0x3085c4?{'count':_0x2b7a03,'rows':_0x3085c4}:null;}})[_0x37c6('0x10')](respondWithResult(_0x563919,null))[_0x37c6('0x33')](handleError(_0x563919,null));};exports['addConfiguration']=function(_0x11aa10,_0x51ee53){if(_0x11aa10[_0x37c6('0x34')]['id']){delete _0x11aa10[_0x37c6('0x34')]['id'];}return db[_0x37c6('0x1a')][_0x37c6('0x37')]({'where':{'id':_0x11aa10['params']['id']}})[_0x37c6('0x10')](handleEntityNotFound(_0x51ee53,null))[_0x37c6('0x10')](function(_0x3d1553){if(_0x3d1553){_0x11aa10['body'][_0x37c6('0x3a')]=_0x3d1553['id'];_0x11aa10[_0x37c6('0x34')][_0x37c6('0x3b')]=integrations['getSubjects'](_0x11aa10[_0x37c6('0x34')][_0x37c6('0x3c')],_0x11aa10[_0x37c6('0x34')][_0x37c6('0x2b')]);_0x11aa10[_0x37c6('0x34')]['Descriptions']=integrations['getDescriptions'](_0x11aa10[_0x37c6('0x34')][_0x37c6('0x3c')],_0x11aa10[_0x37c6('0x34')][_0x37c6('0x2b')]);return db[_0x37c6('0x38')]['create'](_0x11aa10[_0x37c6('0x34')],{'include':[{'model':db[_0x37c6('0x3d')],'as':_0x37c6('0x3b')},{'model':db[_0x37c6('0x3d')],'as':_0x37c6('0x3e')}]});}return null;})['then'](respondWithResult(_0x51ee53,null))['catch'](handleError(_0x51ee53,null));};function sanitizeRemoteUri(_0x22beee){var _0x366faa=_0x22beee[_0x37c6('0x3f')](-0x1);if(_0x366faa==='/')return _0x22beee[_0x37c6('0x40')](0x0,_0x22beee[_0x37c6('0x41')](_0x366faa));return _0x22beee;}function getWebApiUrl(_0x24f1fa){return util[_0x37c6('0x42')](_0x37c6('0x43'),_0x24f1fa);}exports['getFields']=function(_0x385cd4,_0x933161){var _0x359728=_0x385cd4[_0x37c6('0x1e')][_0x37c6('0x44')];var _0x25b85d=_0x359728===_0x37c6('0x45')?_0x37c6('0x46'):_0x37c6('0x47');var _0x3d7731='';var _0xaa7f25='';var _0x3f384d='';var _0x31ae1e='';var _0xb2bbe6='';var _0x25b20b='';var _0x3d7c91='';var _0x1aeaca='';var _0x53f36a=[_0x37c6('0x48'),'description',_0x37c6('0x49'),_0x37c6('0x4a'),_0x37c6('0x4b'),'subject',_0x37c6('0x4c'),_0x37c6('0x4d'),_0x37c6('0x4e'),_0x37c6('0x4f')];var _0x224cdd=['accountidname','accountidyominame','actualserviceunits',_0x37c6('0x50'),_0x37c6('0x51'),_0x37c6('0x52'),_0x37c6('0x53'),'contractidname',_0x37c6('0x54'),_0x37c6('0x55'),_0x37c6('0x56'),_0x37c6('0x57'),'createdon',_0x37c6('0x58'),'createdonbehalfbyyominame','customeridname',_0x37c6('0x59'),_0x37c6('0x5a'),_0x37c6('0x5b'),_0x37c6('0x5c'),_0x37c6('0x5d'),_0x37c6('0x5e'),_0x37c6('0x5f'),_0x37c6('0x60'),_0x37c6('0x61'),_0x37c6('0x62'),_0x37c6('0x63'),_0x37c6('0x64'),_0x37c6('0x65'),_0x37c6('0x66'),_0x37c6('0x67'),_0x37c6('0x68'),'modifiedbyexternalpartyyominame',_0x37c6('0x69'),_0x37c6('0x6a'),'modifiedon',_0x37c6('0x6b'),_0x37c6('0x6c'),_0x37c6('0x6d'),_0x37c6('0x6e'),'numberofchildincidents',_0x37c6('0x6f'),_0x37c6('0x70'),_0x37c6('0x71'),'owneridtype','owneridyominame',_0x37c6('0x72'),'primarycontactidname',_0x37c6('0x73'),_0x37c6('0x74'),'productidname','productserialnumber',_0x37c6('0x75'),_0x37c6('0x76'),_0x37c6('0x77'),'responsiblecontactidname',_0x37c6('0x78'),_0x37c6('0x79'),_0x37c6('0x7a'),_0x37c6('0x7b'),_0x37c6('0x7c'),_0x37c6('0x7d'),_0x37c6('0x7e'),_0x37c6('0x7f'),_0x37c6('0x80'),_0x37c6('0x81'),_0x37c6('0x82'),_0x37c6('0x83'),_0x37c6('0x84'),_0x37c6('0x85')];var _0x1cd380=_0x53f36a['concat'](_0x224cdd);return db[_0x37c6('0x1a')][_0x37c6('0x37')]({'where':{'id':_0x385cd4[_0x37c6('0x35')]['id']},'attributes':['id',_0x37c6('0x86'),'password','remoteUri',_0x37c6('0x87'),'clientId','clientSecret',_0x37c6('0x88')],'include':[{'model':db['CloudProvider'],'as':_0x37c6('0x89'),'attributes':['id',_0x37c6('0x8a'),'data7']}]})[_0x37c6('0x10')](handleEntityNotFound(_0x933161,null))[_0x37c6('0x10')](function(_0x4335eb){if(_0x4335eb){if(_0x4335eb[_0x37c6('0x88')]){_0x4335eb[_0x37c6('0x8b')]=_0x4335eb[_0x37c6('0x89')][_0x37c6('0x8a')];_0x1aeaca=sanitizeRemoteUri(_0x4335eb[_0x37c6('0x89')][_0x37c6('0x8c')]);_0x3d7c91=getWebApiUrl(_0x1aeaca);return _0x4335eb;}_0x1aeaca=sanitizeRemoteUri(_0x4335eb[_0x37c6('0x8d')]);_0x3d7c91=getWebApiUrl(_0x1aeaca);var _0x369d0f={'method':_0x37c6('0x8e'),'uri':_0x37c6('0x8f')+_0x4335eb[_0x37c6('0x87')]+'/oauth2/token','form':{'client_id':_0x4335eb[_0x37c6('0x90')],'resource':_0x1aeaca,'username':_0x4335eb['username'],'password':_0x4335eb[_0x37c6('0x91')],'grant_type':'password','client_secret':_0x4335eb[_0x37c6('0x92')]},'json':!![]};return rp(_0x369d0f);}})['then'](function(_0x4fea4c){_0x25b20b=_0x4fea4c['access_token'];var _0x5d8054={'method':_0x37c6('0x93'),'uri':encodeURI(_0x3d7c91+_0x37c6('0x94')+_0x25b85d+'\x27'),'headers':{'Authorization':_0x37c6('0x95')+_0x25b20b,'If-None-Match':null,'OData-Version':_0x37c6('0x96')},'json':!![]};return rp(_0x5d8054);})[_0x37c6('0x10')](function(_0x59ca3b){var _0x3673e0=_0x59ca3b[_0x37c6('0x97')][0x0];var _0x5898af=_0x3673e0[_0x37c6('0x98')];var _0x42caa2={'method':_0x37c6('0x93'),'uri':_0x3d7c91+_0x37c6('0x99')+_0x5898af+_0x37c6('0x9a'),'headers':{'Authorization':_0x37c6('0x95')+_0x25b20b,'If-None-Match':null,'OData-Version':_0x37c6('0x96')},'json':!![]};return rp(_0x42caa2);})['then'](function(_0x39bf4c){_0x3d7731=_0x39bf4c;_0xaa7f25=_0x3d7731['Attributes'];_0xaa7f25=_['remove'](_0xaa7f25,function(_0xf4b7c){return!_0x1cd380[_0x37c6('0x9b')](_0xf4b7c[_0x37c6('0x9c')]);});var _0x5a9c80=[];var _0x5be242=[];_0xaa7f25[_0x37c6('0x9d')](function(_0x2923ba){if(_0x2923ba['@odata.type']){var _0x3dfbf8=_0x2923ba[_0x37c6('0x9e')][_0x37c6('0x40')](_0x2923ba[_0x37c6('0x9e')][_0x37c6('0x41')]('.')+0x1);if(_0x3dfbf8===_0x37c6('0x9f')){_0x5a9c80[_0x37c6('0xa0')](getSelectList(_0x3d7c91,_0x359728,_0x5be242,_0x3d7731['MetadataId'],_0x2923ba[_0x37c6('0x98')],_0x25b20b));}}});return Promise['all'](_0x5a9c80);})[_0x37c6('0x10')](function(_0x3e1b3c){_0x3f384d=_0x3e1b3c[0x0];var _0x5197e8=[];var _0x539fe5=[];_0xaa7f25['forEach'](function(_0x218518){if(!_[_0x37c6('0xa1')](_0x218518['@odata.type'])){var _0x58325a=_0x218518[_0x37c6('0x9e')]['substring'](_0x218518[_0x37c6('0x9e')][_0x37c6('0x41')]('.')+0x1);if(_0x58325a==='BooleanAttributeMetadata'){_0x5197e8[_0x37c6('0xa0')](getBooleanList(_0x3d7c91,_0x359728,_0x539fe5,_0x3d7731[_0x37c6('0x98')],_0x218518[_0x37c6('0x98')],_0x25b20b));}}});return Promise[_0x37c6('0xa2')](_0x5197e8);})['then'](function(_0x21ed66){_0x31ae1e=_0x21ed66[0x0];var _0x5c9bba=[];var _0x34ecdd=[];_0xaa7f25[_0x37c6('0x9d')](function(_0x571288){if(_0x571288[_0x37c6('0x9e')]){var _0xf53161=_0x571288[_0x37c6('0x9e')][_0x37c6('0x40')](_0x571288[_0x37c6('0x9e')][_0x37c6('0x41')]('.')+0x1);if(_0xf53161==='StringAttributeMetadata'||_0xf53161===_0x37c6('0xa3')||_0xf53161===_0x37c6('0xa4')||_0xf53161===_0x37c6('0xa5')||_0xf53161===_0x37c6('0xa6')||_0xf53161===_0x37c6('0xa7')||_0xf53161===_0x37c6('0xa8')||_0xf53161==='EntityNameAttributeMetadata'||_0xf53161===_0x37c6('0xa9')||_0xf53161==='DecimalAttributeMetadata'){_0x5c9bba[_0x37c6('0xa0')](getInputList(_0x3d7c91,_0x359728,_0xf53161,_0x34ecdd,_0x3d7731[_0x37c6('0x98')],_0x571288[_0x37c6('0x98')],_0x25b20b));}}});return Promise[_0x37c6('0xa2')](_0x5c9bba);})['then'](function(_0x17aa1b){_0xb2bbe6=_0x17aa1b[0x0];var _0x3f7dc3=_0x3f384d[_0x37c6('0xaa')](_0x31ae1e)[_0x37c6('0xaa')](_0xb2bbe6);var _0x2f41ae={'count':_0x3f7dc3[_0x37c6('0x31')],'rows':_0x3f7dc3};return _0x2f41ae;})[_0x37c6('0x10')](respondWithResult(_0x933161,null))[_0x37c6('0x33')](function(_0x6d1a26){var _0x1382f4=_0x385cd4[_0x37c6('0x1e')][_0x37c6('0xab')]?0x1f4:_0x6d1a26[_0x37c6('0xac')]||0x1f4;logger['error'](_0x6d1a26[_0x37c6('0x15')]);delete _0x6d1a26[_0x37c6('0x16')];if(_0x1382f4===0x191){_0x1382f4=0x190;}_0x933161[_0x37c6('0x7')](_0x1382f4)[_0x37c6('0x17')](_0x385cd4['query'][_0x37c6('0xab')]?{'message':_0x37c6('0xad'),'statusCode':_0x6d1a26[_0x37c6('0xac')]}:_0x6d1a26);});};function getSelectList(_0x1ec453,_0x30a199,_0xd4ade5,_0x3587df,_0xd9b71b,_0x5a0208){var _0x43efaf={'method':_0x37c6('0x93'),'uri':_0x1ec453+_0x37c6('0x99')+_0x3587df+_0x37c6('0xae')+_0xd9b71b+_0x37c6('0xaf')+_0x37c6('0xb0'),'headers':{'Authorization':_0x37c6('0x95')+_0x5a0208,'If-None-Match':null,'OData-Version':_0x37c6('0x96')},'json':!![]};return rp(_0x43efaf)['then'](function(_0x475832){var _0x597958=[];var _0x13001=_0x475832[_0x37c6('0xb1')][_0x37c6('0xb2')];_0x13001[_0x37c6('0x9d')](function(_0x49faf3){_0x597958[_0x37c6('0xa0')]({'name':_0x49faf3['Label'][_0x37c6('0xb3')][_0x37c6('0xb4')],'value':String(_0x49faf3[_0x37c6('0xb5')])});});var _0x2ed892={'id':_0x30a199+'_'+_0x475832[_0x37c6('0x9c')],'name':_0x475832[_0x37c6('0xb6')][_0x37c6('0xb3')][_0x37c6('0xb4')],'custom':![],'options':_0x597958};_0xd4ade5['push'](_0x2ed892);return _0xd4ade5;});}function getBooleanList(_0x2b45be,_0x554676,_0x2aac18,_0x251277,_0x5841e2,_0x16daca){var _0x4bd222={'method':_0x37c6('0x93'),'uri':_0x2b45be+_0x37c6('0x99')+_0x251277+_0x37c6('0xae')+_0x5841e2+_0x37c6('0xb7'),'headers':{'Authorization':_0x37c6('0x95')+_0x16daca,'If-None-Match':null,'OData-Version':_0x37c6('0x96')},'json':!![]};return rp(_0x4bd222)[_0x37c6('0x10')](function(_0x4fe52c){var _0x189d74=[];_0x189d74[_0x37c6('0xa0')]({'name':_0x4fe52c[_0x37c6('0xb1')][_0x37c6('0xb8')][_0x37c6('0xb4')][_0x37c6('0xb3')][_0x37c6('0xb4')],'value':_0x37c6('0xb9')},{'name':_0x4fe52c[_0x37c6('0xb1')]['FalseOption'][_0x37c6('0xb4')]['UserLocalizedLabel']['Label'],'value':_0x37c6('0xba')});var _0x53ef3c={'id':_0x554676+'_'+_0x4fe52c['LogicalName'],'name':_0x4fe52c[_0x37c6('0xb6')]['UserLocalizedLabel']['Label'],'custom':![],'options':_0x189d74};_0x2aac18[_0x37c6('0xa0')](_0x53ef3c);return _0x2aac18;});}function getInputList(_0x53f5ae,_0xfb7034,_0x316acb,_0x27915c,_0x281e19,_0x1802c2,_0x475a5a){var _0x46da0a={'method':_0x37c6('0x93'),'uri':_0x53f5ae+_0x37c6('0x99')+_0x281e19+')/Attributes('+_0x1802c2+')/Microsoft.Dynamics.CRM.'+_0x316acb+_0x37c6('0xbb'),'headers':{'Authorization':_0x37c6('0x95')+_0x475a5a,'If-None-Match':null,'OData-Version':_0x37c6('0x96')},'json':!![]};return rp(_0x46da0a)[_0x37c6('0x10')](function(_0x2e5828){var _0x166d63={'id':_0xfb7034+'_'+_0x2e5828[_0x37c6('0x9c')],'name':_0x2e5828['DisplayName'][_0x37c6('0xb3')]?_0x2e5828[_0x37c6('0xb6')][_0x37c6('0xb3')]['Label']:_0x2e5828[_0x37c6('0x9c')],'custom':![],'options':[]};_0x27915c['push'](_0x166d63);return _0x27915c;});}