parent
5655a77077
commit
54156b415b
@ -0,0 +1,24 @@
|
||||
class RulesManageListModel {
|
||||
int id;
|
||||
String title;
|
||||
String content;
|
||||
String releaseDate;
|
||||
|
||||
RulesManageListModel({this.id, this.title, this.content, this.releaseDate});
|
||||
|
||||
RulesManageListModel.fromJson(Map<String, dynamic> json) {
|
||||
id = json['id'];
|
||||
title = json['title'];
|
||||
content = json['content'];
|
||||
releaseDate = json['releaseDate'];
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() {
|
||||
final Map<String, dynamic> data = new Map<String, dynamic>();
|
||||
data['id'] = this.id;
|
||||
data['title'] = this.title;
|
||||
data['content'] = this.content;
|
||||
data['releaseDate'] = this.releaseDate;
|
||||
return data;
|
||||
}
|
||||
}
|
@ -0,0 +1,96 @@
|
||||
import 'package:aku_community_manager/const/api.dart';
|
||||
import 'package:aku_community_manager/models/manager/rules_manage/rules_manage_list_model.dart';
|
||||
import 'package:aku_community_manager/style/app_style.dart';
|
||||
import 'package:aku_community_manager/ui/widgets/common/aku_scaffold.dart';
|
||||
import 'package:aku_community_manager/ui/widgets/common/bee_list_view.dart';
|
||||
import 'package:common_utils/common_utils.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_easyrefresh/easy_refresh.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:velocity_x/velocity_x.dart';
|
||||
|
||||
class RulesManagePage extends StatefulWidget {
|
||||
RulesManagePage({Key key}) : super(key: key);
|
||||
|
||||
@override
|
||||
_RulesManagePageState createState() => _RulesManagePageState();
|
||||
}
|
||||
|
||||
class _RulesManagePageState extends State<RulesManagePage> {
|
||||
EasyRefreshController _refreshController;
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
_refreshController = EasyRefreshController();
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_refreshController.dispose();
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return AkuScaffold(
|
||||
title: '规程管理',
|
||||
body: BeeListView(
|
||||
path: API.manage.rulesManageList,
|
||||
controller: _refreshController,
|
||||
convert: (models) {
|
||||
return models.tableList
|
||||
.map((e) => RulesManageListModel.fromJson(e))
|
||||
.toList();
|
||||
},
|
||||
builder: (items) {
|
||||
return ListView.separated(
|
||||
padding: EdgeInsets.symmetric(vertical: 24.w),
|
||||
itemBuilder: (context, index) {
|
||||
return _buildCard(items[index]);
|
||||
},
|
||||
separatorBuilder: (_, __) {
|
||||
return 24.w.heightBox;
|
||||
},
|
||||
itemCount: items.length);
|
||||
}),
|
||||
);
|
||||
}
|
||||
|
||||
Widget _buildCard(RulesManageListModel model) {
|
||||
return Container(
|
||||
color: Colors.white,
|
||||
padding: EdgeInsets.symmetric(vertical: 24.w, horizontal: 32.w),
|
||||
width: double.infinity,
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
model.title.text
|
||||
.size(32.sp)
|
||||
.color(kTextPrimaryColor)
|
||||
.maxLines(1)
|
||||
.overflow(TextOverflow.ellipsis)
|
||||
.bold
|
||||
.make(),
|
||||
32.w.heightBox,
|
||||
model.content.text
|
||||
.size(24.sp)
|
||||
.color(kTextSubColor)
|
||||
.maxLines(3)
|
||||
.overflow(TextOverflow.ellipsis)
|
||||
.make(),
|
||||
32.w.heightBox,
|
||||
Row(
|
||||
children: [
|
||||
'南宁人才公寓'.text.size(20.sp).color(kTextSubColor).make(),
|
||||
Spacer(),
|
||||
'发布于 ${DateUtil.formatDateStr(model.releaseDate, format: 'MM-dd HH:mm')}'
|
||||
.text
|
||||
.size(20.sp)
|
||||
.color(kTextSubColor)
|
||||
.make(),
|
||||
],
|
||||
),
|
||||
],
|
||||
));
|
||||
}
|
||||
}
|
Loading…
Reference in new issue