Commit d7fd01923612587edf13a1d43a676ab67d860f6e

Authored by “gaiyaguang”
1 parent a73f1cd2

合并

... ... @@ -19,44 +19,46 @@ class MessageLeftPage extends StatefulWidget {
}
class MessageLeftPageState extends State<MessageLeftPage> {
EasyRefreshController _controller;
@override
void initState() {
// TODO: implement initState
super.initState();
bus.on("remove_untreated_message",(args){
MessageModel messageModel=Provider.of<MessageModel>(context,listen: false);
bus.on("remove_untreated_message", (args) {
MessageModel messageModel =
Provider.of<MessageModel>(context, listen: false);
messageModel.removeUntreatedMessageByMid(args.toString());
MessageDialogModel messageDialogModel=Provider.of<MessageDialogModel>(context,listen: false);
MessageDialogModel messageDialogModel =
Provider.of<MessageDialogModel>(context, listen: false);
messageDialogModel.removeMessage(args.toString());
});
_controller=EasyRefreshController();
WidgetsBinding.instance.addPostFrameCallback((_){
_controller = EasyRefreshController();
WidgetsBinding.instance.addPostFrameCallback((_) {
getUntreatedMessage();
});
}
//获取未处理在线预订消息
getUntreatedMessage(){
UserModel userModel=Provider.of<UserModel>(context,listen: false);
Map<String,String> params={
"sid":userModel.user.sellerid,
"type_id":"10",
"status":"0",
"offset":"0",
"limit":"100",
getUntreatedMessage({bool showLoading = true}) {
UserModel userModel = Provider.of<UserModel>(context, listen: false);
Map<String, String> params = {
"sid": userModel.user.sellerid,
"type_id": "10",
"status": "0",
"offset": "0",
"limit": "100",
};
MessageModel messageModel=Provider.of<MessageModel>(context,listen: false);
messageModel.getUntreatedMsg(context, params);
MessageModel messageModel =
Provider.of<MessageModel>(context, listen: false);
messageModel.getUntreatedMsg(context, params, showLoading: showLoading);
}
@override
Widget build(BuildContext context) {
// TODO: implement build
return Consumer<MessageModel>(
builder: (context,model,_){
builder: (context, model, _) {
if (model.unPageState != PageState.Success) {
return ExceptionPage(
pageState: model.unPageState,
... ... @@ -67,19 +69,21 @@ class MessageLeftPageState extends State<MessageLeftPage> {
emptyImg: "empty_search",
showMsg: "加载中,请稍后...",
);
}else{
} else {
return EasyRefresh.custom(
controller: _controller,
slivers: [
SliverList(
delegate:
SliverChildBuilderDelegate((BuildContext context, int index) {
delegate: SliverChildBuilderDelegate(
(BuildContext context, int index) {
return MessageItem(model.untreatedMsgs[index]);
},childCount: model.untreatedMsgs.length),
}, childCount: model.untreatedMsgs.length),
)
],onRefresh: () async {
getUntreatedMessage();
},);
],
onRefresh: () async {
getUntreatedMessage(showLoading: false);
},
);
}
},
);
... ...
... ... @@ -8,50 +8,49 @@ import 'package:one_key/widgets/page_error.dart';
import 'package:one_key/widgets/page_exception.dart';
import 'package:provider/provider.dart';
class MessageRightPage extends StatefulWidget{
class MessageRightPage extends StatefulWidget {
@override
State<StatefulWidget> createState() {
// TODO: implement createState
return new MessageRightPageState();
}
}
class MessageRightPageState extends State<MessageRightPage>{
class MessageRightPageState extends State<MessageRightPage> {
EasyRefreshController _controller;
int offset=0;//当前页数
int offset = 0; //当前页数
@override
void initState() {
// TODO: implement initState
super.initState();
_controller=EasyRefreshController();
WidgetsBinding.instance.addPostFrameCallback((_){
_controller = EasyRefreshController();
WidgetsBinding.instance.addPostFrameCallback((_) {
getTreatedMessage();
});
}
//获取未处理在线预订消息
getTreatedMessage(){
UserModel userModel=Provider.of<UserModel>(context,listen: false);
Map<String,String> params={
"sid":userModel.user.sellerid,
"type_id":"10",
"status":"1",
"offset":offset.toString(),
"limit":"10",
getTreatedMessage({bool showLoading = true}) {
UserModel userModel = Provider.of<UserModel>(context, listen: false);
Map<String, String> params = {
"sid": userModel.user.sellerid,
"type_id": "10",
"status": "1",
"offset": offset.toString(),
"limit": "10",
};
MessageModel messageModel=Provider.of<MessageModel>(context,listen: false);
messageModel.getTreatedMsg(context, params);
MessageModel messageModel =
Provider.of<MessageModel>(context, listen: false);
messageModel.getTreatedMsg(context, params, showLoading: showLoading);
}
@override
Widget build(BuildContext context) {
// TODO: implement build
return Consumer<MessageModel>(
builder: (context,model,_){
builder: (context, model, _) {
if (model.pageState != PageState.Success) {
return ExceptionPage(
pageState: model.pageState,
... ... @@ -62,21 +61,26 @@ class MessageRightPageState extends State<MessageRightPage>{
emptyImg: "empty_search",
showMsg: "加载中,请稍后...",
);
}else{
} else {
return EasyRefresh.custom(
controller: _controller,
slivers: [
SliverList(
delegate:
SliverChildBuilderDelegate((BuildContext context, int index) {
return MessageItem(model.treatedMsgs[index],isTreated: true,);
},childCount: model.treatedMsgs.length),
delegate: SliverChildBuilderDelegate(
(BuildContext context, int index) {
return MessageItem(
model.treatedMsgs[index],
isTreated: true,
);
}, childCount: model.treatedMsgs.length),
)
],onRefresh: () async {
getTreatedMessage();
},);
],
onRefresh: () async {
getTreatedMessage(showLoading: false);
},
);
}
},
);
}
}
\ No newline at end of file
}
... ...
... ... @@ -15,8 +15,12 @@ class MessageModel extends ChangeNotifier {
PageState unPageState = PageState.Loading;
PageState pageState = PageState.Loading;
//获取未处理在线预订消息
getUntreatedMsg(BuildContext context, Map<String, String> params) async {
unPageState = PageState.Loading;
getUntreatedMsg(BuildContext context, Map<String, String> params,
{showLoading = true}) async {
if (showLoading) {
unPageState = PageState.Loading;
}
notifyListeners();
BaseResp<List> baseResp = await DioUtil()
.request<List>(context, Method.get, HttpUrl.get_message_list,
... ... @@ -63,8 +67,8 @@ class MessageModel extends ChangeNotifier {
}
//获取已处理在线预订消息
getTreatedMsg(BuildContext context, Map<String, String> params) async {
if (params["offset"] == "0") {
getTreatedMsg(BuildContext context, Map<String, String> params,{showLoading = true}) async {
if (params["offset"] == "0" && showLoading) {
pageState = PageState.Loading;
notifyListeners();
}
... ...