Commit 3b591b2e40d044138f5ea3579c8bbe2b3419df3b

Authored by wdn127929
1 parent 3f140628

消息已处理处理,未处理列表未做

... ... @@ -27,4 +27,5 @@ enum FromPage {
FromPageMyPage,
FromPageInvicationPage,//预订安排
FromPagePhotoManagerPage,//照片管理
FromPageMessagePage,//消息中心
}
... ...
import 'package:common_utils/common_utils.dart';
import 'package:json_annotation/json_annotation.dart';
import 'package:one_key/utils/utils.dart';
... ... @@ -110,6 +111,26 @@ class NewUnmessage extends Object {
@JsonKey(name: 'table_class_name')
String tableClassName;
@JsonKey(name: 'attr')
String attr;
@JsonKey(name: 'label')
String label;
@JsonKey(name: 'price')
String price;
@JsonKey(name: 'pay_id')
String payid;
@JsonKey(name: 'gid')
String gid;
@JsonKey(name: 'phone')
String phone;
@JsonKey(name: 'store_cdate')
String storeCdate;
NewUnmessage(
this.id,
this.uid,
... ... @@ -131,7 +152,14 @@ class NewUnmessage extends Object {
this.room_info,
this.uname,
this.nickName,
this.tableClassName);
this.tableClassName,
this.attr,
this.label,
this.price,
this.payid,
this.gid,
this.phone,
this.storeCdate);
String get rnameStr {
if (rname == null || rname == '' || rname == ' ') return "";
... ... @@ -152,27 +180,35 @@ class NewUnmessage extends Object {
///年月日 餐段
String get ddateStr {
String ymd = "";
if (ddate_long != null) {
DateTime dateTime = DateTime.fromMillisecondsSinceEpoch(
int.parse(ddate_long.toString()) * 1000);
ymd = dateTime.year.toString() +
"-" +
Utils.addZeroNumber(dateTime.month) +
"-" +
Utils.addZeroNumber(dateTime.day);
if (message_type != '17' && message_type != '18') {
String ymd = "";
if (ddate_long != null) {
DateTime dateTime = DateTime.fromMillisecondsSinceEpoch(
int.parse(ddate_long.toString()) * 1000);
ymd = dateTime.year.toString() +
"-" +
Utils.addZeroNumber(dateTime.month) +
"-" +
Utils.addZeroNumber(dateTime.day);
} else {
ymd = ddate.substring(0, 10);
}
switch (ddate_solt) {
case "1": //早餐
return ymd + " 早餐";
case "2": //午餐
return ymd + " 午餐";
case "3": //晚餐
return ymd + " 晚餐";
default:
return ymd;
}
} else {
ymd = ddate.substring(0, 10);
}
switch (ddate_solt) {
case "1": //早餐
return ymd + " 早餐";
case "2": //午餐
return ymd + " 午餐";
case "3": //晚餐
return ymd + " 晚餐";
default:
return ymd;
if (message_type == '17') {
return '会员充值${price}元';
} else if (message_type == '18') {
return '${storeCdateShow} 存酒';
}
}
}
... ... @@ -190,6 +226,13 @@ class NewUnmessage extends Object {
}
}
String get storeCdateShow {
if (storeCdate == null || storeCdate == '') return '';
DateTime dateTime = DateTime.fromMillisecondsSinceEpoch(
int.parse(storeCdate.toString()) * 1000);
return DateUtil.formatDate(dateTime, format: DateFormats.y_mo_d);
}
String get cdateStr {
String temp_date = '${cdate}';
switch (message_type) {
... ...
... ... @@ -42,28 +42,34 @@ Map<String, dynamic> _$NewUnmessageSunModelToJson(
NewUnmessage _$NewUnmessageFromJson(Map<String, dynamic> json) {
return NewUnmessage(
json['id'] as String,
json['uid'] as String,
json['message_type'] as String,
json['handle_time'] as String,
json['read_time'] as String,
json['is_read'] as String,
json['is_handle'] as String,
json['ddate'] as dynamic,
json['rname'] as String,
json['sex'] as dynamic,
json['cdate'] as dynamic,
json['rid'] as dynamic,
json['room_demand'] as dynamic,
json['ddate_solt'] as dynamic,
json['ddate_long'] as dynamic,
json['cancel_name'] as dynamic,
json['status'] as dynamic,
json['room_info'] as dynamic,
json['uname'] as String,
json['nick_name'] as String,
json['table_class_name'] as String,
);
json['id'] as String,
json['uid'] as String,
json['message_type'] as String,
json['handle_time'] as String,
json['read_time'] as String,
json['is_read'] as String,
json['is_handle'] as String,
json['ddate'] as dynamic,
json['rname'] as String,
json['sex'] as dynamic,
json['cdate'] as dynamic,
json['rid'] as dynamic,
json['room_demand'] as dynamic,
json['ddate_solt'] as dynamic,
json['ddate_long'] as dynamic,
json['cancel_name'] as dynamic,
json['status'] as dynamic,
json['room_info'] as dynamic,
json['uname'] as String,
json['nick_name'] as String,
json['table_class_name'] as String,
json['attr'] as String,
json['label'] as String,
json['price'] as String,
json['pay_id'] as String,
json['gid'] as String,
json['phone'] as String,
json['store_cdate'] as String);
}
Map<String, dynamic> _$NewUnmessageToJson(NewUnmessage instance) =>
... ... @@ -88,5 +94,12 @@ Map<String, dynamic> _$NewUnmessageToJson(NewUnmessage instance) =>
'room_info': instance.room_info,
'uname': instance.uname,
'nick_name': instance.nickName,
'table_class_name':instance.tableClassName
'table_class_name': instance.tableClassName,
'attr': instance.attr,
'label': instance.label,
'price': instance.price,
'pay_id': instance.payid,
'gid': instance.gid,
'phone': instance.phone,
'store_cdate': instance.storeCdate
};
... ...
import 'package:common_utils/common_utils.dart';
import 'package:one_key/models/recharge_list_model.dart';
import 'dart:convert' as convert;
import '../utils/utils.dart';
class RechargeNoticeModel {
int ret;
RechargeNoticeSunModel data;
... ... @@ -69,6 +72,24 @@ class Recharge {
String qrcode;
String cdate;
String get stimeStr {
if (stime == null || stime.toString() == '0') {
return '';
}
DateTime dateTime =
DateTime.fromMillisecondsSinceEpoch(int.parse(stime.toString()) * 1000);
return DateUtil.formatDate(dateTime, format: DateFormats.y_mo_d);
}
String get etimeStr {
if (etime == null || etime.toString() == '0') {
return '';
}
DateTime dateTime =
DateTime.fromMillisecondsSinceEpoch(int.parse(etime.toString()) * 1000);
return DateUtil.formatDate(dateTime, format: DateFormats.y_mo_d);
}
Recharge(
{this.id,
this.uid,
... ... @@ -154,6 +175,32 @@ class Guest {
Null cdate;
Null udate;
String get rnameStr {
if (rname == null || rname == '' || rname == ' ') return "";
switch (sex) {
case "1": //先生
return rname + "先生";
case "2": //女士
return rname + "女士";
case "3": //公司
return rname + "公司";
}
return rname;
}
get cDayShow {
if (cDay != null) {
DateTime dateTime = DateTime.fromMillisecondsSinceEpoch(
int.parse(cDay.toString()) * 1000);
return dateTime.year.toString() +
"-" +
Utils.addZeroNumber(dateTime.month) +
"-" +
Utils.addZeroNumber(dateTime.day);
}
return '';
}
Guest(
{this.id,
this.sellerid,
... ...
... ... @@ -38,6 +38,8 @@ import 'package:tpns_flutter_plugin/tpns_flutter_plugin.dart';
import 'package:flutter_app_badger/flutter_app_badger.dart';
import 'package:one_key/models/message.dart';
import '../../constant/state.dart';
import '../../models/customer_by_seller_model.dart';
import '../../provider/feast_model.dart';
import '../feast/feast_page.dart';
... ... @@ -337,11 +339,55 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
NavigatorUtil.goNotebookDetailPage(
context, notifyParam['rid'], notifyParam["uid"],
mid: notifyParam['mid'], fromNotify: true);
break;
case "17":
//充值优惠活动充值成功
print('fff');
NavigatorUtil.goMessageRechargeInfoPage(context, notifyParam['id']);
MessageDialogModel messageDialogModel =
Provider.of<MessageDialogModel>(context, listen: false);
Map<String, String> params = {
"sid": Provider.of<UserModel>(context, listen: false).user.sellerid,
"id": notifyParam['mid'],
"status": "is_read"
};
await messageDialogModel.setMessageStatus(context, params);
break;
case "18":
CustomerBySellerSunModel userHistoryEntity = CustomerBySellerSunModel(
null,
null,
notifyParam['phone'],
null,
null,
null,
null,
null,
null,
null,
null,
notifyParam['id'],
null,
null,
null,
null);
NavigatorUtil.goCustomerDetailPage(
context, userHistoryEntity, FromPage.FromPageMessagePage);
MessageDialogModel messageDialogModel =
Provider.of<MessageDialogModel>(context, listen: false);
Map<String, String> params = {
"sid": Provider.of<UserModel>(context, listen: false).user.sellerid,
"id": notifyParam['mid'],
"status": "is_read"
};
await messageDialogModel.setMessageStatus(context, params);
break;
case "1":
NavigatorUtil.goHasOrderFoodPage(context,
... ... @@ -561,6 +607,55 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
//充值优惠活动充值成功
print('fff');
NavigatorUtil.goMessageRechargeInfoPage(context, custom['id']);
MessageDialogModel messageDialogModel =
Provider.of<MessageDialogModel>(context, listen: false);
Map<String, String> params = {
"sid": Provider.of<UserModel>(context, listen: false)
.user
.sellerid,
"id": custom['mid'],
"status": "is_read"
};
await messageDialogModel.setMessageStatus(context, params);
break;
case "18":
//存酒
print('fff');
CustomerBySellerSunModel userHistoryEntity =
CustomerBySellerSunModel(
null,
null,
custom['phone'],
null,
null,
null,
null,
null,
null,
null,
null,
custom['id'],
null,
null,
null,
null);
NavigatorUtil.goCustomerDetailPage(
context, userHistoryEntity, FromPage.FromPageMessagePage);
MessageDialogModel messageDialogModel =
Provider.of<MessageDialogModel>(context, listen: false);
Map<String, String> params = {
"sid": Provider.of<UserModel>(context, listen: false)
.user
.sellerid,
"id": custom['mid'],
"status": "is_read"
};
await messageDialogModel.setMessageStatus(context, params);
break;
case "1":
//提前点餐消息
... ...
... ... @@ -17,6 +17,8 @@ import 'package:one_key/widgets/v_empty_view.dart';
import 'package:provider/provider.dart';
import '../../app.dart';
import '../../constant/state.dart';
import '../../models/customer_by_seller_model.dart';
class MessageDialogItemF extends StatelessWidget {
final NewUnmessage message;
... ... @@ -31,7 +33,7 @@ class MessageDialogItemF extends StatelessWidget {
String titleText = "";
String subTitleTextFir = "";
String subTitleTextSec = "";
String attr = '';
String attr = message.attr;
Color bgcolor = MyColours.color_438E93;
String btnname = 'online_go';
if (message.message_type == "10") {
... ... @@ -70,6 +72,14 @@ class MessageDialogItemF extends StatelessWidget {
titleText = "取消\n预订";
bgcolor = MyColours.color_999999;
btnname = 'cancel_go';
} else if (message.message_type == "17") {
titleText = "会员\n充值";
bgcolor = MyColours.color_F2995F;
btnname = 'online_order_go';
} else if (message.message_type == "18") {
titleText = "存酒\n超期";
bgcolor = MyColours.color_F2995F;
btnname = 'order_go';
}
if (isTreated) {
bgcolor = MyColours.color_BFC4D4;
... ... @@ -176,6 +186,54 @@ class MessageDialogItemF extends StatelessWidget {
};
await messageDialogModel.setMessageStatus(context, params);
bus.emit("refresh_untreated_num"); //刷新未读消息数目
} else if (message.message_type == "17") {
//会员充值
NavigatorUtil.goMessageRechargeInfoPage(context, message.payid);
bus.emit("remove_untreated_message", message.id);
Map<String, String> params = {
"sid":
Provider.of<UserModel>(context, listen: false).user.sellerid,
"id": message.id,
"status": "is_read"
};
await messageDialogModel.setMessageStatus(context, params);
bus.emit("refresh_untreated_num"); //刷新未读消息数目
} else if (message.message_type == "18") {
//存酒超期
CustomerBySellerSunModel userHistoryEntity =
CustomerBySellerSunModel(
null,
null,
message.phone,
null,
null,
null,
null,
null,
null,
null,
null,
message.gid,
null,
null,
null,
null);
NavigatorUtil.goCustomerDetailPage(
context, userHistoryEntity, FromPage.FromPageMessagePage);
bus.emit("remove_untreated_message", message.id);
Map<String, String> params1 = {
"sid":
Provider.of<UserModel>(context, listen: false).user.sellerid,
"id": message.id,
"status": "is_read"
};
await messageDialogModel.setMessageStatus(context, params1);
bus.emit("refresh_untreated_num"); //刷新未读消息数目
}
},
child: Stack(
... ... @@ -222,7 +280,9 @@ class MessageDialogItemF extends StatelessWidget {
HEmptyView(34),
message.message_type == "10" ||
message.message_type == "12" ||
message.message_type == "13"
message.message_type == "13" ||
message.message_type == "17" ||
message.message_type == "18"
? Expanded(
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
... ... @@ -249,81 +309,84 @@ class MessageDialogItemF extends StatelessWidget {
fontSize:
ScreenUtil().setSp(32)),
)),
// attr == '' || attr == null
// ? Container(
// margin: EdgeInsets.only(
// right: ScreenUtil()
// .setWidth(12)),
// padding: EdgeInsets.symmetric(
// horizontal: ScreenUtil()
// .setWidth(16),
// vertical: ScreenUtil()
// .setWidth(6)),
// decoration: BoxDecoration(
// color: isTreated
// ? MyColours.color_BFC4D4
// : attr == '沉睡'
// ? Color.fromRGBO(
// 223, 33, 81, 1)
// : attr == '活跃'
// ? Color
// .fromRGBO(
// 81,
// 170,
// 94,
// 1)
// : attr == '流失'
// ? Color
// .fromRGBO(
// 109,
// 101,
// 248,
// 1)
// : Color
// .fromRGBO(
// 239,
// 143,
// 49,
// 1),
// borderRadius:
// BorderRadius.circular(
// 8)),
// child: Text(
// '活跃',
// style: TextStyle(
// color: MyColours
// .color_ffffff,
// fontSize: ScreenUtil()
// .setSp(24)),
// ),
// )
// : SizedBox(),
// Container(
// padding: EdgeInsets.symmetric(
// horizontal:
// ScreenUtil().setWidth(16),
// vertical:
// ScreenUtil().setWidth(6)),
// decoration: BoxDecoration(
// border: Border.all(
// width: ScreenUtil().setWidth(2),
// color: isTreated
// ? MyColours.color_BFC4D4
// : MyColours.color_F2995F,
// ),
// borderRadius:
// BorderRadius.circular(8)),
// child: Text(
// 'biaoqianvipdsds',
// // overflow: TextOverflow.ellipsis,
// style: TextStyle(
// color: isTreated
// ? MyColours.color_BFC4D4
// : MyColours.color_F2995F,
// fontSize:
// ScreenUtil().setSp(24)),
// ),
// )
attr == '' || attr == null
? Container(
margin: EdgeInsets.only(
right: ScreenUtil()
.setWidth(12)),
padding: EdgeInsets.symmetric(
horizontal: ScreenUtil()
.setWidth(16),
vertical: ScreenUtil()
.setWidth(6)),
decoration: BoxDecoration(
color: isTreated
? MyColours.color_BFC4D4
: attr == '沉睡'
? Color.fromRGBO(
223, 33, 81, 1)
: attr == '活跃'
? Color
.fromRGBO(
81,
170,
94,
1)
: attr == '流失'
? Color
.fromRGBO(
109,
101,
248,
1)
: Color
.fromRGBO(
239,
143,
49,
1),
borderRadius:
BorderRadius.circular(
8)),
child: Text(
'活跃',
style: TextStyle(
color: MyColours
.color_ffffff,
fontSize: ScreenUtil()
.setSp(24)),
),
)
: SizedBox(),
if (message.label != null &&
message.label != '')
Container(
padding: EdgeInsets.symmetric(
horizontal:
ScreenUtil().setWidth(16),
vertical:
ScreenUtil().setWidth(6)),
decoration: BoxDecoration(
border: Border.all(
width:
ScreenUtil().setWidth(2),
color: isTreated
? MyColours.color_BFC4D4
: MyColours.color_F2995F,
),
borderRadius:
BorderRadius.circular(8)),
child: Text(
message.label,
// overflow: TextOverflow.ellipsis,
style: TextStyle(
color: isTreated
? MyColours.color_BFC4D4
: MyColours.color_F2995F,
fontSize:
ScreenUtil().setSp(24)),
),
)
]);
})),
VEmptyView(16),
... ... @@ -589,6 +652,59 @@ class MessageDialogItemF extends StatelessWidget {
await messageDialogModel.setMessageStatus(
context, params);
bus.emit("refresh_untreated_num"); //刷新未读消息数目
} else if (message.message_type == "17") {
//会员充值
NavigatorUtil.goMessageRechargeInfoPage(
context, message.payid);
bus.emit("remove_untreated_message", message.id);
Map<String, String> params = {
"sid": Provider.of<UserModel>(context, listen: false)
.user
.sellerid,
"id": message.id,
"status": "is_read"
};
await messageDialogModel.setMessageStatus(
context, params);
bus.emit("refresh_untreated_num"); //刷新未读消息数目
} else if (message.message_type == "18") {
//存酒超期
CustomerBySellerSunModel userHistoryEntity =
CustomerBySellerSunModel(
null,
null,
message.phone,
null,
null,
null,
null,
null,
null,
null,
null,
message.gid,
null,
null,
null,
null);
NavigatorUtil.goCustomerDetailPage(context,
userHistoryEntity, FromPage.FromPageMessagePage);
bus.emit("remove_untreated_message", message.id);
Map<String, String> params1 = {
"sid": Provider.of<UserModel>(context, listen: false)
.user
.sellerid,
"id": message.id,
"status": "is_read"
};
await messageDialogModel.setMessageStatus(
context, params1);
bus.emit("refresh_untreated_num"); //刷新未读消息数目
}
},
child: Image.asset(
... ...
... ... @@ -14,6 +14,9 @@ import 'package:one_key/widgets/h_empty_view.dart';
import 'package:one_key/widgets/v_empty_view.dart';
import 'package:provider/provider.dart';
import '../../constant/state.dart';
import '../../models/customer_by_seller_model.dart';
class MessageItemF extends StatelessWidget {
final NewUnmessage message;
final bool isTreated;
... ... @@ -27,7 +30,7 @@ class MessageItemF extends StatelessWidget {
String titleText = "";
String subTitleTextFir = "";
String subTitleTextSec = "";
String attr = '';
String attr = message.attr;
Color bgcolor = MyColours.color_438E93;
String btnname = 'online_go';
if (message.message_type == "10") {
... ... @@ -66,6 +69,14 @@ class MessageItemF extends StatelessWidget {
titleText = "取消\n预订";
bgcolor = MyColours.color_999999;
btnname = 'cancel_go';
} else if (message.message_type == "17") {
titleText = "会员\n充值";
bgcolor = MyColours.color_F2995F;
btnname = 'online_order_go';
} else if (message.message_type == "18") {
titleText = "存酒\n超期";
bgcolor = MyColours.color_F2995F;
btnname = 'order_go';
}
if (isTreated) {
bgcolor = MyColours.color_BFC4D4;
... ... @@ -98,7 +109,6 @@ class MessageItemF extends StatelessWidget {
//在线买单消息查看
NavigatorUtil.goOnlineCheckDetailPage(context,
rid: '${message.rid}');
// NavigatorUtil.goMessageRechargeInfoPage(context);
} else if (message.message_type == "13") {
//买单通知,跳转至买单详情查看
NavigatorUtil.goOnlineCheckDetailPage(context,
... ... @@ -115,6 +125,32 @@ class MessageItemF extends StatelessWidget {
dateTime: DateTime.parse(message.ddate.replaceAll('/', '-'))
.millisecondsSinceEpoch,
solt: message.ddate_solt);
} else if (message.message_type == "17") {
//会员充值
NavigatorUtil.goMessageRechargeInfoPage(context, message.payid);
} else if (message.message_type == "18") {
//存酒超期
CustomerBySellerSunModel userHistoryEntity =
CustomerBySellerSunModel(
null,
null,
message.phone,
null,
null,
null,
null,
null,
null,
null,
null,
message.gid,
null,
null,
null,
null);
NavigatorUtil.goCustomerDetailPage(
context, userHistoryEntity, FromPage.FromPageMessagePage);
}
} else {
messageDialogModel.removeMessage(message.id);
... ... @@ -217,6 +253,55 @@ class MessageItemF extends StatelessWidget {
};
await messageDialogModel.setMessageStatus(context, params);
bus.emit("refresh_untreated_num"); //刷新未读消息数目
} else if (message.message_type == "17") {
//会员充值
NavigatorUtil.goMessageRechargeInfoPage(context, message.payid);
bus.emit("remove_untreated_message", message.id);
Map<String, String> params = {
"sid": Provider.of<UserModel>(context, listen: false)
.user
.sellerid,
"id": message.id,
"status": "is_read"
};
await messageDialogModel.setMessageStatus(context, params);
bus.emit("refresh_untreated_num"); //刷新未读消息数目
} else if (message.message_type == "18") {
//存酒超期
CustomerBySellerSunModel userHistoryEntity =
CustomerBySellerSunModel(
null,
null,
message.phone,
null,
null,
null,
null,
null,
null,
null,
null,
message.gid,
null,
null,
null,
null);
NavigatorUtil.goCustomerDetailPage(
context, userHistoryEntity, FromPage.FromPageMessagePage);
bus.emit("remove_untreated_message", message.id);
Map<String, String> params1 = {
"sid": Provider.of<UserModel>(context, listen: false)
.user
.sellerid,
"id": message.id,
"status": "is_read"
};
await messageDialogModel.setMessageStatus(context, params1);
bus.emit("refresh_untreated_num"); //刷新未读消息数目
}
}
},
... ... @@ -264,7 +349,9 @@ class MessageItemF extends StatelessWidget {
HEmptyView(34),
message.message_type == "10" ||
message.message_type == "12" ||
message.message_type == "13"
message.message_type == "13" ||
message.message_type == "17" ||
message.message_type == "18"
? Expanded(
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
... ... @@ -291,81 +378,84 @@ class MessageItemF extends StatelessWidget {
fontSize:
ScreenUtil().setSp(32)),
)),
// attr == '' || attr == null
// ? Container(
// margin: EdgeInsets.only(
// right: ScreenUtil()
// .setWidth(12)),
// padding: EdgeInsets.symmetric(
// horizontal: ScreenUtil()
// .setWidth(16),
// vertical: ScreenUtil()
// .setWidth(6)),
// decoration: BoxDecoration(
// color: isTreated
// ? MyColours.color_BFC4D4
// : attr == '沉睡'
// ? Color.fromRGBO(
// 223, 33, 81, 1)
// : attr == '活跃'
// ? Color
// .fromRGBO(
// 81,
// 170,
// 94,
// 1)
// : attr == '流失'
// ? Color
// .fromRGBO(
// 109,
// 101,
// 248,
// 1)
// : Color
// .fromRGBO(
// 239,
// 143,
// 49,
// 1),
// borderRadius:
// BorderRadius.circular(
// 8)),
// child: Text(
// '活跃',
// style: TextStyle(
// color: MyColours
// .color_ffffff,
// fontSize: ScreenUtil()
// .setSp(24)),
// ),
// )
// : SizedBox(),
// Container(
// padding: EdgeInsets.symmetric(
// horizontal:
// ScreenUtil().setWidth(16),
// vertical:
// ScreenUtil().setWidth(6)),
// decoration: BoxDecoration(
// border: Border.all(
// width: ScreenUtil().setWidth(2),
// color: isTreated
// ? MyColours.color_BFC4D4
// : MyColours.color_F2995F,
// ),
// borderRadius:
// BorderRadius.circular(8)),
// child: Text(
// 'biaoqianvipdsds',
// // overflow: TextOverflow.ellipsis,
// style: TextStyle(
// color: isTreated
// ? MyColours.color_BFC4D4
// : MyColours.color_F2995F,
// fontSize:
// ScreenUtil().setSp(24)),
// ),
// )
attr == '' || attr == null
? Container(
margin: EdgeInsets.only(
right: ScreenUtil()
.setWidth(12)),
padding: EdgeInsets.symmetric(
horizontal: ScreenUtil()
.setWidth(16),
vertical: ScreenUtil()
.setWidth(6)),
decoration: BoxDecoration(
color: isTreated
? MyColours.color_BFC4D4
: attr == '沉睡'
? Color.fromRGBO(
223, 33, 81, 1)
: attr == '活跃'
? Color
.fromRGBO(
81,
170,
94,
1)
: attr == '流失'
? Color
.fromRGBO(
109,
101,
248,
1)
: Color
.fromRGBO(
239,
143,
49,
1),
borderRadius:
BorderRadius.circular(
8)),
child: Text(
'活跃',
style: TextStyle(
color: MyColours
.color_ffffff,
fontSize: ScreenUtil()
.setSp(24)),
),
)
: SizedBox(),
if (message.label != null &&
message.label != '')
Container(
padding: EdgeInsets.symmetric(
horizontal:
ScreenUtil().setWidth(16),
vertical:
ScreenUtil().setWidth(6)),
decoration: BoxDecoration(
border: Border.all(
width:
ScreenUtil().setWidth(2),
color: isTreated
? MyColours.color_BFC4D4
: MyColours.color_F2995F,
),
borderRadius:
BorderRadius.circular(8)),
child: Text(
message.label,
// overflow: TextOverflow.ellipsis,
style: TextStyle(
color: isTreated
? MyColours.color_BFC4D4
: MyColours.color_F2995F,
fontSize:
ScreenUtil().setSp(24)),
),
)
]);
})),
VEmptyView(16),
... ... @@ -631,6 +721,58 @@ class MessageItemF extends StatelessWidget {
await messageDialogModel.setMessageStatus(
context, params);
bus.emit("refresh_untreated_num"); //刷新未读消息数目
} else if (message.message_type == "17") {
//会员充值
NavigatorUtil.goMessageRechargeInfoPage(
context, message.payid);
bus.emit("remove_untreated_message", message.id);
Map<String, String> params = {
"sid": Provider.of<UserModel>(context, listen: false)
.user
.sellerid,
"id": message.id,
"status": "is_read"
};
await messageDialogModel.setMessageStatus(
context, params);
bus.emit("refresh_untreated_num"); //刷新未读消息数目
} else if (message.message_type == "18") {
//存酒超期
CustomerBySellerSunModel userHistoryEntity =
CustomerBySellerSunModel(
null,
null,
message.phone,
null,
null,
null,
null,
null,
null,
null,
null,
message.gid,
null,
null,
null,
null);
NavigatorUtil.goCustomerDetailPage(context,
userHistoryEntity, FromPage.FromPageMessagePage);
bus.emit("remove_untreated_message", message.id);
Map<String, String> params1 = {
"sid": Provider.of<UserModel>(context, listen: false)
.user
.sellerid,
"id": message.id,
"status": "is_read"
};
await messageDialogModel.setMessageStatus(
context, params1);
bus.emit("refresh_untreated_num"); //刷新未读消息数目
}
},
child: Image.asset(
... ...
... ... @@ -41,8 +41,9 @@ class _MessageRechargeInfoPageState extends State<MessageRechargeInfoPage> {
WidgetsBinding.instance.addPostFrameCallback((_) {
// if (widget.idstr != null && widget.idstr != 'null') {
// _getNewRechargeDetail();
// _getNewrechargeNoticeSunModel.recharge();
// }
_getPayMessageByID();
});
}
... ... @@ -50,6 +51,7 @@ class _MessageRechargeInfoPageState extends State<MessageRechargeInfoPage> {
_getPayMessageByID() async {
bool success =
await marketingCenterProvider.getPayMessageByID(context, widget.idStr);
setState(() {});
}
///输入框
... ... @@ -86,7 +88,6 @@ class _MessageRechargeInfoPageState extends State<MessageRechargeInfoPage> {
///券说明
Widget _explain(
String title,
String hintText,
) {
return Container(
child: Column(
... ... @@ -105,10 +106,15 @@ class _MessageRechargeInfoPageState extends State<MessageRechargeInfoPage> {
Padding(
padding: EdgeInsets.only(left: w(20)),
child: Text(
marketingCenterProvider.rechargeDetail.explain == '' ||
marketingCenterProvider.rechargeDetail.explain == null
marketingCenterProvider
.rechargeNoticeSunModel.recharge.explain ==
'' ||
marketingCenterProvider
.rechargeNoticeSunModel.recharge.explain ==
null
? '无'
: marketingCenterProvider.rechargeDetail.explain,
: marketingCenterProvider
.rechargeNoticeSunModel.recharge.explain,
// maxLengthEnforced: true,
style: TextStyle(
... ... @@ -137,7 +143,8 @@ class _MessageRechargeInfoPageState extends State<MessageRechargeInfoPage> {
),
Spacer(),
Image.asset(
marketingCenterProvider.rechargeDetail.isOpen == '1'
marketingCenterProvider.rechargeNoticeSunModel.recharge.isOpen ==
'1'
? Utils.getImgPath('swich_on')
: Utils.getImgPath('swich_off'),
width: ScreenUtil().setWidth(44 * 2),
... ... @@ -168,7 +175,7 @@ class _MessageRechargeInfoPageState extends State<MessageRechargeInfoPage> {
} else {
// _couponNetworkData(widget.index);
}
// _getNewRechargeDetail();
// _getNewrechargeNoticeSunModel.recharge();
},
emptyMsg: "暂时没有详情数据哦",
emptyImg: "empty_search",
... ... @@ -188,7 +195,7 @@ class _MessageRechargeInfoPageState extends State<MessageRechargeInfoPage> {
VEmptyView(56),
_text(
'顾客姓名',
'欧阳正德 先生',
'${marketingCenterProvider.rechargeNoticeSunModel.guest.rnameStr}',
),
VEmptyView(24),
MyDivider(
... ... @@ -199,7 +206,7 @@ class _MessageRechargeInfoPageState extends State<MessageRechargeInfoPage> {
VEmptyView(48),
_text(
'联系电话',
'1987665555',
'${marketingCenterProvider.rechargeNoticeSunModel.guest.phone}',
),
VEmptyView(24),
MyDivider(
... ... @@ -210,7 +217,7 @@ class _MessageRechargeInfoPageState extends State<MessageRechargeInfoPage> {
VEmptyView(48),
_text(
'顾客生日',
'2022-04-12',
'${marketingCenterProvider.rechargeNoticeSunModel.guest.cDayShow}',
),
VEmptyView(24),
MyDivider(
... ... @@ -221,7 +228,7 @@ class _MessageRechargeInfoPageState extends State<MessageRechargeInfoPage> {
VEmptyView(48),
_text(
'充值金额',
'1000元',
'${marketingCenterProvider.rechargeNoticeSunModel.recharge.rechargeMoney}元',
),
VEmptyView(24),
MyDivider(
... ... @@ -232,7 +239,7 @@ class _MessageRechargeInfoPageState extends State<MessageRechargeInfoPage> {
VEmptyView(48),
_text(
'活动名称',
'充1000送100',
'${marketingCenterProvider.rechargeNoticeSunModel.recharge.rname}',
),
VEmptyView(24),
MyDivider(
... ... @@ -243,7 +250,252 @@ class _MessageRechargeInfoPageState extends State<MessageRechargeInfoPage> {
VEmptyView(48),
_text(
'充值满',
'1000',
'${marketingCenterProvider.rechargeNoticeSunModel.recharge.rechargeMoney}',
),
VEmptyView(24),
MyDivider(
double.infinity,
w(0.5),
color: MyColours.color_E7E7E7,
),
VEmptyView(48),
Container(
alignment: Alignment.centerLeft,
child: Text(
'优惠活动',
style: TextStyle(
color: MyColours.color_515151,
fontSize: ScreenUtil().setSp(32)),
),
),
VEmptyView(28),
Padding(
padding: EdgeInsets.only(left: w(16)),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
// mainAxisAlignment: MainAxisAlignment.start,
children: [
if (marketingCenterProvider
.rechargeNoticeSunModel
.recharge
.rechargeList
.isPrice ==
'1')
Row(
mainAxisAlignment:
MainAxisAlignment.spaceBetween,
children: [
Text(
'赠送',
style: TextStyle(
color: MyColours.color_515151,
fontSize: ScreenUtil().setSp(32)),
),
Spacer(),
Text(
'${marketingCenterProvider.rechargeNoticeSunModel.recharge.rechargeList.price}元余额',
style: TextStyle(
color: MyColours.color_999999,
fontSize: ScreenUtil().setSp(32)),
),
HEmptyView(32)
],
),
if (marketingCenterProvider
.rechargeNoticeSunModel
.recharge
.rechargeList
.isPrice ==
'1')
VEmptyView(26),
if (marketingCenterProvider
.rechargeNoticeSunModel
.recharge
.rechargeList
.isScore ==
'1')
Row(
mainAxisAlignment:
MainAxisAlignment.spaceBetween,
children: [
Text(
'赠送',
style: TextStyle(
color: MyColours.color_515151,
fontSize: ScreenUtil().setSp(32)),
),
Spacer(),
Text(
'${marketingCenterProvider.rechargeNoticeSunModel.recharge.rechargeList.score}积分',
style: TextStyle(
color: MyColours.color_999999,
fontSize: ScreenUtil().setSp(32)),
),
HEmptyView(32)
],
),
if (marketingCenterProvider
.rechargeNoticeSunModel
.recharge
.rechargeList
.isScore ==
'1')
VEmptyView(26),
if (marketingCenterProvider
.rechargeNoticeSunModel
.recharge
.rechargeList
.isCoupons ==
'1')
Row(
mainAxisAlignment:
MainAxisAlignment.spaceBetween,
children: [
Text(
'赠送',
style: TextStyle(
color: MyColours.color_515151,
fontSize: ScreenUtil().setSp(32)),
),
Spacer(),
Text(
'优惠券',
style: TextStyle(
color: MyColours.color_999999,
fontSize: ScreenUtil().setSp(32)),
),
HEmptyView(32)
],
),
if (marketingCenterProvider
.rechargeNoticeSunModel
.recharge
.rechargeList
.isCoupons ==
'1')
VEmptyView(26),
if (marketingCenterProvider
.rechargeNoticeSunModel
.recharge
.rechargeList
.isCoupons ==
'1')
Wrap(
spacing: w(9),
runSpacing: w(9),
alignment: WrapAlignment.start,
runAlignment: WrapAlignment.start,
children: marketingCenterProvider
.rechargeNoticeSunModel
.recharge
.rechargeList
.coupons
.map((e) {
return InkWell(
onTap: () {
NavigatorUtil.goCouponDetailPage(
context, null,
idStr: e.id);
},
child: Text(
e.aname,
style: TextStyle(
color: MyColours.color_438E93,
fontSize:
ScreenUtil().setSp(32)),
));
}).toList()),
VEmptyView(26),
],
),
),
MyDivider(
double.infinity,
w(0.5),
color: MyColours.color_E7E7E7,
),
VEmptyView(48),
Row(
children: [
Text(
'使用限制:',
style: TextStyle(
color: MyColours.color_515151,
fontSize: ScreenUtil().setSp(32)),
),
Spacer(),
Text(
marketingCenterProvider.rechargeNoticeSunModel
.recharge.expDate.isFix ==
'1'
? '无'
: marketingCenterProvider
.rechargeNoticeSunModel
.recharge
.expDate
.isWeek ==
'1'
? '每周指定日期可用'
: '会员生日当天',
style: TextStyle(
color: MyColours.color_999999,
fontSize: ScreenUtil().setSp(32)),
),
HEmptyView(32)
],
),
if (marketingCenterProvider.rechargeNoticeSunModel
.recharge.expDate.isWeek ==
'1')
VEmptyView(26),
if (marketingCenterProvider.rechargeNoticeSunModel
.recharge.expDate.isWeek ==
'1')
Align(
alignment: Alignment.centerRight,
child: Padding(
padding: EdgeInsets.only(right: w(16)),
child: Text(
marketingCenterProvider
.rechargeNoticeSunModel
.recharge
.expDate
.weekDateShow,
maxLines: 10,
style: TextStyle(
color: MyColours.color_999999,
fontSize: ScreenUtil().setSp(32)),
))),
VEmptyView(24),
MyDivider(
double.infinity,
w(0.5),
color: MyColours.color_E7E7E7,
),
VEmptyView(48),
Row(
children: [
Text(
'有效期:',
style: TextStyle(
color: MyColours.color_515151,
fontSize: ScreenUtil().setSp(32)),
),
Spacer(),
Text(
marketingCenterProvider.rechargeNoticeSunModel
.recharge.stimeStr +
'至' +
marketingCenterProvider
.rechargeNoticeSunModel
.recharge
.etimeStr,
style: TextStyle(
color: MyColours.color_999999,
fontSize: ScreenUtil().setSp(32)),
),
HEmptyView(32)
],
),
VEmptyView(24),
MyDivider(
... ... @@ -252,224 +504,10 @@ class _MessageRechargeInfoPageState extends State<MessageRechargeInfoPage> {
color: MyColours.color_E7E7E7,
),
VEmptyView(48),
// Container(
// alignment: Alignment.centerLeft,
// child: Text(
// '优惠活动',
// style: TextStyle(
// color: MyColours.color_515151,
// fontSize: ScreenUtil().setSp(32)),
// ),
// ),
// VEmptyView(28),
// Padding(
// padding: EdgeInsets.only(left: w(16)),
// child: Column(
// crossAxisAlignment: CrossAxisAlignment.start,
// // mainAxisAlignment: MainAxisAlignment.start,
// children: [
// if (marketingCenterProvider
// .rechargeDetail.rechargeList.isPrice ==
// '1')
// Row(
// mainAxisAlignment:
// MainAxisAlignment.spaceBetween,
// children: [
// Text(
// '赠送',
// style: TextStyle(
// color: MyColours.color_515151,
// fontSize: ScreenUtil().setSp(32)),
// ),
// Spacer(),
// Text(
// '${marketingCenterProvider.rechargeDetail.rechargeList.price}元余额',
// style: TextStyle(
// color: MyColours.color_999999,
// fontSize: ScreenUtil().setSp(32)),
// ),
// HEmptyView(32)
// ],
// ),
// if (marketingCenterProvider
// .rechargeDetail.rechargeList.isPrice ==
// '1')
// VEmptyView(26),
// if (marketingCenterProvider
// .rechargeDetail.rechargeList.isScore ==
// '1')
// Row(
// mainAxisAlignment:
// MainAxisAlignment.spaceBetween,
// children: [
// Text(
// '赠送',
// style: TextStyle(
// color: MyColours.color_515151,
// fontSize: ScreenUtil().setSp(32)),
// ),
// Spacer(),
// Text(
// '${marketingCenterProvider.rechargeDetail.rechargeList.score}积分',
// style: TextStyle(
// color: MyColours.color_999999,
// fontSize: ScreenUtil().setSp(32)),
// ),
// HEmptyView(32)
// ],
// ),
// if (marketingCenterProvider
// .rechargeDetail.rechargeList.isScore ==
// '1')
// VEmptyView(26),
// if (marketingCenterProvider.rechargeDetail
// .rechargeList.isCoupons ==
// '1')
// Row(
// mainAxisAlignment:
// MainAxisAlignment.spaceBetween,
// children: [
// Text(
// '赠送',
// style: TextStyle(
// color: MyColours.color_515151,
// fontSize: ScreenUtil().setSp(32)),
// ),
// Spacer(),
// Text(
// '优惠券',
// style: TextStyle(
// color: MyColours.color_999999,
// fontSize: ScreenUtil().setSp(32)),
// ),
// HEmptyView(32)
// ],
// ),
// if (marketingCenterProvider.rechargeDetail
// .rechargeList.isCoupons ==
// '1')
// VEmptyView(26),
// if (marketingCenterProvider.rechargeDetail
// .rechargeList.isCoupons ==
// '1')
// Wrap(
// spacing: w(9),
// runSpacing: w(9),
// alignment: WrapAlignment.start,
// runAlignment: WrapAlignment.start,
// children: marketingCenterProvider
// .rechargeDetail.rechargeList.coupons
// .map((e) {
// return InkWell(
// onTap: () {
// NavigatorUtil.goCouponDetailPage(
// context, null,
// idStr: e.id);
// },
// child: Text(
// e.aname,
// style: TextStyle(
// color: MyColours.color_438E93,
// fontSize:
// ScreenUtil().setSp(32)),
// ));
// }).toList()),
// VEmptyView(26),
// ],
// ),
// ),
// MyDivider(
// double.infinity,
// w(0.5),
// color: MyColours.color_E7E7E7,
// ),
// VEmptyView(48),
// Row(
// children: [
// Text(
// '使用限制:',
// style: TextStyle(
// color: MyColours.color_515151,
// fontSize: ScreenUtil().setSp(32)),
// ),
// Spacer(),
// Text(
// marketingCenterProvider
// .rechargeDetail.expDate.isFix ==
// '1'
// ? '无'
// : marketingCenterProvider.rechargeDetail
// .expDate.isWeek ==
// '1'
// ? '每周指定日期可用'
// : '会员生日当天',
// style: TextStyle(
// color: MyColours.color_999999,
// fontSize: ScreenUtil().setSp(32)),
// ),
// HEmptyView(32)
// ],
// ),
// if (marketingCenterProvider
// .rechargeDetail.expDate.isWeek ==
// '1')
// VEmptyView(26),
// if (marketingCenterProvider
// .rechargeDetail.expDate.isWeek ==
// '1')
// Align(
// alignment: Alignment.centerRight,
// child: Padding(
// padding: EdgeInsets.only(right: w(16)),
// child: Text(
// marketingCenterProvider
// .rechargeDetail.expDate.weekDateShow,
// maxLines: 10,
// style: TextStyle(
// color: MyColours.color_999999,
// fontSize: ScreenUtil().setSp(32)),
// ))),
// VEmptyView(24),
// MyDivider(
// double.infinity,
// w(0.5),
// color: MyColours.color_E7E7E7,
// ),
// VEmptyView(48),
// Row(
// children: [
// Text(
// '有效期:',
// style: TextStyle(
// color: MyColours.color_515151,
// fontSize: ScreenUtil().setSp(32)),
// ),
// Spacer(),
// Text(
// marketingCenterProvider
// .rechargeDetail.stimeStr +
// '至' +
// marketingCenterProvider
// .rechargeDetail.etimeStr,
// style: TextStyle(
// color: MyColours.color_999999,
// fontSize: ScreenUtil().setSp(32)),
// ),
// HEmptyView(32)
// ],
// ),
// VEmptyView(24),
// MyDivider(
// double.infinity,
// w(0.5),
// color: MyColours.color_E7E7E7,
// ),
// VEmptyView(48),
// _explain(
// '备注',
// '请输入备注信息',
// ),
// VEmptyView(48),
_explain(
'备注',
),
VEmptyView(48),
// _canUse()
],
)),
... ...
... ... @@ -176,7 +176,7 @@ class MessageTreatedPageState extends State<MessageTreatedPage> {
typeid = '17';
} else if (index == 6) {
//存酒超期
// typeid = '17';
typeid = '18';
}
getMessage(typeid, showLoading: true);
},
... ...
... ... @@ -30,7 +30,7 @@ class MarketingCenterHomePage extends StatefulWidget {
class _MarketingCenterHomePageState extends State<MarketingCenterHomePage> {
MarketingCenterProvider marketingCenterProvider;
bool select = false; //启用预订安排通知图文模式
bool selectShowPrice = false; //分享排菜单给客户时展示菜品价格
bool selectShowPrice = true; //分享排菜单给客户时展示菜品价格
@override
void initState() {
... ...
... ... @@ -527,47 +527,48 @@ class _OnlineCheckEditPageState extends State<OnlineCheckEditPage> {
_customInfoItemWidget(
'发票抬头',
_onlineCheckEditProvider.orderInfoSunModel != null
? _onlineCheckEditProvider
? (_onlineCheckEditProvider
.orderInfoSunModel.invoice?.title ??
''
'')
: '',
fontsize: 20),
Offstage(
offstage:
_onlineCheckEditProvider.orderInfoSunModel != null &&
(_onlineCheckEditProvider.orderInfoSunModel != null &&
_onlineCheckEditProvider
.orderInfoSunModel.invoice?.taxnumber !=
null &&
_onlineCheckEditProvider
.orderInfoSunModel.invoice?.taxnumber !=
''
'')
? false
: true,
child: Padding(
padding: EdgeInsets.only(top: ScreenUtil().setWidth(24)),
child: _customInfoItemWidget(
'税号',
_onlineCheckEditProvider.orderInfoSunModel != null &&
(_onlineCheckEditProvider.orderInfoSunModel != null &&
_onlineCheckEditProvider
.orderInfoSunModel.invoice?.taxnumber !=
null &&
_onlineCheckEditProvider
.orderInfoSunModel.invoice?.taxnumber !=
''
? false
'')
? _onlineCheckEditProvider
.orderInfoSunModel.invoice?.taxnumber
: '',
fontsize: 20),
),
),
Offstage(
offstage:
_onlineCheckEditProvider.orderInfoSunModel != null &&
(_onlineCheckEditProvider.orderInfoSunModel != null &&
_onlineCheckEditProvider.orderInfoSunModel.invoice
?.companyaddress !=
null &&
_onlineCheckEditProvider.orderInfoSunModel.invoice
?.companyaddress !=
''
'')
? false
: true,
child: Padding(
... ... @@ -584,13 +585,13 @@ class _OnlineCheckEditPageState extends State<OnlineCheckEditPage> {
),
Offstage(
offstage:
_onlineCheckEditProvider.orderInfoSunModel != null &&
(_onlineCheckEditProvider.orderInfoSunModel != null &&
_onlineCheckEditProvider
.orderInfoSunModel.invoice?.telephone !=
null &&
_onlineCheckEditProvider
.orderInfoSunModel.invoice?.telephone !=
''
'')
? false
: true,
child: Padding(
... ... @@ -607,13 +608,13 @@ class _OnlineCheckEditPageState extends State<OnlineCheckEditPage> {
),
Offstage(
offstage:
_onlineCheckEditProvider.orderInfoSunModel != null &&
(_onlineCheckEditProvider.orderInfoSunModel != null &&
_onlineCheckEditProvider
.orderInfoSunModel.invoice?.bankname !=
null &&
_onlineCheckEditProvider
.orderInfoSunModel.invoice?.bankname !=
''
'')
? false
: true,
child: Padding(
... ...
... ... @@ -332,7 +332,7 @@ class MarketingCenterProvider extends ChangeNotifier {
return false;
});
if (baseResp.code == Constant.status_success) {
rechargeNoticeSunModel = RechargeNoticeModel.fromJson(baseResp.data).data;
rechargeNoticeSunModel = RechargeNoticeModel.fromJson(baseResp.responseData).data;
pageStateMessageDetail = PageState.Success;
notifyListeners();
return true;
... ...