Commit 4d6776afa7dfebc60548804172d416113350c240

Authored by wdn127929
1 parent fd51f221

消息中心修改

@@ -81,7 +81,7 @@ class Message { @@ -81,7 +81,7 @@ class Message {
81 case "11": //在线预订 81 case "11": //在线预订
82 if (is_handle == "0") { 82 if (is_handle == "0") {
83 //未处理 下单时间 83 //未处理 下单时间
84 - temp_date = cdate; 84 + temp_date = '${cdate}';
85 } else { 85 } else {
86 temp_date = handle_time; //已处理 处理时间 86 temp_date = handle_time; //已处理 处理时间
87 } 87 }
@@ -5,6 +5,7 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; @@ -5,6 +5,7 @@ import 'package:flutter_screenutil/flutter_screenutil.dart';
5 import 'package:one_key/constant/state.dart'; 5 import 'package:one_key/constant/state.dart';
6 import 'package:one_key/models/manager.dart'; 6 import 'package:one_key/models/manager.dart';
7 import 'package:one_key/models/notebook_detail.dart'; 7 import 'package:one_key/models/notebook_detail.dart';
  8 +import 'package:one_key/provider/message_dialog_model.dart';
8 import 'package:one_key/provider/notebook_detail_model.dart'; 9 import 'package:one_key/provider/notebook_detail_model.dart';
9 import 'package:one_key/provider/user_model.dart'; 10 import 'package:one_key/provider/user_model.dart';
10 import 'package:one_key/res/colors.dart'; 11 import 'package:one_key/res/colors.dart';
@@ -57,7 +58,7 @@ class HandleOnlinePageState extends State<HandleOnlinePage> { @@ -57,7 +58,7 @@ class HandleOnlinePageState extends State<HandleOnlinePage> {
57 58
58 bool isRefused = false; //是否已拒绝 59 bool isRefused = false; //是否已拒绝
59 bool isPause = false; //是否暂停预订 60 bool isPause = false; //是否暂停预订
60 - bool isSelf=false;//订单是否自己处理 61 + bool isSelf = false; //订单是否自己处理
61 StateSetter refuseDialogState; //决绝弹框setState 62 StateSetter refuseDialogState; //决绝弹框setState
62 63
63 @override 64 @override
@@ -92,11 +93,13 @@ class HandleOnlinePageState extends State<HandleOnlinePage> { @@ -92,11 +93,13 @@ class HandleOnlinePageState extends State<HandleOnlinePage> {
92 } 93 }
93 } 94 }
94 }); 95 });
95 - if(detailEntity.status=="6"){//已拒绝不跳转  
96 - if(refuseDialogState!=null){  
97 - refuseDialogState((){}); 96 + if (detailEntity.status == "6") {
  97 + //已拒绝不跳转
  98 + if (refuseDialogState != null) {
  99 + refuseDialogState(() {});
98 } 100 }
99 - }else if (detailEntity.status != "0") {//已拒绝 101 + } else if (detailEntity.status != "0") {
  102 + //已拒绝
100 //已处理 103 //已处理
101 Future.delayed(Duration(milliseconds: 200), () { 104 Future.delayed(Duration(milliseconds: 200), () {
102 NavigatorUtil.goNotebookDetailPage(context, detailEntity.id, 105 NavigatorUtil.goNotebookDetailPage(context, detailEntity.id,
@@ -308,7 +311,8 @@ class HandleOnlinePageState extends State<HandleOnlinePage> { @@ -308,7 +311,8 @@ class HandleOnlinePageState extends State<HandleOnlinePage> {
308 ], 311 ],
309 ), 312 ),
310 ); 313 );
311 - if(detailEntity.status=="6"&&isSelf==false){//订单已被拒绝 314 + if (detailEntity.status == "6" && isSelf == false) {
  315 + //订单已被拒绝
312 Navigator.of(context).pop(); 316 Navigator.of(context).pop();
313 } 317 }
314 return container; 318 return container;
@@ -335,7 +339,15 @@ class HandleOnlinePageState extends State<HandleOnlinePage> { @@ -335,7 +339,15 @@ class HandleOnlinePageState extends State<HandleOnlinePage> {
335 //处理在线预订 339 //处理在线预订
336 setReserveStatus(String status, {String tid = "", String ac = ""}) async { 340 setReserveStatus(String status, {String tid = "", String ac = ""}) async {
337 bus.emit("remove_untreated_message", widget.mid); 341 bus.emit("remove_untreated_message", widget.mid);
338 - bus.emit("refresh_untreated_num");//刷新未读消息数目 342 + MessageDialogModel messageDialogModel =
  343 + Provider.of<MessageDialogModel>(context, listen: false);
  344 + Map<String, String> paramsSetMessageStatus = {
  345 + "sid": Provider.of<UserModel>(context, listen: false).user.sellerid,
  346 + "id": widget.mid,
  347 + "status": "is_handle"
  348 + };
  349 + await messageDialogModel.setMessageStatus(context, paramsSetMessageStatus);
  350 + bus.emit("refresh_untreated_num"); //刷新未读消息数目
339 UserModel userModel = Provider.of<UserModel>(context, listen: false); 351 UserModel userModel = Provider.of<UserModel>(context, listen: false);
340 Map<String, String> causeMap = { 352 Map<String, String> causeMap = {
341 "uid": userModel.user.openid, 353 "uid": userModel.user.openid,
@@ -350,20 +362,20 @@ class HandleOnlinePageState extends State<HandleOnlinePage> { @@ -350,20 +362,20 @@ class HandleOnlinePageState extends State<HandleOnlinePage> {
350 "cause": json.encode(causeMap) 362 "cause": json.encode(causeMap)
351 }; 363 };
352 if (status == "6") { 364 if (status == "6") {
353 - isPause = (ac=="1"?true:false); 365 + isPause = (ac == "1" ? true : false);
354 params['ac'] = ac; //0=直接拒绝 1=拒绝并暂停预订 366 params['ac'] = ac; //0=直接拒绝 1=拒绝并暂停预订
355 } 367 }
356 bool success = await detailModel.setReserveStatus(context, params, 368 bool success = await detailModel.setReserveStatus(context, params,
357 - ifPush: (status=="6" ? false : true), showLoading: true); 369 + ifPush: (status == "6" ? false : true), showLoading: true);
358 if (success != null && success) { 370 if (success != null && success) {
359 bus.emit("refresh_book_list"); 371 bus.emit("refresh_book_list");
360 if (status == "6") { 372 if (status == "6") {
361 isRefused = true; 373 isRefused = true;
362 - isSelf=true; 374 + isSelf = true;
363 _getOrderListData(); 375 _getOrderListData();
364 } 376 }
365 - }else{  
366 - isSelf=false; 377 + } else {
  378 + isSelf = false;
367 _getOrderListData(); 379 _getOrderListData();
368 } 380 }
369 } 381 }
@@ -371,7 +383,7 @@ class HandleOnlinePageState extends State<HandleOnlinePage> { @@ -371,7 +383,7 @@ class HandleOnlinePageState extends State<HandleOnlinePage> {
371 //处理在线预订 383 //处理在线预订
372 setMessageStatus() { 384 setMessageStatus() {
373 bus.emit("remove_untreated_message", widget.mid); 385 bus.emit("remove_untreated_message", widget.mid);
374 - bus.emit("refresh_untreated_num");//刷新未读消息数目 386 + bus.emit("refresh_untreated_num"); //刷新未读消息数目
375 Map<String, String> params = { 387 Map<String, String> params = {
376 "sid": Provider.of<UserModel>(context, listen: false).user.sellerid, 388 "sid": Provider.of<UserModel>(context, listen: false).user.sellerid,
377 "id": widget.mid, 389 "id": widget.mid,
@@ -290,7 +290,12 @@ class _MessageHasOrderFoodPageState extends State<MessageHasOrderFoodPage> { @@ -290,7 +290,12 @@ class _MessageHasOrderFoodPageState extends State<MessageHasOrderFoodPage> {
290 _orderFoodProvider = Provider.of<OrderFoodProvider>(context, listen: true); 290 _orderFoodProvider = Provider.of<OrderFoodProvider>(context, listen: true);
291 return Scaffold( 291 return Scaffold(
292 backgroundColor: MyColours.color_ffffff, 292 backgroundColor: MyColours.color_ffffff,
293 - appBar: SystemAppBar('已点菜品'), 293 + appBar: SystemAppBar(
  294 + '已点菜品',
  295 + onTap: () {
  296 + Navigator.of(context).pop();
  297 + },
  298 + ),
294 body: Consumer<OrderFoodProvider>( 299 body: Consumer<OrderFoodProvider>(
295 builder: (context, model, _) { 300 builder: (context, model, _) {
296 if (model.pageState != PageState.Success) { 301 if (model.pageState != PageState.Success) {
@@ -4,9 +4,11 @@ import 'package:flutter_easyrefresh/easy_refresh.dart'; @@ -4,9 +4,11 @@ import 'package:flutter_easyrefresh/easy_refresh.dart';
4 import 'package:flutter_screenutil/screenutil.dart'; 4 import 'package:flutter_screenutil/screenutil.dart';
5 import 'package:one_key/constant/state.dart'; 5 import 'package:one_key/constant/state.dart';
6 import 'package:one_key/pages/message/messsage_item.dart'; 6 import 'package:one_key/pages/message/messsage_item.dart';
  7 +import 'package:one_key/provider/message_dialog_model.dart';
7 import 'package:one_key/provider/message_model.dart'; 8 import 'package:one_key/provider/message_model.dart';
8 import 'package:one_key/provider/user_model.dart'; 9 import 'package:one_key/provider/user_model.dart';
9 import 'package:one_key/res/colors.dart'; 10 import 'package:one_key/res/colors.dart';
  11 +import 'package:one_key/utils/event_bus.dart';
10 import 'package:one_key/widgets/page_error.dart'; 12 import 'package:one_key/widgets/page_error.dart';
11 import 'package:one_key/widgets/page_exception.dart'; 13 import 'package:one_key/widgets/page_exception.dart';
12 import 'package:provider/provider.dart'; 14 import 'package:provider/provider.dart';
@@ -32,7 +34,6 @@ class MessageOrderPageState extends State<MessageOrderPage> { @@ -32,7 +34,6 @@ class MessageOrderPageState extends State<MessageOrderPage> {
32 34
33 int offset = 0; //当前页数 35 int offset = 0; //当前页数
34 36
35 -  
36 @override 37 @override
37 void initState() { 38 void initState() {
38 // TODO: implement initState 39 // TODO: implement initState
@@ -41,6 +42,20 @@ class MessageOrderPageState extends State<MessageOrderPage> { @@ -41,6 +42,20 @@ class MessageOrderPageState extends State<MessageOrderPage> {
41 WidgetsBinding.instance.addPostFrameCallback((_) { 42 WidgetsBinding.instance.addPostFrameCallback((_) {
42 getMessages(); 43 getMessages();
43 }); 44 });
  45 + bus.on("remove_untreated_message_order", (args) {
  46 + MessageModel messageModel =
  47 + Provider.of<MessageModel>(context, listen: false);
  48 + messageModel.removeUntreatedMessageByMid(args.toString());
  49 + MessageDialogModel messageDialogModel =
  50 + Provider.of<MessageDialogModel>(context, listen: false);
  51 + messageDialogModel.removeMessage(args.toString());
  52 + });
  53 + }
  54 +
  55 + @override
  56 + void dispose() {
  57 + super.dispose();
  58 + bus.off("remove_untreated_message_order");
44 } 59 }
45 60
46 //获取消息 61 //获取消息
@@ -54,7 +69,7 @@ class MessageOrderPageState extends State<MessageOrderPage> { @@ -54,7 +69,7 @@ class MessageOrderPageState extends State<MessageOrderPage> {
54 "limit": "20", 69 "limit": "20",
55 }; 70 };
56 MessageModel messageModel = 71 MessageModel messageModel =
57 - Provider.of<MessageModel>(context, listen: false); 72 + Provider.of<MessageModel>(context, listen: false);
58 messageModel.getMessages(context, params, showLoading: showLoading); 73 messageModel.getMessages(context, params, showLoading: showLoading);
59 } 74 }
60 75
@@ -75,30 +90,42 @@ class MessageOrderPageState extends State<MessageOrderPage> { @@ -75,30 +90,42 @@ class MessageOrderPageState extends State<MessageOrderPage> {
75 child: GestureDetector( 90 child: GestureDetector(
76 behavior: HitTestBehavior.opaque, 91 behavior: HitTestBehavior.opaque,
77 onTap: () { 92 onTap: () {
78 - if(selectedIndex==0)return; 93 + if (selectedIndex == 0) return;
79 setState(() { 94 setState(() {
80 selectedIndex = 0; 95 selectedIndex = 0;
81 getMessages(); 96 getMessages();
82 }); 97 });
83 }, 98 },
84 child: Center( 99 child: Center(
85 - child: Text("未处理",style: TextStyle(color: selectedIndex==0?selectedColor:unSelectedColor,fontSize: ScreenUtil().setSp(30)),),  
86 - )  
87 - )), 100 + child: Text(
  101 + "未处理",
  102 + style: TextStyle(
  103 + color: selectedIndex == 0
  104 + ? selectedColor
  105 + : unSelectedColor,
  106 + fontSize: ScreenUtil().setSp(30)),
  107 + ),
  108 + ))),
88 Expanded( 109 Expanded(
89 child: GestureDetector( 110 child: GestureDetector(
90 behavior: HitTestBehavior.opaque, 111 behavior: HitTestBehavior.opaque,
91 onTap: () { 112 onTap: () {
92 - if(selectedIndex==1)return; 113 + if (selectedIndex == 1) return;
93 setState(() { 114 setState(() {
94 selectedIndex = 1; 115 selectedIndex = 1;
95 getMessages(); 116 getMessages();
96 }); 117 });
97 }, 118 },
98 child: Center( 119 child: Center(
99 - child: Text("已处理",style: TextStyle(color: selectedIndex==1?selectedColor:unSelectedColor,fontSize: ScreenUtil().setSp(30)),),  
100 - )  
101 - )) 120 + child: Text(
  121 + "已处理",
  122 + style: TextStyle(
  123 + color: selectedIndex == 1
  124 + ? selectedColor
  125 + : unSelectedColor,
  126 + fontSize: ScreenUtil().setSp(30)),
  127 + ),
  128 + )))
102 ], 129 ],
103 ), 130 ),
104 ), 131 ),
@@ -109,10 +136,11 @@ class MessageOrderPageState extends State<MessageOrderPage> { @@ -109,10 +136,11 @@ class MessageOrderPageState extends State<MessageOrderPage> {
109 return ExceptionPage( 136 return ExceptionPage(
110 pageState: model.pageState, 137 pageState: model.pageState,
111 callback: () { 138 callback: () {
112 - offset=0; 139 + offset = 0;
113 getMessages(); 140 getMessages();
114 }, 141 },
115 - emptyMsg: "暂时没有${selectedIndex==0?'未处理':'已处理'}的提前点餐消息哦", 142 + emptyMsg:
  143 + "暂时没有${selectedIndex == 0 ? '未处理' : '已处理'}的提前点餐消息哦",
116 emptyImg: "empty_search", 144 emptyImg: "empty_search",
117 showMsg: "加载中,请稍后...", 145 showMsg: "加载中,请稍后...",
118 ); 146 );
@@ -122,16 +150,17 @@ class MessageOrderPageState extends State<MessageOrderPage> { @@ -122,16 +150,17 @@ class MessageOrderPageState extends State<MessageOrderPage> {
122 slivers: [ 150 slivers: [
123 SliverList( 151 SliverList(
124 delegate: SliverChildBuilderDelegate( 152 delegate: SliverChildBuilderDelegate(
125 - (BuildContext context, int index) {  
126 - return MessageItem(model.messages[index],isTreated: selectedIndex==1);  
127 - }, childCount: model.messages.length), 153 + (BuildContext context, int index) {
  154 + return MessageItem(model.messages[index],
  155 + isTreated: selectedIndex == 1);
  156 + }, childCount: model.messages.length),
128 ) 157 )
129 ], 158 ],
130 onRefresh: () async { 159 onRefresh: () async {
131 - offset=0; 160 + offset = 0;
132 getMessages(showLoading: false); 161 getMessages(showLoading: false);
133 }, 162 },
134 - onLoad: ()async{ 163 + onLoad: () async {
135 offset++; 164 offset++;
136 getMessages(showLoading: false); 165 getMessages(showLoading: false);
137 }, 166 },
@@ -18,7 +18,8 @@ class MessagePage extends StatefulWidget { @@ -18,7 +18,8 @@ class MessagePage extends StatefulWidget {
18 } 18 }
19 } 19 }
20 20
21 -class MessagePageState extends State<MessagePage> with TickerProviderStateMixin{ 21 +class MessagePageState extends State<MessagePage>
  22 + with TickerProviderStateMixin {
22 Color selectedColor = MyColours.color_199095; 23 Color selectedColor = MyColours.color_199095;
23 Color unSelectedColor = MyColours.color_999999; 24 Color unSelectedColor = MyColours.color_999999;
24 25
@@ -30,31 +31,31 @@ class MessagePageState extends State<MessagePage> with TickerProviderStateMixin{ @@ -30,31 +31,31 @@ class MessagePageState extends State<MessagePage> with TickerProviderStateMixin{
30 void initState() { 31 void initState() {
31 // TODO: implement initState 32 // TODO: implement initState
32 super.initState(); 33 super.initState();
33 - tabController = TabController(length: 2,vsync: this); 34 + tabController = TabController(length: 2, vsync: this);
34 tabController.addListener(() { 35 tabController.addListener(() {
35 - setState(() {  
36 - }); 36 + setState(() {});
37 }); 37 });
38 WidgetsBinding.instance.addPostFrameCallback((timeStamp) { 38 WidgetsBinding.instance.addPostFrameCallback((timeStamp) {
39 _getUnMsgNum(); 39 _getUnMsgNum();
40 }); 40 });
41 - bus.on("refresh_untreated_num", (arg) {//舒心未读消息数目 41 + bus.on("refresh_untreated_num", (arg) {
  42 + //刷新未读消息数目
42 _getUnMsgNum(); 43 _getUnMsgNum();
43 }); 44 });
44 } 45 }
45 46
46 _getUnMsgNum() async { 47 _getUnMsgNum() async {
47 - Map<String,String> params={  
48 - "sid":Provider.of<UserModel>(context,listen:false).user.sellerid 48 + Map<String, String> params = {
  49 + "sid": Provider.of<UserModel>(context, listen: false).user.sellerid
49 }; 50 };
50 await messageModel.getUnMsgNum(context, params); 51 await messageModel.getUnMsgNum(context, params);
51 - setState(() {  
52 - }); 52 + setState(() {});
53 } 53 }
  54 +
54 @override 55 @override
55 Widget build(BuildContext context) { 56 Widget build(BuildContext context) {
56 // TODO: implement build 57 // TODO: implement build
57 - messageModel=Provider.of<MessageModel>(context,listen: false); 58 + messageModel = Provider.of<MessageModel>(context, listen: false);
58 return Container( 59 return Container(
59 width: double.infinity, 60 width: double.infinity,
60 height: double.infinity, 61 height: double.infinity,
@@ -80,7 +81,8 @@ class MessagePageState extends State<MessagePage> with TickerProviderStateMixin{ @@ -80,7 +81,8 @@ class MessagePageState extends State<MessagePage> with TickerProviderStateMixin{
80 color: tabController.index == 0 81 color: tabController.index == 0
81 ? selectedColor 82 ? selectedColor
82 : unSelectedColor, 83 : unSelectedColor,
83 - fontSize: ScreenUtil().setSp(32),fontWeight: FontWeight.bold), 84 + fontSize: ScreenUtil().setSp(32),
  85 + fontWeight: FontWeight.bold),
84 ), 86 ),
85 Positioned( 87 Positioned(
86 top: 0, 88 top: 0,
@@ -91,7 +93,9 @@ class MessagePageState extends State<MessagePage> with TickerProviderStateMixin{ @@ -91,7 +93,9 @@ class MessagePageState extends State<MessagePage> with TickerProviderStateMixin{
91 decoration: BoxDecoration( 93 decoration: BoxDecoration(
92 borderRadius: BorderRadius.circular( 94 borderRadius: BorderRadius.circular(
93 ScreenUtil().setWidth(16)), 95 ScreenUtil().setWidth(16)),
94 - color: messageModel.onlineTotal>0?MyColours.color_fa5151:MyColours.color_ffffff), 96 + color: messageModel.onlineTotal > 0
  97 + ? MyColours.color_fa5151
  98 + : MyColours.color_ffffff),
95 ), 99 ),
96 ) 100 )
97 ], 101 ],
@@ -110,7 +114,8 @@ class MessagePageState extends State<MessagePage> with TickerProviderStateMixin{ @@ -110,7 +114,8 @@ class MessagePageState extends State<MessagePage> with TickerProviderStateMixin{
110 color: tabController.index == 1 114 color: tabController.index == 1
111 ? selectedColor 115 ? selectedColor
112 : unSelectedColor, 116 : unSelectedColor,
113 - fontSize: ScreenUtil().setSp(32),fontWeight: FontWeight.bold), 117 + fontSize: ScreenUtil().setSp(32),
  118 + fontWeight: FontWeight.bold),
114 ), 119 ),
115 Positioned( 120 Positioned(
116 top: 0, 121 top: 0,
@@ -121,7 +126,9 @@ class MessagePageState extends State<MessagePage> with TickerProviderStateMixin{ @@ -121,7 +126,9 @@ class MessagePageState extends State<MessagePage> with TickerProviderStateMixin{
121 decoration: BoxDecoration( 126 decoration: BoxDecoration(
122 borderRadius: BorderRadius.circular( 127 borderRadius: BorderRadius.circular(
123 ScreenUtil().setWidth(16)), 128 ScreenUtil().setWidth(16)),
124 - color: messageModel.orderTotal>0?MyColours.color_fa5151:MyColours.color_ffffff), 129 + color: messageModel.orderTotal > 0
  130 + ? MyColours.color_fa5151
  131 + : MyColours.color_ffffff),
125 ), 132 ),
126 ) 133 )
127 ], 134 ],
@@ -131,14 +138,17 @@ class MessagePageState extends State<MessagePage> with TickerProviderStateMixin{ @@ -131,14 +138,17 @@ class MessagePageState extends State<MessagePage> with TickerProviderStateMixin{
131 ], 138 ],
132 indicatorColor: MyColours.color_199095, 139 indicatorColor: MyColours.color_199095,
133 indicatorSize: TabBarIndicatorSize.label, 140 indicatorSize: TabBarIndicatorSize.label,
134 - indicatorPadding: EdgeInsets.only(left: ScreenUtil().setWidth(16),right: ScreenUtil().setWidth(32)), 141 + indicatorPadding: EdgeInsets.only(
  142 + left: ScreenUtil().setWidth(16),
  143 + right: ScreenUtil().setWidth(32)),
135 indicatorWeight: ScreenUtil().setWidth(6.0), 144 indicatorWeight: ScreenUtil().setWidth(6.0),
136 ), 145 ),
137 VEmptyView(11), 146 VEmptyView(11),
138 Expanded( 147 Expanded(
139 flex: 1, 148 flex: 1,
140 - child:  
141 - TabBarView(controller:tabController,children: [MessageOnlinePage(), MessageOrderPage()]), 149 + child: TabBarView(
  150 + controller: tabController,
  151 + children: [MessageOnlinePage(), MessageOrderPage()]),
142 ) 152 )
143 ], 153 ],
144 ), 154 ),
@@ -35,7 +35,12 @@ class MessageItem extends StatelessWidget { @@ -35,7 +35,12 @@ class MessageItem extends StatelessWidget {
35 return GestureDetector( 35 return GestureDetector(
36 onTap: () { 36 onTap: () {
37 if (isTreated) { 37 if (isTreated) {
38 - NavigatorUtil.goNotebookDetailPage(context, message.rid.toString()); 38 + if (message.message_type == "10") {
  39 + NavigatorUtil.goNotebookDetailPage(
  40 + context, message.rid.toString());
  41 + } else if (message.message_type == "1") {
  42 + NavigatorUtil.goHasOrderFoodPage(context, rid: message.rid);
  43 + }
39 } 44 }
40 }, 45 },
41 child: Stack( 46 child: Stack(
@@ -123,16 +128,35 @@ class MessageItem extends StatelessWidget { @@ -123,16 +128,35 @@ class MessageItem extends StatelessWidget {
123 fontSize: 30, 128 fontSize: 30,
124 content: message.message_type == "10" ? "立即处理" : "立即查看", 129 content: message.message_type == "10" ? "立即处理" : "立即查看",
125 state: 1, 130 state: 1,
126 - onPress: () { 131 + onPress: () async {
127 messageDialogModel.removeMessage(message.id); 132 messageDialogModel.removeMessage(message.id);
  133 + //message_type:10 跳转在线预订 11 取消订单 1 提前点餐
128 if (message.message_type == "10") { 134 if (message.message_type == "10") {
129 NavigatorUtil.goHandleOnlinePage( 135 NavigatorUtil.goHandleOnlinePage(
130 context, message.rid.toString(), message.id); 136 context, message.rid.toString(), message.id);
131 - } else { 137 + } else if (message.message_type == "11") {
132 NavigatorUtil.goNotebookDetailPage( 138 NavigatorUtil.goNotebookDetailPage(
133 context, message.rid.toString()); 139 context, message.rid.toString());
134 bus.emit("remove_untreated_message", message.id); 140 bus.emit("remove_untreated_message", message.id);
  141 +
  142 + Map<String, String> params = {
  143 + "sid": Provider.of<UserModel>(context, listen: false)
  144 + .user
  145 + .sellerid,
  146 + "id": message.id,
  147 + "status": message.message_type == "1"
  148 + ? "is_read"
  149 + : "is_handle"
  150 + };
  151 + await messageDialogModel.setMessageStatus(
  152 + context, params);
135 bus.emit("refresh_untreated_num"); //刷新未读消息数目 153 bus.emit("refresh_untreated_num"); //刷新未读消息数目
  154 + } else if (message.message_type == "1") {
  155 + //提前点餐
  156 + NavigatorUtil.goHasOrderFoodPage(context,
  157 + rid: message.rid);
  158 + bus.emit("remove_untreated_message_order", message.id);
  159 +
136 Map<String, String> params = { 160 Map<String, String> params = {
137 "sid": Provider.of<UserModel>(context, listen: false) 161 "sid": Provider.of<UserModel>(context, listen: false)
138 .user 162 .user
@@ -142,7 +166,9 @@ class MessageItem extends StatelessWidget { @@ -142,7 +166,9 @@ class MessageItem extends StatelessWidget {
142 ? "is_read" 166 ? "is_read"
143 : "is_handle" 167 : "is_handle"
144 }; 168 };
145 - messageDialogModel.setMessageStatus(context, params); 169 + await messageDialogModel.setMessageStatus(
  170 + context, params);
  171 + bus.emit("refresh_untreated_num"); //刷新未读消息数目
146 } 172 }
147 }, 173 },
148 ), 174 ),
@@ -10,13 +10,12 @@ import 'package:one_key/utils/dialog_util.dart'; @@ -10,13 +10,12 @@ import 'package:one_key/utils/dialog_util.dart';
10 import 'package:audioplayers/audio_cache.dart'; 10 import 'package:audioplayers/audio_cache.dart';
11 import 'package:one_key/utils/utils.dart'; 11 import 'package:one_key/utils/utils.dart';
12 12
13 -class MessageDialogModel extends ChangeNotifier{  
14 - 13 +class MessageDialogModel extends ChangeNotifier {
15 final _player = AudioCache(); 14 final _player = AudioCache();
16 15
17 - bool showMessageDialog=false; 16 + bool showMessageDialog = false;
18 17
19 - List<Message> messages=[]; 18 + List<Message> messages = [];
20 19
21 void init() { 20 void init() {
22 _player.load("tts_online.mp3"); 21 _player.load("tts_online.mp3");
@@ -24,70 +23,70 @@ class MessageDialogModel extends ChangeNotifier{ @@ -24,70 +23,70 @@ class MessageDialogModel extends ChangeNotifier{
24 23
25 /// 播放 24 /// 播放
26 void play(String message_type) { 25 void play(String message_type) {
27 - switch(message_type){  
28 - case "10"://在线预订 26 + switch (message_type) {
  27 + case "10": //在线预订
29 _player.play("tts_online.mp3"); 28 _player.play("tts_online.mp3");
30 break; 29 break;
31 - case "11"://取消在线预订 30 + case "11": //取消在线预订
32 _player.play("tts_cancel.mp3"); 31 _player.play("tts_cancel.mp3");
33 break; 32 break;
34 - case "-1"://>3 33 + case "-1": //>3
35 _player.play("tts_all.mp3"); 34 _player.play("tts_all.mp3");
36 break; 35 break;
37 } 36 }
38 } 37 }
39 38
40 //添加一条信息 39 //添加一条信息
41 - addMessage(BuildContext context,Message message){ 40 + addMessage(BuildContext context, Message message) {
42 LogUtil.v(message.toString()); 41 LogUtil.v(message.toString());
43 play(message.message_type); 42 play(message.message_type);
44 messages.add(message); 43 messages.add(message);
45 - if(!showMessageDialog){ 44 + if (!showMessageDialog) {
46 DialogUtil.showMessageDialog(context); 45 DialogUtil.showMessageDialog(context);
47 - }else{ 46 + } else {
48 notifyListeners(); 47 notifyListeners();
49 } 48 }
50 } 49 }
51 50
52 //移除一条信息 51 //移除一条信息
53 - removeMessage(String mid){  
54 - messages.removeWhere((message)=>message.id==mid); 52 + removeMessage(String mid) {
  53 + messages.removeWhere((message) => message.id == mid);
55 notifyListeners(); 54 notifyListeners();
56 } 55 }
57 56
58 //获取未处理在线预订消息 57 //获取未处理在线预订消息
59 - getUntreatedMsg(BuildContext context,Map<String,String> params) async { 58 + getUntreatedMsg(BuildContext context, Map<String, String> params) async {
60 BaseResp<List> baseResp = await DioUtil() 59 BaseResp<List> baseResp = await DioUtil()
61 - .request<List>(context, Method.get, HttpUrl.get_message_list,showLoading: false,  
62 - data: params) 60 + .request<List>(context, Method.get, HttpUrl.get_message_list,
  61 + showLoading: false, data: params)
63 .catchError((error) { 62 .catchError((error) {
64 print(error.toString()); 63 print(error.toString());
65 }); 64 });
66 - if (baseResp!=null&&baseResp.code == Constant.status_success) {  
67 - messages=baseResp.data.map<Message>((value){ 65 + if (baseResp != null && baseResp.code == Constant.status_success) {
  66 + messages = baseResp.data.map<Message>((value) {
68 return Message.fromJson(value); 67 return Message.fromJson(value);
69 }).toList(); 68 }).toList();
70 - messages.removeWhere((message){  
71 - if(message.message_type.toString()=="10"){  
72 - if(message.status=="4"){ 69 + messages.removeWhere((message) {
  70 + if (message.message_type.toString() == "10") {
  71 + if (message.status == "4") {
73 return true; 72 return true;
74 } 73 }
75 return false; 74 return false;
76 - }else if(message.message_type.toString()=="11"){ 75 + } else if (message.message_type.toString() == "11") {
77 return false; 76 return false;
78 } 77 }
79 return true; 78 return true;
80 }); 79 });
81 - if(messages.isNotEmpty){  
82 - if(!showMessageDialog){ 80 + if (messages.isNotEmpty) {
  81 + if (!showMessageDialog) {
83 DialogUtil.showMessageDialog(context); 82 DialogUtil.showMessageDialog(context);
84 - }else{ 83 + } else {
85 notifyListeners(); 84 notifyListeners();
86 } 85 }
87 - if(messages.length>1){ 86 + if (messages.length > 1) {
88 play("-1"); 87 play("-1");
89 - }else{  
90 - for(Message message in messages){ 88 + } else {
  89 + for (Message message in messages) {
91 play(message.message_type); 90 play(message.message_type);
92 } 91 }
93 } 92 }
@@ -99,7 +98,7 @@ class MessageDialogModel extends ChangeNotifier{ @@ -99,7 +98,7 @@ class MessageDialogModel extends ChangeNotifier{
99 setMessageStatus(BuildContext context, Map<String, String> params) async { 98 setMessageStatus(BuildContext context, Map<String, String> params) async {
100 BaseResp<dynamic> baseResp = await DioUtil() 99 BaseResp<dynamic> baseResp = await DioUtil()
101 .request<dynamic>(context, Method.get, HttpUrl.set_message_status, 100 .request<dynamic>(context, Method.get, HttpUrl.set_message_status,
102 - data: params, showLoading: false) 101 + data: params, showLoading: false)
103 .catchError((error) { 102 .catchError((error) {
104 print(error.toString()); 103 print(error.toString());
105 }); 104 });
@@ -108,4 +107,4 @@ class MessageDialogModel extends ChangeNotifier{ @@ -108,4 +107,4 @@ class MessageDialogModel extends ChangeNotifier{
108 Utils.showToast(baseResp.msg); 107 Utils.showToast(baseResp.msg);
109 } 108 }
110 } 109 }
111 -}  
  110 +}
@@ -12,14 +12,14 @@ class MessageModel extends ChangeNotifier { @@ -12,14 +12,14 @@ class MessageModel extends ChangeNotifier {
12 12
13 PageState pageState = PageState.Loading; 13 PageState pageState = PageState.Loading;
14 14
15 - int onlineTotal=0;//未处理在线消息数目  
16 - int inlineTotal=0;//未处理内部消息数目  
17 - int orderTotal=0;//未处理提前点餐消息数目 15 + int onlineTotal = 0; //未处理在线消息数目
  16 + int inlineTotal = 0; //未处理内部消息数目
  17 + int orderTotal = 0; //未处理提前点餐消息数目
18 18
19 //获取消息 19 //获取消息
20 getMessages(BuildContext context, Map<String, String> params, 20 getMessages(BuildContext context, Map<String, String> params,
21 {showLoading = true}) async { 21 {showLoading = true}) async {
22 - if(showLoading){ 22 + if (showLoading) {
23 pageState = PageState.Loading; 23 pageState = PageState.Loading;
24 notifyListeners(); 24 notifyListeners();
25 } 25 }
@@ -44,7 +44,7 @@ class MessageModel extends ChangeNotifier { @@ -44,7 +44,7 @@ class MessageModel extends ChangeNotifier {
44 notifyListeners(); 44 notifyListeners();
45 }); 45 });
46 if (baseResp != null && baseResp.code == Constant.status_success) { 46 if (baseResp != null && baseResp.code == Constant.status_success) {
47 - if(params['offset']=="0"){ 47 + if (params['offset'] == "0") {
48 messages = baseResp.data.map<Message>((value) { 48 messages = baseResp.data.map<Message>((value) {
49 return Message.fromJson(value); 49 return Message.fromJson(value);
50 }).toList(); 50 }).toList();
@@ -73,24 +73,28 @@ class MessageModel extends ChangeNotifier { @@ -73,24 +73,28 @@ class MessageModel extends ChangeNotifier {
73 73
74 //获取未处理消息数目 74 //获取未处理消息数目
75 Future getUnMsgNum(BuildContext context, Map<String, String> params) async { 75 Future getUnMsgNum(BuildContext context, Map<String, String> params) async {
76 - BaseResp<Map<String,dynamic>> baseResp = await DioUtil()  
77 - .request<Map<String,dynamic>>(context, Method.get, HttpUrl.get_message_num,  
78 - data: params, showLoading: false) 76 + BaseResp<Map<String, dynamic>> baseResp = await DioUtil()
  77 + .request<Map<String, dynamic>>(
  78 + context, Method.get, HttpUrl.get_message_num,
  79 + data: params, showLoading: false)
79 .catchError((error) { 80 .catchError((error) {
80 print(error.toString()); 81 print(error.toString());
81 }); 82 });
82 if (baseResp != null && baseResp.code == Constant.status_success) { 83 if (baseResp != null && baseResp.code == Constant.status_success) {
83 - onlineTotal=int.parse(baseResp.data['online_total'].toString());  
84 - inlineTotal=int.parse(baseResp.data['inline_total'].toString());  
85 - orderTotal=int.parse(baseResp.data['order_total'].toString()); 84 + onlineTotal = int.parse(baseResp.data['online_total'].toString());
  85 + inlineTotal = int.parse(baseResp.data['inline_total'].toString());
  86 + orderTotal = int.parse(baseResp.data['order_total'].toString());
86 return; 87 return;
87 } 88 }
88 return; 89 return;
89 } 90 }
90 91
91 //根据消息id移除消息 92 //根据消息id移除消息
92 - removeUntreatedMessageByMid(String mid){  
93 - messages.removeWhere((element) => element.id==mid); 93 + removeUntreatedMessageByMid(String mid) {
  94 + messages.removeWhere((element) => element.id == mid);
  95 + if (messages.length == 0) {
  96 + pageState = PageState.Empty;
  97 + }
94 notifyListeners(); 98 notifyListeners();
95 } 99 }
96 } 100 }