如何比较颤动时间?

问题描述 投票:-1回答:1

这里我想验证时间。根据此图片,当我选择“班次开始时间”和“结束时间”时,无论何时我选择休息时间,它总是在“班次开始时间”和“班次结束时间”之间。

这里是输出图像

enter image description here

这里是时间选择器的代码

                       DateTimeField( 
                          decoration: InputDecoration(
                            contentPadding: const EdgeInsets.symmetric(
                                vertical: 15.0, horizontal: 10),
                            labelText: "Time",
                            filled: true,
                            fillColor: Colors.white,
                            border: OutlineInputBorder(
                              borderRadius: new BorderRadius.circular(6),
                            ),
                          ),
                          format: format,
                          onShowPicker: (context, currentValue) async {
                            final time = await showTimePicker(
                              context: context,
                              initialTime: TimeOfDay.fromDateTime(
                                currentValue ?? DateTime.now(),
                              ),
                            );
                            return DateTimeField.convert(time);
                          },
                        ),
flutter dart datetimepicker flutter-layout flutter-dependencies
1个回答
0
投票
final startShift = DateTime.now();
final endShift = DateTime.now().add(Duration(hours: 8));

final startBreak = startShift.add(Duration(hours: 3));
final endBreak = startBreak.add(Duration(hours: 1));

if ((startBreak.isAfter(startShift) && startBreak.isBefore(endShift)) &&
    (endBreak.isAfter(startShift) && endBreak.isBefore(endShift))) {
  //--- Break is within a shift.
} else {
  //--- Invalid break;
}
© www.soinside.com 2019 - 2024. All rights reserved.