修复 待办事项不显示

hmxc
张萌 4 years ago
parent 160e1405f9
commit dcd8b77c6b

@ -21,9 +21,7 @@ class ToDoModel {
: null; : null;
break; break;
default: default:
dynamicModel = json['dataList'] != null dynamicModel = [];
? []
: null;
} }
} }

@ -56,17 +56,17 @@ class _BusinessPageState extends State<BusinessPage>
), ),
body: TabBarView( body: TabBarView(
controller: _tabController, controller: _tabController,
children: [ children: List.generate(
_buildTabPage(AllModel(context).waitThings), _tabs.length,
_buildTabPage(AllModel(context).processingThings), (index) => BussinessView(
_buildTabPage(AllModel(context).doneThings), backlogStatus: index + 1,
_buildTabPage(AllModel(context).allThings), ),
], ),
), ),
); );
} }
Widget _buildTabPage(List list) { Widget _buildTabPage(int status) {
// return ListView.builder( // return ListView.builder(
// padding: EdgeInsets.symmetric(horizontal: 32.w), // padding: EdgeInsets.symmetric(horizontal: 32.w),
// itemBuilder: (context, index) { // itemBuilder: (context, index) {
@ -80,6 +80,8 @@ class _BusinessPageState extends State<BusinessPage>
// }, // },
// itemCount: list.length, // itemCount: list.length,
// ); // );
return BussinessView(); return BussinessView(
backlogStatus: status,
);
} }
} }

@ -2,14 +2,12 @@ import 'package:aku_community_manager/const/api.dart';
import 'package:aku_community_manager/models/manager/bussiness_and_fix/bussiness_and_fix_model.dart'; import 'package:aku_community_manager/models/manager/bussiness_and_fix/bussiness_and_fix_model.dart';
import 'package:aku_community_manager/models/todo_bussiness/todo_model.dart'; import 'package:aku_community_manager/models/todo_bussiness/todo_model.dart';
import 'package:aku_community_manager/models/todo_bussiness/todo_outdoor_model.dart'; import 'package:aku_community_manager/models/todo_bussiness/todo_outdoor_model.dart';
import 'package:aku_community_manager/ui/home/business/bussiness_func.dart';
import 'package:aku_community_manager/ui/home/business/todo_outdoor_card.dart'; import 'package:aku_community_manager/ui/home/business/todo_outdoor_card.dart';
import 'package:aku_community_manager/ui/sub_pages/business_and_fix/business_fix_card.dart'; import 'package:aku_community_manager/ui/sub_pages/business_and_fix/business_fix_card.dart';
import 'package:aku_community_manager/utils/network/net_util.dart'; import 'package:aku_community_manager/utils/network/net_util.dart';
import 'package:dio/dio.dart'; import 'package:dio/dio.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart'; import 'package:flutter_easyrefresh/easy_refresh.dart';
import 'package:velocity_x/velocity_x.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart';
class BussinessView extends StatefulWidget { class BussinessView extends StatefulWidget {
@ -20,30 +18,65 @@ class BussinessView extends StatefulWidget {
_BussinessViewState createState() => _BussinessViewState(); _BussinessViewState createState() => _BussinessViewState();
} }
class _BussinessViewState extends State<BussinessView> { class _BussinessViewState extends State<BussinessView>
with AutomaticKeepAliveClientMixin {
List _modelList; List _modelList;
EasyRefreshController _refreshController;
@override
void initState() {
super.initState();
_refreshController = EasyRefreshController();
}
@override
void dispose() {
_refreshController?.dispose();
super.dispose();
}
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
super.build(context);
return EasyRefresh( return EasyRefresh(
firstRefresh: true, firstRefresh: true,
controller: _refreshController,
header: MaterialHeader(), header: MaterialHeader(),
onRefresh: () async { onRefresh: () async {
List dataList = var dataList = await getBussinessModelList(widget.backlogStatus);
await BussinessFunc.getBussinessModelList(widget.backlogStatus);
_modelList = dataList.map((e) => ToDoModel.fromJson(e)).toList(); _modelList = dataList.map((e) => ToDoModel.fromJson(e)).toList();
setState(() {});
}, },
child: ListView( child: _modelList == null
? _emptyWidget()
: ListView(
padding: EdgeInsets.symmetric(horizontal: 10.w, vertical: 10.w),
children: [ children: [
..._modelList.map((e) { ..._modelList.map((e) {
if (e.runtimeType == BussinessAndFixModel) { if (e.dynamicModel.runtimeType == BussinessAndFixModel) {
BusinessFixCard(model: e); return BusinessFixCard(model: e.dynamicModel);
} else if (e.runtimeType == ToDoOutDoorModel) { } else if (e.dynamicModel.runtimeType == ToDoOutDoorModel) {
ToDoOutDoorCard( return ToDoOutDoorCard(
model: e, model: e.dynamicModel,
); );
} }
}).toList() }).toList()
], ],
)); ),
);
} }
Widget _emptyWidget() {
return SizedBox();
}
Future getBussinessModelList(int backlogStatus) async {
Response response =
await NetUtil().dio.get(API.manage.backlogList, queryParameters: {
"backlogStatus": backlogStatus,
});
return response.data['data'] as List;
}
@override
bool get wantKeepAlive => true;
} }

@ -1,13 +0,0 @@
import 'package:aku_community_manager/const/api.dart';
import 'package:aku_community_manager/utils/network/net_util.dart';
import 'package:dio/dio.dart';
class BussinessFunc {
static Future getBussinessModelList(int backlogStatus) async {
Response response =
await NetUtil().dio.get(API.manage.backlogList, queryParameters: {
"backlogStatus": backlogStatus,
});
return response.data as List;
}
}
Loading…
Cancel
Save