diff --git a/lib/ui/community/activity/activity_detail_page.dart b/lib/ui/community/activity/activity_detail_page.dart index 01eeefb9..348fa5b4 100644 --- a/lib/ui/community/activity/activity_detail_page.dart +++ b/lib/ui/community/activity/activity_detail_page.dart @@ -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 { class AvatarsParticipate extends StatelessWidget { final List avatars; + final List? 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: [ diff --git a/lib/ui/community/activity/activity_detail_page_old.dart b/lib/ui/community/activity/activity_detail_page_old.dart index 3081d65e..24e8cb90 100644 --- a/lib/ui/community/activity/activity_detail_page_old.dart +++ b/lib/ui/community/activity/activity_detail_page_old.dart @@ -173,8 +173,11 @@ class _ActivityDetailPageState extends State { ), MaterialButton( height: 92.w, - onPressed: () => - Get.to(() => ActivityPeopleListPage(id: widget.id)), + onPressed: () { + + } + , + child: Row( children: [ StackAvatar( diff --git a/lib/ui/community/activity/activity_list_page.dart b/lib/ui/community/activity/activity_list_page.dart index 715230d3..36a9c46a 100644 --- a/lib/ui/community/activity/activity_list_page.dart +++ b/lib/ui/community/activity/activity_list_page.dart @@ -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(); diff --git a/lib/ui/community/activity/activity_people_list_page.dart b/lib/ui/community/activity/activity_people_list_page.dart index 572f974b..fabb1290 100644 --- a/lib/ui/community/activity/activity_people_list_page.dart +++ b/lib/ui/community/activity/activity_people_list_page.dart @@ -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? 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 { - EasyRefreshController _refreshController = EasyRefreshController(); + @override void dispose() { - _refreshController.dispose(); super.dispose(); } @override Widget build(BuildContext context) { return BeeScaffold( - title: '参与人员', - body: BeeListView( - 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(), + ], + ) + ); } }