public bool BindModel(HttpActionContext actionContext, ModelBindingContext bindingContext) { string body = actionContext.Request.Content.ReadAsStringAsync().Result; MembershipDataInputModel model = new MembershipDataInputModel(); model = JsonConvert.DeserializeObject <MembershipDataInputModel>(body); // GITCS-9 : Support searching by membership no ... if (actionContext.ActionDescriptor.ActionName.ToLower().Contains("cancel")) { model.UpdatedStatus = ActionMembershipStatus.Cancel; } var activation = string.IsNullOrEmpty(model.ActivationId) ? model.EncryptedActivationId : model.ActivationId; MembershipHelper helper = new MembershipHelper(_service); MembershipDetails membershipDetails = helper.GetMembershipDetails(activation); if (membershipDetails.IsEligible != null) { model.OverrideMust = membershipDetails.IsEligible.Value; } var validator = new MembershipDataInputValidator(); var result = validator.Validate(model); foreach (var e in result.Errors) { bindingContext.ModelState.AddModelError(e.PropertyName, e.ErrorMessage); } bindingContext.Model = model; return(true); }
public IHttpActionResult MembershipLoad(MembershipDataInputModel membership) { try { //pass the data to the service to insert into the database string message = string.Empty; var mappedModel = Mapper.Map <MembershipDataInputModel, MembershipDataInput>(membership); NameAndAddressParameter nameAndAddress = new NameAndAddressParameter { NameAndAddress = membership.CustNameAndAddress }; var membershipProcess = new MembershipProcess(null, _membershipService, _mciRequestService, _logger, nameAndAddress); List <MembershipOutput> result = new List <MembershipOutput>(); result.Add(new MembershipOutput() { MembershipData = membershipProcess.UpdateMembershipData(mappedModel) }); return(Ok(result)); } catch (Exception exception) { if (_logParameterValue) { _logger.Error($"MembershipLoad: ErrorTag: {ErrorTagProvider.ErrorTagDatabase} -- {exception.Message}"); _logger.Error( $"Parameters MembershipLoad:- Name=FirstName={membership.CustNameAndAddress.FirstName}, LastName={membership.CustNameAndAddress.Surname}, Dob={membership.CustNameAndAddress.Dob}, " + $" Address=AddresLine1={ membership.CustNameAndAddress.Address.Address1 ?? ""}, AddressLine2={membership.CustNameAndAddress.Address.Address2 ?? ""}, AddressLine3={membership.CustNameAndAddress.Address.Address3 ?? ""}, " + $" AddressLine4={membership.CustNameAndAddress.Address.Address4 ?? ""}, PostCode={membership.CustNameAndAddress.Address.Postcode ?? ""}"); } return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, exception.Message))); } }