Commit c01d38a9f49c7ca20fd06b29c72b72e6f0874649

Authored by wdn127929
1 parent c6d82706

hhhhh

... ... @@ -73,6 +73,7 @@ class GetDzSellerConfSunModel {
String? isAddOver; //是否允许新建过去订单
String? isSetOver; //是否允许修改过去订单
String? isReserveOver; //是否允许变更订单到过去餐段
String? isReserveCancel; //允许取消过去餐段的订单
String? cancelDay;
String? cancelShopowner;
... ... @@ -117,6 +118,7 @@ class GetDzSellerConfSunModel {
this.isAddOver,
this.isSetOver,
this.isReserveOver,
this.isReserveCancel,
this.cancelDay,
this.cancelShopowner,
this.cancelManager,
... ... @@ -174,6 +176,7 @@ class GetDzSellerConfSunModel {
isAddOver = json['is_add_over'];
isSetOver = json['is_set_over'];
isReserveOver = json['is_reserve_over'];
isReserveCancel = json['is_reserve_cancel'];
cancelDay = json['temp_cancel_day'] ?? '5';
cancelShopowner = json['temp_for_shopowner'] ?? '1';
cancelManager = json['temp_for_manager'] ?? '1';
... ... @@ -222,6 +225,7 @@ class GetDzSellerConfSunModel {
data['is_add_over'] = this.isAddOver;
data['is_set_over'] = this.isSetOver;
data['is_reserve_over'] = this.isReserveOver;
data['is_reserve_cancel'] = this.isReserveCancel;
data['temp_cancel_day'] = this.cancelDay;
data['temp_for_shopowner'] = this.cancelShopowner;
... ...
... ... @@ -50,6 +50,7 @@ class NoteBookOnlySunModel {
String? isSetDdate;
String? ddateSolt;
String? mname;
String? mdate;
String? status;
String? action;
String? type;
... ... @@ -178,6 +179,7 @@ class NoteBookOnlySunModel {
this.isSetDdate,
this.ddateSolt,
this.mname,
this.mdate,
this.status,
this.action,
this.type,
... ... @@ -240,6 +242,10 @@ class NoteBookOnlySunModel {
if (json["mname"] is String) {
mname = json["mname"];
}
if (json["mdate"] is String) {
mdate = json["mdate"];
}
if (json["status"] is String) {
status = json["status"];
}
... ... @@ -302,6 +308,7 @@ class NoteBookOnlySunModel {
_data["is_set_ddate"] = isSetDdate;
_data["ddate_solt"] = ddateSolt;
_data["mname"] = mname;
_data["mdate"] = mdate;
_data["status"] = status;
_data["action"] = action;
_data["type"] = type;
... ...
... ... @@ -152,6 +152,8 @@ class NotebookDetailPageState extends State<NotebookDetailPage>
bool cancelCan = true;
bool cancelOld = true;
late StoreBaseIndoProvider storeBaseIndoProvider;
OverlayEntry? overlayEntry;
... ... @@ -525,6 +527,45 @@ class NotebookDetailPageState extends State<NotebookDetailPage>
setState(() {});
}
_getIsReserveCancel(bool isReserveCancel) {
//判断时间是否可变更
bool reserveCancel = true; //默认允许变更过去餐段订单的时间
//如果不允许变更过去餐段订单的时间,则开始判断
//连个条件同时成立: 1.订单的时间是过去 2. 时间改变
if (!isReserveCancel) {
//找到当前餐段对应的时间段
String? times =
detailModel!.detailModelAllSunModel!.mdate ?? '00:00-00:00';
//组装时间戳
List<String> datas = times.split('-');
// DateTime selectStime = DateTime.parse('${dateTimeSelect.year}' +
// '-' +
// '${dateTimeSelect.month}' +
// '-' +
// '${dateTimeSelect.day}' +
// ' ${datas[0]}:00'); //选中餐段开始时间戳
DateTime dateTime = DateTime.fromMillisecondsSinceEpoch(
int.parse(detailModel!.detailModelAllSunModel!.ddate!) * 1000);
DateTime selectEtime = DateTime.parse('${dateTime.year}' +
'-' +
Utils.addZeroNumber(dateTime.month) +
'-' +
Utils.addZeroNumber(dateTime.day) +
' ${datas[1]}:00'); //选中餐段结束时间戳
// 过去的餐段界定
if (selectEtime.isBefore(DateTime.now())) {
// 属于过去餐段
reserveCancel = false;
} else {
// 属于未来餐段
reserveCancel = true;
}
}
return reserveCancel;
}
///删除订金
_delReserveDepositByid(String? id) async {
Map<String, String?> params = {
... ... @@ -1000,6 +1041,13 @@ class NotebookDetailPageState extends State<NotebookDetailPage>
marketingCenterProvider.dzSellerConfModel!.cancelOther == '1'
? true
: false;
bool isReserveCancel =
marketingCenterProvider.dzSellerConfModel!.isReserveCancel == '1'
? true
: false;
cancelOld = _getIsReserveCancel(isReserveCancel);
String? roleName =
Provider.of<UserModel>(context, listen: false).user!.role_name;
if (roleName == '管理员' || roleName == '前台') {
... ... @@ -4366,30 +4414,8 @@ class NotebookDetailPageState extends State<NotebookDetailPage>
? detailModel!.detailModelAllSunModel!.phone
: Utils.starPhone(detailModel!.detailModelAllSunModel!.phone!),
textColor: MyColours.color_515151,
textColorR:(Utils.getAuthority(
context,
'订座详情-电话') ||
widget.uid ==
userModel
.user!
.openid ||
(userModel.user!.role_name == '店长' &&
detailModel!.detailModelAllSunModel!.roleName !=
'管理员' &&
detailModel!.detailModelAllSunModel!.roleName !=
'店长'))? MyColours.color_438E93:MyColours.color_999999,
imageName:(Utils.getAuthority(
context,
'订座详情-电话') ||
widget.uid ==
userModel
.user!
.openid ||
(userModel.user!.role_name == '店长' &&
detailModel!.detailModelAllSunModel!.roleName !=
'管理员' &&
detailModel!.detailModelAllSunModel!.roleName !=
'店长'))? 'phone_detail':'h_call')),
textColorR: (Utils.getAuthority(context, '订座详情-电话') || widget.uid == userModel.user!.openid || (userModel.user!.role_name == '店长' && detailModel!.detailModelAllSunModel!.roleName != '管理员' && detailModel!.detailModelAllSunModel!.roleName != '店长')) ? MyColours.color_438E93 : MyColours.color_999999,
imageName: (Utils.getAuthority(context, '订座详情-电话') || widget.uid == userModel.user!.openid || (userModel.user!.role_name == '店长' && detailModel!.detailModelAllSunModel!.roleName != '管理员' && detailModel!.detailModelAllSunModel!.roleName != '店长')) ? 'phone_detail' : 'h_call')),
RowMultiText("专属经理",
'${detailModel!.detailModelAllSunModel!.placeOrderName ?? ''}',
textColor: MyColours
... ... @@ -5480,16 +5506,22 @@ class NotebookDetailPageState extends State<NotebookDetailPage>
.roleName !=
'店长')) {
//拥有权限的前提下
// 是否可以临餐取消
if (cancelCan) {
_showCancelWidget(
context,
detailModel!
.detailModelAllSunModel!
.phone);
//拥有允许取消过去餐段的订单
if (cancelOld) {
// 是否可以临餐取消
if (cancelCan) {
_showCancelWidget(
context,
detailModel!
.detailModelAllSunModel!
.phone);
} else {
Utils.showToast(
'临餐不可取消预订!请与前台联系取消。');
}
} else {
Utils.showToast(
'临餐不可取消预订!请与前台联系取消。');
'过去餐段的订单不可取消预订!请与前台联系取消。');
}
}
},
... ...
... ... @@ -118,6 +118,8 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
final XgFlutterPlugin tpush = new XgFlutterPlugin();
//实现监听
Future<dynamic> platformCallHandler(MethodCall call) async {
switch (call.method) {
... ... @@ -1798,6 +1800,82 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
_pageController!.jumpToPage(index);
});
}
if(_currIndex != 1){
pages = [];
pages
// ..add(ChangeNotifierProvider<HomeEnterModel>(
// create: (_) => HomeEnterModel(),
// child: ChangeNotifierProvider<RemarkManagerModel>(
// create: (_) => RemarkManagerModel(),
// child: SafeArea(child: HomeEnterPage()),
// )))
..add(SafeArea(
child: MessagePage(),
))
// ..add(ChangeNotifierProvider<EnterModel>(
// create: (_) => EnterModel(),
// child: SafeArea(child: EnterPage(detailEntity:NotebookDetail.def(context),rid: "-1",)),
// ))
..add(ChangeNotifierProvider<NoteBookModel>(
create: (_) => NoteBookModel(),
child: ChangeNotifierProvider<MarketingCenterProvider>(
create: (_) => MarketingCenterProvider(),
child: ChangeNotifierProvider<NotebookDetailModel>(
create: (_) => NotebookDetailModel(),
child: ChangeNotifierProvider<CollectStoreProvider>(
create: (_) => CollectStoreProvider(),
child: ChangeNotifierProvider<StoreBaseIndoProvider>(
create: (_) => StoreBaseIndoProvider(),
child: SafeArea(
child: NoteBookPage(
)))),
))))
..add(ChangeNotifierProvider<MyModel>(
create: (_) => MyModel(),
child: ChangeNotifierProvider<BaseIndoProvider>(
create: (_) => BaseIndoProvider(),
child: ChangeNotifierProvider<TableManagerModelOrReserve>(
create: (_) => TableManagerModelOrReserve(),
child: ChangeNotifierProvider<RemarkManagerModel>(
create: (_) => RemarkManagerModel(),
child: ChangeNotifierProvider<StoreBaseIndoProvider>(
create: (_) => StoreBaseIndoProvider(),
child: ChangeNotifierProvider<CustomerProvider>(
create: (_) => CustomerProvider(),
child:
ChangeNotifierProvider<MarketingCenterProvider>(
create: (_) => MarketingCenterProvider(),
child: ChangeNotifierProvider<SmsModel>(
create: (_) => SmsModel(),
child: ChangeNotifierProvider<
PersonnelProvider>(
create: (_) => PersonnelProvider(),
child: TableManagerPage()))))))),
)))
..add(
ChangeNotifierProvider<FeastModel>(
create: (_) => FeastModel(), child: FeastPage()),
)
..add(ChangeNotifierProvider<MyModel>(
create: (_) => MyModel(),
child: ChangeNotifierProvider<StoreBaseIndoProvider>(
create: (_) => StoreBaseIndoProvider(),
child: ChangeNotifierProvider<CollectStoreProvider>(
create: (_) => CollectStoreProvider(),
child: ChangeNotifierProvider<CustomerProvider>(
create: (_) => CustomerProvider(),
child: ChangeNotifierProvider<UserModel>(
create: (_) => UserModel(),
child: ChangeNotifierProvider<PersonnelProvider>(
create: (_) => PersonnelProvider(),
child: MyPage())))),
)));
setState(() {
});
}
if (_currIndex == 4) {
Utils.changeStatusColor(color: MyColours.color_199095);
} else {
... ...
... ... @@ -67,6 +67,10 @@ class _CustomerSettingPageState extends State<CustomerSettingPage> {
marketingCenterProvider.dzSellerConfModel!.isReserveOver == '1'
? true
: false;
customerProvider.isReserveCancel =
marketingCenterProvider.dzSellerConfModel!.isReserveCancel == '1'
? true
: false;
customerProvider.ispcname =
marketingCenterProvider.dzSellerConfModel!.pcNotName == '1'
... ... @@ -126,6 +130,7 @@ class _CustomerSettingPageState extends State<CustomerSettingPage> {
"is_add_over": customerProvider.isAddOver ? '1' : '0',
"is_set_over": customerProvider.isSetOver ? '1' : '0',
"is_reserve_over": customerProvider.isReserveOver ? '1' : '0',
"is_reserve_cancel": customerProvider.isReserveCancel ? '1' : '0',
'temp_cancel_day': controllerDay.text,
'temp_for_shopowner':
customerProvider.cancelOrderdayShopowner ? '1' : '0',
... ... @@ -610,6 +615,42 @@ class _CustomerSettingPageState extends State<CustomerSettingPage> {
w(1),
color: MyColours.color_E7E7E7,
)),
VEmptyView(24),
InkWell(
onTap: () {
setState(() {
customerProvider.isReserveCancel =
!customerProvider.isReserveCancel;
});
},
child: Container(
padding: EdgeInsets.symmetric(
vertical: w(8), horizontal: w(14)),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Text('允许取消过去餐段的订单',
style: TextStyle(
color: MyColours.color_515151,
fontSize: ScreenUtil().setSp(28))),
Image.asset(
customerProvider.isReserveCancel
? Utils.getImgPath('swich_on')
: Utils.getImgPath('swich_off'),
width: ScreenUtil().setWidth(88),
// height: ScreenUtil().setWidth(82),
),
],
),
)),
Padding(
padding: EdgeInsets.only(left: w(14), right: w(10)),
child: MyDivider(
double.infinity,
w(1),
color: MyColours.color_E7E7E7,
)),
VEmptyView(48),
Row(
children: [
... ...
import 'dart:convert';
import 'dart:ui';
... ... @@ -29,10 +28,26 @@ import '../../provider/marketing_center_provider.dart';
class NoteBookItemF extends StatefulWidget {
final num index;
final NoteBookOnlySunModel notebook;
final GestureTapCallback onTap;
final bool sellerPreserve;
final GestureTapCallback onTap;
NoteBookItemF(this.notebook, this.index,this.sellerPreserve, this.onTap);
final String? cancelDay;
final bool cancelShopowner;
final bool cancelManager;
final bool cancelOther;
final bool isReserveCancel;
NoteBookItemF(
this.index,
this.notebook,
this.sellerPreserve,
this.onTap,
this.cancelDay,
this.cancelShopowner,
this.cancelManager,
this.cancelOther,
this.isReserveCancel);
@override
State<StatefulWidget> createState() {
... ... @@ -42,8 +57,8 @@ class NoteBookItemF extends StatefulWidget {
}
class NoteBookItemFState extends State<NoteBookItemF>
// with SingleTickerProviderStateMixin
{
// with SingleTickerProviderStateMixin
{
// bool _large = false;
List cancelReasonList = [];
bool isShowTF = false;
... ... @@ -438,6 +453,44 @@ class NoteBookItemFState extends State<NoteBookItemF>
});
}
_getIsReserveCancel(bool isReserveCancel) {
//判断时间是否可变更
bool reserveCancel = true; //默认允许变更过去餐段订单的时间
//如果不允许变更过去餐段订单的时间,则开始判断
//连个条件同时成立: 1.订单的时间是过去 2. 时间改变
if (!isReserveCancel) {
//找到当前餐段对应的时间段
String? times = widget.notebook.mdate ?? '00:00-00:00';
//组装时间戳
List<String> datas = times.split('-');
// DateTime selectStime = DateTime.parse('${dateTimeSelect.year}' +
// '-' +
// '${dateTimeSelect.month}' +
// '-' +
// '${dateTimeSelect.day}' +
// ' ${datas[0]}:00'); //选中餐段开始时间戳
DateTime dateTime = DateTime.fromMillisecondsSinceEpoch(
int.parse(widget.notebook.ddate!) * 1000);
DateTime selectEtime = DateTime.parse('${dateTime.year}' +
'-' +
Utils.addZeroNumber(dateTime.month) +
'-' +
Utils.addZeroNumber(dateTime.day) +
' ${datas[1]}:00'); //选中餐段结束时间戳
// 过去的餐段界定
if (selectEtime.isBefore(DateTime.now())) {
// 属于过去餐段
reserveCancel = false;
} else {
// 属于未来餐段
reserveCancel = true;
}
}
return reserveCancel;
}
@override
Widget build(BuildContext context) {
// TODO: implement build
... ... @@ -505,7 +558,6 @@ class NoteBookItemFState extends State<NoteBookItemF>
//离店和取消预订
widthBtn = 208.0; //一个按钮
} else {
if (!Utils.getAuthority(context, '取消预订') ||
(!Utils.getAuthority(context, '取消预订') &&
... ... @@ -544,7 +596,7 @@ class NoteBookItemFState extends State<NoteBookItemF>
width: ScreenUtil().setWidth(82 * 2),
alignment: Alignment.center,
child: Text(
notebook.tablename??'',
notebook.tablename ?? '',
maxLines: 1,
overflow: TextOverflow.ellipsis,
style: TextStyle(
... ... @@ -693,7 +745,9 @@ class NoteBookItemFState extends State<NoteBookItemF>
: HEmptyView(8),
(notebook.rnameStr == '' &&
notebook.phoneStr!.isEmpty) ||
notebook.label == null || notebook.label == "" ||!widget.sellerPreserve
notebook.label == null ||
notebook.label == "" ||
!widget.sellerPreserve
? SizedBox()
: Container(
padding: EdgeInsets.symmetric(
... ... @@ -905,8 +959,135 @@ class NoteBookItemFState extends State<NoteBookItemF>
userModel.user!.openid))
InkWell(
onTap: () {
_showCancelWidget(
context, notebook.phone);
bool isReserveCancel =
_getIsReserveCancel(widget
.isReserveCancel);
if (isReserveCancel) {
bool cancelCan = false;
DateTime dateTime = DateTime
.fromMillisecondsSinceEpoch(
int.parse(widget
.notebook
.ddate!) *
1000);
String roleName =
Provider.of<UserModel>(
context,
listen:
false)
.user!
.role_name ??
'';
if (roleName == '管理员' ||
roleName == '前台') {
cancelCan = true;
} else if (roleName ==
'店长') {
if (widget
.cancelShopowner) {
cancelCan = true;
} else {
//临餐不可以取消
//比较相差的天数
int differenceSeconds =
dateTime
.difference(
DateTime
.now())
.inSeconds;
if (int.parse(widget
.cancelDay!) !=
0 &&
differenceSeconds <
int.parse(widget
.cancelDay!) *
24 *
60 *
60) {
// 临餐时间内
cancelCan = false;
} else {
cancelCan = true;
}
}
} else if (roleName ==
'客户经理') {
if (widget
.cancelManager) {
cancelCan = true;
} else {
//临餐不可以取消
//比较相差的天数
int differenceSeconds =
dateTime
.difference(
DateTime
.now())
.inSeconds;
if (int.parse(widget
.cancelDay!) !=
0 &&
differenceSeconds <
int.parse(widget
.cancelDay!) *
24 *
60 *
60) {
// 临餐时间内
cancelCan = false;
} else {
cancelCan = true;
}
}
} else {
if (widget.cancelOther) {
cancelCan = true;
} else {
//临餐不可以取消
//比较相差的天数
int differenceSeconds =
dateTime
.difference(
DateTime
.now())
.inSeconds;
if (int.parse(widget
.cancelDay!) !=
0 &&
differenceSeconds <
int.parse(widget
.cancelDay!) *
24 *
60 *
60) {
// 临餐时间内
cancelCan = false;
} else {
cancelCan = true;
}
}
}
if (cancelCan) {
_showCancelWidget(context,
notebook.phone);
} else {
Utils.showToast(
'临餐不可取消预订!请与前台联系取消。');
}
} else {
Utils.showToast(
'过去餐段的订单不可取消预订!请与前台联系取消。');
}
},
child: Text(
'取消预订',
... ... @@ -928,7 +1109,8 @@ class NoteBookItemFState extends State<NoteBookItemF>
: Image.asset(
Utils.getImgPath(canDo &&
(Utils.getAuthority(context, '到店') ||
notebook.uid == userModel.user!.openid)
notebook.uid ==
userModel.user!.openid)
? 'ordered_open'
: 'ordered_off'),
width: ScreenUtil().setWidth(80),
... ...
... ... @@ -40,9 +40,25 @@ import '../../utils/screen_util.dart';
class NoteBookItemSimple extends StatefulWidget {
final num index;
final NoteBookOnlySunModel notebook;
final GestureTapCallback onTap;
NoteBookItemSimple(this.notebook, this.index, this.onTap);
final String? cancelDay;
final bool cancelShopowner;
final bool cancelManager;
final bool cancelOther;
final bool isReserveCancel;
NoteBookItemSimple(
this.index,
this.notebook,
this.onTap,
this.cancelDay,
this.cancelShopowner,
this.cancelManager,
this.cancelOther,
this.isReserveCancel);
@override
State<StatefulWidget> createState() {
... ... @@ -447,6 +463,44 @@ class NoteBookItemSimpleState extends State<NoteBookItemSimple>
});
}
_getIsReserveCancel(bool isReserveCancel) {
//判断时间是否可变更
bool reserveCancel = true; //默认允许变更过去餐段订单的时间
//如果不允许变更过去餐段订单的时间,则开始判断
//连个条件同时成立: 1.订单的时间是过去 2. 时间改变
if (!isReserveCancel) {
//找到当前餐段对应的时间段
String? times = widget.notebook.mdate ?? '00:00-00:00';
//组装时间戳
List<String> datas = times.split('-');
// DateTime selectStime = DateTime.parse('${dateTimeSelect.year}' +
// '-' +
// '${dateTimeSelect.month}' +
// '-' +
// '${dateTimeSelect.day}' +
// ' ${datas[0]}:00'); //选中餐段开始时间戳
DateTime dateTime = DateTime.fromMillisecondsSinceEpoch(
int.parse(widget.notebook.ddate!) * 1000);
DateTime selectEtime = DateTime.parse('${dateTime.year}' +
'-' +
Utils.addZeroNumber(dateTime.month) +
'-' +
Utils.addZeroNumber(dateTime.day) +
' ${datas[1]}:00'); //选中餐段结束时间戳
// 过去的餐段界定
if (selectEtime.isBefore(DateTime.now())) {
// 属于过去餐段
reserveCancel = false;
} else {
// 属于未来餐段
reserveCancel = true;
}
}
return reserveCancel;
}
@override
Widget build(BuildContext context) {
// TODO: implement build
... ... @@ -868,8 +922,135 @@ class NoteBookItemSimpleState extends State<NoteBookItemSimple>
userModel.user!.openid))
InkWell(
onTap: () {
_showCancelWidget(
context, notebook.phone);
bool isReserveCancel =
_getIsReserveCancel(widget
.isReserveCancel);
if (isReserveCancel) {
bool cancelCan = false;
DateTime dateTime = DateTime
.fromMillisecondsSinceEpoch(
int.parse(widget
.notebook
.ddate!) *
1000);
String roleName =
Provider.of<UserModel>(
context,
listen:
false)
.user!
.role_name ??
'';
if (roleName == '管理员' ||
roleName == '前台') {
cancelCan = true;
} else if (roleName ==
'店长') {
if (widget
.cancelShopowner) {
cancelCan = true;
} else {
//临餐不可以取消
//比较相差的天数
int differenceSeconds =
dateTime
.difference(
DateTime
.now())
.inSeconds;
if (int.parse(widget
.cancelDay!) !=
0 &&
differenceSeconds <
int.parse(widget
.cancelDay!) *
24 *
60 *
60) {
// 临餐时间内
cancelCan = false;
} else {
cancelCan = true;
}
}
} else if (roleName ==
'客户经理') {
if (widget
.cancelManager) {
cancelCan = true;
} else {
//临餐不可以取消
//比较相差的天数
int differenceSeconds =
dateTime
.difference(
DateTime
.now())
.inSeconds;
if (int.parse(widget
.cancelDay!) !=
0 &&
differenceSeconds <
int.parse(widget
.cancelDay!) *
24 *
60 *
60) {
// 临餐时间内
cancelCan = false;
} else {
cancelCan = true;
}
}
} else {
if (widget.cancelOther) {
cancelCan = true;
} else {
//临餐不可以取消
//比较相差的天数
int differenceSeconds =
dateTime
.difference(
DateTime
.now())
.inSeconds;
if (int.parse(widget
.cancelDay!) !=
0 &&
differenceSeconds <
int.parse(widget
.cancelDay!) *
24 *
60 *
60) {
// 临餐时间内
cancelCan = false;
} else {
cancelCan = true;
}
}
}
if (cancelCan) {
_showCancelWidget(context,
notebook.phone);
} else {
Utils.showToast(
'临餐不可取消预订!请与前台联系取消。');
}
} else {
Utils.showToast(
'过去餐段的订单不可取消预订!请与前台联系取消。');
}
},
child: Text(
'取消预订',
... ...
... ... @@ -29,6 +29,7 @@ import 'package:table_calendar/table_calendar.dart';
import '../../models/note_book_only_model.dart';
import '../../provider/collect_store_provider.dart';
import '../../provider/marketing_center_provider.dart';
import '../../provider/store_base_info_provider.dart';
import '../../provider/table_manage_model.dart';
import '../../utils/screen_util.dart';
... ... @@ -77,11 +78,33 @@ class NoteBookPageState extends State<NoteBookPage> {
late StoreBaseIndoProvider storeBaseIndoProvider;
String ddateSoltSelect = ''; //切换日期之前的餐段
String? cancelDay;
bool cancelShopowner = false;
bool cancelManager = false;
bool cancelOther = false;
bool isReserveCancel = false;
DateTime? date;
String? solt;
// String? roleName =
// Provider.of<UserModel>(context, listen: false).user!.role_name;
@override
void initState() {
// TODO: implement initState
super.initState();
date = widget.date;
solt = widget.solt;
// tabIndex = widget.tabIndex;
if (widget.tabIndex == 1) {
isall = false;
... ... @@ -95,7 +118,7 @@ class NoteBookPageState extends State<NoteBookPage> {
});
startingDayOfWeek = _initStartingDayOfWeek();
// dateTimeNow = DateTime.now();
dateTimeNow = widget.date != null ? widget.date : DateTime.now();
dateTimeNow = date != null ? date : DateTime.now();
Duration days = dateTimeNow!.difference(DateTime.now());
print(days);
... ... @@ -108,8 +131,8 @@ class NoteBookPageState extends State<NoteBookPage> {
WidgetsBinding.instance.addPostFrameCallback((_) {
getMealSectionByDay(
first: true,
);
first: true,
);
noteBookModel.isSimple = App.sp!.getBool("isSimple") ?? true;
setState(() {});
... ... @@ -119,7 +142,7 @@ class NoteBookPageState extends State<NoteBookPage> {
});
}
getMealSectionByDay({ bool first = false}) async {
getMealSectionByDay({bool first = false}) async {
Map<String, String?> pramas = {
'sellerid': Provider.of<UserModel>(context, listen: false).user!.sellerid,
'day':
... ... @@ -160,12 +183,15 @@ class NoteBookPageState extends State<NoteBookPage> {
void dispose() {
super.dispose();
bus.off("refresh_book_list");
// _calendarController.dispose();
}
//初始化时间
_initTime({bool first = false}) {
if (first && widget.date != null) {
if (first && date != null) {
_refreshPageCalendar(dateTimeNow);
}
storeBaseIndoProvider.dayDateData!.forEach((element) {
... ... @@ -181,19 +207,18 @@ class NoteBookPageState extends State<NoteBookPage> {
meal2 = element.mdate;
}
});
if (first ) {
if (first) {
//
if ( widget.solt == null || widget.solt == "null") {
initCurruntIndex();
if (solt == null || solt == "null") {
initCurruntIndex();
} else {
currTimeIndex = int.parse(widget.solt!);
currTimeIndex = int.parse(solt!);
}
} else {
if (first) {
bool has = storeBaseIndoProvider.dayDateData!
.any((element) => element.ddateSolt == widget.solt);
currTimeIndex = has ? int.parse(widget.solt!) : 1;
.any((element) => element.ddateSolt == solt);
currTimeIndex = has ? int.parse(solt!) : 1;
} else {
bool has = storeBaseIndoProvider.dayDateData!
.any((element) => element.ddateSolt == ddateSoltSelect);
... ... @@ -266,6 +291,32 @@ class NoteBookPageState extends State<NoteBookPage> {
}
}
getDzSellerConfTemp() async {
MarketingCenterProvider marketingCenterProvider =
Provider.of<MarketingCenterProvider>(context, listen: false);
bool success = await marketingCenterProvider.getDzSellerConf(context);
if (success && marketingCenterProvider.dzSellerConfModel != null) {
cancelDay = marketingCenterProvider.dzSellerConfModel!.cancelDay;
cancelShopowner =
marketingCenterProvider.dzSellerConfModel!.cancelShopowner == '1'
? true
: false;
cancelManager =
marketingCenterProvider.dzSellerConfModel!.cancelManager == '1'
? true
: false;
cancelOther =
marketingCenterProvider.dzSellerConfModel!.cancelOther == '1'
? true
: false;
isReserveCancel =
marketingCenterProvider.dzSellerConfModel!.isReserveCancel == '1'
? true
: false;
}
}
//获取已预订列表
_getReserveList({bool needLoading = false, bool showLoading = true}) async {
Map<String, String?> params = {
... ... @@ -1251,19 +1302,29 @@ class NoteBookPageState extends State<NoteBookPage> {
bottom: ScreenUtil().setWidth(24)),
child: model.notebooksSort![index].issimple
? NoteBookItemSimple(
model.notebooksSort![index], index,
index, model.notebooksSort![index],
() {
_itemChangeSimple(
model.notebooksSort![index]);
})
},
cancelDay,
cancelShopowner,
cancelManager,
cancelOther,
isReserveCancel)
: NoteBookItemF(
model.notebooksSort![index],
index,
model.notebooksSort![index],
collectStoreProvider.sellerPreserve,
() {
_itemChangeSimple(
model.notebooksSort![index]);
}),
},
cancelDay,
cancelShopowner,
cancelManager,
cancelOther,
isReserveCancel),
);
}, childCount: model.notebooksSort!.length),
// itemExtent: ScreenUtil().setWidth(112),
... ...
... ... @@ -133,6 +133,8 @@ class CustomerProvider extends ChangeNotifier {
bool isAddOver = true;
bool isSetOver = true;
bool isReserveOver = true;
bool isReserveCancel = true;
bool cancelOrderdayShopowner = true;
bool cancelOrderdayManager = true;
... ...