Built motion from commit d1eab355.|2.6.28
[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 _0xae87=['title','ownerid','caseorigincode','subject','phonenumber','regardingobjectid','directioncode','accountidname','accountidyominame','billedserviceunits','contactidname','contactidyominame','contractdetailidname','createdbyexternalpartyname','createdbyexternalpartyyominame','createdbyname','createdon','createdonbehalfbyname','createdonbehalfbyyominame','customeridname','customeridyominame','emailaddress','entitlementidname','entityimage_timestamp','escalatedon','exchangerate','firstresponsebykpiidname','followupby','importsequencenumber','influencescore','lastonholdtime','masteridname','modifiedbyexternalpartyyominame','modifiedonbehalfbyname','modifiedonbehalfbyyominame','msdyn_incidenttypename','msdyn_iotalertname','numberofchildincidents','owneridtype','owneridyominame','parentcaseidname','primarycontactidname','primarycontactidyominame','prioritycodename','productserialnumber','resolveby','responsiblecontactidname','responsiblecontactidyominame','sentimentvalue','slainvokedidname','slaname','statuscode','subjectidname','ticketnumber','timezoneruleversionnumber','traversedpath','versionnumber','concat','password','remoteUri','clientId','clientSecret','modernAuthentication','CloudProvider','data5','data7','POST','tenantId','/oauth2/token','username','access_token','EntityDefinitions?$select=DisplayName,EntitySetName&$filter=SchemaName\x20eq\x20\x27','Bearer\x20','4.0','value','GET','EntityDefinitions(',')?$select=LogicalName&$expand=Attributes($select=LogicalName)','Attributes','remove','includes','LogicalName','forEach','@odata.type','PicklistAttributeMetadata','push','MetadataId','BooleanAttributeMetadata','all','DoubleAttributeMetadata','IntegerAttributeMetadata','MemoAttributeMetadata','DateTimeAttributeMetadata','StatusAttributeMetadata','EntityNameAttributeMetadata','StateAttributeMetadata','DecimalAttributeMetadata','test','statusCode','stack',')/Microsoft.Dynamics.CRM.PicklistAttributeMetadata?','Options','Label','UserLocalizedLabel','Value','DisplayName',')/Attributes(','false','../../config/logger','api','../../components/integrations/configuration','status','json','offset','undefined','limit','set','then','destroy','end','sendStatus','error','name','send','index','map','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','hasOwnProperty','nolimit','order','sort','where','filter','merge','VIRTUAL','options','count','includeAll','include','findAll','show','params','fields','length','catch','create','Dynamics365Account','body','update','find','Dynamics365Configuration','pick','getConfigurations','addConfiguration','findOne','Descriptions','getDescriptions','channel','Dynamics365Field','slice','substring','lastIndexOf','format','%s/api/data/v9.0/','getFields','ticketType','incident','Incident'];(function(_0x4c4c55,_0x4d2d85){var _0x281771=function(_0x87abba){while(--_0x87abba){_0x4c4c55['push'](_0x4c4c55['shift']());}};_0x281771(++_0x4d2d85);}(_0xae87,0x1ce));var _0x7ae8=function(_0x460fd7,_0x2012db){_0x460fd7=_0x460fd7-0x0;var _0x44d1c2=_0xae87[_0x460fd7];return _0x44d1c2;};'use strict';var rp=require('request-promise');var util=require('util');var _=require('lodash');var qs=require('../../components/parsers/qs');var logger=require(_0x7ae8('0x0'))(_0x7ae8('0x1'));var db=require('../../mysqldb')['db'];var integrations=require(_0x7ae8('0x2'));function respondWithResult(_0x4a22a5,_0x4ca11e){_0x4ca11e=_0x4ca11e||0xc8;return function(_0x3b95c1){if(_0x3b95c1){return _0x4a22a5[_0x7ae8('0x3')](_0x4ca11e)[_0x7ae8('0x4')](_0x3b95c1);}};}function respondWithFilteredResult(_0x3b6a2d,_0x57d2f2){return function(_0xcfe30e){if(_0xcfe30e){var _0x2e195a=typeof _0x57d2f2[_0x7ae8('0x5')]===_0x7ae8('0x6')&&typeof _0x57d2f2[_0x7ae8('0x7')]===_0x7ae8('0x6');var _0x2138eb=_0xcfe30e['count'];var _0x4a63d6=_0x2e195a?0x0:_0x57d2f2[_0x7ae8('0x5')];var _0x334ae7=_0x2e195a?_0xcfe30e['count']:_0x57d2f2[_0x7ae8('0x5')]+_0x57d2f2['limit'];var _0x4077e5;if(_0x334ae7>=_0x2138eb){_0x334ae7=_0x2138eb;_0x4077e5=0xc8;}else{_0x4077e5=0xce;}_0x3b6a2d['status'](_0x4077e5);return _0x3b6a2d[_0x7ae8('0x8')]('Content-Range',_0x4a63d6+'-'+_0x334ae7+'/'+_0x2138eb)[_0x7ae8('0x4')](_0xcfe30e);}return null;};}function saveUpdates(_0x428e16){return function(_0x3e41c1){if(_0x3e41c1){return _0x3e41c1['update'](_0x428e16)[_0x7ae8('0x9')](function(_0x3b5605){return _0x3b5605;});}return null;};}function removeEntity(_0x47b913){return function(_0x426ba2){if(_0x426ba2){return _0x426ba2[_0x7ae8('0xa')]()[_0x7ae8('0x9')](function(){_0x47b913[_0x7ae8('0x3')](0xcc)[_0x7ae8('0xb')]();});}};}function handleEntityNotFound(_0xf8f560){return function(_0xcf3a3d){if(!_0xcf3a3d){_0xf8f560[_0x7ae8('0xc')](0x194);}return _0xcf3a3d;};}function handleError(_0x24862e,_0x107f39){_0x107f39=_0x107f39||0x1f4;return function(_0x712147){logger[_0x7ae8('0xd')](_0x712147['stack']);if(_0x712147[_0x7ae8('0xe')]){delete _0x712147[_0x7ae8('0xe')];}_0x24862e['status'](_0x107f39)[_0x7ae8('0xf')](_0x712147);};}exports[_0x7ae8('0x10')]=function(_0x408e0b,_0x360b19){var _0x510aea={},_0x4f21c0={},_0x483b24={'count':0x0,'rows':[]};var _0x62392=_[_0x7ae8('0x11')](db['Dynamics365Account'][_0x7ae8('0x12')],function(_0x4d3755){return{'name':_0x4d3755[_0x7ae8('0x13')],'type':_0x4d3755[_0x7ae8('0x14')][_0x7ae8('0x15')]};});_0x4f21c0[_0x7ae8('0x16')]=_[_0x7ae8('0x11')](_0x62392,_0x7ae8('0xe'));_0x4f21c0[_0x7ae8('0x17')]=_[_0x7ae8('0x18')](_0x408e0b[_0x7ae8('0x17')]);_0x4f21c0[_0x7ae8('0x19')]=_[_0x7ae8('0x1a')](_0x4f21c0[_0x7ae8('0x16')],_0x4f21c0[_0x7ae8('0x17')]);_0x510aea[_0x7ae8('0x1b')]=_[_0x7ae8('0x1a')](_0x4f21c0['model'],qs['fields'](_0x408e0b[_0x7ae8('0x17')]['fields']));_0x510aea['attributes']=_0x510aea[_0x7ae8('0x1b')]['length']?_0x510aea[_0x7ae8('0x1b')]:_0x4f21c0[_0x7ae8('0x16')];if(!_0x408e0b['query'][_0x7ae8('0x1c')](_0x7ae8('0x1d'))){_0x510aea[_0x7ae8('0x7')]=qs[_0x7ae8('0x7')](_0x408e0b[_0x7ae8('0x17')][_0x7ae8('0x7')]);_0x510aea['offset']=qs[_0x7ae8('0x5')](_0x408e0b['query'][_0x7ae8('0x5')]);}_0x510aea[_0x7ae8('0x1e')]=qs[_0x7ae8('0x1f')](_0x408e0b['query'][_0x7ae8('0x1f')]);_0x510aea[_0x7ae8('0x20')]=qs[_0x7ae8('0x19')](_['pick'](_0x408e0b[_0x7ae8('0x17')],_0x4f21c0[_0x7ae8('0x19')]),_0x62392);if(_0x408e0b[_0x7ae8('0x17')][_0x7ae8('0x21')]){_0x510aea[_0x7ae8('0x20')]=_[_0x7ae8('0x22')](_0x510aea[_0x7ae8('0x20')],{'$or':_['map'](_0x62392,function(_0x2be8b7){if(_0x2be8b7[_0x7ae8('0x14')]!==_0x7ae8('0x23')){var _0x495f4d={};_0x495f4d[_0x2be8b7[_0x7ae8('0xe')]]={'$like':'%'+_0x408e0b[_0x7ae8('0x17')][_0x7ae8('0x21')]+'%'};return _0x495f4d;}})});}_0x510aea=_['merge']({},_0x510aea,_0x408e0b[_0x7ae8('0x24')]);var _0x56614a={'where':_0x510aea['where']};return db['Dynamics365Account'][_0x7ae8('0x25')](_0x56614a)[_0x7ae8('0x9')](function(_0x533bf8){_0x483b24[_0x7ae8('0x25')]=_0x533bf8;if(_0x408e0b[_0x7ae8('0x17')][_0x7ae8('0x26')]){_0x510aea[_0x7ae8('0x27')]=[{'all':!![]}];}return db['Dynamics365Account'][_0x7ae8('0x28')](_0x510aea);})[_0x7ae8('0x9')](function(_0x2d366a){_0x483b24['rows']=_0x2d366a;return _0x483b24;})[_0x7ae8('0x9')](respondWithFilteredResult(_0x360b19,_0x510aea))['catch'](handleError(_0x360b19,null));};exports[_0x7ae8('0x29')]=function(_0xc38065,_0x11629f){var _0x29cb06={'raw':![],'where':{'id':_0xc38065[_0x7ae8('0x2a')]['id']}},_0x513f3c={};_0x513f3c[_0x7ae8('0x16')]=_[_0x7ae8('0x18')](db['Dynamics365Account'][_0x7ae8('0x12')]);_0x513f3c['query']=_['keys'](_0xc38065[_0x7ae8('0x17')]);_0x513f3c['filters']=_['intersection'](_0x513f3c[_0x7ae8('0x16')],_0x513f3c[_0x7ae8('0x17')]);_0x29cb06['attributes']=_[_0x7ae8('0x1a')](_0x513f3c[_0x7ae8('0x16')],qs[_0x7ae8('0x2b')](_0xc38065['query'][_0x7ae8('0x2b')]));_0x29cb06[_0x7ae8('0x1b')]=_0x29cb06[_0x7ae8('0x1b')][_0x7ae8('0x2c')]?_0x29cb06['attributes']:_0x513f3c[_0x7ae8('0x16')];if(_0xc38065[_0x7ae8('0x17')][_0x7ae8('0x26')]){_0x29cb06[_0x7ae8('0x27')]=[{'all':!![]}];}_0x29cb06=_[_0x7ae8('0x22')]({},_0x29cb06,_0xc38065['options']);return db['Dynamics365Account']['find'](_0x29cb06)[_0x7ae8('0x9')](handleEntityNotFound(_0x11629f,null))[_0x7ae8('0x9')](respondWithResult(_0x11629f,null))[_0x7ae8('0x2d')](handleError(_0x11629f,null));};exports[_0x7ae8('0x2e')]=function(_0x4e2adb,_0x10bd77){return db[_0x7ae8('0x2f')][_0x7ae8('0x2e')](_0x4e2adb[_0x7ae8('0x30')],{})[_0x7ae8('0x9')](respondWithResult(_0x10bd77,0xc9))[_0x7ae8('0x2d')](handleError(_0x10bd77,null));};exports[_0x7ae8('0x31')]=function(_0x16cc4b,_0x44c13e){if(_0x16cc4b[_0x7ae8('0x30')]['id']){delete _0x16cc4b[_0x7ae8('0x30')]['id'];}return db[_0x7ae8('0x2f')][_0x7ae8('0x32')]({'where':{'id':_0x16cc4b[_0x7ae8('0x2a')]['id']}})[_0x7ae8('0x9')](handleEntityNotFound(_0x44c13e,null))[_0x7ae8('0x9')](saveUpdates(_0x16cc4b[_0x7ae8('0x30')],null))[_0x7ae8('0x9')](respondWithResult(_0x44c13e,null))[_0x7ae8('0x2d')](handleError(_0x44c13e,null));};exports['destroy']=function(_0x20f30e,_0x5eb404){return db[_0x7ae8('0x2f')][_0x7ae8('0x32')]({'where':{'id':_0x20f30e[_0x7ae8('0x2a')]['id']}})[_0x7ae8('0x9')](handleEntityNotFound(_0x5eb404,null))[_0x7ae8('0x9')](removeEntity(_0x5eb404,null))[_0x7ae8('0x2d')](handleError(_0x5eb404,null));};exports['getConfigurations']=function(_0x10c3b2,_0x1e45d1){var _0x2d88e7={};var _0x41e8dd={};var _0x1ced20;var _0x219cfa;return db[_0x7ae8('0x2f')]['findOne']({'where':{'id':_0x10c3b2[_0x7ae8('0x2a')]['id']}})[_0x7ae8('0x9')](handleEntityNotFound(_0x1e45d1,null))[_0x7ae8('0x9')](function(_0x750ff4){if(_0x750ff4){_0x1ced20=_0x750ff4;_0x41e8dd['model']=_[_0x7ae8('0x18')](db[_0x7ae8('0x33')]['rawAttributes']);_0x41e8dd[_0x7ae8('0x17')]=_[_0x7ae8('0x18')](_0x10c3b2['query']);_0x41e8dd[_0x7ae8('0x19')]=_[_0x7ae8('0x1a')](_0x41e8dd[_0x7ae8('0x16')],_0x41e8dd['query']);_0x2d88e7['attributes']=_['intersection'](_0x41e8dd['model'],qs[_0x7ae8('0x2b')](_0x10c3b2[_0x7ae8('0x17')]['fields']));_0x2d88e7[_0x7ae8('0x1b')]=_0x2d88e7[_0x7ae8('0x1b')][_0x7ae8('0x2c')]?_0x2d88e7[_0x7ae8('0x1b')]:_0x41e8dd[_0x7ae8('0x16')];_0x2d88e7[_0x7ae8('0x1e')]=qs[_0x7ae8('0x1f')](_0x10c3b2['query'][_0x7ae8('0x1f')]);_0x2d88e7['where']=qs[_0x7ae8('0x19')](_[_0x7ae8('0x34')](_0x10c3b2['query'],_0x41e8dd[_0x7ae8('0x19')]));if(_0x10c3b2['query'][_0x7ae8('0x21')]){_0x2d88e7[_0x7ae8('0x20')]=_[_0x7ae8('0x22')](_0x2d88e7[_0x7ae8('0x20')],{'$or':_[_0x7ae8('0x11')](_0x2d88e7['attributes'],function(_0x226b9d){var _0x5ae7b7={};_0x5ae7b7[_0x226b9d]={'$like':'%'+_0x10c3b2[_0x7ae8('0x17')][_0x7ae8('0x21')]+'%'};return _0x5ae7b7;})});}_0x2d88e7=_[_0x7ae8('0x22')]({},_0x2d88e7,_0x10c3b2[_0x7ae8('0x24')]);return _0x1ced20[_0x7ae8('0x35')](_0x2d88e7);}})['then'](function(_0x5c2bae){if(_0x5c2bae){_0x219cfa=_0x5c2bae[_0x7ae8('0x2c')];if(!_0x10c3b2[_0x7ae8('0x17')][_0x7ae8('0x1c')](_0x7ae8('0x1d'))){_0x2d88e7[_0x7ae8('0x7')]=qs[_0x7ae8('0x7')](_0x10c3b2[_0x7ae8('0x17')][_0x7ae8('0x7')]);_0x2d88e7[_0x7ae8('0x5')]=qs[_0x7ae8('0x5')](_0x10c3b2[_0x7ae8('0x17')][_0x7ae8('0x5')]);}return _0x1ced20[_0x7ae8('0x35')](_0x2d88e7);}})['then'](function(_0x4515bc){if(_0x4515bc){return _0x4515bc?{'count':_0x219cfa,'rows':_0x4515bc}:null;}})[_0x7ae8('0x9')](respondWithResult(_0x1e45d1,null))[_0x7ae8('0x2d')](handleError(_0x1e45d1,null));};exports[_0x7ae8('0x36')]=function(_0x1e669c,_0x2ad0a5){if(_0x1e669c[_0x7ae8('0x30')]['id']){delete _0x1e669c[_0x7ae8('0x30')]['id'];}return db[_0x7ae8('0x2f')][_0x7ae8('0x37')]({'where':{'id':_0x1e669c[_0x7ae8('0x2a')]['id']}})[_0x7ae8('0x9')](handleEntityNotFound(_0x2ad0a5,null))[_0x7ae8('0x9')](function(_0x327884){if(_0x327884){_0x1e669c['body']['AccountId']=_0x327884['id'];_0x1e669c[_0x7ae8('0x30')]['Subjects']=integrations['getSubjects'](_0x1e669c[_0x7ae8('0x30')]['channel'],_0x1e669c[_0x7ae8('0x30')][_0x7ae8('0x14')]);_0x1e669c[_0x7ae8('0x30')][_0x7ae8('0x38')]=integrations[_0x7ae8('0x39')](_0x1e669c[_0x7ae8('0x30')][_0x7ae8('0x3a')],_0x1e669c[_0x7ae8('0x30')]['type']);return db[_0x7ae8('0x33')][_0x7ae8('0x2e')](_0x1e669c[_0x7ae8('0x30')],{'include':[{'model':db[_0x7ae8('0x3b')],'as':'Subjects'},{'model':db[_0x7ae8('0x3b')],'as':_0x7ae8('0x38')}]});}return null;})[_0x7ae8('0x9')](respondWithResult(_0x2ad0a5,null))[_0x7ae8('0x2d')](handleError(_0x2ad0a5,null));};function sanitizeRemoteUri(_0x5d5ebe){var _0x4d5291=_0x5d5ebe[_0x7ae8('0x3c')](-0x1);if(_0x4d5291==='/')return _0x5d5ebe[_0x7ae8('0x3d')](0x0,_0x5d5ebe[_0x7ae8('0x3e')](_0x4d5291));return _0x5d5ebe;}function getWebApiUrl(_0x1efc67){return util[_0x7ae8('0x3f')](_0x7ae8('0x40'),_0x1efc67);}exports[_0x7ae8('0x41')]=function(_0xfbb96f,_0x1cf2ce){var _0x21b01c=_0xfbb96f[_0x7ae8('0x17')][_0x7ae8('0x42')];var _0x46265b=_0x21b01c===_0x7ae8('0x43')?_0x7ae8('0x44'):'PhoneCall';var _0x2e25ae='';var _0x3aeed5='';var _0xed4544='';var _0x255b05='';var _0x208ef6='';var _0x12249d='';var _0x2323cb='';var _0x44deec='';var _0x3b86df=[_0x7ae8('0x45'),'description','customerid',_0x7ae8('0x46'),_0x7ae8('0x47'),_0x7ae8('0x48'),_0x7ae8('0x49'),_0x7ae8('0x4a'),_0x7ae8('0x4b'),'phonecall_activity_parties'];var _0x273ed5=[_0x7ae8('0x4c'),_0x7ae8('0x4d'),'actualserviceunits',_0x7ae8('0x4e'),_0x7ae8('0x4f'),_0x7ae8('0x50'),_0x7ae8('0x51'),'contractidname',_0x7ae8('0x52'),_0x7ae8('0x53'),_0x7ae8('0x54'),'createdbyyominame',_0x7ae8('0x55'),_0x7ae8('0x56'),_0x7ae8('0x57'),_0x7ae8('0x58'),'customeridtype',_0x7ae8('0x59'),_0x7ae8('0x5a'),_0x7ae8('0x5b'),_0x7ae8('0x5c'),'entityimage_url',_0x7ae8('0x5d'),_0x7ae8('0x5e'),_0x7ae8('0x5f'),_0x7ae8('0x60'),_0x7ae8('0x61'),_0x7ae8('0x62'),'kbarticleidname',_0x7ae8('0x63'),_0x7ae8('0x64'),'modifiedbyexternalpartyname',_0x7ae8('0x65'),'modifiedbyname','modifiedbyyominame','modifiedon',_0x7ae8('0x66'),_0x7ae8('0x67'),_0x7ae8('0x68'),_0x7ae8('0x69'),_0x7ae8('0x6a'),'onholdtime','overriddencreatedon','owneridname',_0x7ae8('0x6b'),_0x7ae8('0x6c'),_0x7ae8('0x6d'),_0x7ae8('0x6e'),_0x7ae8('0x6f'),_0x7ae8('0x70'),'productidname',_0x7ae8('0x71'),_0x7ae8('0x72'),'resolvebykpiidname','responseby',_0x7ae8('0x73'),_0x7ae8('0x74'),_0x7ae8('0x75'),_0x7ae8('0x76'),_0x7ae8('0x77'),'socialprofileidname','statecode',_0x7ae8('0x78'),_0x7ae8('0x79'),_0x7ae8('0x7a'),_0x7ae8('0x7b'),'transactioncurrencyidname',_0x7ae8('0x7c'),'utcconversiontimezonecode',_0x7ae8('0x7d')];var _0x2e1df3=_0x3b86df[_0x7ae8('0x7e')](_0x273ed5);return db[_0x7ae8('0x2f')]['findOne']({'where':{'id':_0xfbb96f[_0x7ae8('0x2a')]['id']},'attributes':['id','username',_0x7ae8('0x7f'),_0x7ae8('0x80'),'tenantId',_0x7ae8('0x81'),_0x7ae8('0x82'),_0x7ae8('0x83')],'include':[{'model':db['CloudProvider'],'as':_0x7ae8('0x84'),'attributes':['id',_0x7ae8('0x85'),_0x7ae8('0x86')]}]})['then'](handleEntityNotFound(_0x1cf2ce,null))[_0x7ae8('0x9')](function(_0x23d40f){if(_0x23d40f){if(_0x23d40f[_0x7ae8('0x83')]){_0x23d40f['access_token']=_0x23d40f[_0x7ae8('0x84')]['data5'];_0x44deec=sanitizeRemoteUri(_0x23d40f[_0x7ae8('0x84')][_0x7ae8('0x86')]);_0x2323cb=getWebApiUrl(_0x44deec);return _0x23d40f;}_0x44deec=sanitizeRemoteUri(_0x23d40f[_0x7ae8('0x80')]);_0x2323cb=getWebApiUrl(_0x44deec);var _0x37fbf0={'method':_0x7ae8('0x87'),'uri':'https://login.microsoftonline.com/'+_0x23d40f[_0x7ae8('0x88')]+_0x7ae8('0x89'),'form':{'client_id':_0x23d40f[_0x7ae8('0x81')],'resource':_0x44deec,'username':_0x23d40f[_0x7ae8('0x8a')],'password':_0x23d40f[_0x7ae8('0x7f')],'grant_type':_0x7ae8('0x7f'),'client_secret':_0x23d40f['clientSecret']},'json':!![]};return rp(_0x37fbf0);}})['then'](function(_0x411288){_0x12249d=_0x411288[_0x7ae8('0x8b')];var _0x49792f={'method':'GET','uri':encodeURI(_0x2323cb+_0x7ae8('0x8c')+_0x46265b+'\x27'),'headers':{'Authorization':_0x7ae8('0x8d')+_0x12249d,'If-None-Match':null,'OData-Version':_0x7ae8('0x8e')},'json':!![]};return rp(_0x49792f);})[_0x7ae8('0x9')](function(_0x3b410a){var _0x1926df=_0x3b410a[_0x7ae8('0x8f')][0x0];var _0x1dd9a0=_0x1926df['MetadataId'];var _0xab6761={'method':_0x7ae8('0x90'),'uri':_0x2323cb+_0x7ae8('0x91')+_0x1dd9a0+_0x7ae8('0x92'),'headers':{'Authorization':_0x7ae8('0x8d')+_0x12249d,'If-None-Match':null,'OData-Version':_0x7ae8('0x8e')},'json':!![]};return rp(_0xab6761);})[_0x7ae8('0x9')](function(_0x21618b){_0x2e25ae=_0x21618b;_0x3aeed5=_0x2e25ae[_0x7ae8('0x93')];_0x3aeed5=_[_0x7ae8('0x94')](_0x3aeed5,function(_0x54d270){return!_0x2e1df3[_0x7ae8('0x95')](_0x54d270[_0x7ae8('0x96')]);});var _0x3407bf=[];var _0x10a9c4=[];_0x3aeed5[_0x7ae8('0x97')](function(_0x5d4d5e){if(_0x5d4d5e[_0x7ae8('0x98')]){var _0xea59d7=_0x5d4d5e['@odata.type'][_0x7ae8('0x3d')](_0x5d4d5e['@odata.type'][_0x7ae8('0x3e')]('.')+0x1);if(_0xea59d7===_0x7ae8('0x99')){_0x3407bf[_0x7ae8('0x9a')](getSelectList(_0x2323cb,_0x21b01c,_0x10a9c4,_0x2e25ae[_0x7ae8('0x9b')],_0x5d4d5e[_0x7ae8('0x9b')],_0x12249d));}}});return Promise['all'](_0x3407bf);})['then'](function(_0x36ca0d){_0xed4544=_0x36ca0d[0x0];var _0x4780f4=[];var _0x29d7c7=[];_0x3aeed5[_0x7ae8('0x97')](function(_0x3fab25){if(!_['isNil'](_0x3fab25[_0x7ae8('0x98')])){var _0x245981=_0x3fab25['@odata.type'][_0x7ae8('0x3d')](_0x3fab25['@odata.type'][_0x7ae8('0x3e')]('.')+0x1);if(_0x245981===_0x7ae8('0x9c')){_0x4780f4['push'](getBooleanList(_0x2323cb,_0x21b01c,_0x29d7c7,_0x2e25ae[_0x7ae8('0x9b')],_0x3fab25[_0x7ae8('0x9b')],_0x12249d));}}});return Promise[_0x7ae8('0x9d')](_0x4780f4);})[_0x7ae8('0x9')](function(_0x12623e){_0x255b05=_0x12623e[0x0];var _0x4686d8=[];var _0x4b6ba7=[];_0x3aeed5['forEach'](function(_0x8bab09){if(_0x8bab09[_0x7ae8('0x98')]){var _0x14724b=_0x8bab09[_0x7ae8('0x98')]['substring'](_0x8bab09['@odata.type'][_0x7ae8('0x3e')]('.')+0x1);if(_0x14724b==='StringAttributeMetadata'||_0x14724b===_0x7ae8('0x9e')||_0x14724b==='BigIntAttributeMetadata'||_0x14724b===_0x7ae8('0x9f')||_0x14724b===_0x7ae8('0xa0')||_0x14724b===_0x7ae8('0xa1')||_0x14724b===_0x7ae8('0xa2')||_0x14724b===_0x7ae8('0xa3')||_0x14724b===_0x7ae8('0xa4')||_0x14724b===_0x7ae8('0xa5')){_0x4686d8[_0x7ae8('0x9a')](getInputList(_0x2323cb,_0x21b01c,_0x14724b,_0x4b6ba7,_0x2e25ae['MetadataId'],_0x8bab09[_0x7ae8('0x9b')],_0x12249d));}}});return Promise['all'](_0x4686d8);})[_0x7ae8('0x9')](function(_0xc51a69){_0x208ef6=_0xc51a69[0x0];var _0x59c90e=_0xed4544[_0x7ae8('0x7e')](_0x255b05)[_0x7ae8('0x7e')](_0x208ef6);var _0x3a5c8e={'count':_0x59c90e[_0x7ae8('0x2c')],'rows':_0x59c90e};return _0x3a5c8e;})[_0x7ae8('0x9')](respondWithResult(_0x1cf2ce,null))[_0x7ae8('0x2d')](function(_0x5a837e){var _0x2960cb=_0xfbb96f['query'][_0x7ae8('0xa6')]?0x1f4:_0x5a837e[_0x7ae8('0xa7')]||0x1f4;logger[_0x7ae8('0xd')](_0x5a837e[_0x7ae8('0xa8')]);delete _0x5a837e[_0x7ae8('0xe')];if(_0x2960cb===0x191){_0x2960cb=0x190;}_0x1cf2ce[_0x7ae8('0x3')](_0x2960cb)[_0x7ae8('0xf')](_0xfbb96f[_0x7ae8('0x17')][_0x7ae8('0xa6')]?{'message':'Wrong\x20credentials','statusCode':_0x5a837e[_0x7ae8('0xa7')]}:_0x5a837e);});};function getSelectList(_0x3e3507,_0x154325,_0x1db7f9,_0x11e405,_0x72e2c3,_0x1e8b7a){var _0x46e979={'method':'GET','uri':_0x3e3507+_0x7ae8('0x91')+_0x11e405+')/Attributes('+_0x72e2c3+_0x7ae8('0xa9')+'$select=DisplayName,LogicalName&$expand=OptionSet($select=Options)','headers':{'Authorization':_0x7ae8('0x8d')+_0x1e8b7a,'If-None-Match':null,'OData-Version':_0x7ae8('0x8e')},'json':!![]};return rp(_0x46e979)[_0x7ae8('0x9')](function(_0x5bed27){var _0x241e55=[];var _0xc668c1=_0x5bed27['OptionSet'][_0x7ae8('0xaa')];_0xc668c1[_0x7ae8('0x97')](function(_0x2defa9){_0x241e55[_0x7ae8('0x9a')]({'name':_0x2defa9[_0x7ae8('0xab')][_0x7ae8('0xac')][_0x7ae8('0xab')],'value':String(_0x2defa9[_0x7ae8('0xad')])});});var _0x2a6224={'id':_0x154325+'_'+_0x5bed27[_0x7ae8('0x96')],'name':_0x5bed27[_0x7ae8('0xae')][_0x7ae8('0xac')][_0x7ae8('0xab')],'custom':![],'options':_0x241e55};_0x1db7f9[_0x7ae8('0x9a')](_0x2a6224);return _0x1db7f9;});}function getBooleanList(_0xf73602,_0x1c3344,_0x5bf395,_0x4862da,_0x3ad6bb,_0xf9ec48){var _0x1fddf0={'method':_0x7ae8('0x90'),'uri':_0xf73602+_0x7ae8('0x91')+_0x4862da+_0x7ae8('0xaf')+_0x3ad6bb+')/Microsoft.Dynamics.CRM.BooleanAttributeMetadata?$select=DisplayName,LogicalName&$expand=OptionSet($select=FalseOption,\x20TrueOption)','headers':{'Authorization':'Bearer\x20'+_0xf9ec48,'If-None-Match':null,'OData-Version':_0x7ae8('0x8e')},'json':!![]};return rp(_0x1fddf0)[_0x7ae8('0x9')](function(_0x423be1){var _0x29b3b9=[];_0x29b3b9[_0x7ae8('0x9a')]({'name':_0x423be1['OptionSet']['TrueOption'][_0x7ae8('0xab')]['UserLocalizedLabel'][_0x7ae8('0xab')],'value':'true'},{'name':_0x423be1['OptionSet']['FalseOption'][_0x7ae8('0xab')][_0x7ae8('0xac')]['Label'],'value':_0x7ae8('0xb0')});var _0x256e0a={'id':_0x1c3344+'_'+_0x423be1['LogicalName'],'name':_0x423be1[_0x7ae8('0xae')][_0x7ae8('0xac')][_0x7ae8('0xab')],'custom':![],'options':_0x29b3b9};_0x5bf395[_0x7ae8('0x9a')](_0x256e0a);return _0x5bf395;});}function getInputList(_0xc83469,_0x53c216,_0x5e9bc1,_0x534974,_0x4df98e,_0x247dd0,_0x4b3f25){var _0x315516={'method':_0x7ae8('0x90'),'uri':_0xc83469+_0x7ae8('0x91')+_0x4df98e+')/Attributes('+_0x247dd0+')/Microsoft.Dynamics.CRM.'+_0x5e9bc1+'?$select=DisplayName,LogicalName','headers':{'Authorization':_0x7ae8('0x8d')+_0x4b3f25,'If-None-Match':null,'OData-Version':_0x7ae8('0x8e')},'json':!![]};return rp(_0x315516)['then'](function(_0x1ece34){var _0x2a5661={'id':_0x53c216+'_'+_0x1ece34[_0x7ae8('0x96')],'name':_0x1ece34[_0x7ae8('0xae')]['UserLocalizedLabel']?_0x1ece34['DisplayName'][_0x7ae8('0xac')][_0x7ae8('0xab')]:_0x1ece34[_0x7ae8('0x96')],'custom':![],'options':[]};_0x534974[_0x7ae8('0x9a')](_0x2a5661);return _0x534974;});}