Showing
3 changed files
with
319 additions
and
23 deletions
| @@ -104,6 +104,9 @@ class _NoteBookChangeFPageOnlyState extends State<NoteBookChangeFPageOnly> { | @@ -104,6 +104,9 @@ class _NoteBookChangeFPageOnlyState extends State<NoteBookChangeFPageOnly> { | ||
| 104 | StoreBaseIndoProvider storeBaseIndoProvider; | 104 | StoreBaseIndoProvider storeBaseIndoProvider; |
| 105 | String ddateSoltSelect = ''; //切换时间之前的餐段 | 105 | String ddateSoltSelect = ''; //切换时间之前的餐段 |
| 106 | String dateShowNow = ""; //今天,明天,后天 | 106 | String dateShowNow = ""; //今天,明天,后天 |
| 107 | + | ||
| 108 | + bool isSetOver = true; | ||
| 109 | + bool isReserveOver = true; | ||
| 107 | @override | 110 | @override |
| 108 | void initState() { | 111 | void initState() { |
| 109 | super.initState(); | 112 | super.initState(); |
| @@ -171,6 +174,16 @@ class _NoteBookChangeFPageOnlyState extends State<NoteBookChangeFPageOnly> { | @@ -171,6 +174,16 @@ class _NoteBookChangeFPageOnlyState extends State<NoteBookChangeFPageOnly> { | ||
| 171 | flex: 1, | 174 | flex: 1, |
| 172 | child: InkWell( | 175 | child: InkWell( |
| 173 | onTap: () { | 176 | onTap: () { |
| 177 | + String createtime = detailEntity.ddate.toString() + '000'; | ||
| 178 | + DateTime reservedate = | ||
| 179 | + DateTime.fromMillisecondsSinceEpoch(int.parse(createtime)); | ||
| 180 | + if (!_getRealIsReserveOver(reservedate)) { | ||
| 181 | + if (_getIsBefore(element.ddateSolt)) { | ||
| 182 | + Utils.showToast('不允许变更订单到过去餐段'); | ||
| 183 | + return; | ||
| 184 | + } | ||
| 185 | + } | ||
| 186 | + | ||
| 174 | currTimeIndex = int.parse(element.ddateSolt); | 187 | currTimeIndex = int.parse(element.ddateSolt); |
| 175 | setState(() {}); | 188 | setState(() {}); |
| 176 | 189 | ||
| @@ -361,6 +374,16 @@ class _NoteBookChangeFPageOnlyState extends State<NoteBookChangeFPageOnly> { | @@ -361,6 +374,16 @@ class _NoteBookChangeFPageOnlyState extends State<NoteBookChangeFPageOnly> { | ||
| 361 | getDzSellerConf() async { | 374 | getDzSellerConf() async { |
| 362 | await marketingCenterProvider.getDzSellerConf(context, | 375 | await marketingCenterProvider.getDzSellerConf(context, |
| 363 | showLoading: false, selfDismiss: true); | 376 | showLoading: false, selfDismiss: true); |
| 377 | + | ||
| 378 | + if (marketingCenterProvider.dzSellerConfModel != null) { | ||
| 379 | + isSetOver = marketingCenterProvider.dzSellerConfModel.isSetOver == '1' | ||
| 380 | + ? true | ||
| 381 | + : false; | ||
| 382 | + isReserveOver = | ||
| 383 | + marketingCenterProvider.dzSellerConfModel.isReserveOver == '1' | ||
| 384 | + ? true | ||
| 385 | + : false; | ||
| 386 | + } | ||
| 364 | } | 387 | } |
| 365 | 388 | ||
| 366 | _initData() async { | 389 | _initData() async { |
| @@ -720,6 +743,139 @@ class _NoteBookChangeFPageOnlyState extends State<NoteBookChangeFPageOnly> { | @@ -720,6 +743,139 @@ class _NoteBookChangeFPageOnlyState extends State<NoteBookChangeFPageOnly> { | ||
| 720 | return lists; | 743 | return lists; |
| 721 | } | 744 | } |
| 722 | 745 | ||
| 746 | + // _getRealIsReserveOver() { | ||
| 747 | + // //判断时间是否可变更 | ||
| 748 | + // bool reserveOrder = true; //默认允许变更过去餐段订单的时间 | ||
| 749 | + // //如果不允许变更订单到过去餐段,则开始判断 | ||
| 750 | + // //两个条件同时成立: 1.订单的时间是未来 2. 将要改变的时间是过去 | ||
| 751 | + // if (!isReserveOver) { | ||
| 752 | + // String times; | ||
| 753 | + // //找到当前餐段对应的时间段 | ||
| 754 | + // storeBaseIndoProvider.dayDateData.forEach((element) { | ||
| 755 | + // if (element.ddateSolt == detailEntity.ddate_solt) { | ||
| 756 | + // times = element.mdate; | ||
| 757 | + // } | ||
| 758 | + // }); | ||
| 759 | + // //组装时间戳 | ||
| 760 | + // List<String> datas = times.split('-'); | ||
| 761 | + // // DateTime selectStime = DateTime.parse('${dateTimeSelect.year}' + | ||
| 762 | + // // '-' + | ||
| 763 | + // // '${dateTimeSelect.month}' + | ||
| 764 | + // // '-' + | ||
| 765 | + // // '${dateTimeSelect.day}' + | ||
| 766 | + // // ' ${datas[0]}:00'); //选中餐段开始时间戳 | ||
| 767 | + // DateTime selectEtime = DateTime.parse('${dateTime.year}' + | ||
| 768 | + // '-' + | ||
| 769 | + // '${dateTime.month}' + | ||
| 770 | + // '-' + | ||
| 771 | + // '${dateTime.day}' + | ||
| 772 | + // ' ${datas[1]}:00'); //选中餐段结束时间戳 | ||
| 773 | + // // 过去的餐段界定 | ||
| 774 | + // if (selectEtime.isBefore(DateTime.now())) { | ||
| 775 | + // // 属于过去餐段 | ||
| 776 | + // reserveOrder = true; | ||
| 777 | + // } else { | ||
| 778 | + // // 属于未来餐段 | ||
| 779 | + // reserveOrder = false; | ||
| 780 | + // } | ||
| 781 | + // } | ||
| 782 | + | ||
| 783 | + // return reserveOrder; | ||
| 784 | + // } | ||
| 785 | + | ||
| 786 | + _getRealIsReserveOver(DateTime time) { | ||
| 787 | + //判断时间是否可变更 | ||
| 788 | + | ||
| 789 | + bool reserveOrder = true; //默认允许变更过去餐段订单的时间 | ||
| 790 | + //如果不允许变更订单到过去餐段,则开始判断 | ||
| 791 | + //两个条件同时成立: 1.订单的时间是未来 2. 将要改变的时间是过去 | ||
| 792 | + if (!isReserveOver) { | ||
| 793 | + String times; | ||
| 794 | + //找到当前餐段对应的时间段 | ||
| 795 | + storeBaseIndoProvider.dayDateData.forEach((element) { | ||
| 796 | + if (element.ddateSolt == detailEntity.ddate_solt) { | ||
| 797 | + times = element.mdate; | ||
| 798 | + } | ||
| 799 | + }); | ||
| 800 | + //组装时间戳 | ||
| 801 | + List<String> datas = times.split('-'); | ||
| 802 | + // DateTime selectStime = DateTime.parse('${dateTimeSelect.year}' + | ||
| 803 | + // '-' + | ||
| 804 | + // '${dateTimeSelect.month}' + | ||
| 805 | + // '-' + | ||
| 806 | + // '${dateTimeSelect.day}' + | ||
| 807 | + // ' ${datas[0]}:00'); //选中餐段开始时间戳 | ||
| 808 | + DateTime selectEtime = DateTime.parse('${time.year}' + | ||
| 809 | + '-' + | ||
| 810 | + '${time.month}' + | ||
| 811 | + '-' + | ||
| 812 | + '${time.day}' + | ||
| 813 | + ' ${datas[1]}:00'); //选中餐段结束时间戳 | ||
| 814 | + // 过去的餐段界定 | ||
| 815 | + if (selectEtime.isBefore(DateTime.now())) { | ||
| 816 | + // 属于过去餐段 | ||
| 817 | + reserveOrder = true; | ||
| 818 | + } else { | ||
| 819 | + // 属于未来餐段 | ||
| 820 | + reserveOrder = false; | ||
| 821 | + } | ||
| 822 | + } | ||
| 823 | + | ||
| 824 | + return reserveOrder; | ||
| 825 | + } | ||
| 826 | + | ||
| 827 | + _getIsBefore(String ddateSoltTemp) { | ||
| 828 | + //判断2. 将要改变的时间是过去 | ||
| 829 | + | ||
| 830 | + String createtime = detailEntity.ddate.toString() + '000'; | ||
| 831 | + DateTime reservedate = | ||
| 832 | + DateTime.fromMillisecondsSinceEpoch(int.parse(createtime)); | ||
| 833 | + | ||
| 834 | + String timesreserve; | ||
| 835 | + //找到当前餐段对应的时间段 | ||
| 836 | + storeBaseIndoProvider.dayDateData.forEach((element) { | ||
| 837 | + if (element.ddateSolt == detailEntity.ddate_solt) { | ||
| 838 | + timesreserve = element.mdate; | ||
| 839 | + } | ||
| 840 | + }); | ||
| 841 | + //组装时间戳 | ||
| 842 | + List<String> datasreserve = timesreserve.split('-'); | ||
| 843 | + | ||
| 844 | + DateTime reserveStime = DateTime.parse('${reservedate.year}' + | ||
| 845 | + '-' + | ||
| 846 | + '${reservedate.month}' + | ||
| 847 | + '-' + | ||
| 848 | + '${reservedate.day}' + | ||
| 849 | + ' ${datasreserve[0]}:00'); //订单餐段开始时间戳 | ||
| 850 | + | ||
| 851 | + String timesnow; | ||
| 852 | + //找到当前餐段对应的时间段 | ||
| 853 | + //找到当前餐段对应的时间段 | ||
| 854 | + storeBaseIndoProvider.dayDateData.forEach((element) { | ||
| 855 | + if (element.ddateSolt == ddateSoltTemp) { | ||
| 856 | + timesnow = element.mdate; | ||
| 857 | + } | ||
| 858 | + }); | ||
| 859 | + //组装时间戳 | ||
| 860 | + List<String> datanow = timesnow.split('-'); | ||
| 861 | + | ||
| 862 | + //将要选中的餐段和时间 | ||
| 863 | + DateTime nowStime = DateTime.parse('${dateTime.year}' + | ||
| 864 | + '-' + | ||
| 865 | + '${dateTime.month}' + | ||
| 866 | + '-' + | ||
| 867 | + '${dateTime.day}' + | ||
| 868 | + ' ${datanow[1]}:00'); //选中餐段开始时间戳 | ||
| 869 | + | ||
| 870 | + if (nowStime.isBefore(reserveStime)) { | ||
| 871 | + // 变更到过去餐段 | ||
| 872 | + return true; | ||
| 873 | + } else { | ||
| 874 | + // 变更到未来餐段 | ||
| 875 | + return false; | ||
| 876 | + } | ||
| 877 | + } | ||
| 878 | + | ||
| 723 | @override | 879 | @override |
| 724 | Widget build(BuildContext context) { | 880 | Widget build(BuildContext context) { |
| 725 | storeBaseIndoProvider = | 881 | storeBaseIndoProvider = |
| @@ -947,12 +1103,89 @@ class _NoteBookChangeFPageOnlyState extends State<NoteBookChangeFPageOnly> { | @@ -947,12 +1103,89 @@ class _NoteBookChangeFPageOnlyState extends State<NoteBookChangeFPageOnly> { | ||
| 947 | horizontal: ScreenUtil().setWidth(15)), | 1103 | horizontal: ScreenUtil().setWidth(15)), |
| 948 | child: GestureDetector( | 1104 | child: GestureDetector( |
| 949 | onTap: () { | 1105 | onTap: () { |
| 1106 | + //判断时间是否可变更 | ||
| 1107 | + | ||
| 1108 | + bool setOrder = true; //默认允许变更过去餐段订单的时间 | ||
| 1109 | + //如果不允许变更过去餐段订单的时间,则开始判断 | ||
| 1110 | + //连个条件同时成立: 1.订单的时间是过去 2. 时间改变 | ||
| 1111 | + if (!isSetOver) { | ||
| 1112 | + String times; | ||
| 1113 | + //找到当前餐段对应的时间段 | ||
| 1114 | + if (currTimeIndex == 1) { | ||
| 1115 | + times = morning; | ||
| 1116 | + } else if (currTimeIndex == 2) { | ||
| 1117 | + times = noon; | ||
| 1118 | + } else if (currTimeIndex == 3) { | ||
| 1119 | + times = night; | ||
| 1120 | + } | ||
| 1121 | + //else if (currTimeIndex == 4) { | ||
| 1122 | + // times = meal1; | ||
| 1123 | + // } else if (currTimeIndex == 5) { | ||
| 1124 | + // times = meal2; | ||
| 1125 | + // } | ||
| 1126 | + //组装时间戳 | ||
| 1127 | + List<String> datas = times.split('-'); | ||
| 1128 | + // DateTime selectStime = DateTime.parse('${dateTimeSelect.year}' + | ||
| 1129 | + // '-' + | ||
| 1130 | + // '${dateTimeSelect.month}' + | ||
| 1131 | + // '-' + | ||
| 1132 | + // '${dateTimeSelect.day}' + | ||
| 1133 | + // ' ${datas[0]}:00'); //选中餐段开始时间戳 | ||
| 1134 | + DateTime selectEtime = DateTime.parse( | ||
| 1135 | + '${dateTime.year}' + | ||
| 1136 | + '-' + | ||
| 1137 | + '${dateTime.month}' + | ||
| 1138 | + '-' + | ||
| 1139 | + '${dateTime.day}' + | ||
| 1140 | + ' ${datas[1]}:00'); //选中餐段结束时间戳 | ||
| 1141 | + // 过去的餐段界定 | ||
| 1142 | + if (selectEtime.isBefore(DateTime.now())) { | ||
| 1143 | +// 属于过去餐段 | ||
| 1144 | + setOrder = false; | ||
| 1145 | + } else { | ||
| 1146 | + // 属于未来餐段 | ||
| 1147 | + setOrder = true; | ||
| 1148 | + } | ||
| 1149 | + } | ||
| 1150 | + | ||
| 1151 | + if (!setOrder) { | ||
| 1152 | + Utils.showToast('不允许变更过去餐段订单的时间'); | ||
| 1153 | + return; | ||
| 1154 | + } | ||
| 1155 | + | ||
| 950 | // 切换之前的餐段 | 1156 | // 切换之前的餐段 |
| 951 | ddateSoltSelect = currTimeIndex.toString(); | 1157 | ddateSoltSelect = currTimeIndex.toString(); |
| 952 | 1158 | ||
| 953 | DialogUtil.showCalendarDialog(context, dateTime) | 1159 | DialogUtil.showCalendarDialog(context, dateTime) |
| 954 | .then((day) async { | 1160 | .then((day) async { |
| 955 | if (day != null) { | 1161 | if (day != null) { |
| 1162 | + //如果不允许变更订单到过去餐段 | ||
| 1163 | + String createtime = | ||
| 1164 | + detailEntity.ddate.toString() + '000'; | ||
| 1165 | + DateTime reservedate = | ||
| 1166 | + DateTime.fromMillisecondsSinceEpoch( | ||
| 1167 | + int.parse(createtime)); | ||
| 1168 | + if (!_getRealIsReserveOver(reservedate)) { | ||
| 1169 | + //属于未来时间的订单 | ||
| 1170 | + //将要变更的时间是不是过去 | ||
| 1171 | + | ||
| 1172 | + if (DateTime.parse('${day.year}' + | ||
| 1173 | + '-' + | ||
| 1174 | + '${day.month}' + | ||
| 1175 | + '-' + | ||
| 1176 | + '${day.day}' + | ||
| 1177 | + ' 00:00:00') | ||
| 1178 | + .isBefore(DateTime.parse( | ||
| 1179 | + '${reservedate.year}' + | ||
| 1180 | + '-' + | ||
| 1181 | + '${reservedate.month}' + | ||
| 1182 | + '-' + | ||
| 1183 | + '${reservedate.day}' + | ||
| 1184 | + ' 00:00:00'))) { | ||
| 1185 | + Utils.showToast('不允许变更订单到过去餐段'); | ||
| 1186 | + return; | ||
| 1187 | + } | ||
| 1188 | + } | ||
| 956 | createDateText(context, day); | 1189 | createDateText(context, day); |
| 957 | int dateTimeMill = | 1190 | int dateTimeMill = |
| 958 | day.millisecondsSinceEpoch; | 1191 | day.millisecondsSinceEpoch; |
| @@ -21,6 +21,7 @@ class TableItemOrReserve extends StatefulWidget { | @@ -21,6 +21,7 @@ class TableItemOrReserve extends StatefulWidget { | ||
| 21 | final int height; //高度 | 21 | final int height; //高度 |
| 22 | final bool need; | 22 | final bool need; |
| 23 | final List<TableListReserve> selectTables; | 23 | final List<TableListReserve> selectTables; |
| 24 | + final bool addOrder; | ||
| 24 | 25 | ||
| 25 | TableItemOrReserve(this.table, | 26 | TableItemOrReserve(this.table, |
| 26 | {this.onSelected, | 27 | {this.onSelected, |
| @@ -31,7 +32,8 @@ class TableItemOrReserve extends StatefulWidget { | @@ -31,7 +32,8 @@ class TableItemOrReserve extends StatefulWidget { | ||
| 31 | 32 | ||
| 32 | // this.tableMap, | 33 | // this.tableMap, |
| 33 | this.need = true, | 34 | this.need = true, |
| 34 | - this.selectTables}); | 35 | + this.selectTables, |
| 36 | + this.addOrder = true}); | ||
| 35 | 37 | ||
| 36 | @override | 38 | @override |
| 37 | State<StatefulWidget> createState() { | 39 | State<StatefulWidget> createState() { |
| @@ -209,6 +211,10 @@ class TableItemOrReserveState extends State<TableItemOrReserve> { | @@ -209,6 +211,10 @@ class TableItemOrReserveState extends State<TableItemOrReserve> { | ||
| 209 | if (islock && table.signStr != '已预订') { | 211 | if (islock && table.signStr != '已预订') { |
| 210 | return; | 212 | return; |
| 211 | } | 213 | } |
| 214 | + if (widget.fromPage == 'table_manage' && widget.addOrder == false&& table.signStr != '已预订') { | ||
| 215 | + Utils.showToast('不允许新建过去餐段的订单!'); | ||
| 216 | + return; | ||
| 217 | + } | ||
| 212 | setState(() { | 218 | setState(() { |
| 213 | table.selected = !(table.selected ?? false); | 219 | table.selected = !(table.selected ?? false); |
| 214 | }); | 220 | }); |
| @@ -124,6 +124,7 @@ class TableManagerPageState extends State<TableManagerPage> { | @@ -124,6 +124,7 @@ class TableManagerPageState extends State<TableManagerPage> { | ||
| 124 | String smsErro = ''; | 124 | String smsErro = ''; |
| 125 | String showErro = ''; | 125 | String showErro = ''; |
| 126 | String ddateSoltSelect = ''; | 126 | String ddateSoltSelect = ''; |
| 127 | + bool isAddOver = true; | ||
| 127 | // int | 128 | // int |
| 128 | 129 | ||
| 129 | ScrollController _scrollCrl = ScrollController(); | 130 | ScrollController _scrollCrl = ScrollController(); |
| @@ -194,6 +195,7 @@ class TableManagerPageState extends State<TableManagerPage> { | @@ -194,6 +195,7 @@ class TableManagerPageState extends State<TableManagerPage> { | ||
| 194 | personNumList = Utils.getPersonNumList(); | 195 | personNumList = Utils.getPersonNumList(); |
| 195 | 196 | ||
| 196 | WidgetsBinding.instance.addPostFrameCallback((_) { | 197 | WidgetsBinding.instance.addPostFrameCallback((_) { |
| 198 | + getDzSellerConf(); | ||
| 197 | getMealSectionByDay(); | 199 | getMealSectionByDay(); |
| 198 | if (App.sp.containsKey('table_list')) { | 200 | if (App.sp.containsKey('table_list')) { |
| 199 | // //退出清空桌位数据 | 201 | // //退出清空桌位数据 |
| @@ -338,7 +340,8 @@ class TableManagerPageState extends State<TableManagerPage> { | @@ -338,7 +340,8 @@ class TableManagerPageState extends State<TableManagerPage> { | ||
| 338 | currTimeIndex = 5; | 340 | currTimeIndex = 5; |
| 339 | } else { | 341 | } else { |
| 340 | //过了晚市 | 342 | //过了晚市 |
| 341 | - currTimeIndex = int.parse(storeBaseIndoProvider.dayDateData.last.ddateSolt); | 343 | + currTimeIndex = |
| 344 | + int.parse(storeBaseIndoProvider.dayDateData.last.ddateSolt); | ||
| 342 | } | 345 | } |
| 343 | } | 346 | } |
| 344 | 347 | ||
| @@ -369,14 +372,14 @@ class TableManagerPageState extends State<TableManagerPage> { | @@ -369,14 +372,14 @@ class TableManagerPageState extends State<TableManagerPage> { | ||
| 369 | 372 | ||
| 370 | selectDateStr = returnDayDateStr(dateTime); | 373 | selectDateStr = returnDayDateStr(dateTime); |
| 371 | selectWeekAndLunarCalendar = returnWeekAndLunarCalendar(dateTime, context); | 374 | selectWeekAndLunarCalendar = returnWeekAndLunarCalendar(dateTime, context); |
| 372 | - setState(() {}); | ||
| 373 | - bool showLoading = true; | ||
| 374 | - if (tableManagerModel.pageStateOrReserve == PageState.Loading) { | ||
| 375 | - showLoading = false; | ||
| 376 | - } | ||
| 377 | - tableManagerModel.getTableListOrReserve( | ||
| 378 | - context, currTimeIndex, dateTime, selectNumber, | ||
| 379 | - showLoading: showLoading); | 375 | + setState(() {}); |
| 376 | + bool showLoading = true; | ||
| 377 | + if (tableManagerModel.pageStateOrReserve == PageState.Loading) { | ||
| 378 | + showLoading = false; | ||
| 379 | + } | ||
| 380 | + tableManagerModel.getTableListOrReserve( | ||
| 381 | + context, currTimeIndex, dateTime, selectNumber, | ||
| 382 | + showLoading: showLoading); | ||
| 380 | } | 383 | } |
| 381 | 384 | ||
| 382 | String returnWeekAndLunarCalendar(DateTime day, BuildContext context) { | 385 | String returnWeekAndLunarCalendar(DateTime day, BuildContext context) { |
| @@ -603,20 +606,32 @@ class TableManagerPageState extends State<TableManagerPage> { | @@ -603,20 +606,32 @@ class TableManagerPageState extends State<TableManagerPage> { | ||
| 603 | getDzSellerConf() async { | 606 | getDzSellerConf() async { |
| 604 | MarketingCenterProvider marketingCenterProvider = | 607 | MarketingCenterProvider marketingCenterProvider = |
| 605 | Provider.of<MarketingCenterProvider>(context, listen: false); | 608 | Provider.of<MarketingCenterProvider>(context, listen: false); |
| 606 | - bool success = await marketingCenterProvider.getDzSellerConf(context, | ||
| 607 | - showLoading: false); | 609 | + bool success = await marketingCenterProvider.getDzSellerConf(context); |
| 608 | if (success && marketingCenterProvider.dzSellerConfModel != null) { | 610 | if (success && marketingCenterProvider.dzSellerConfModel != null) { |
| 609 | - noticeSms = marketingCenterProvider.dzSellerConfModel.isNotice == '1' | 611 | + isAddOver = marketingCenterProvider.dzSellerConfModel.isAddOver == '1' |
| 610 | ? true | 612 | ? true |
| 611 | : false; | 613 | : false; |
| 612 | - if (!noticeSms) { | ||
| 613 | - _getSmsInfo(context); | ||
| 614 | - } | ||
| 615 | - } else { | ||
| 616 | - _getSmsInfo(context); | 614 | + setState(() {}); |
| 617 | } | 615 | } |
| 618 | } | 616 | } |
| 619 | 617 | ||
| 618 | + // getDzSellerConf() async { | ||
| 619 | + // MarketingCenterProvider marketingCenterProvider = | ||
| 620 | + // Provider.of<MarketingCenterProvider>(context, listen: false); | ||
| 621 | + // bool success = await marketingCenterProvider.getDzSellerConf(context, | ||
| 622 | + // showLoading: false); | ||
| 623 | + // if (success && marketingCenterProvider.dzSellerConfModel != null) { | ||
| 624 | + // noticeSms = marketingCenterProvider.dzSellerConfModel.isNotice == '1' | ||
| 625 | + // ? true | ||
| 626 | + // : false; | ||
| 627 | + // if (!noticeSms) { | ||
| 628 | + // _getSmsInfo(context); | ||
| 629 | + // } | ||
| 630 | + // } else { | ||
| 631 | + // _getSmsInfo(context); | ||
| 632 | + // } | ||
| 633 | + // } | ||
| 634 | + | ||
| 620 | ///获取短信内容 | 635 | ///获取短信内容 |
| 621 | /// | 636 | /// |
| 622 | 637 | ||
| @@ -768,6 +783,46 @@ class TableManagerPageState extends State<TableManagerPage> { | @@ -768,6 +783,46 @@ class TableManagerPageState extends State<TableManagerPage> { | ||
| 768 | 783 | ||
| 769 | /// Generate item number [i]. | 784 | /// Generate item number [i]. |
| 770 | Widget item(int i) { | 785 | Widget item(int i) { |
| 786 | + bool addOrder = true; //默认允许创建 | ||
| 787 | + //如果不允许新建过去的订单,则开始判断 | ||
| 788 | + if (!isAddOver) { | ||
| 789 | + String times; | ||
| 790 | + //找到当前餐段对应的时间段 | ||
| 791 | + if (currTimeIndex == 1) { | ||
| 792 | + times = morning; | ||
| 793 | + } else if (currTimeIndex == 2) { | ||
| 794 | + times = noon; | ||
| 795 | + } else if (currTimeIndex == 3) { | ||
| 796 | + times = night; | ||
| 797 | + } else if (currTimeIndex == 4) { | ||
| 798 | + times = meal1; | ||
| 799 | + } else if (currTimeIndex == 5) { | ||
| 800 | + times = meal2; | ||
| 801 | + } | ||
| 802 | + //组装时间戳 | ||
| 803 | + List<String> datas = times.split('-'); | ||
| 804 | + // DateTime selectStime = DateTime.parse('${dateTimeSelect.year}' + | ||
| 805 | + // '-' + | ||
| 806 | + // '${dateTimeSelect.month}' + | ||
| 807 | + // '-' + | ||
| 808 | + // '${dateTimeSelect.day}' + | ||
| 809 | + // ' ${datas[0]}:00'); //选中餐段开始时间戳 | ||
| 810 | + DateTime selectEtime = DateTime.parse('${dateTimeSelect.year}' + | ||
| 811 | + '-' + | ||
| 812 | + '${dateTimeSelect.month}' + | ||
| 813 | + '-' + | ||
| 814 | + '${dateTimeSelect.day}' + | ||
| 815 | + ' ${datas[1]}:00'); //选中餐段结束时间戳 | ||
| 816 | + // 过去的餐段界定 | ||
| 817 | + if (selectEtime.isBefore(DateTime.now())) { | ||
| 818 | +// 属于过去餐段 | ||
| 819 | + addOrder = false; | ||
| 820 | + } else { | ||
| 821 | + // 属于未来餐段 | ||
| 822 | + addOrder = true; | ||
| 823 | + } | ||
| 824 | + } | ||
| 825 | + | ||
| 771 | return GridView.builder( | 826 | return GridView.builder( |
| 772 | // controller: _areaController, | 827 | // controller: _areaController, |
| 773 | // physics: NeverScrollableScrollPhysics(), | 828 | // physics: NeverScrollableScrollPhysics(), |
| @@ -802,7 +857,7 @@ class TableManagerPageState extends State<TableManagerPage> { | @@ -802,7 +857,7 @@ class TableManagerPageState extends State<TableManagerPage> { | ||
| 802 | fromPage: 'table_manage', | 857 | fromPage: 'table_manage', |
| 803 | canSelected: true, | 858 | canSelected: true, |
| 804 | selectTables: tableManagerModel.selectTablesOrReserve, | 859 | selectTables: tableManagerModel.selectTablesOrReserve, |
| 805 | - onSelected: (table) { | 860 | + addOrder:addOrder ,onSelected: (table) { |
| 806 | if (table.signStr == '已预订') { | 861 | if (table.signStr == '已预订') { |
| 807 | if (table.sign == '10') { | 862 | if (table.sign == '10') { |
| 808 | //宴会订单 | 863 | //宴会订单 |
| @@ -3866,7 +3921,7 @@ class TableManagerPageState extends State<TableManagerPage> { | @@ -3866,7 +3921,7 @@ class TableManagerPageState extends State<TableManagerPage> { | ||
| 3866 | .then((day) async { | 3921 | .then((day) async { |
| 3867 | if (day != null) { | 3922 | if (day != null) { |
| 3868 | createDateText1(context, day); | 3923 | createDateText1(context, day); |
| 3869 | - getMealSectionByDay(needInit: false); | 3924 | + getMealSectionByDay(needInit: false); |
| 3870 | bool success = | 3925 | bool success = |
| 3871 | await tableManagerModel.getTableListOrReserve( | 3926 | await tableManagerModel.getTableListOrReserve( |
| 3872 | context, | 3927 | context, |
| @@ -3898,8 +3953,9 @@ class TableManagerPageState extends State<TableManagerPage> { | @@ -3898,8 +3953,9 @@ class TableManagerPageState extends State<TableManagerPage> { | ||
| 3898 | }, | 3953 | }, |
| 3899 | child: Container( | 3954 | child: Container( |
| 3900 | // height: w(35), | 3955 | // height: w(35), |
| 3901 | - height:(ScreenUtil().screenWidth-w(10)-w(18))/4*0.6, | ||
| 3902 | - | 3956 | + height: (ScreenUtil().screenWidth - w(10) - w(18)) / |
| 3957 | + 4 * | ||
| 3958 | + 0.6, | ||
| 3903 | padding: EdgeInsets.symmetric( | 3959 | padding: EdgeInsets.symmetric( |
| 3904 | horizontal: w(10), | 3960 | horizontal: w(10), |
| 3905 | // vertical: ScreenUtil().setWidth(20) | 3961 | // vertical: ScreenUtil().setWidth(20) |
| @@ -3949,7 +4005,8 @@ class TableManagerPageState extends State<TableManagerPage> { | @@ -3949,7 +4005,8 @@ class TableManagerPageState extends State<TableManagerPage> { | ||
| 3949 | // ? ScreenUtil().setWidth(300) + ScreenUtil().setWidth(4) | 4005 | // ? ScreenUtil().setWidth(300) + ScreenUtil().setWidth(4) |
| 3950 | // : ScreenUtil().setWidth(300), | 4006 | // : ScreenUtil().setWidth(300), |
| 3951 | // height: w(28), | 4007 | // height: w(28), |
| 3952 | - height:(ScreenUtil().screenWidth-w(10)-w(18))/4*0.4, | 4008 | + height: |
| 4009 | + (ScreenUtil().screenWidth - w(10) - w(18)) / 4 * 0.4, | ||
| 3953 | decoration: BoxDecoration( | 4010 | decoration: BoxDecoration( |
| 3954 | color: Colors.transparent, | 4011 | color: Colors.transparent, |
| 3955 | borderRadius: BorderRadius.only( | 4012 | borderRadius: BorderRadius.only( |
-
Please register or login to post a comment