public IActionResult PatchAppointmentHour(int customworkdayId, int id, [FromBody] JsonPatchDocument <CustomAppointmentHourForUpdateData> patchDoc) { var claimsPrincipal = User as ClaimsPrincipal; string role = claimsPrincipal.FindFirst("role").Value; int barberId = int.Parse(claimsPrincipal.FindFirst("userId").Value); if (!role.Equals("client")) { CustomAppointmentHour customAppointmentHour = role.Equals("admin") ? CustomWorkDaysDataStore.Current.Days.FirstOrDefault(wd => wd.Id == customworkdayId).CustomAppointmentHour.FirstOrDefault(ah => ah.Id == id) : CustomWorkDaysDataStore.Current.Days.FirstOrDefault(wd => wd.Id == customworkdayId && wd.BarberId == barberId).CustomAppointmentHour.FirstOrDefault(ah => ah.Id == id); if (customAppointmentHour == null) { return(NotFound()); } CustomAppointmentHourForUpdateData patchData = new CustomAppointmentHourForUpdateData() { Hour = customAppointmentHour.Hour, Visible = customAppointmentHour.Visible }; patchDoc.ApplyTo(patchData); if (!ModelState.IsValid) { return(BadRequest()); } customAppointmentHour.Hour = patchData.Hour; customAppointmentHour.Visible = patchData.Visible; return(NoContent()); } return(Unauthorized()); }
public IActionResult UpdateAppointmentHour(int customworkdayId, int id, [FromBody] CustomAppointmentHourForUpdateData data) { var claimsPrincipal = User as ClaimsPrincipal; string role = claimsPrincipal.FindFirst("role").Value; int barberId = int.Parse(claimsPrincipal.FindFirst("userId").Value); if (!role.Equals("client")) { CustomAppointmentHour customAppointmentHour = role.Equals("admin") ? CustomWorkDaysDataStore.Current.Days.FirstOrDefault(wd => wd.Id == customworkdayId).CustomAppointmentHour.FirstOrDefault(ah => ah.Id == id) : CustomWorkDaysDataStore.Current.Days.FirstOrDefault(wd => wd.Id == customworkdayId && wd.BarberId == barberId).CustomAppointmentHour.FirstOrDefault(ah => ah.Id == id); if (customAppointmentHour == null) { return(NotFound()); } customAppointmentHour.Hour = data.Hour; customAppointmentHour.Visible = data.Visible; return(NoContent()); } return(Unauthorized()); }