public IActionResult PatchAppointmentHour(int workdayId, int id, [FromBody] JsonPatchDocument <AppointmentHourForUpdateData> patchDoc)
        {
            var    claimsPrincipal = User as ClaimsPrincipal;
            string role            = claimsPrincipal.FindFirst("role").Value;
            int    barberId        = int.Parse(claimsPrincipal.FindFirst("userId").Value);

            if (!role.Equals("client"))
            {
                AppointmentHour appointmentHour = role.Equals("admin") ? WorkDaysDataStore.Current.Days.FirstOrDefault(wd => wd.Id == workdayId).AppointmentHours.FirstOrDefault(ah => ah.Id == id) :
                                                  WorkDaysDataStore.Current.Days.FirstOrDefault(wd => wd.Id == workdayId && wd.BarberId == barberId).AppointmentHours.FirstOrDefault(ah => ah.Id == id);
                if (appointmentHour == null)
                {
                    return(NotFound());
                }
                var patchData = new AppointmentHourForUpdateData()
                {
                    Hour = appointmentHour.Hour
                };

                patchDoc.ApplyTo(patchData);
                if (!ModelState.IsValid)
                {
                    return(BadRequest());
                }
                appointmentHour.Hour = patchData.Hour;
                return(NoContent());
            }
            return(Unauthorized());
        }
        public IActionResult UpdateAppointmentHour(int workdayId, int id, [FromBody] AppointmentHourForUpdateData data)
        {
            var claimsPrincipal = User as ClaimsPrincipal;
            var role            = claimsPrincipal.FindFirst("role").Value;
            int barberId        = int.Parse(claimsPrincipal.FindFirst("userId").Value);

            if (!role.Equals("client"))
            {
                AppointmentHour appointmentHour = role.Equals("admin") ? WorkDaysDataStore.Current.Days.FirstOrDefault(wd => wd.Id == workdayId).AppointmentHours.FirstOrDefault(ah => ah.Id == id) :
                                                  WorkDaysDataStore.Current.Days.FirstOrDefault(wd => wd.Id == workdayId && wd.BarberId == barberId).AppointmentHours.FirstOrDefault(ah => ah.Id == id);
                if (appointmentHour == null)
                {
                    return(NotFound());
                }
                appointmentHour.Hour = data.Hour;
                return(NoContent());
            }
            return(Unauthorized());
        }