Files
prosappco/lib/screens/professional/professional_schedule_screen.dart
T
2024-08-02 18:47:49 -05:00

102 lines
3.1 KiB
Dart

import 'package:flutter/material.dart';
import 'package:professional_repository/professional_repository.dart';
import 'package:prosappco/components/general_primary_button.dart';
import 'package:prosappco/screens/professional/components/schedule_item.dart';
class ProfessionalScheduleScreen extends StatefulWidget {
Schedules schedules;
ProfessionalScheduleScreen({
super.key,
required this.schedules,
});
@override
State<ProfessionalScheduleScreen> createState() =>
_ProfessionalScheduleScreenState();
}
class _ProfessionalScheduleScreenState
extends State<ProfessionalScheduleScreen> {
Schedules schedules = Schedules.empty;
@override
void initState() {
super.initState();
schedules = widget.schedules;
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: const Text('Horario'),
),
body: SingleChildScrollView(
child: Padding(
padding: const EdgeInsets.symmetric(horizontal: 15),
child: Column(
children: [
ScheduleItem(
label: "Lunes",
schedule: schedules.monday,
onChanged: (s) {
setState(() => schedules = schedules.copyWith(monday: s));
},
),
ScheduleItem(
label: "Martes",
schedule: schedules.tuesday,
onChanged: (s) {
setState(() => schedules = schedules.copyWith(tuesday: s));
},
),
ScheduleItem(
label: "Miercoles",
schedule: schedules.wednesday,
onChanged: (s) {
setState(() => schedules = schedules.copyWith(wednesday: s));
},
),
ScheduleItem(
label: "Jueves",
schedule: schedules.thursday,
onChanged: (s) {
setState(() => schedules = schedules.copyWith(thursday: s));
},
),
ScheduleItem(
label: "Viernes",
schedule: schedules.friday,
onChanged: (s) {
setState(() => schedules = schedules.copyWith(friday: s));
},
),
ScheduleItem(
label: "Sabado",
schedule: schedules.saturday,
onChanged: (s) {
setState(() => schedules = schedules.copyWith(saturday: s));
},
),
ScheduleItem(
label: "Domingo",
schedule: schedules.sunday,
onChanged: (s) {
setState(() => schedules = schedules.copyWith(sunday: s));
},
),
const SizedBox(height: 20),
GeneralPrimaryButton(
label: "Guardar",
onPressed: () {
Navigator.of(context).pop(schedules);
},
),
const SizedBox(height: 20),
],
),
),
),
);
}
}