|
|
@@ -43,11 +43,11 @@ class RegisterDialogController extends GetxController {
|
|
|
late final Iterable<EventInfo>? eventList;
|
|
|
late final Object _args;
|
|
|
|
|
|
- DateTime? eventDate;
|
|
|
+ Rx<DateTime?> eventDate = Rx(null);
|
|
|
TimeOfDay? eventStartAt;
|
|
|
TimeOfDay? eventEndAt;
|
|
|
|
|
|
- DateTime? showDate;
|
|
|
+ Rx<DateTime?> showDate = Rx(null);
|
|
|
TimeOfDay? showStartAt;
|
|
|
TimeOfDay? showEndAt;
|
|
|
|
|
|
@@ -74,9 +74,9 @@ class RegisterDialogController extends GetxController {
|
|
|
registerName = args.old.name;
|
|
|
var d = args.old.eventStartAt;
|
|
|
|
|
|
- eventDate = DateTime(d.day, d.month, d.day);
|
|
|
+ eventDate.value = DateTime(d.year, d.month, d.day);
|
|
|
d = args.old.showStartAt;
|
|
|
- showDate = DateTime(d.day, d.month, d.day);
|
|
|
+ showDate.value = DateTime(d.year, d.month, d.day);
|
|
|
eventStartAt = TimeOfDay.fromDateTime(args.old.eventStartAt);
|
|
|
eventEndAt = TimeOfDay.fromDateTime(args.old.eventStopAt);
|
|
|
|
|
|
@@ -93,7 +93,7 @@ class RegisterDialogController extends GetxController {
|
|
|
|
|
|
void updateShowTime(DateTime? date, TimeOfDay? startAt, TimeOfDay? endAt) {
|
|
|
if (date != null) {
|
|
|
- showDate = date;
|
|
|
+ showDate.value = date;
|
|
|
}
|
|
|
if (startAt != null) {
|
|
|
showStartAt = startAt;
|
|
|
@@ -105,7 +105,7 @@ class RegisterDialogController extends GetxController {
|
|
|
|
|
|
void updateEventTime(DateTime? date, TimeOfDay? startAt, TimeOfDay? endAt) {
|
|
|
if (date != null) {
|
|
|
- eventDate = date;
|
|
|
+ eventDate.value = date;
|
|
|
}
|
|
|
if (startAt != null) {
|
|
|
eventStartAt = startAt;
|
|
|
@@ -159,25 +159,25 @@ class RegisterDialog extends GetView<RegisterDialogController> {
|
|
|
: controller.registerName,
|
|
|
),
|
|
|
const SizedBox(height: 21.34),
|
|
|
- _DateTimeSelect(
|
|
|
+ Obx(() => _DateTimeSelect(
|
|
|
title: '比赛时间',
|
|
|
- date: c.eventDate,
|
|
|
+ date: c.eventDate.value,
|
|
|
startAt: c.eventStartAt,
|
|
|
endAt: c.eventEndAt,
|
|
|
- onChanged: c.updateEventTime),
|
|
|
+ onChanged: c.updateEventTime)),
|
|
|
const SizedBox(height: 12),
|
|
|
- _DateTimeSelect(
|
|
|
+ Obx(() => _DateTimeSelect(
|
|
|
title: '显示时间',
|
|
|
- date: c.showDate,
|
|
|
+ date: c.showDate.value,
|
|
|
startAt: c.showStartAt,
|
|
|
endAt: c.showEndAt,
|
|
|
- onChanged: c.updateShowTime),
|
|
|
+ onChanged: c.updateShowTime)),
|
|
|
password('查询密码', c.hasPasswordQuery, (v) {
|
|
|
c.passwordQuery = v;
|
|
|
}),
|
|
|
- password('赛事密码', c.hasPasswordEvent, (v) {
|
|
|
- c.passwordEvent = v;
|
|
|
- }),
|
|
|
+ // password('赛事密码', c.hasPasswordEvent, (v) {
|
|
|
+ // c.passwordEvent = v;
|
|
|
+ // }),
|
|
|
const SizedBox(height: 21.34),
|
|
|
SizedBox(
|
|
|
width: double.infinity,
|
|
|
@@ -250,7 +250,7 @@ class RegisterDialog extends GetView<RegisterDialogController> {
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- if (showDate == null) {
|
|
|
+ if (showDate.value == null) {
|
|
|
Get.snackbar('错误', '请选择日期');
|
|
|
return;
|
|
|
}
|
|
|
@@ -263,7 +263,7 @@ class RegisterDialog extends GetView<RegisterDialogController> {
|
|
|
Get.snackbar('错误', '请选择结束时间');
|
|
|
return;
|
|
|
}
|
|
|
- if (evenDate == null) {
|
|
|
+ if (evenDate.value == null) {
|
|
|
Get.snackbar('错误', '请选择日期');
|
|
|
return;
|
|
|
}
|
|
|
@@ -276,20 +276,20 @@ class RegisterDialog extends GetView<RegisterDialogController> {
|
|
|
Get.snackbar('错误', '请选择结束时间');
|
|
|
return;
|
|
|
}
|
|
|
- final eventStartAt = evenDate.copyWith(
|
|
|
- hour: eventTimeStartAt.hour, minute: eventTimeStartAt.minute);
|
|
|
- final eventStopAt = evenDate.copyWith(
|
|
|
- hour: eventTimeStopAt.hour, minute: eventTimeStopAt.minute);
|
|
|
+ final eventStartAt = evenDate.value!
|
|
|
+ .copyWith(hour: eventTimeStartAt.hour, minute: eventTimeStartAt.minute);
|
|
|
+ final eventStopAt = evenDate.value!
|
|
|
+ .copyWith(hour: eventTimeStopAt.hour, minute: eventTimeStopAt.minute);
|
|
|
|
|
|
if (eventStartAt.isAfter(eventStopAt)) {
|
|
|
Get.snackbar('错误', '结束时间应晚于开始时间');
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- final showStartAt = showDate.copyWith(
|
|
|
- hour: showTimeStartAt.hour, minute: showTimeStartAt.minute);
|
|
|
- final showStopAt = showDate.copyWith(
|
|
|
- hour: showTimeStopAt.hour, minute: showTimeStopAt.minute);
|
|
|
+ final showStartAt = showDate.value!
|
|
|
+ .copyWith(hour: showTimeStartAt.hour, minute: showTimeStartAt.minute);
|
|
|
+ final showStopAt = showDate.value!
|
|
|
+ .copyWith(hour: showTimeStopAt.hour, minute: showTimeStopAt.minute);
|
|
|
|
|
|
if (showStartAt.isAfter(showStopAt)) {
|
|
|
Get.snackbar('错误', '结束时间应晚于开始时间');
|
|
|
@@ -396,6 +396,14 @@ class _DateTimeSelectState extends State<_DateTimeSelect> {
|
|
|
TimeOfDay? startAt;
|
|
|
TimeOfDay? endAt;
|
|
|
|
|
|
+ @override
|
|
|
+ void initState() {
|
|
|
+ date = widget.date;
|
|
|
+ startAt = widget.startAt;
|
|
|
+ endAt = widget.endAt;
|
|
|
+ super.initState();
|
|
|
+ }
|
|
|
+
|
|
|
String? dateString(DateTime? d) {
|
|
|
if (d != null) {
|
|
|
return '${d.month}/${d.day}';
|