public void AddExistingCustomerAddress() { // Given var resources = new Resources(); var addressDetailId = 21; var requestModel = new AddCustomerOrderAddressRequestModel { AddressDetailId = addressDetailId, AddressType = "Delivery", AddressLine1 = "25 Anzio Crescent", AddressLine2 = "Strandfontein", City = "Cape Town", Country = "South Africa", PostalCode = "7788" }; resources.MockApiCaller.AddMockResponse("WebApi:Orders:AddCustomerOrderAddress", requestModel, "Success"); // When var result = resources.Controller.AddCustomerOrderAddress(requestModel) as JsonResult; // Then Assert.IsNotNull(result); var model = result.Value.ToString(); Assert.AreEqual("Success", model); }
public string AddCustomerOrderAddress([FromBody] AddCustomerOrderAddressRequestModel requestModel) { var customer = Context.Customers.Include(c => c.Addresses).First(c => c.CustomerId == requestModel.CustomerId); var order = Context.Orders.First(o => o.OrderId == requestModel.OrderId); if (requestModel.AddressDetailId == 0) { var newAddressDetail = new AddressDetail { AddressType = requestModel.AddressType, AddressLine1 = requestModel.AddressLine1, AddressLine2 = requestModel.AddressLine2, City = requestModel.City, Country = requestModel.Country, PostalCode = requestModel.PostalCode, CreateDate = DateTime.Now, CreateUser = requestModel.Username }; customer.Addresses.Add(newAddressDetail); Context.SaveChanges(); order.AddressDetailId = newAddressDetail.AddressDetailId; order.UpdateDate = DateTime.Now; order.UpdateUser = requestModel.Username; Context.SaveChanges(); } else { var address = customer.Addresses.First(a => a.AddressDetailId == requestModel.AddressDetailId); address.AddressType = requestModel.AddressType; address.AddressLine1 = requestModel.AddressLine1; address.AddressLine2 = requestModel.AddressLine2; address.City = requestModel.City; address.Country = requestModel.Country; address.PostalCode = requestModel.PostalCode; address.UpdateDate = DateTime.Now; address.UpdateUser = requestModel.Username; order.AddressDetailId = address.AddressDetailId; order.UpdateDate = DateTime.Now; order.UpdateUser = requestModel.Username; Context.SaveChanges(); } return("Success"); }
public JsonResult AddCustomerOrderAddress(AddCustomerOrderAddressRequestModel requestModel) { requestModel.Username = CurrentUser.Username; return(Json(WebApiCaller.PostAsync <string>("WebApi:Orders:AddCustomerOrderAddress", requestModel))); }