public IHttpActionResult UpdateMemberSetting(UpdateMemberSettingRequest request) { var response = new UpdateMemberSettingResponse(); try { var isValidRequest = false; var memberId = request.GetMemberId(); var member = MembershipAdapter.GetMember(memberId); if (member.Exists()) { if (Enum.IsDefined(typeof(SettingTypes), request.SettingTypeId)) { isValidRequest = true; } else { request.AddError("Setting Type", "Setting type is undefined"); } } if (isValidRequest) { var settingTypeId = (SettingTypes)request.SettingTypeId; var memberSetting = MembershipAdapter.GetMemberSetting(member.Id, settingTypeId); memberSetting.Value = request.Value; if (memberSetting.Exists()) { memberSetting = MembershipAdapter.UpdateMemberSetting(memberSetting); } else { memberSetting.MemberId = member.Id; memberSetting.SettingTypeId = settingTypeId; memberSetting = MembershipAdapter.CreateMemberSetting(memberSetting); } response.IsSuccessful = true; response.StatusMessage = "Update member settings succeeded"; } else { response.IsSuccessful = false; response.StatusMessage = "Update member setting was unsuccessful"; response.Errors.AddRange(request.GetErrors()); } } catch (Exception ex) { this.Log<UpdateMemberSettingRequest>(LogCategories.Error, request, ex.Message); response.IsSuccessful = false; response.StatusMessage = this.StatusMessageForExpection; response.Errors.Add(ex.Message); } return Ok(response); }
public void UpdateMemberSetting() { var memberId = this.RequestUserInput<string>("Enter member ID: ", string.Empty); var settingType = this.RequestSettingType("Enter setting type ID: ", null); var value = this.RequestUserInput<bool>("Enter value: ", true); var settingTypeId = 0; if (settingType.HasValue) { settingTypeId = (int)settingType.Value; } var request = new UpdateMemberSettingRequest { MemberId = memberId, SettingTypeId = settingTypeId, Value = value }; var response = proxy.UpdateMemberSetting(request); this.OutputResponse(response); }