Commit cf278d35689c4e46ca041e8aa0a0bba50dbb4a89

Authored by wdn127929
2 parents 0dd55734 ccb9c0c7

消息中心新增 纪念日提醒和完善预订信息提醒 还差推送栏数据接收

No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
... ... @@ -131,6 +131,12 @@ class NewUnmessage extends Object {
@JsonKey(name: 'store_cdate')
String storeCdate;
@JsonKey(name: 'desc')
String desc;
@JsonKey(name: 'dtime')
String dtime;
NewUnmessage(
this.id,
this.uid,
... ... @@ -159,7 +165,9 @@ class NewUnmessage extends Object {
this.payid,
this.gid,
this.phone,
this.storeCdate);
this.storeCdate,
this.desc,
this.dtime);
String get rnameStr {
if (rname == null || rname == '' || rname == ' ') return "";
... ... @@ -180,7 +188,7 @@ class NewUnmessage extends Object {
///年月日 餐段
String get ddateStr {
if (message_type != '17' && message_type != '18') {
if (message_type != '17' && message_type != '18' && message_type != '19') {
String ymd = "";
if (ddate_long != null) {
DateTime dateTime = DateTime.fromMillisecondsSinceEpoch(
... ... @@ -208,6 +216,8 @@ class NewUnmessage extends Object {
return '会员充值${price}元';
} else if (message_type == '18') {
return '${storeCdateShow} 存酒';
}else if (message_type == '19') {
return '${desc} ${dtime}';
}
}
}
... ...
... ... @@ -69,7 +69,9 @@ NewUnmessage _$NewUnmessageFromJson(Map<String, dynamic> json) {
json['pay_id'] as String,
json['gid'] as String,
json['phone'] as String,
json['store_cdate'] as String);
json['store_cdate'] as String,
json['desc'] as String,
json['dtime'] as String);
}
Map<String, dynamic> _$NewUnmessageToJson(NewUnmessage instance) =>
... ... @@ -101,5 +103,7 @@ Map<String, dynamic> _$NewUnmessageToJson(NewUnmessage instance) =>
'pay_id': instance.payid,
'gid': instance.gid,
'phone': instance.phone,
'store_cdate': instance.storeCdate
'store_cdate': instance.storeCdate,
'desc': instance.desc,
'dtime': instance.dtime
};
... ...
... ... @@ -28,7 +28,9 @@ class EditReserverPage extends StatefulWidget {
final String name;
final String sex;
final bool needBtn;
EditReserverPage(this.rid, this.name, this.sex, {Key key, this.needBtn})
final String mid;
EditReserverPage(this.rid, this.name, this.sex, this.mid,
{Key key, this.needBtn})
: super(key: key);
@override
... ... @@ -110,6 +112,18 @@ class _EditReserverPageState extends State<EditReserverPage> {
}
}
//处理在线预订
setMessageStatus() {
bus.emit("remove_untreated_message", widget.mid);
bus.emit("refresh_untreated_num"); //刷新未读消息数目
Map<String, String> params = {
"sid": Provider.of<UserModel>(context, listen: false).user.sellerid,
"id": widget.mid,
"status": "is_handle"
};
detailModel.setMessageStatus(context, params);
}
_getContactData() async {
Contact contact = await _contactPicker.selectContactWithNative();
setState(() {
... ... @@ -581,6 +595,10 @@ class _EditReserverPageState extends State<EditReserverPage> {
.phoneController.text
.replaceAll(' ', ''));
if (sucess) {
if (widget.mid != '' &&
widget.mid != null) {
setMessageStatus();
}
EventBus().emit(
"refresh_tablemanager"); //刷新桌位
bus.emit("refresh_book_list"); //刷新已预订列表
... ...
... ... @@ -2776,7 +2776,8 @@ class NotebookDetailPageState extends State<NotebookDetailPage> {
'',
'',
needBtn:
false);
false,
mid:widget.mid);
}
},
))
... ...
... ... @@ -78,8 +78,16 @@ class MessageDialogItemF extends StatelessWidget {
btnname = 'online_order_go';
} else if (message.message_type == "18") {
titleText = "存酒\n超期";
bgcolor = MyColours.color_F78D94;
btnname = 'order_go';
bgcolor = MyColours.color_F2995F;
btnname = 'online_order_go';
} else if (message.message_type == "19") {
titleText = "纪念日\n提醒";
bgcolor = MyColours.color_F2995F;
btnname = 'online_order_go';
} else if (message.message_type == "20") {
titleText = "店内\n消息";
bgcolor = MyColours.color_5F7292;
btnname = 'store_info_go';
}
if (isTreated) {
bgcolor = MyColours.color_BFC4D4;
... ... @@ -233,6 +241,44 @@ class MessageDialogItemF extends StatelessWidget {
};
await messageDialogModel.setMessageStatus(context, params1);
bus.emit("refresh_untreated_num"); //刷新未读消息数目
} else if (message.message_type == "19") {
//纪念日提醒
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"); //刷新未读消息数目
} else if (message.message_type == "20") {
//完善客人信息
NavigatorUtil.goNotebookDetailPage(
context, message.rid.toString(), message.uid,
mid: message.id);
}
},
child: Stack(
... ... @@ -281,7 +327,8 @@ class MessageDialogItemF extends StatelessWidget {
message.message_type == "12" ||
message.message_type == "13" ||
message.message_type == "17" ||
message.message_type == "18"
message.message_type == "18" ||
message.message_type == "19"
? Expanded(
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
... ... @@ -492,12 +539,14 @@ class MessageDialogItemF extends StatelessWidget {
],
))
: SizedBox(),
message.message_type == "15"
message.message_type == "15" || message.message_type == "20"
? Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
"请确认 ${DateUtil.formatDate(DateTime.parse(message.ddate.replaceAll('/', '-')), format: DateFormats.y_mo_d)} ${message.dsoltStr} \n${message.tableClassName ?? ''}${message.tableClassName == null ? '' : ' '}客人是否如约到店",
message.message_type == "15"
? "请确认 ${DateUtil.formatDate(DateTime.parse(message.ddate.replaceAll('/', '-')), format: DateFormats.y_mo_d)} ${message.dsoltStr} \n${message.tableClassName ?? ''}${message.tableClassName == null ? '' : ' '}客人是否如约到店"
: "请完善 ${DateUtil.formatDate(DateTime.parse(message.ddate.replaceAll('/', '-')), format: DateFormats.y_mo_d)} ${message.dsoltStr} \n${message.tableClassName ?? ''}${message.tableClassName == null ? '' : ' '}预订客人信息",
maxLines: 3,
overflow: TextOverflow.ellipsis,
style: TextStyle(
... ... @@ -703,6 +752,46 @@ class MessageDialogItemF extends StatelessWidget {
await messageDialogModel.setMessageStatus(
context, params1);
bus.emit("refresh_untreated_num"); //刷新未读消息数目
} else if (message.message_type == "19") {
//纪念日提醒
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"); //刷新未读消息数目
} else if (message.message_type == "20") {
//完善客人信息
NavigatorUtil.goNotebookDetailPage(
context, message.rid.toString(), message.uid,
mid: message.id);
}
},
child: Image.asset(
... ...
... ... @@ -75,8 +75,16 @@ class MessageItemF extends StatelessWidget {
btnname = 'online_order_go';
} else if (message.message_type == "18") {
titleText = "存酒\n超期";
bgcolor = MyColours.color_F78D94;
btnname = 'order_go';
bgcolor = MyColours.color_F2995F;
btnname = 'online_order_go';
} else if (message.message_type == "19") {
titleText = "纪念日\n提醒";
bgcolor = MyColours.color_F2995F;
btnname = 'online_order_go';
} else if (message.message_type == "20") {
titleText = "店内\n消息";
bgcolor = MyColours.color_5F7292;
btnname = 'store_info_go';
}
if (isTreated) {
bgcolor = MyColours.color_BFC4D4;
... ... @@ -153,6 +161,35 @@ class MessageItemF extends StatelessWidget {
NavigatorUtil.goCustomerDetailPage(
context, userHistoryEntity, FromPage.FromPageMessagePage);
} else if (message.message_type == "19") {
//纪念日提醒
CustomerBySellerSunModel userHistoryEntity =
CustomerBySellerSunModel(
null,
null,
message.phone,
// '057128223456',
null,
null,
null,
null,
null,
null,
null,
null,
message.gid,
// '19358',
null,
null,
null,
null);
NavigatorUtil.goCustomerDetailPage(
context, userHistoryEntity, FromPage.FromPageMessagePage);
} else if (message.message_type == "20") {
//完善客人信息
NavigatorUtil.goNotebookDetailPage(
context, message.rid.toString(), message.uid);
}
} else {
messageDialogModel.removeMessage(message.id);
... ... @@ -304,6 +341,45 @@ class MessageItemF extends StatelessWidget {
};
await messageDialogModel.setMessageStatus(context, params1);
bus.emit("refresh_untreated_num"); //刷新未读消息数目
} else if (message.message_type == "19") {
//纪念日提醒
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"); //刷新未读消息数目
} else if (message.message_type == "20") {
//完善客人信息
NavigatorUtil.goNotebookDetailPage(
context, message.rid.toString(), message.uid,
mid: message.id);
}
}
},
... ... @@ -339,6 +415,7 @@ class MessageItemF extends StatelessWidget {
offset: Offset(0, 0.1 / 2), //1为 StrutStyle 的 leading的值
child: Text(
titleText,
textAlign: TextAlign.center,
style: TextStyle(
color: MyColours.color_ffffff,
fontSize: ScreenUtil().setSp(24),
... ... @@ -353,7 +430,8 @@ class MessageItemF extends StatelessWidget {
message.message_type == "12" ||
message.message_type == "13" ||
message.message_type == "17" ||
message.message_type == "18"
message.message_type == "18" ||
message.message_type == "19"
? Expanded(
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
... ... @@ -564,13 +642,15 @@ class MessageItemF extends StatelessWidget {
],
))
: SizedBox(),
message.message_type == "15"
message.message_type == "15" || message.message_type == "20"
? Expanded(
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
"请确认 ${DateUtil.formatDate(DateTime.parse(message.ddate.replaceAll('/', '-')), format: DateFormats.y_mo_d)} ${message.dsoltStr} \n${message.tableClassName ?? ''}${message.tableClassName == null ? '' : ' '}客人是否如约到店",
message.message_type == "15"
? "请确认 ${DateUtil.formatDate(DateTime.parse(message.ddate.replaceAll('/', '-')), format: DateFormats.y_mo_d)} ${message.dsoltStr} \n${message.tableClassName ?? ''}${message.tableClassName == null ? '' : ' '}客人是否如约到店"
: "请完善 ${DateUtil.formatDate(DateTime.parse(message.ddate.replaceAll('/', '-')), format: DateFormats.y_mo_d)} ${message.dsoltStr} \n${message.tableClassName ?? ''}${message.tableClassName == null ? '' : ' '}预订客人信息",
maxLines: 3,
overflow: TextOverflow.ellipsis,
style: TextStyle(
... ... @@ -775,6 +855,46 @@ class MessageItemF extends StatelessWidget {
await messageDialogModel.setMessageStatus(
context, params1);
bus.emit("refresh_untreated_num"); //刷新未读消息数目
} else if (message.message_type == "19") {
//纪念日提醒
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"); //刷新未读消息数目
} else if (message.message_type == "20") {
//完善客人信息
NavigatorUtil.goNotebookDetailPage(
context, message.rid.toString(), message.uid,
mid: message.id);
}
},
child: Image.asset(
... ...
... ... @@ -87,7 +87,20 @@ class MessageTreatedPageState extends State<MessageTreatedPage> {
model7.title = '存酒超期';
model7.select = false;
menuTitle = [model1, model2, model3, model4, model5, model6, model7];
MessageMenuModel model8 = MessageMenuModel();
model8.title = '纪念日';
model8.select = false;
menuTitle = [
model1,
model2,
model3,
model4,
model5,
model6,
model7,
model8
];
// menuTitle = [model1, model2, model3, model4, model5];
}
... ... @@ -178,6 +191,10 @@ class MessageTreatedPageState extends State<MessageTreatedPage> {
//存酒超期
typeid = '18';
}
else if (index == 7) {
//纪念日
typeid = '19';
}
getMessage(typeid, showLoading: true);
},
child: Container(
... ...
... ... @@ -216,12 +216,19 @@ class MyPageState extends State<MyPage> with WidgetsBindingObserver {
DateUtil.formatDate(DateTime.now(), format: DateFormats.y_mo_d) +
' 00:00:00';
DateTime datenow = DateUtil.getDateTime(from);
//比较相差的天数
int day = edate.difference(datenow).inDays;
int difference = edate.difference(datenow).inDays;
int differenceSeconds = edate.difference(datenow).inSeconds;
if (difference < 0 || (difference == 0 && differenceSeconds <= 0)) {
//过期
outDay = '0';
} else {
outDay = difference.toString();
}
// difference < 0 || (difference == 0 && differenceSeconds <= 0
outDay = day < 0 ? '0' : day.toString();
// print(outDay);
} else {
outDay = '0';
... ...
... ... @@ -574,9 +574,9 @@ class NavigatorUtil {
/// 填写预订联系人页面
static Future<dynamic> goEditReserverPage(
BuildContext context, String rid, String name, String sex,
{replace = false, bool needBtn = false}) {
{replace = false, bool needBtn = false, String mid}) {
return _navigateTo(context,
"${Routes.edit_reserver_page}?rid=${rid}&needBtn=$needBtn&name=${Uri.encodeComponent(name)}&sex=$sex",
"${Routes.edit_reserver_page}?rid=${rid}&mid=${mid}&needBtn=$needBtn&name=${Uri.encodeComponent(name)}&sex=$sex",
replace: replace);
}
... ...
... ... @@ -328,7 +328,7 @@ var reserveDetailHandler = new Handler(
var editReserverPageHandle = new Handler(
handlerFunc: (BuildContext context, Map<String, List<Object>> params) {
String rid = params['rid'].first;
// String mid = params['mid'].first;
String mid = params['mid'].first;
// String uid = params['uid'].first;
String name = params["name"].first;
String sex = params["sex"].first;
... ... @@ -337,8 +337,8 @@ var editReserverPageHandle = new Handler(
create: (_) => NotebookDetailModel(),
child: ChangeNotifierProvider<CouponProvider>(
create: (_) => CouponProvider(),
child: EditReserverPage(rid, name, sex, needBtn: needBtn
// mid: mid,
child: EditReserverPage(rid, name, sex, mid, needBtn: needBtn
// mid:
// uid: uid,
// fromNotify: fromNotify,
)));
... ...