Beispiel #1
0
        public Object PEImportMapping(ZouraPayloadModel data)
        {
            ForgeModelobj = new ImportMappingModel()
            {
                HeaderEventType           = data.Header_Event_Type,
                UltimateParentAccountName = data.Ultimate_Parent_Account_Name,
                LegalName                 = data.Legal_Name,
                AccountName               = data.Account_Name,
                subscriptionNumber        = data.subscription.subscriptionNumber,
                subscriptionAccountNumber = data.subscription.Subscription_Account_Number,
                EntitlementCatalog        = "EntitlementCatalog",
                TenantRecipe              = "TenantRecipe"
            };



            return(ForgeModelobj);
        }
        public   IActionResult Post([FromBody] ZouraPayloadModel data)
        {
            logger.Information("-------------------");
            logger.Information("Import Mapping Api is Logged");
            logger.Information("Converted Zuora Payload to Forge understandable format");
            logger.Information("Appended Entitlement catalog to Zuora payload");
            logger.Information("Appended Tenant Recipe to Zuora payload");
            
            try
            {
               var payload = _importMapping.PEImportMapping(data);
                using (HttpClient client = new HttpClient())
                {
                    logger.Information("Calling PE Core with converted payload");
                    StringContent content = new StringContent(JsonConvert.SerializeObject(payload), Encoding.UTF8, "application/json");
                    string endpoint = apiBaseUrl;

                    //using (var Response = client.PostAsync(endpoint, content))
                    //{
                    //    payload = Response;

                    //}

                    var response = client.PostAsync(endpoint, content);
                    response.Wait();
                    if (response.IsCompleted)
                    {
                        
                        return Ok(payload);
                    }
                    else
                        return BadRequest("API is not called");
                }
                
            }
            catch(Exception ex)
            {
                logger.Error(ex.Message);
                return BadRequest(ex.Message);
            }
            
            //return payload;

        }