Commit 372d9bd8baf2e315cbd4a3ef49c247ad231d2337

Authored by weixin_45529955
1 parent 82c2b661

宴会的桌子,有被合并或者合并情况,相关的桌子上锁

import 'dart:ffi';
import 'package:common_utils/common_utils.dart';
... ... @@ -139,11 +138,11 @@ class SelectTableFPageOrReserveState extends State<SelectTableFPageOrReserve> {
horizontal: ScreenUtil().setWidth(10)),
shrinkWrap: true,
itemCount:
tableManagerModel.tablesOrReserveDataShow![i].tableList!.length == 0
? 1
: tableManagerModel.tablesOrReserveDataShow![i].tableList!.length +
1,
itemCount: tableManagerModel
.tablesOrReserveDataShow![i].tableList!.length ==
0
? 1
: tableManagerModel.tablesOrReserveDataShow![i].tableList!.length + 1,
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 4,
childAspectRatio: 1,
... ... @@ -153,7 +152,8 @@ class SelectTableFPageOrReserveState extends State<SelectTableFPageOrReserve> {
itemBuilder: (BuildContext context, int index) {
if (index ==
tableManagerModel.tablesOrReserveDataShow![i].tableList!.length ||
tableManagerModel
.tablesOrReserveDataShow![i].tableList!.length ||
tableManagerModel.tablesOrReserveDataShow![i].tableList!.length ==
0) {
return InkWell(
... ... @@ -242,6 +242,7 @@ class SelectTableFPageOrReserveState extends State<SelectTableFPageOrReserve> {
return TableItemOrReserve(table,
canSelected: true,
selectTables: tableManagerModel.selectTablesOrReserve,
banquetListTids: tableManagerModel.banquetListTids,
onSelected: (tableListReserve) {
if (widget.fromPage == 'tablePhoto') {
for (TableListReseveSunModel item
... ... @@ -277,7 +278,7 @@ class SelectTableFPageOrReserveState extends State<SelectTableFPageOrReserve> {
selectNum--;
tableManagerModel.selectTablesOrReserve
.removeWhere((t) => t.id == table.id);
tableManagerModel.tablesOrReserveDataShow!
tableManagerModel.tablesOrReserveDataShow!
.forEach((element) {
element.tableList!.forEach((element1) {
if (element1.id == table.id) {
... ... @@ -375,8 +376,8 @@ class SelectTableFPageOrReserveState extends State<SelectTableFPageOrReserve> {
//添加区域
bool success =
await _chooseTableModel
.addTableAreas(
context, value as String?);
.addTableAreas(context,
value as String?);
print(success);
if (success) {
Utils.showToast('添加成功!');
... ... @@ -398,7 +399,6 @@ class SelectTableFPageOrReserveState extends State<SelectTableFPageOrReserve> {
// context, params,
// needLoading: false);
// initData();
}
});
},
... ... @@ -445,8 +445,8 @@ class SelectTableFPageOrReserveState extends State<SelectTableFPageOrReserve> {
} else {
return AreaItemTableOrReserve(
tableManagerModel
.tablesOrReserveDataShow![index],
(area) {
.tablesOrReserveDataShow![
index], (area) {
tableManagerModel
.tablesOrReserveDataShow!
.forEach((element) {
... ...
... ... @@ -22,6 +22,7 @@ class TableItemOrReserve extends StatefulWidget {
final bool need;
final List<TableListReserve>? selectTables;
final bool addOrder;
final List<String?> banquetListTids;
TableItemOrReserve(this.table,
{this.onSelected,
... ... @@ -33,7 +34,8 @@ class TableItemOrReserve extends StatefulWidget {
// this.tableMap,
this.need = true,
this.selectTables,
this.addOrder = true});
this.addOrder = true,
required this.banquetListTids});
@override
State<StatefulWidget> createState() {
... ... @@ -150,6 +152,13 @@ class TableItemOrReserveState extends State<TableItemOrReserve> {
});
}
List banquetListTids = []; //被选中的桌子ids
if (widget.banquetListTids != null) {
widget.banquetListTids.forEach((element) {
banquetListTids.add(element);
});
}
// bool islock = (table.isLock == '1' &&
// widget.tableMap.containsKey(table.lockTid)) ||
// (table.isMerge == '1' &&
... ... @@ -163,9 +172,11 @@ class TableItemOrReserveState extends State<TableItemOrReserve> {
// bool islock = table.reserveLock == '1';
bool islock = table.reserveLock == '1' ||
(table.isLock == '1' && selectTids.contains(table.lockTid)) ||
(table.isMerge == '1' && haveSame(selectTids, table.tids.split(','))) ||
(table.isLock == '1' && banquetListTids.contains(table.lockTid)) ||
(table.isMerge == '1' &&
haveSame(
selectTids,
banquetListTids,
table.tids.split(
','))); //真正上锁*******被合并桌子上锁:合并的桌子被预订&&islock == '1' || 合并桌子上锁:被合并的桌子被预订&&ismerge == '1'
return GestureDetector(
... ...
... ... @@ -880,7 +880,9 @@ class TableManagerPageState extends State<TableManagerPage> {
fromPage: 'table_manage',
canSelected: true,
selectTables: tableManagerModel!.selectTablesOrReserve,
addOrder: isRealAddOver, onSelected: (table) {
addOrder: isRealAddOver,
banquetListTids: tableManagerModel!.banquetListTids,
onSelected: (table) {
if (table.signStr == '已预订') {
if (table.sign == '10') {
//宴会订单
... ...
... ... @@ -89,6 +89,7 @@ class TableManagerModelOrReserve with ChangeNotifier {
List<TableListReserve> selectTablesOrReserve = []; //选择的桌位
List<SellerHideConfiSunModel>? sellerHideConfiData = [];
final List<String?> banquetListTids = []; //有宴会的桌子ids 集合
TableManagerModelOrReserve() {
// print('fdsfs');
... ... @@ -235,7 +236,8 @@ class TableManagerModelOrReserve with ChangeNotifier {
//n存在,并且传入的日期在今天之前的n天之外
if (config.length == 3) {
DateTime date = DateTime(datetime.year, datetime.month, datetime.day);
DateTime date =
DateTime(datetime.year, datetime.month, datetime.day);
DateTime dateToday = DateTime(DateTime.now().year,
DateTime.now().month, DateTime.now().day);
... ... @@ -329,11 +331,16 @@ class TableManagerModelOrReserve with ChangeNotifier {
} else {
List<TableListReserve> tableListOrReserveDataAll =
[]; //桌位页面数据接口重组 --全部
banquetListTids.clear(); //使用前清空数据
tablesOrReserveData!.forEach((element) {
element.select = false;
tableListOrReserveDataAll.addAll(element.tableList!);
element.tableList?.forEach((table) {
if (table.banquetList != null && table.banquetList!.length > 0) {
banquetListTids.add(table.id);
}
});
});
tablesOrReserveDataShow!.forEach((element) {
element.select = false;
... ...