feat: apply default hours (08:00-18:00) when enabling a schedule day
When a day is toggled on and has no hours set yet, automatically apply continuous-day defaults (08:00 - 18:00) so the user can save immediately without having to pick times manually. Also clear fp.profesional in initState to ensure fresh data loads. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
ee678b26ff
commit
7451b7c57b
@@ -36,6 +36,7 @@ class _ScheduleViewState extends State<ScheduleView> {
|
||||
|
||||
profileFormProvider.user = authProvider.user;
|
||||
|
||||
professionalFormProvider.clear();
|
||||
proProvider.getProfessional(authProvider.user!.id).then((value) {
|
||||
professionalFormProvider.setProfesional(value);
|
||||
});
|
||||
@@ -82,13 +83,11 @@ class _ScheduleViewState extends State<ScheduleView> {
|
||||
schedule: profesional.schedules.monday,
|
||||
onEnableChanged: (value) {
|
||||
setState(() {
|
||||
professionalFormProvider.copyProfesionalWith(
|
||||
schedules: profesional.schedules.copyWith(
|
||||
monday: profesional.schedules.monday.copyWith(
|
||||
enabled: value,
|
||||
),
|
||||
),
|
||||
);
|
||||
final cur = profesional.schedules.monday;
|
||||
final updated = (value && cur.range1Hour1 == null)
|
||||
? cur.copyWith(enabled: true, continuousDay: true, range1Hour1: const TimeOfDay(hour: 8, minute: 0), range2Hour2: const TimeOfDay(hour: 18, minute: 0))
|
||||
: cur.copyWith(enabled: value);
|
||||
professionalFormProvider.copyProfesionalWith(schedules: profesional.schedules.copyWith(monday: updated));
|
||||
});
|
||||
},
|
||||
onContinuousDayChanged: (value) {
|
||||
@@ -147,13 +146,11 @@ class _ScheduleViewState extends State<ScheduleView> {
|
||||
schedule: profesional.schedules.tuesday,
|
||||
onEnableChanged: (value) {
|
||||
setState(() {
|
||||
professionalFormProvider.copyProfesionalWith(
|
||||
schedules: profesional.schedules.copyWith(
|
||||
tuesday: profesional.schedules.tuesday.copyWith(
|
||||
enabled: value,
|
||||
),
|
||||
),
|
||||
);
|
||||
final cur = profesional.schedules.tuesday;
|
||||
final updated = (value && cur.range1Hour1 == null)
|
||||
? cur.copyWith(enabled: true, continuousDay: true, range1Hour1: const TimeOfDay(hour: 8, minute: 0), range2Hour2: const TimeOfDay(hour: 18, minute: 0))
|
||||
: cur.copyWith(enabled: value);
|
||||
professionalFormProvider.copyProfesionalWith(schedules: profesional.schedules.copyWith(tuesday: updated));
|
||||
});
|
||||
},
|
||||
onContinuousDayChanged: (value) {
|
||||
@@ -212,14 +209,11 @@ class _ScheduleViewState extends State<ScheduleView> {
|
||||
schedule: profesional.schedules.wednesday,
|
||||
onEnableChanged: (value) {
|
||||
setState(() {
|
||||
professionalFormProvider.copyProfesionalWith(
|
||||
schedules: profesional.schedules.copyWith(
|
||||
wednesday:
|
||||
profesional.schedules.wednesday.copyWith(
|
||||
enabled: value,
|
||||
),
|
||||
),
|
||||
);
|
||||
final cur = profesional.schedules.wednesday;
|
||||
final updated = (value && cur.range1Hour1 == null)
|
||||
? cur.copyWith(enabled: true, continuousDay: true, range1Hour1: const TimeOfDay(hour: 8, minute: 0), range2Hour2: const TimeOfDay(hour: 18, minute: 0))
|
||||
: cur.copyWith(enabled: value);
|
||||
professionalFormProvider.copyProfesionalWith(schedules: profesional.schedules.copyWith(wednesday: updated));
|
||||
});
|
||||
},
|
||||
onContinuousDayChanged: (value) {
|
||||
@@ -279,13 +273,11 @@ class _ScheduleViewState extends State<ScheduleView> {
|
||||
schedule: profesional.schedules.thursday,
|
||||
onEnableChanged: (value) {
|
||||
setState(() {
|
||||
professionalFormProvider.copyProfesionalWith(
|
||||
schedules: profesional.schedules.copyWith(
|
||||
thursday: profesional.schedules.thursday.copyWith(
|
||||
enabled: value,
|
||||
),
|
||||
),
|
||||
);
|
||||
final cur = profesional.schedules.thursday;
|
||||
final updated = (value && cur.range1Hour1 == null)
|
||||
? cur.copyWith(enabled: true, continuousDay: true, range1Hour1: const TimeOfDay(hour: 8, minute: 0), range2Hour2: const TimeOfDay(hour: 18, minute: 0))
|
||||
: cur.copyWith(enabled: value);
|
||||
professionalFormProvider.copyProfesionalWith(schedules: profesional.schedules.copyWith(thursday: updated));
|
||||
});
|
||||
},
|
||||
onContinuousDayChanged: (value) {
|
||||
@@ -344,13 +336,11 @@ class _ScheduleViewState extends State<ScheduleView> {
|
||||
schedule: profesional.schedules.friday,
|
||||
onEnableChanged: (value) {
|
||||
setState(() {
|
||||
professionalFormProvider.copyProfesionalWith(
|
||||
schedules: profesional.schedules.copyWith(
|
||||
friday: profesional.schedules.friday.copyWith(
|
||||
enabled: value,
|
||||
),
|
||||
),
|
||||
);
|
||||
final cur = profesional.schedules.friday;
|
||||
final updated = (value && cur.range1Hour1 == null)
|
||||
? cur.copyWith(enabled: true, continuousDay: true, range1Hour1: const TimeOfDay(hour: 8, minute: 0), range2Hour2: const TimeOfDay(hour: 18, minute: 0))
|
||||
: cur.copyWith(enabled: value);
|
||||
professionalFormProvider.copyProfesionalWith(schedules: profesional.schedules.copyWith(friday: updated));
|
||||
});
|
||||
},
|
||||
onContinuousDayChanged: (value) {
|
||||
@@ -409,13 +399,11 @@ class _ScheduleViewState extends State<ScheduleView> {
|
||||
schedule: profesional.schedules.saturday,
|
||||
onEnableChanged: (value) {
|
||||
setState(() {
|
||||
professionalFormProvider.copyProfesionalWith(
|
||||
schedules: profesional.schedules.copyWith(
|
||||
saturday: profesional.schedules.saturday.copyWith(
|
||||
enabled: value,
|
||||
),
|
||||
),
|
||||
);
|
||||
final cur = profesional.schedules.saturday;
|
||||
final updated = (value && cur.range1Hour1 == null)
|
||||
? cur.copyWith(enabled: true, continuousDay: true, range1Hour1: const TimeOfDay(hour: 8, minute: 0), range2Hour2: const TimeOfDay(hour: 18, minute: 0))
|
||||
: cur.copyWith(enabled: value);
|
||||
professionalFormProvider.copyProfesionalWith(schedules: profesional.schedules.copyWith(saturday: updated));
|
||||
});
|
||||
},
|
||||
onContinuousDayChanged: (value) {
|
||||
@@ -474,13 +462,11 @@ class _ScheduleViewState extends State<ScheduleView> {
|
||||
schedule: profesional.schedules.sunday,
|
||||
onEnableChanged: (value) {
|
||||
setState(() {
|
||||
professionalFormProvider.copyProfesionalWith(
|
||||
schedules: profesional.schedules.copyWith(
|
||||
sunday: profesional.schedules.sunday.copyWith(
|
||||
enabled: value,
|
||||
),
|
||||
),
|
||||
);
|
||||
final cur = profesional.schedules.sunday;
|
||||
final updated = (value && cur.range1Hour1 == null)
|
||||
? cur.copyWith(enabled: true, continuousDay: true, range1Hour1: const TimeOfDay(hour: 8, minute: 0), range2Hour2: const TimeOfDay(hour: 18, minute: 0))
|
||||
: cur.copyWith(enabled: value);
|
||||
professionalFormProvider.copyProfesionalWith(schedules: profesional.schedules.copyWith(sunday: updated));
|
||||
});
|
||||
},
|
||||
onContinuousDayChanged: (value) {
|
||||
|
||||
Reference in New Issue
Block a user