fd05fd426df2560227146c417d2e764a80c8e9f7
[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 _0x3b23=['keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','filter','merge','where','options','includeAll','rows','catch','show','params','rawAttributes','include','find','create','body','update','getConfigurations','findOne','pick','addConfiguration','AccountId','Subjects','channel','Descriptions','getDescriptions','Dynamics365Configuration','Dynamics365Field','substring','lastIndexOf','Incident','description','ownerid','caseorigincode','phonenumber','regardingobjectid','directioncode','accountidyominame','actualserviceunits','contactidname','contactidyominame','contractdetailidname','contractidname','createdbyexternalpartyname','createdbyexternalpartyyominame','createdbyname','createdbyyominame','createdon','createdonbehalfbyname','customeridtype','emailaddress','entitlementidname','entityimage_timestamp','entityimage_url','exchangerate','importsequencenumber','masteridname','modifiedbyname','modifiedon','modifiedonbehalfbyname','modifiedonbehalfbyyominame','onholdtime','owneridyominame','parentcaseidname','primarycontactidyominame','prioritycodename','productidname','resolveby','resolvebykpiidname','responseby','responsiblecontactidname','responsiblecontactidyominame','sentimentvalue','slainvokedidname','statecode','statuscode','subjectidname','ticketnumber','timezoneruleversionnumber','transactioncurrencyidname','traversedpath','utcconversiontimezonecode','versionnumber','concat','username','password','remoteUri','clientId','clientSecret','modernAuthentication','CloudProvider','data5','data7','POST','https://login.microsoftonline.com/','tenantId','/oauth2/token','access_token','EntityDefinitions?$select=DisplayName,EntitySetName&$filter=SchemaName\x20eq\x20\x27','Bearer\x20','4.0','GET','remove','includes','LogicalName','@odata.type','PicklistAttributeMetadata','push','MetadataId','forEach','BooleanAttributeMetadata','all','BigIntAttributeMetadata','MemoAttributeMetadata','DateTimeAttributeMetadata','EntityNameAttributeMetadata','StateAttributeMetadata','DecimalAttributeMetadata','test','Wrong\x20credentials',')/Attributes(',')/Microsoft.Dynamics.CRM.PicklistAttributeMetadata?','OptionSet','Options','UserLocalizedLabel','Label','DisplayName',')/Microsoft.Dynamics.CRM.BooleanAttributeMetadata?$select=DisplayName,LogicalName&$expand=OptionSet($select=FalseOption,\x20TrueOption)','TrueOption','true','FalseOption','false','EntityDefinitions(',')/Microsoft.Dynamics.CRM.','util','lodash','../../components/parsers/qs','../../config/logger','json','offset','limit','undefined','count','status','set','Content-Range','then','destroy','sendStatus','error','name','send','index','map','Dynamics365Account','type','model','query'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0x3b23,0x8d));var _0x33b2=function(_0x37b74f,_0x260fce){_0x37b74f=_0x37b74f-0x0;var _0x35f223=_0x3b23[_0x37b74f];return _0x35f223;};'use strict';var rp=require('request-promise');var util=require(_0x33b2('0x0'));var _=require(_0x33b2('0x1'));var qs=require(_0x33b2('0x2'));var logger=require(_0x33b2('0x3'))('api');var db=require('../../mysqldb')['db'];var integrations=require('../../components/integrations/configuration');function respondWithResult(_0x30db67,_0x94da31){_0x94da31=_0x94da31||0xc8;return function(_0x15efb1){if(_0x15efb1){return _0x30db67['status'](_0x94da31)[_0x33b2('0x4')](_0x15efb1);}};}function respondWithFilteredResult(_0x4b3cdd,_0x509eaf){return function(_0x4dd73c){if(_0x4dd73c){var _0x383587=typeof _0x509eaf[_0x33b2('0x5')]==='undefined'&&typeof _0x509eaf[_0x33b2('0x6')]===_0x33b2('0x7');var _0x1712ab=_0x4dd73c[_0x33b2('0x8')];var _0x9ad26d=_0x383587?0x0:_0x509eaf[_0x33b2('0x5')];var _0x41aa47=_0x383587?_0x4dd73c[_0x33b2('0x8')]:_0x509eaf['offset']+_0x509eaf[_0x33b2('0x6')];var _0x1439c2;if(_0x41aa47>=_0x1712ab){_0x41aa47=_0x1712ab;_0x1439c2=0xc8;}else{_0x1439c2=0xce;}_0x4b3cdd[_0x33b2('0x9')](_0x1439c2);return _0x4b3cdd[_0x33b2('0xa')](_0x33b2('0xb'),_0x9ad26d+'-'+_0x41aa47+'/'+_0x1712ab)[_0x33b2('0x4')](_0x4dd73c);}return null;};}function saveUpdates(_0x395717){return function(_0x37fc0c){if(_0x37fc0c){return _0x37fc0c['update'](_0x395717)[_0x33b2('0xc')](function(_0x3f1717){return _0x3f1717;});}return null;};}function removeEntity(_0x9463b){return function(_0x244dfe){if(_0x244dfe){return _0x244dfe[_0x33b2('0xd')]()[_0x33b2('0xc')](function(){_0x9463b['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x1c0b95){return function(_0x3f8072){if(!_0x3f8072){_0x1c0b95[_0x33b2('0xe')](0x194);}return _0x3f8072;};}function handleError(_0x4acf43,_0x2ae968){_0x2ae968=_0x2ae968||0x1f4;return function(_0x18738c){logger[_0x33b2('0xf')](_0x18738c['stack']);if(_0x18738c[_0x33b2('0x10')]){delete _0x18738c[_0x33b2('0x10')];}_0x4acf43[_0x33b2('0x9')](_0x2ae968)[_0x33b2('0x11')](_0x18738c);};}exports[_0x33b2('0x12')]=function(_0x23a27b,_0x51ec79){var _0x6fa122={},_0x2c5ecc={},_0x17e94b={'count':0x0,'rows':[]};var _0x4a1964=_[_0x33b2('0x13')](db[_0x33b2('0x14')]['rawAttributes'],function(_0x323492){return{'name':_0x323492['fieldName'],'type':_0x323492[_0x33b2('0x15')]['key']};});_0x2c5ecc[_0x33b2('0x16')]=_[_0x33b2('0x13')](_0x4a1964,'name');_0x2c5ecc[_0x33b2('0x17')]=_[_0x33b2('0x18')](_0x23a27b[_0x33b2('0x17')]);_0x2c5ecc[_0x33b2('0x19')]=_[_0x33b2('0x1a')](_0x2c5ecc[_0x33b2('0x16')],_0x2c5ecc[_0x33b2('0x17')]);_0x6fa122[_0x33b2('0x1b')]=_[_0x33b2('0x1a')](_0x2c5ecc[_0x33b2('0x16')],qs[_0x33b2('0x1c')](_0x23a27b[_0x33b2('0x17')][_0x33b2('0x1c')]));_0x6fa122['attributes']=_0x6fa122[_0x33b2('0x1b')][_0x33b2('0x1d')]?_0x6fa122['attributes']:_0x2c5ecc[_0x33b2('0x16')];if(!_0x23a27b['query'][_0x33b2('0x1e')](_0x33b2('0x1f'))){_0x6fa122[_0x33b2('0x6')]=qs[_0x33b2('0x6')](_0x23a27b[_0x33b2('0x17')][_0x33b2('0x6')]);_0x6fa122[_0x33b2('0x5')]=qs[_0x33b2('0x5')](_0x23a27b[_0x33b2('0x17')]['offset']);}_0x6fa122[_0x33b2('0x20')]=qs['sort'](_0x23a27b[_0x33b2('0x17')]['sort']);_0x6fa122['where']=qs[_0x33b2('0x19')](_['pick'](_0x23a27b[_0x33b2('0x17')],_0x2c5ecc[_0x33b2('0x19')]),_0x4a1964);if(_0x23a27b['query'][_0x33b2('0x21')]){_0x6fa122['where']=_[_0x33b2('0x22')](_0x6fa122[_0x33b2('0x23')],{'$or':_[_0x33b2('0x13')](_0x4a1964,function(_0x1f97b3){if(_0x1f97b3[_0x33b2('0x15')]!=='VIRTUAL'){var _0x34b104={};_0x34b104[_0x1f97b3[_0x33b2('0x10')]]={'$like':'%'+_0x23a27b[_0x33b2('0x17')][_0x33b2('0x21')]+'%'};return _0x34b104;}})});}_0x6fa122=_[_0x33b2('0x22')]({},_0x6fa122,_0x23a27b[_0x33b2('0x24')]);var _0x2225b6={'where':_0x6fa122['where']};return db[_0x33b2('0x14')][_0x33b2('0x8')](_0x2225b6)[_0x33b2('0xc')](function(_0x513f12){_0x17e94b[_0x33b2('0x8')]=_0x513f12;if(_0x23a27b['query'][_0x33b2('0x25')]){_0x6fa122['include']=[{'all':!![]}];}return db[_0x33b2('0x14')]['findAll'](_0x6fa122);})[_0x33b2('0xc')](function(_0x1b1b15){_0x17e94b[_0x33b2('0x26')]=_0x1b1b15;return _0x17e94b;})['then'](respondWithFilteredResult(_0x51ec79,_0x6fa122))[_0x33b2('0x27')](handleError(_0x51ec79,null));};exports[_0x33b2('0x28')]=function(_0x2a3243,_0x27edb6){var _0x13d1fd={'raw':![],'where':{'id':_0x2a3243[_0x33b2('0x29')]['id']}},_0x14b6a4={};_0x14b6a4[_0x33b2('0x16')]=_[_0x33b2('0x18')](db[_0x33b2('0x14')][_0x33b2('0x2a')]);_0x14b6a4[_0x33b2('0x17')]=_[_0x33b2('0x18')](_0x2a3243[_0x33b2('0x17')]);_0x14b6a4[_0x33b2('0x19')]=_[_0x33b2('0x1a')](_0x14b6a4[_0x33b2('0x16')],_0x14b6a4[_0x33b2('0x17')]);_0x13d1fd[_0x33b2('0x1b')]=_[_0x33b2('0x1a')](_0x14b6a4[_0x33b2('0x16')],qs[_0x33b2('0x1c')](_0x2a3243[_0x33b2('0x17')]['fields']));_0x13d1fd[_0x33b2('0x1b')]=_0x13d1fd[_0x33b2('0x1b')]['length']?_0x13d1fd[_0x33b2('0x1b')]:_0x14b6a4[_0x33b2('0x16')];if(_0x2a3243['query'][_0x33b2('0x25')]){_0x13d1fd[_0x33b2('0x2b')]=[{'all':!![]}];}_0x13d1fd=_['merge']({},_0x13d1fd,_0x2a3243[_0x33b2('0x24')]);return db[_0x33b2('0x14')][_0x33b2('0x2c')](_0x13d1fd)[_0x33b2('0xc')](handleEntityNotFound(_0x27edb6,null))[_0x33b2('0xc')](respondWithResult(_0x27edb6,null))[_0x33b2('0x27')](handleError(_0x27edb6,null));};exports[_0x33b2('0x2d')]=function(_0x5397cd,_0x111592){return db[_0x33b2('0x14')][_0x33b2('0x2d')](_0x5397cd[_0x33b2('0x2e')],{})[_0x33b2('0xc')](respondWithResult(_0x111592,0xc9))[_0x33b2('0x27')](handleError(_0x111592,null));};exports[_0x33b2('0x2f')]=function(_0x26cdce,_0x765469){if(_0x26cdce[_0x33b2('0x2e')]['id']){delete _0x26cdce[_0x33b2('0x2e')]['id'];}return db[_0x33b2('0x14')][_0x33b2('0x2c')]({'where':{'id':_0x26cdce['params']['id']}})[_0x33b2('0xc')](handleEntityNotFound(_0x765469,null))[_0x33b2('0xc')](saveUpdates(_0x26cdce['body'],null))['then'](respondWithResult(_0x765469,null))[_0x33b2('0x27')](handleError(_0x765469,null));};exports[_0x33b2('0xd')]=function(_0x32ba01,_0x457331){return db[_0x33b2('0x14')]['find']({'where':{'id':_0x32ba01['params']['id']}})[_0x33b2('0xc')](handleEntityNotFound(_0x457331,null))[_0x33b2('0xc')](removeEntity(_0x457331,null))[_0x33b2('0x27')](handleError(_0x457331,null));};exports[_0x33b2('0x30')]=function(_0x3f0e03,_0xa7552e){var _0x38324a={};var _0x55b1fb={};var _0x5aef51;var _0x48d595;return db[_0x33b2('0x14')][_0x33b2('0x31')]({'where':{'id':_0x3f0e03[_0x33b2('0x29')]['id']}})[_0x33b2('0xc')](handleEntityNotFound(_0xa7552e,null))[_0x33b2('0xc')](function(_0x316258){if(_0x316258){_0x5aef51=_0x316258;_0x55b1fb[_0x33b2('0x16')]=_['keys'](db['Dynamics365Configuration'][_0x33b2('0x2a')]);_0x55b1fb['query']=_[_0x33b2('0x18')](_0x3f0e03[_0x33b2('0x17')]);_0x55b1fb[_0x33b2('0x19')]=_['intersection'](_0x55b1fb['model'],_0x55b1fb[_0x33b2('0x17')]);_0x38324a[_0x33b2('0x1b')]=_[_0x33b2('0x1a')](_0x55b1fb[_0x33b2('0x16')],qs[_0x33b2('0x1c')](_0x3f0e03[_0x33b2('0x17')][_0x33b2('0x1c')]));_0x38324a[_0x33b2('0x1b')]=_0x38324a[_0x33b2('0x1b')][_0x33b2('0x1d')]?_0x38324a[_0x33b2('0x1b')]:_0x55b1fb[_0x33b2('0x16')];_0x38324a[_0x33b2('0x20')]=qs['sort'](_0x3f0e03[_0x33b2('0x17')]['sort']);_0x38324a[_0x33b2('0x23')]=qs[_0x33b2('0x19')](_[_0x33b2('0x32')](_0x3f0e03[_0x33b2('0x17')],_0x55b1fb['filters']));if(_0x3f0e03['query'][_0x33b2('0x21')]){_0x38324a['where']=_[_0x33b2('0x22')](_0x38324a[_0x33b2('0x23')],{'$or':_[_0x33b2('0x13')](_0x38324a['attributes'],function(_0x5bb220){var _0x4499ef={};_0x4499ef[_0x5bb220]={'$like':'%'+_0x3f0e03['query']['filter']+'%'};return _0x4499ef;})});}_0x38324a=_[_0x33b2('0x22')]({},_0x38324a,_0x3f0e03['options']);return _0x5aef51[_0x33b2('0x30')](_0x38324a);}})[_0x33b2('0xc')](function(_0x9796dc){if(_0x9796dc){_0x48d595=_0x9796dc['length'];if(!_0x3f0e03[_0x33b2('0x17')][_0x33b2('0x1e')](_0x33b2('0x1f'))){_0x38324a[_0x33b2('0x6')]=qs[_0x33b2('0x6')](_0x3f0e03['query'][_0x33b2('0x6')]);_0x38324a[_0x33b2('0x5')]=qs[_0x33b2('0x5')](_0x3f0e03[_0x33b2('0x17')][_0x33b2('0x5')]);}return _0x5aef51[_0x33b2('0x30')](_0x38324a);}})[_0x33b2('0xc')](function(_0x457c18){if(_0x457c18){return _0x457c18?{'count':_0x48d595,'rows':_0x457c18}:null;}})[_0x33b2('0xc')](respondWithResult(_0xa7552e,null))['catch'](handleError(_0xa7552e,null));};exports[_0x33b2('0x33')]=function(_0x3b992b,_0x2fbef7){if(_0x3b992b['body']['id']){delete _0x3b992b[_0x33b2('0x2e')]['id'];}return db[_0x33b2('0x14')][_0x33b2('0x31')]({'where':{'id':_0x3b992b[_0x33b2('0x29')]['id']}})['then'](handleEntityNotFound(_0x2fbef7,null))[_0x33b2('0xc')](function(_0x235dca){if(_0x235dca){_0x3b992b[_0x33b2('0x2e')][_0x33b2('0x34')]=_0x235dca['id'];_0x3b992b[_0x33b2('0x2e')][_0x33b2('0x35')]=integrations['getSubjects'](_0x3b992b[_0x33b2('0x2e')][_0x33b2('0x36')],_0x3b992b[_0x33b2('0x2e')]['type']);_0x3b992b[_0x33b2('0x2e')][_0x33b2('0x37')]=integrations[_0x33b2('0x38')](_0x3b992b[_0x33b2('0x2e')][_0x33b2('0x36')],_0x3b992b[_0x33b2('0x2e')][_0x33b2('0x15')]);return db[_0x33b2('0x39')]['create'](_0x3b992b['body'],{'include':[{'model':db[_0x33b2('0x3a')],'as':_0x33b2('0x35')},{'model':db[_0x33b2('0x3a')],'as':_0x33b2('0x37')}]});}return null;})[_0x33b2('0xc')](respondWithResult(_0x2fbef7,null))[_0x33b2('0x27')](handleError(_0x2fbef7,null));};function sanitizeRemoteUri(_0x50b972){var _0x34fcbd=_0x50b972['slice'](-0x1);if(_0x34fcbd==='/')return _0x50b972[_0x33b2('0x3b')](0x0,_0x50b972[_0x33b2('0x3c')](_0x34fcbd));return _0x50b972;}function getWebApiUrl(_0xc138de){return util['format']('%s/api/data/v9.0/',_0xc138de);}exports['getFields']=function(_0x2802b5,_0x1e6b5e){var _0x1d70ba=_0x2802b5['query']['ticketType'];var _0x90d394=_0x1d70ba==='incident'?_0x33b2('0x3d'):'PhoneCall';var _0x52b696='';var _0x281599='';var _0x5c1d61='';var _0x407268='';var _0x3b816f='';var _0x34e6c2='';var _0x3d9f1c='';var _0x19ce70='';var _0x6c65b8=['title',_0x33b2('0x3e'),'customerid',_0x33b2('0x3f'),_0x33b2('0x40'),'subject',_0x33b2('0x41'),_0x33b2('0x42'),_0x33b2('0x43'),'phonecall_activity_parties'];var _0x3e9cd5=['accountidname',_0x33b2('0x44'),_0x33b2('0x45'),'billedserviceunits',_0x33b2('0x46'),_0x33b2('0x47'),_0x33b2('0x48'),_0x33b2('0x49'),_0x33b2('0x4a'),_0x33b2('0x4b'),_0x33b2('0x4c'),_0x33b2('0x4d'),_0x33b2('0x4e'),_0x33b2('0x4f'),'createdonbehalfbyyominame','customeridname',_0x33b2('0x50'),'customeridyominame',_0x33b2('0x51'),_0x33b2('0x52'),_0x33b2('0x53'),_0x33b2('0x54'),'escalatedon',_0x33b2('0x55'),'firstresponsebykpiidname','followupby',_0x33b2('0x56'),'influencescore','kbarticleidname','lastonholdtime',_0x33b2('0x57'),'modifiedbyexternalpartyname','modifiedbyexternalpartyyominame',_0x33b2('0x58'),'modifiedbyyominame',_0x33b2('0x59'),_0x33b2('0x5a'),_0x33b2('0x5b'),'msdyn_incidenttypename','msdyn_iotalertname','numberofchildincidents',_0x33b2('0x5c'),'overriddencreatedon','owneridname','owneridtype',_0x33b2('0x5d'),_0x33b2('0x5e'),'primarycontactidname',_0x33b2('0x5f'),_0x33b2('0x60'),_0x33b2('0x61'),'productserialnumber',_0x33b2('0x62'),_0x33b2('0x63'),_0x33b2('0x64'),_0x33b2('0x65'),_0x33b2('0x66'),_0x33b2('0x67'),_0x33b2('0x68'),'slaname','socialprofileidname',_0x33b2('0x69'),_0x33b2('0x6a'),_0x33b2('0x6b'),_0x33b2('0x6c'),_0x33b2('0x6d'),_0x33b2('0x6e'),_0x33b2('0x6f'),_0x33b2('0x70'),_0x33b2('0x71')];var _0x5a322d=_0x6c65b8[_0x33b2('0x72')](_0x3e9cd5);return db[_0x33b2('0x14')]['findOne']({'where':{'id':_0x2802b5[_0x33b2('0x29')]['id']},'attributes':['id',_0x33b2('0x73'),_0x33b2('0x74'),_0x33b2('0x75'),'tenantId',_0x33b2('0x76'),_0x33b2('0x77'),_0x33b2('0x78')],'include':[{'model':db[_0x33b2('0x79')],'as':_0x33b2('0x79'),'attributes':['id',_0x33b2('0x7a'),_0x33b2('0x7b')]}]})[_0x33b2('0xc')](handleEntityNotFound(_0x1e6b5e,null))['then'](function(_0x46d198){if(_0x46d198){if(_0x46d198['modernAuthentication']){_0x46d198['access_token']=_0x46d198[_0x33b2('0x79')][_0x33b2('0x7a')];_0x19ce70=sanitizeRemoteUri(_0x46d198['CloudProvider']['data7']);_0x3d9f1c=getWebApiUrl(_0x19ce70);return _0x46d198;}_0x19ce70=sanitizeRemoteUri(_0x46d198[_0x33b2('0x75')]);_0x3d9f1c=getWebApiUrl(_0x19ce70);var _0x55bf4b={'method':_0x33b2('0x7c'),'uri':_0x33b2('0x7d')+_0x46d198[_0x33b2('0x7e')]+_0x33b2('0x7f'),'form':{'client_id':_0x46d198['clientId'],'resource':_0x19ce70,'username':_0x46d198['username'],'password':_0x46d198[_0x33b2('0x74')],'grant_type':_0x33b2('0x74'),'client_secret':_0x46d198[_0x33b2('0x77')]},'json':!![]};return rp(_0x55bf4b);}})['then'](function(_0x528bc0){_0x34e6c2=_0x528bc0[_0x33b2('0x80')];var _0x3b295f={'method':'GET','uri':encodeURI(_0x3d9f1c+_0x33b2('0x81')+_0x90d394+'\x27'),'headers':{'Authorization':_0x33b2('0x82')+_0x34e6c2,'If-None-Match':null,'OData-Version':_0x33b2('0x83')},'json':!![]};return rp(_0x3b295f);})['then'](function(_0x4d651b){var _0x3099ef=_0x4d651b['value'][0x0];var _0x5ebe7e=_0x3099ef['MetadataId'];var _0x11a691={'method':_0x33b2('0x84'),'uri':_0x3d9f1c+'EntityDefinitions('+_0x5ebe7e+')?$select=LogicalName&$expand=Attributes($select=LogicalName)','headers':{'Authorization':'Bearer\x20'+_0x34e6c2,'If-None-Match':null,'OData-Version':_0x33b2('0x83')},'json':!![]};return rp(_0x11a691);})[_0x33b2('0xc')](function(_0x5eb9c5){_0x52b696=_0x5eb9c5;_0x281599=_0x52b696['Attributes'];_0x281599=_[_0x33b2('0x85')](_0x281599,function(_0x54de73){return!_0x5a322d[_0x33b2('0x86')](_0x54de73[_0x33b2('0x87')]);});var _0x3956b2=[];var _0x2a1ab7=[];_0x281599['forEach'](function(_0x17ee3d){if(_0x17ee3d[_0x33b2('0x88')]){var _0x5e9a31=_0x17ee3d[_0x33b2('0x88')][_0x33b2('0x3b')](_0x17ee3d[_0x33b2('0x88')]['lastIndexOf']('.')+0x1);if(_0x5e9a31===_0x33b2('0x89')){_0x3956b2[_0x33b2('0x8a')](getSelectList(_0x3d9f1c,_0x1d70ba,_0x2a1ab7,_0x52b696[_0x33b2('0x8b')],_0x17ee3d[_0x33b2('0x8b')],_0x34e6c2));}}});return Promise['all'](_0x3956b2);})[_0x33b2('0xc')](function(_0x11c8a0){_0x5c1d61=_0x11c8a0[0x0];var _0x2d32f4=[];var _0x5db10b=[];_0x281599[_0x33b2('0x8c')](function(_0xc14c9){if(!_['isNil'](_0xc14c9[_0x33b2('0x88')])){var _0x27fefc=_0xc14c9[_0x33b2('0x88')]['substring'](_0xc14c9[_0x33b2('0x88')]['lastIndexOf']('.')+0x1);if(_0x27fefc===_0x33b2('0x8d')){_0x2d32f4[_0x33b2('0x8a')](getBooleanList(_0x3d9f1c,_0x1d70ba,_0x5db10b,_0x52b696[_0x33b2('0x8b')],_0xc14c9[_0x33b2('0x8b')],_0x34e6c2));}}});return Promise[_0x33b2('0x8e')](_0x2d32f4);})['then'](function(_0x4d2641){_0x407268=_0x4d2641[0x0];var _0x34d502=[];var _0x2f8916=[];_0x281599[_0x33b2('0x8c')](function(_0x178552){if(_0x178552[_0x33b2('0x88')]){var _0x989f83=_0x178552[_0x33b2('0x88')][_0x33b2('0x3b')](_0x178552[_0x33b2('0x88')][_0x33b2('0x3c')]('.')+0x1);if(_0x989f83==='StringAttributeMetadata'||_0x989f83==='DoubleAttributeMetadata'||_0x989f83===_0x33b2('0x8f')||_0x989f83==='IntegerAttributeMetadata'||_0x989f83===_0x33b2('0x90')||_0x989f83===_0x33b2('0x91')||_0x989f83==='StatusAttributeMetadata'||_0x989f83===_0x33b2('0x92')||_0x989f83===_0x33b2('0x93')||_0x989f83===_0x33b2('0x94')){_0x34d502[_0x33b2('0x8a')](getInputList(_0x3d9f1c,_0x1d70ba,_0x989f83,_0x2f8916,_0x52b696[_0x33b2('0x8b')],_0x178552[_0x33b2('0x8b')],_0x34e6c2));}}});return Promise[_0x33b2('0x8e')](_0x34d502);})[_0x33b2('0xc')](function(_0x200d77){_0x3b816f=_0x200d77[0x0];var _0x33384b=_0x5c1d61['concat'](_0x407268)['concat'](_0x3b816f);var _0x4bb6f3={'count':_0x33384b['length'],'rows':_0x33384b};return _0x4bb6f3;})[_0x33b2('0xc')](respondWithResult(_0x1e6b5e,null))[_0x33b2('0x27')](function(_0x30637b){var _0x7532a3=_0x2802b5[_0x33b2('0x17')][_0x33b2('0x95')]?0x1f4:_0x30637b['statusCode']||0x1f4;logger[_0x33b2('0xf')](_0x30637b['stack']);delete _0x30637b['name'];if(_0x7532a3===0x191){_0x7532a3=0x190;}_0x1e6b5e[_0x33b2('0x9')](_0x7532a3)[_0x33b2('0x11')](_0x2802b5[_0x33b2('0x17')][_0x33b2('0x95')]?{'message':_0x33b2('0x96'),'statusCode':_0x30637b['statusCode']}:_0x30637b);});};function getSelectList(_0x8e6471,_0x12fa16,_0x3a8042,_0x2bd7ac,_0x348c9b,_0x3c1296){var _0x1f1412={'method':_0x33b2('0x84'),'uri':_0x8e6471+'EntityDefinitions('+_0x2bd7ac+_0x33b2('0x97')+_0x348c9b+_0x33b2('0x98')+'$select=DisplayName,LogicalName&$expand=OptionSet($select=Options)','headers':{'Authorization':_0x33b2('0x82')+_0x3c1296,'If-None-Match':null,'OData-Version':_0x33b2('0x83')},'json':!![]};return rp(_0x1f1412)[_0x33b2('0xc')](function(_0x131f67){var _0x3d7019=[];var _0x14dff1=_0x131f67[_0x33b2('0x99')][_0x33b2('0x9a')];_0x14dff1[_0x33b2('0x8c')](function(_0x233bc6){_0x3d7019[_0x33b2('0x8a')]({'name':_0x233bc6['Label'][_0x33b2('0x9b')][_0x33b2('0x9c')],'value':String(_0x233bc6['Value'])});});var _0x1a0915={'id':_0x12fa16+'_'+_0x131f67['LogicalName'],'name':_0x131f67[_0x33b2('0x9d')][_0x33b2('0x9b')][_0x33b2('0x9c')],'custom':![],'options':_0x3d7019};_0x3a8042[_0x33b2('0x8a')](_0x1a0915);return _0x3a8042;});}function getBooleanList(_0x55871b,_0x16d749,_0x55f8e3,_0x491f1b,_0x3ef347,_0x39e999){var _0x278d0e={'method':'GET','uri':_0x55871b+'EntityDefinitions('+_0x491f1b+')/Attributes('+_0x3ef347+_0x33b2('0x9e'),'headers':{'Authorization':_0x33b2('0x82')+_0x39e999,'If-None-Match':null,'OData-Version':'4.0'},'json':!![]};return rp(_0x278d0e)[_0x33b2('0xc')](function(_0x31eb6f){var _0x4613a4=[];_0x4613a4['push']({'name':_0x31eb6f[_0x33b2('0x99')][_0x33b2('0x9f')][_0x33b2('0x9c')][_0x33b2('0x9b')][_0x33b2('0x9c')],'value':_0x33b2('0xa0')},{'name':_0x31eb6f[_0x33b2('0x99')][_0x33b2('0xa1')]['Label']['UserLocalizedLabel'][_0x33b2('0x9c')],'value':_0x33b2('0xa2')});var _0x56a83c={'id':_0x16d749+'_'+_0x31eb6f[_0x33b2('0x87')],'name':_0x31eb6f[_0x33b2('0x9d')]['UserLocalizedLabel'][_0x33b2('0x9c')],'custom':![],'options':_0x4613a4};_0x55f8e3['push'](_0x56a83c);return _0x55f8e3;});}function getInputList(_0x321588,_0x1c4529,_0x4d7365,_0x3ff748,_0x720610,_0x45b4f3,_0x1d4694){var _0x393f02={'method':_0x33b2('0x84'),'uri':_0x321588+_0x33b2('0xa3')+_0x720610+_0x33b2('0x97')+_0x45b4f3+_0x33b2('0xa4')+_0x4d7365+'?$select=DisplayName,LogicalName','headers':{'Authorization':_0x33b2('0x82')+_0x1d4694,'If-None-Match':null,'OData-Version':_0x33b2('0x83')},'json':!![]};return rp(_0x393f02)[_0x33b2('0xc')](function(_0x4d7674){var _0x27c931={'id':_0x1c4529+'_'+_0x4d7674[_0x33b2('0x87')],'name':_0x4d7674['DisplayName'][_0x33b2('0x9b')]?_0x4d7674['DisplayName']['UserLocalizedLabel'][_0x33b2('0x9c')]:_0x4d7674[_0x33b2('0x87')],'custom':![],'options':[]};_0x3ff748['push'](_0x27c931);return _0x3ff748;});}