参加活动用户

pull/1/head
章文轩 3 years ago
parent 8748a649a1
commit 8b6c650d9f

@ -1,6 +1,7 @@
import 'package:aku_new_community/constants/saas_api.dart';
import 'package:aku_new_community/model/common/img_model.dart';
import 'package:aku_new_community/models/home/activity_detail_model.dart';
import 'package:aku_new_community/models/home/home_activity_model.dart';
import 'package:aku_new_community/utils/headers.dart';
import 'package:aku_new_community/utils/network/base_model.dart';
import 'package:aku_new_community/utils/network/net_util.dart';
@ -17,6 +18,7 @@ import 'package:get/get.dart';
import 'package:url_launcher/url_launcher.dart';
import 'activity_func.dart';
import 'activity_people_list_page.dart';
class ActivityDetailPage extends StatefulWidget {
final int id;
@ -321,6 +323,7 @@ class _ActivityDetailPageState extends State<ActivityDetailPage> {
class AvatarsParticipate extends StatelessWidget {
final List<String?> avatars;
final List<Registration>? registrationList;
//
final int pNum;
@ -335,13 +338,15 @@ class AvatarsParticipate extends StatelessWidget {
required this.avatars,
required this.pNum,
this.tNum,
this.hasIcon = true,
this.hasIcon = true, this.registrationList,
}) : super(key: key);
@override
Widget build(BuildContext context) {
return InkWell(
onTap: () {},
onTap: () {
Get.to(() => ActivityPeopleListPage( registrationList: registrationList,));
},
child: Container(
child: Row(
children: [

@ -173,8 +173,11 @@ class _ActivityDetailPageState extends State<ActivityDetailPage> {
),
MaterialButton(
height: 92.w,
onPressed: () =>
Get.to(() => ActivityPeopleListPage(id: widget.id)),
onPressed: () {
}
,
child: Row(
children: [
StackAvatar(

@ -8,7 +8,7 @@ import 'package:flutter/material.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart';
class ActivityListPage extends StatefulWidget {
ActivityListPage({Key? key}) : super(key: key);
ActivityListPage({Key? key}) : super(key: key);
@override
_ActivityListPageState createState() => _ActivityListPageState();

@ -1,69 +1,83 @@
import 'package:aku_new_community/const/resource.dart';
import 'package:aku_new_community/constants/api.dart';
import 'package:aku_new_community/constants/saas_api.dart';
import 'package:aku_new_community/model/common/img_model.dart';
import 'package:aku_new_community/model/community/activity_people_model.dart';
import 'package:aku_new_community/pages/things_page/widget/bee_list_view.dart';
import 'package:aku_new_community/models/home/activity_detail_model.dart';
import 'package:aku_new_community/utils/headers.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:flutter/material.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart';
class ActivityPeopleListPage extends StatefulWidget {
final int? id;
final List<Registration>? registrationList;
ActivityPeopleListPage({Key? key, required this.id}) : super(key: key);
ActivityPeopleListPage({Key? key, required this.registrationList}) : super(key: key);
@override
_ActivityPeopleListPageState createState() => _ActivityPeopleListPageState();
}
class _ActivityPeopleListPageState extends State<ActivityPeopleListPage> {
EasyRefreshController _refreshController = EasyRefreshController();
@override
void dispose() {
_refreshController.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return BeeScaffold(
title: '参与人员',
body: BeeListView<ActivityPeopleModel>(
controller: _refreshController,
path: API.community.activityPeopleList,
extraParams: {'activityId': widget.id},
convert: (model) =>
model.rows.map((e) => ActivityPeopleModel.fromJson(e)).toList(),
builder: (items) {
return ListView.separated(
padding: EdgeInsets.all(32.w),
itemBuilder: (context, index) {
final ActivityPeopleModel model = items[index];
return Row(
children: [
96.hb,
20.wb,
FadeInImage.assetNetwork(
placeholder: R.ASSETS_IMAGES_PLACEHOLDER_WEBP,
image: SAASAPI.image(ImgModel.first(model.imgUrl)),
height: 60.w,
width: 60.w,
),
18.wb,
model.name!.text.size(28.sp).make(),
Spacer(),
model.tel!.text.size(28.sp).make(),
],
);
},
separatorBuilder: (_, __) => Divider(height: 1.w),
itemCount: items.length,
);
},
).material(color: Colors.white),
title: '报名人员列表',
body:
Column(
children: [
Container(
color: Colors.black.withOpacity(0.06),
height: 75.w,
width: double.infinity,
child: '已有'.richText.color(Colors.black.withOpacity(0.65)).size(28.sp).withTextSpanChildren([
widget.registrationList==null?''.textSpan
.size(28.sp)
.color(Color(0xFFFA5858))
.make(): '${widget.registrationList!.length}'
.textSpan
.size(28.sp)
.color(Color(0xFFFA5858))
.make(),
'人报名参加本次活动'.textSpan.size(28.sp).color(Colors.black.withOpacity(0.65)).make(),
]).make(),
),
widget.registrationList!=null?
ListView.separated(
padding: EdgeInsets.all(32.w),
shrinkWrap: true,
itemBuilder: (context, index) {
return Row(
children: [
96.hb,
20.wb,
FadeInImage.assetNetwork(
placeholder: R.ASSETS_IMAGES_PLACEHOLDER_WEBP,
image: SAASAPI.image(ImgModel.first(widget.registrationList![index].avatarImgList)),
height: 60.w,
width: 60.w,
),
18.wb,
widget.registrationList![index].name.text.size(28.sp).make(),
],
);
},
separatorBuilder: (_, __) => Divider(height: 1.w),
itemCount: widget.registrationList!.length,
):SizedBox(),
],
)
);
}
}

Loading…
Cancel
Save