Commit 2dc321182ffd416b35bab32fa9183e9e9fc79958

Authored by wdn127929
1 parent 3b9cdf6b

提前点餐后页面null 数据展示bug

... ... @@ -71,6 +71,7 @@ Future<void> main() async {
await initializeDateFormatting();
// _requestPermissions();
Utils.changeStatusColor();
await App.initSp();
SystemChrome.setPreferredOrientations(
[DeviceOrientation.portraitUp, DeviceOrientation.portraitDown])
.then((_) {
... ... @@ -110,7 +111,7 @@ Future<void> main() async {
child: MyApp(),
));
});
await App.initSp();
// await App.initSp();
await AmapService.instance.init(
iosKey: 'e373581528f8fd901c01dfbda236159e',
androidKey: 'dbced781d0acd36184d5b4b54da7188d');
... ...
... ... @@ -26,6 +26,7 @@ class Message {
String room_info;
String get rnameStr {
if (rname == null || rname == '') return "";
switch (sex.toString()) {
case "1": //先生
case "男":
... ...
... ... @@ -220,6 +220,7 @@ class ReserveDetailSunModel extends Object {
///顾客姓名
String get rnameStr {
if (rname == null || rname == '') return "";
// 预订人姓名:1:男 2:女
switch (sex) {
case "1":
... ...
... ... @@ -66,12 +66,12 @@ class MessageDialogItem extends StatelessWidget {
if (isTreated) {
if (message.message_type == "10") {
NavigatorUtil.goNotebookDetailPage(
context, message.rid.toString(),message.uid);
context, message.rid.toString(), message.uid);
} else if (message.message_type == "1") {
NavigatorUtil.goHasOrderFoodPage(context, rid: message.rid);
} else if (message.message_type == "11") {
NavigatorUtil.goNotebookDetailPage(
context, message.rid.toString(),message.uid);
context, message.rid.toString(), message.uid);
} else if (message.message_type == "12") {
//在线买单消息查看
NavigatorUtil.goOnlineCheckDetailPage(context,
... ... @@ -126,7 +126,9 @@ class MessageDialogItem extends StatelessWidget {
VEmptyView(20),
message.message_type == "11"
? Text(
"${message.ddateStr}的${message.rnameStr}取消了预订",
message.rname != null && message.rname != ''
? "${message.ddateStr}的${message.rnameStr}取消了预订"
: "${message.ddateStr} 取消了预订",
style: TextStyle(
color: textColor,
fontSize: ScreenUtil().setSp(28)),
... ... @@ -149,12 +151,14 @@ class MessageDialogItem extends StatelessWidget {
fontSize: ScreenUtil().setSp(28)),
),
VEmptyView(10),
Text(
"${subTitleThr}:${message.rnameStr}",
style: TextStyle(
color: textColor,
fontSize: ScreenUtil().setSp(28)),
),
message.rname != null && message.rname != ''
? Text(
"${subTitleThr}:${message.rnameStr}",
style: TextStyle(
color: textColor,
fontSize: ScreenUtil().setSp(28)),
)
: SizedBox(),
],
)
],
... ... @@ -185,7 +189,7 @@ class MessageDialogItem extends StatelessWidget {
: false);
} else if (message.message_type == "11") {
NavigatorUtil.goNotebookDetailPage(
context, message.rid.toString(),message.uid,
context, message.rid.toString(), message.uid,
replace: messageDialogModel.messages.isEmpty
? true
: false);
... ...
... ... @@ -164,8 +164,10 @@ class _MessageHasOrderFoodPageState extends State<MessageHasOrderFoodPage> {
_orderFoodProvider
.createdOrderSunModel.remark),
),
_getRow(
'人数', _orderFoodProvider.createdOrderSunModel.pnum),
_orderFoodProvider.createdOrderSunModel.pnum != null
? _getRow('人数',
_orderFoodProvider.createdOrderSunModel.pnum)
: SizedBox(),
VEmptyView(30),
_orderFoodProvider.reserveDetailSunModel != null
? _getRow(
... ...
... ... @@ -184,7 +184,9 @@ class MessageItem extends StatelessWidget {
VEmptyView(20),
message.message_type == "11"
? Text(
"${message.ddateStr}的${message.rnameStr}取消了预订",
message.rname != null
? "${message.ddateStr}的${message.rnameStr}取消了预订"
: "${message.ddateStr} 取消了预订",
style: TextStyle(
color: textColor,
fontSize: ScreenUtil().setSp(28)),
... ... @@ -207,12 +209,14 @@ class MessageItem extends StatelessWidget {
fontSize: ScreenUtil().setSp(28)),
),
VEmptyView(10),
Text(
"预订人:${message.rnameStr}",
style: TextStyle(
color: textColor,
fontSize: ScreenUtil().setSp(28)),
),
message.rnameStr == ''
? SizedBox()
: Text(
"预订人:${message.rnameStr}",
style: TextStyle(
color: textColor,
fontSize: ScreenUtil().setSp(28)),
),
],
),
message.message_type == "11" ? VEmptyView(80) : VEmptyView(0)
... ...
... ... @@ -510,9 +510,6 @@ class PhotoManagerPageState extends State<PhotoManagerPage> {
selectNum = 0;
if (table.id == tableItem.id) {
selectTableId = table.id;
setState(() {
tableItem.selected = true;
});
// selectTables = [];
// selectNum++;
... ... @@ -525,6 +522,9 @@ class PhotoManagerPageState extends State<PhotoManagerPage> {
NavigatorUtil.goTablePhotoManagerPage(context,
tid: table.id, tname: table.name);
setState(() {
tableItem.selected = true;
});
}
}
}
... ...
... ... @@ -466,7 +466,9 @@ class _OnlineCheckDetailPageState extends State<OnlineCheckDetailPage> {
VEmptyView(24),
_customInfoItemWidget(
'买单顾客',
_orderFoodProvider.reserveDetailSunModel != null
_orderFoodProvider.reserveDetailSunModel != null &&
_orderFoodProvider.reserveDetailSunModel.rname !=
null
? _orderFoodProvider.reserveDetailSunModel.rnameStr
: ''),
VEmptyView(24),
... ...
... ... @@ -46,13 +46,13 @@ class EnterModel with ChangeNotifier {
isSetDate = '0';
}
initData(NotebookDetail notebookDetail){
this.detailEntity=notebookDetail;
initData(NotebookDetail notebookDetail) {
this.detailEntity = notebookDetail;
print(detailEntity);
if (detailEntity.phone != '0') {
phoneController.text = detailEntity.phone;
}
if (detailEntity.rnameStr != '') {
if (detailEntity.rname != null && detailEntity.rnameStr != '') {
nameController.text = detailEntity.rname;
}
if (detailEntity.cusdem != '') {
... ... @@ -68,7 +68,7 @@ class EnterModel with ChangeNotifier {
_initDateList() {
String createtime = detailEntity.ddate.toString() + '000';
DateTime createTime =
DateTime.fromMillisecondsSinceEpoch(int.parse(createtime));
DateTime.fromMillisecondsSinceEpoch(int.parse(createtime));
ddateStr = DateUtil.formatDate(createTime, format: DateFormats.h_m);
String dateTimeSelect = DateUtil.formatDateMs(
createTime.millisecondsSinceEpoch,
... ... @@ -87,7 +87,7 @@ class EnterModel with ChangeNotifier {
//明天
int tomorrowMill = dateTimeMill + 24 * 60 * 60 * 1000;
String dateTextTomorrow =
DateUtil.formatDateMs(tomorrowMill, format: 'MM-dd');
DateUtil.formatDateMs(tomorrowMill, format: 'MM-dd');
dateList.add({
'title': dateTextTomorrow,
'select': dateTimeSelect == dateTextTomorrow ? true : false,
... ... @@ -110,7 +110,7 @@ class EnterModel with ChangeNotifier {
}
/// 初始化 早市、午市、晚市
_initSunDateList(BuildContext context,morning, noon, night) {
_initSunDateList(BuildContext context, morning, noon, night) {
String ddateSolt = detailEntity.ddate_solt;
if (morning != '') {
sunDateList.add({
... ... @@ -119,7 +119,10 @@ class EnterModel with ChangeNotifier {
'ddateSolt': 1,
'key': 'morning',
'isSelect': ddateSolt == '1' ? true : false,
"isEnable":!isOverMorning(DateTime.fromMillisecondsSinceEpoch(int.parse(detailEntity.ddate)*1000), context)
"isEnable": !isOverMorning(
DateTime.fromMillisecondsSinceEpoch(
int.parse(detailEntity.ddate) * 1000),
context)
});
}
if (noon != '') {
... ... @@ -129,7 +132,10 @@ class EnterModel with ChangeNotifier {
'ddateSolt': 2,
'key': 'noon',
'isSelect': ddateSolt == '2' ? true : false,
"isEnable":!isOverNoon(DateTime.fromMillisecondsSinceEpoch(int.parse(detailEntity.ddate)*1000), context)
"isEnable": !isOverNoon(
DateTime.fromMillisecondsSinceEpoch(
int.parse(detailEntity.ddate) * 1000),
context)
});
}
if (night != '') {
... ... @@ -139,64 +145,68 @@ class EnterModel with ChangeNotifier {
'ddateSolt': 3,
'key': 'night',
'isSelect': ddateSolt == '3' ? true : false,
"isEnable":!isOverNight(DateTime.fromMillisecondsSinceEpoch(int.parse(detailEntity.ddate)*1000), context)
"isEnable": !isOverNight(
DateTime.fromMillisecondsSinceEpoch(
int.parse(detailEntity.ddate) * 1000),
context)
});
}
notifyListeners();
}
updateSunDateList(DateTime dateTime,BuildContext context){
UserModel userModel=Provider.of<UserModel>(context,listen: false);
for(Map item in sunDateList){
item["isEnable"]=true;
if(item['dateText']=="早市"){
item["isEnable"]=!isOverMorning(dateTime, context);
}else if(item['dateText']=="午市"){
item["isEnable"]=!isOverNoon(dateTime, context);
}else if(item['dateText']=="晚市"){
item["isEnable"]=!isOverNight(dateTime, context);
updateSunDateList(DateTime dateTime, BuildContext context) {
UserModel userModel = Provider.of<UserModel>(context, listen: false);
for (Map item in sunDateList) {
item["isEnable"] = true;
if (item['dateText'] == "早市") {
item["isEnable"] = !isOverMorning(dateTime, context);
} else if (item['dateText'] == "午市") {
item["isEnable"] = !isOverNoon(dateTime, context);
} else if (item['dateText'] == "晚市") {
item["isEnable"] = !isOverNight(dateTime, context);
}
}
}
//当前时间是否查过所选日期早市
bool isOverMorning(DateTime dateTime,BuildContext context){
int millsNow=DateTime.now().millisecondsSinceEpoch;
UserModel userModel=Provider.of<UserModel>(context,listen: false);
String morning=userModel.user.morning==""?"00:00-00:00":userModel.user.morning;
String endMorning=morning.split("-")[1];
int endMorningMills=DateUtil.getDateMsByTimeStr(DateUtil.formatDate(dateTime).replaceRange(11,19, "$endMorning:00"));
if(millsNow>endMorningMills)return true;
bool isOverMorning(DateTime dateTime, BuildContext context) {
int millsNow = DateTime.now().millisecondsSinceEpoch;
UserModel userModel = Provider.of<UserModel>(context, listen: false);
String morning =
userModel.user.morning == "" ? "00:00-00:00" : userModel.user.morning;
String endMorning = morning.split("-")[1];
int endMorningMills = DateUtil.getDateMsByTimeStr(
DateUtil.formatDate(dateTime).replaceRange(11, 19, "$endMorning:00"));
if (millsNow > endMorningMills) return true;
return false;
}
//当前时间是否查过所选日期午市
bool isOverNoon(DateTime dateTime,BuildContext context){
int millsNow=DateTime.now().millisecondsSinceEpoch;
UserModel userModel=Provider.of<UserModel>(context,listen: false);
String noon=userModel.user.noon==""?"00:00-00:00":userModel.user.noon;
String endNoon=noon.split("-")[1];
int endNoonMills=DateUtil.getDateMsByTimeStr(DateUtil.formatDate(dateTime).replaceRange(11,19, "$endNoon:00"));
if(millsNow>endNoonMills)return true;
bool isOverNoon(DateTime dateTime, BuildContext context) {
int millsNow = DateTime.now().millisecondsSinceEpoch;
UserModel userModel = Provider.of<UserModel>(context, listen: false);
String noon =
userModel.user.noon == "" ? "00:00-00:00" : userModel.user.noon;
String endNoon = noon.split("-")[1];
int endNoonMills = DateUtil.getDateMsByTimeStr(
DateUtil.formatDate(dateTime).replaceRange(11, 19, "$endNoon:00"));
if (millsNow > endNoonMills) return true;
return false;
}
//当前时间是否查过所选日期晚市
bool isOverNight(DateTime dateTime,BuildContext context){
int millsNow=DateTime.now().millisecondsSinceEpoch;
UserModel userModel=Provider.of<UserModel>(context,listen: false);
String night=userModel.user.night==""?"00:00-00:00":userModel.user.night;
String endNight=night.split("-")[1];
int endNightMills=DateUtil.getDateMsByTimeStr(DateUtil.formatDate(dateTime).replaceRange(11,19, "$endNight:00"));
if(millsNow>endNightMills)return true;
bool isOverNight(DateTime dateTime, BuildContext context) {
int millsNow = DateTime.now().millisecondsSinceEpoch;
UserModel userModel = Provider.of<UserModel>(context, listen: false);
String night =
userModel.user.night == "" ? "00:00-00:00" : userModel.user.night;
String endNight = night.split("-")[1];
int endNightMills = DateUtil.getDateMsByTimeStr(
DateUtil.formatDate(dateTime).replaceRange(11, 19, "$endNight:00"));
if (millsNow > endNightMills) return true;
return false;
}
//人数
_initPersonNumList() {
String pnum = detailEntity.pnum;
... ... @@ -286,16 +296,17 @@ class EnterModel with ChangeNotifier {
model.daily.morning == ''
? dailyMap.putIfAbsent('morning', () => '')
: dailyMap.putIfAbsent(
'morning', () => _getHourAndMinute(model.daily.morning, 1, model));
'morning', () => _getHourAndMinute(model.daily.morning, 1, model));
model.daily.noon == ''
? dailyMap.putIfAbsent('noon', () => '')
: dailyMap.putIfAbsent(
'noon', () => _getHourAndMinute(model.daily.noon, 2, model));
'noon', () => _getHourAndMinute(model.daily.noon, 2, model));
model.daily.night == ''
? dailyMap.putIfAbsent('night', () => '')
: dailyMap.putIfAbsent(
'night', () => _getHourAndMinute(model.daily.night, 3, model));
_initSunDateList(context,model.daily.morning, model.daily.noon, model.daily.night);
'night', () => _getHourAndMinute(model.daily.night, 3, model));
_initSunDateList(
context, model.daily.morning, model.daily.noon, model.daily.night);
}
//根据获取时间 11:00-12:30 获取30分钟间隔组装的数组
... ... @@ -317,7 +328,7 @@ class EnterModel with ChangeNotifier {
String temp = _dealTime(beginHour, beginMinute);
bool tempSelect = false;
if (int.parse(isSetDate) == 1) //设置预订时间
{
{
if (temp == ddateStr) {
tempSelect = true;
}
... ... @@ -380,7 +391,7 @@ class EnterModel with ChangeNotifier {
};
BaseResp<Map<String, dynamic>> baseResp = await DioUtil()
.request<Map<String, dynamic>>(context, Method.get, HttpUrl.sellerinfo,
data: params)
data: params)
.catchError((error) {
print(error.toString());
});
... ... @@ -418,7 +429,7 @@ class EnterModel with ChangeNotifier {
};
BaseResp<dynamic> baseResp = await DioUtil()
.request<dynamic>(context, Method.get, HttpUrl.get_table_list,
data: params)
data: params)
.catchError((error) {
print(error.toString());
});
... ... @@ -608,14 +619,14 @@ class EnterModel with ChangeNotifier {
"rdate": rdate, //预定用餐时间范围:时间戳 开始时间戳(time)-结束时间戳(time)
"ddate": '$ddate'.substring(0, 10), //到店时间
"ddate_solt": ddateSolt,
"channel":'5',
"uid":userModel.user.openid
"channel": '5',
"uid": userModel.user.openid
};
print(params.toString());
BaseResp<Map<String, dynamic>> baseResp = await DioUtil()
.request<Map<String, dynamic>>(
context, Method.get, HttpUrl.set_reserve_info,
data: params)
context, Method.get, HttpUrl.set_reserve_info,
data: params)
.catchError((error) {
print(error);
});
... ...