Commit c1dea779a8aa63418b5af89904f13a02bf56d693

Authored by wdn127929
1 parent 600e9128

默认选新选那一天的第一个餐段,回到今天 选当前时间对应的餐段

@@ -449,7 +449,7 @@ @@ -449,7 +449,7 @@
449 ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 449 ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
450 CLANG_ENABLE_MODULES = YES; 450 CLANG_ENABLE_MODULES = YES;
451 CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; 451 CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
452 - CURRENT_PROJECT_VERSION = 5560; 452 + CURRENT_PROJECT_VERSION = 5562;
453 DEVELOPMENT_TEAM = 8J59HM8B82; 453 DEVELOPMENT_TEAM = 8J59HM8B82;
454 ENABLE_BITCODE = NO; 454 ENABLE_BITCODE = NO;
455 INFOPLIST_FILE = Runner/Info.plist; 455 INFOPLIST_FILE = Runner/Info.plist;
@@ -632,7 +632,7 @@ @@ -632,7 +632,7 @@
632 ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 632 ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
633 CLANG_ENABLE_MODULES = YES; 633 CLANG_ENABLE_MODULES = YES;
634 CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; 634 CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
635 - CURRENT_PROJECT_VERSION = 5560; 635 + CURRENT_PROJECT_VERSION = 5562;
636 DEVELOPMENT_TEAM = 8J59HM8B82; 636 DEVELOPMENT_TEAM = 8J59HM8B82;
637 ENABLE_BITCODE = NO; 637 ENABLE_BITCODE = NO;
638 INFOPLIST_FILE = Runner/Info.plist; 638 INFOPLIST_FILE = Runner/Info.plist;
@@ -658,7 +658,7 @@ @@ -658,7 +658,7 @@
658 ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 658 ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
659 CLANG_ENABLE_MODULES = YES; 659 CLANG_ENABLE_MODULES = YES;
660 CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; 660 CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
661 - CURRENT_PROJECT_VERSION = 5560; 661 + CURRENT_PROJECT_VERSION = 5562;
662 DEVELOPMENT_TEAM = 8J59HM8B82; 662 DEVELOPMENT_TEAM = 8J59HM8B82;
663 ENABLE_BITCODE = NO; 663 ENABLE_BITCODE = NO;
664 INFOPLIST_FILE = Runner/Info.plist; 664 INFOPLIST_FILE = Runner/Info.plist;
@@ -162,14 +162,16 @@ class _NoteBookChangeFPageOnlyState extends State<NoteBookChangeFPageOnly> { @@ -162,14 +162,16 @@ class _NoteBookChangeFPageOnlyState extends State<NoteBookChangeFPageOnly> {
162 showLoading: false); 162 showLoading: false);
163 163
164 if (needInit) { 164 if (needInit) {
165 - bool has = storeBaseIndoProvider.dayDateData!  
166 - .any((element) => element.ddateSolt == ddateSoltSelect); 165 + // 创建一个你想要比较的日期对象,例如今天的日期
  166 + DateTime today = DateTime(dateTime.year, dateTime.month, dateTime.day);
167 167
168 - if (has) {  
169 - currTimeIndex = int.parse(ddateSoltSelect); 168 + // 比较两个日期是否相同
  169 + bool isToday = Utils.isOneDay(DateTime.now(), today);
  170 + if (isToday) {
  171 + currTimeIndex = int.parse(detailEntity!.ddate_solt!); //默认订单当前的餐段
170 } else { 172 } else {
171 currTimeIndex = 173 currTimeIndex =
172 - int.parse(storeBaseIndoProvider.dayDateData!.last.ddateSolt!); 174 + int.parse(storeBaseIndoProvider.dayDateData!.first.ddateSolt!);
173 } 175 }
174 } 176 }
175 } 177 }
@@ -941,7 +943,7 @@ class _NoteBookChangeFPageOnlyState extends State<NoteBookChangeFPageOnly> { @@ -941,7 +943,7 @@ class _NoteBookChangeFPageOnlyState extends State<NoteBookChangeFPageOnly> {
941 //如果不允许变更订单到过去餐段,则开始判断 943 //如果不允许变更订单到过去餐段,则开始判断
942 //两个条件同时成立: 1.订单的时间是未来 2. 将要改变的时间是过去 944 //两个条件同时成立: 1.订单的时间是未来 2. 将要改变的时间是过去
943 if (!isReserveOver) { 945 if (!isReserveOver) {
944 - String? times; 946 + String? times = '00:00-00:00';
945 //找到当前餐段对应的时间段 947 //找到当前餐段对应的时间段
946 storeBaseIndoProvider.dayDateData!.forEach((element) { 948 storeBaseIndoProvider.dayDateData!.forEach((element) {
947 if (element.ddateSolt == detailEntity!.ddate_solt) { 949 if (element.ddateSolt == detailEntity!.ddate_solt) {
@@ -1020,7 +1022,10 @@ class _NoteBookChangeFPageOnlyState extends State<NoteBookChangeFPageOnly> { @@ -1020,7 +1022,10 @@ class _NoteBookChangeFPageOnlyState extends State<NoteBookChangeFPageOnly> {
1020 1022
1021 //选中的时间+餐段组合的时间戳结束日期和现在比较,< 现在,则会变更到过去 1023 //选中的时间+餐段组合的时间戳结束日期和现在比较,< 现在,则会变更到过去
1022 1024
1023 - if (nowStime.isBefore(reserveStime) && nowStime.isBefore(DateTime.now())) { 1025 + if ((nowStime.isBefore(reserveStime) ||
  1026 + (int.parse(ddateSoltTemp!) < int.parse(detailEntity!.ddate_solt!) &&
  1027 + nowStime.isAtSameMomentAs(reserveStime))) &&
  1028 + nowStime.isBefore(DateTime.now())) {
1024 // 变更到过去餐段 1029 // 变更到过去餐段
1025 return true; 1030 return true;
1026 } else { 1031 } else {
@@ -1387,11 +1392,18 @@ class _NoteBookChangeFPageOnlyState extends State<NoteBookChangeFPageOnly> { @@ -1387,11 +1392,18 @@ class _NoteBookChangeFPageOnlyState extends State<NoteBookChangeFPageOnly> {
1387 return; 1392 return;
1388 } 1393 }
1389 } 1394 }
  1395 + day = DateTime(
  1396 + day.year,
  1397 + day.month,
  1398 + day.day,
  1399 + DateTime.now().hour,
  1400 + DateTime.now().minute,
  1401 + DateTime.now().second);
1390 createDateText(context, day); 1402 createDateText(context, day);
1391 int dateTimeMill = 1403 int dateTimeMill =
1392 day.millisecondsSinceEpoch; 1404 day.millisecondsSinceEpoch;
1393 dateTime = day; 1405 dateTime = day;
1394 - getMealSectionByDay(needInit: true); 1406 + await getMealSectionByDay(needInit: true);
1395 _notebookDetailChangeModel.getNewTableList( 1407 _notebookDetailChangeModel.getNewTableList(
1396 context, 1408 context,
1397 '${dateTimeMill}', 1409 '${dateTimeMill}',
@@ -224,19 +224,34 @@ class NoteBookPageState extends State<NoteBookPage> { @@ -224,19 +224,34 @@ class NoteBookPageState extends State<NoteBookPage> {
224 currTimeIndex = int.parse(solt!); 224 currTimeIndex = int.parse(solt!);
225 } 225 }
226 } else { 226 } else {
227 - if (first) {  
228 - bool has = storeBaseIndoProvider.dayDateData!  
229 - .any((element) => element.ddateSolt == solt);  
230 - currTimeIndex = has ? int.parse(solt!) : 1; 227 + DateTime today =
  228 + DateTime(dateTimeNow!.year, dateTimeNow!.month, dateTimeNow!.day);
  229 + // 比较两个日期是否相同
  230 + bool isToday = Utils.isOneDay(DateTime.now(), today);
  231 + if (isToday) {
  232 + initCurruntIndex();
231 } else { 233 } else {
232 - bool has = storeBaseIndoProvider.dayDateData!  
233 - .any((element) => element.ddateSolt == ddateSoltSelect);  
234 - if (has) {  
235 - currTimeIndex = int.parse(ddateSoltSelect);  
236 - } else {  
237 - initCurruntIndex();  
238 - } 234 + // bool has = storeBaseIndoProvider.dayDateData!
  235 + // .any((element) => element.ddateSolt == ddateSoltSelect);
  236 + // currTimeIndex = has
  237 + // ? int.parse(ddateSoltSelect)
  238 + // : int.parse(storeBaseIndoProvider.dayDateData![0].ddateSolt!);
  239 + currTimeIndex =
  240 + int.parse(storeBaseIndoProvider.dayDateData!.first.ddateSolt!);
239 } 241 }
  242 + // if (first) {
  243 + // bool has = storeBaseIndoProvider.dayDateData!
  244 + // .any((element) => element.ddateSolt == solt);
  245 + // currTimeIndex = has ? int.parse(solt!) : 1;
  246 + // } else {
  247 + // bool has = storeBaseIndoProvider.dayDateData!
  248 + // .any((element) => element.ddateSolt == ddateSoltSelect);
  249 + // if (has) {
  250 + // currTimeIndex = int.parse(ddateSoltSelect);
  251 + // } else {
  252 + // initCurruntIndex();
  253 + // }
  254 + // }
240 } 255 }
241 _getReserveList(needLoading: true); 256 _getReserveList(needLoading: true);
242 } 257 }
@@ -299,8 +314,7 @@ class NoteBookPageState extends State<NoteBookPage> { @@ -299,8 +314,7 @@ class NoteBookPageState extends State<NoteBookPage> {
299 //过了午市,未过晚市 314 //过了午市,未过晚市
300 currTimeIndex = 5; 315 currTimeIndex = 5;
301 } else { 316 } else {
302 -  
303 - //过了晚市 317 + //过了晚市
304 currTimeIndex = 318 currTimeIndex =
305 int.parse(storeBaseIndoProvider.dayDateData!.last.ddateSolt!); 319 int.parse(storeBaseIndoProvider.dayDateData!.last.ddateSolt!);
306 } 320 }
@@ -1740,6 +1754,13 @@ class NoteBookPageState extends State<NoteBookPage> { @@ -1740,6 +1754,13 @@ class NoteBookPageState extends State<NoteBookPage> {
1740 ) { 1754 ) {
1741 if (!Utils.isOneDay(day, dateTimeNow!)) { 1755 if (!Utils.isOneDay(day, dateTimeNow!)) {
1742 //不是一天 1756 //不是一天
  1757 + day = DateTime(
  1758 + day.year,
  1759 + day.month,
  1760 + day.day,
  1761 + DateTime.now().hour,
  1762 + DateTime.now().minute,
  1763 + DateTime.now().second);
1743 dateTimeNow = day; 1764 dateTimeNow = day;
1744 _focusedDay = dateTimeNow; 1765 _focusedDay = dateTimeNow;
1745 clearSel = false; 1766 clearSel = false;
@@ -1804,6 +1825,13 @@ class NoteBookPageState extends State<NoteBookPage> { @@ -1804,6 +1825,13 @@ class NoteBookPageState extends State<NoteBookPage> {
1804 onTap: () { 1825 onTap: () {
1805 if (!Utils.isOneDay( 1826 if (!Utils.isOneDay(
1806 day, dateTimeNow!)) { 1827 day, dateTimeNow!)) {
  1828 + day = DateTime(
  1829 + day.year,
  1830 + day.month,
  1831 + day.day,
  1832 + DateTime.now().hour,
  1833 + DateTime.now().minute,
  1834 + DateTime.now().second);
1807 //不是一天 1835 //不是一天
1808 dateTimeNow = day; 1836 dateTimeNow = day;
1809 _focusedDay = dateTimeNow; 1837 _focusedDay = dateTimeNow;
@@ -1967,6 +1995,13 @@ class NoteBookPageState extends State<NoteBookPage> { @@ -1967,6 +1995,13 @@ class NoteBookPageState extends State<NoteBookPage> {
1967 DialogUtil.showCalendarDialog(context, dateTimeNow) 1995 DialogUtil.showCalendarDialog(context, dateTimeNow)
1968 .then((day) { 1996 .then((day) {
1969 if (day != null) { 1997 if (day != null) {
  1998 + day = DateTime(
  1999 + day.year,
  2000 + day.month,
  2001 + day.day,
  2002 + DateTime.now().hour,
  2003 + DateTime.now().minute,
  2004 + DateTime.now().second);
1970 _createDateText(day); 2005 _createDateText(day);
1971 } 2006 }
1972 }); 2007 });
@@ -350,16 +350,24 @@ class TableManagerPageState extends State<TableManagerPage> { @@ -350,16 +350,24 @@ class TableManagerPageState extends State<TableManagerPage> {
350 meal2 = element.mdate; 350 meal2 = element.mdate;
351 } 351 }
352 }); 352 });
353 - if (needInit) { 353 +
  354 + // 创建一个你想要比较的日期对象,例如今天的日期
  355 + DateTime today = DateTime(
  356 + dateTimeSelect!.year, dateTimeSelect!.month, dateTimeSelect!.day);
  357 +
  358 + // 比较两个日期是否相同
  359 + bool isToday = Utils.isOneDay(DateTime.now(), today);
  360 + if (isToday) {
354 initCurruntIndex(); 361 initCurruntIndex();
355 isRealAddOver = _getAddOrder(dateTimeSelect, currTimeIndex); 362 isRealAddOver = _getAddOrder(dateTimeSelect, currTimeIndex);
356 } else { 363 } else {
357 - bool has = storeBaseIndoProvider.dayDateData!  
358 - .any((element) => element.ddateSolt == ddateSoltSelect);  
359 - currTimeIndex = has  
360 - ? int.parse(ddateSoltSelect)  
361 - : int.parse(storeBaseIndoProvider.dayDateData![0].ddateSolt!);  
362 - 364 + // bool has = storeBaseIndoProvider.dayDateData!
  365 + // .any((element) => element.ddateSolt == ddateSoltSelect);
  366 + // currTimeIndex = has
  367 + // ? int.parse(ddateSoltSelect)
  368 + // : int.parse(storeBaseIndoProvider.dayDateData![0].ddateSolt!);
  369 + currTimeIndex =
  370 + int.parse(storeBaseIndoProvider.dayDateData!.first.ddateSolt!);
363 isRealAddOver = _getAddOrder(dateTimeSelect, currTimeIndex); 371 isRealAddOver = _getAddOrder(dateTimeSelect, currTimeIndex);
364 } 372 }
365 373
@@ -4031,10 +4039,16 @@ class TableManagerPageState extends State<TableManagerPage> { @@ -4031,10 +4039,16 @@ class TableManagerPageState extends State<TableManagerPage> {
4031 return; 4039 return;
4032 } 4040 }
4033 } 4041 }
  4042 + day = DateTime(
  4043 + day.year,
  4044 + day.month,
  4045 + day.day,
  4046 + DateTime.now().hour,
  4047 + DateTime.now().minute,
  4048 + DateTime.now().second);
4034 4049
4035 createDateText1(context, day); 4050 createDateText1(context, day);
4036 - await getMealSectionByDay(needInit: true);  
4037 - 4051 + await getMealSectionByDay(needInit: true);
4038 } 4052 }
4039 }); 4053 });
4040 // // 切换之前的餐段 4054 // // 切换之前的餐段