configurable slot duration: UI picker + genRanges stepMinutes
- Fix TimeOfDayExtension.add() to handle minute overflow via total-minutes math - genRanges() now takes stepMinutes param (default 30, clamp 5-480) - Profesional model: slotDurationMinutes field (parsed from slot_duration_minutes) - ProfessionalFormProvider: saves slot duration alongside schedules on Guardar - schedule_view: _SlotDurationPicker chip selector (15/20/30/45/60/90/120 min) - ProfessionalCalendarView + CalendarView: pass slotDurationMinutes to genRanges Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
46acad0b55
commit
920ae7144d
@@ -23,6 +23,7 @@ class Profesional {
|
||||
final List<String> specializationsPictures;
|
||||
final Schedules schedules;
|
||||
final PaymentMethodEntity paymentMethods;
|
||||
final int slotDurationMinutes;
|
||||
|
||||
const Profesional({
|
||||
required this.id,
|
||||
@@ -44,6 +45,7 @@ class Profesional {
|
||||
required this.specializationsPictures,
|
||||
required this.schedules,
|
||||
required this.paymentMethods,
|
||||
this.slotDurationMinutes = 30,
|
||||
});
|
||||
|
||||
static Profesional empty() => Profesional(
|
||||
@@ -148,6 +150,7 @@ class Profesional {
|
||||
specializationsPictures: specPics,
|
||||
schedules: parsedSchedules,
|
||||
paymentMethods: pm,
|
||||
slotDurationMinutes: (doc['slot_duration_minutes'] as int?) ?? 30,
|
||||
);
|
||||
}
|
||||
|
||||
@@ -171,6 +174,7 @@ class Profesional {
|
||||
List<String>? specializationsPictures,
|
||||
Schedules? schedules,
|
||||
PaymentMethodEntity? paymentMethods,
|
||||
int? slotDurationMinutes,
|
||||
}) {
|
||||
return Profesional(
|
||||
id: id ?? this.id,
|
||||
@@ -194,6 +198,7 @@ class Profesional {
|
||||
specializationsPictures ?? this.specializationsPictures,
|
||||
schedules: schedules ?? this.schedules,
|
||||
paymentMethods: paymentMethods ?? this.paymentMethods,
|
||||
slotDurationMinutes: slotDurationMinutes ?? this.slotDurationMinutes,
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user