From 86a9c3c9de4c343ad38c803ce03a9d2ce38b2509 Mon Sep 17 00:00:00 2001 From: Sikander Saleem Date: Tue, 13 Feb 2024 12:28:23 +0300 Subject: [PATCH] service to return time added. --- .../work_order/create_service_report.dart | 26 ++++++++++++++++--- .../widgets/date_and_time/date_picker.dart | 8 +++--- 2 files changed, 28 insertions(+), 6 deletions(-) diff --git a/lib/views/pages/user/requests/work_order/create_service_report.dart b/lib/views/pages/user/requests/work_order/create_service_report.dart index 3828e189..868427ed 100644 --- a/lib/views/pages/user/requests/work_order/create_service_report.dart +++ b/lib/views/pages/user/requests/work_order/create_service_report.dart @@ -146,9 +146,29 @@ class _CreateServiceReportState extends State with TickerPr ADatePicker( label: context.translation.returnToService, date: DateTime.tryParse(_serviceReport.visitDate ?? ""), - onDatePicker: (date) { - _serviceReport.visitDate = date?.toIso8601String(); - setState(() {}); + formatDateWithTime: true, + onDatePicker: (selectedDate) { + if (selectedDate != null) { + showTimePicker( + context: context, + initialTime: TimeOfDay.now(), + ).then((selectedTime) { + if (selectedTime != null) { + DateTime selectedDateTime = DateTime( + selectedDate.year, + selectedDate.month, + selectedDate.day, + selectedTime.hour, + selectedTime.minute, + ); + if (selectedDateTime != null) { + setState(() { + _serviceReport.visitDate = selectedDateTime?.toIso8601String(); + }); + } + } + }); + } }, ), 8.height, diff --git a/lib/views/widgets/date_and_time/date_picker.dart b/lib/views/widgets/date_and_time/date_picker.dart index c1dd7d0f..08453fc5 100644 --- a/lib/views/widgets/date_and_time/date_picker.dart +++ b/lib/views/widgets/date_and_time/date_picker.dart @@ -52,9 +52,11 @@ class ADatePicker extends StatelessWidget { mainAxisSize: MainAxisSize.min, children: [ label.tinyFont(context), - (formatDateWithTime ? date?.toIso8601String().toFirstActionFormat: - - ((date?.toIso8601String()?.split("T")?.first) ?? context.translation.pickADate)).bodyText(context).custom(color: context.isDark ? AppColor.neutral30 : AppColor.neutral50), + (date?.toIso8601String == null + ? context.translation.pickADate + : (formatDateWithTime ? date?.toIso8601String()?.toFirstActionFormat : (date?.toIso8601String()?.split("T")?.first ?? context.translation.pickADate))) + .bodyText(context) + .custom(color: context.isDark ? AppColor.neutral30 : AppColor.neutral50), ], ).expanded : label.bodyText(context).paddingOnly(top: 8, bottom: 8),