From 186fec3e5cbe751381d19d900058e1ff6855801a Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期五, 23 五月 2025 10:35:42 +0800
Subject: [PATCH] 平台端活动管理(查询报名人员)

---
 framework/src/main/java/cn/lili/modules/lmk/domain/query/ActivityMembersQuery.java |   14 +++++++
 framework/src/main/java/cn/lili/modules/lmk/mapper/ActivityMapper.java             |    6 +++
 framework/src/main/java/cn/lili/modules/lmk/service/ActivityService.java           |    3 +
 framework/src/main/java/cn/lili/modules/lmk/domain/vo/ActivityVO.java              |    4 ++
 framework/src/main/java/cn/lili/modules/lmk/service/impl/ActivityServiceImpl.java  |   11 +++++
 manager-api/src/main/java/cn/lili/controller/lmk/ActivityController.java           |   11 +++++
 framework/src/main/resources/mapper/lmk/ActivityMapper.xml                         |   31 +++++++++++++++
 7 files changed, 79 insertions(+), 1 deletions(-)

diff --git a/framework/src/main/java/cn/lili/modules/lmk/domain/query/ActivityMembersQuery.java b/framework/src/main/java/cn/lili/modules/lmk/domain/query/ActivityMembersQuery.java
new file mode 100644
index 0000000..894aa1e
--- /dev/null
+++ b/framework/src/main/java/cn/lili/modules/lmk/domain/query/ActivityMembersQuery.java
@@ -0,0 +1,14 @@
+package cn.lili.modules.lmk.domain.query;
+
+import cn.lili.base.AbsQuery;
+import io.swagger.annotations.ApiModel;
+import lombok.Data;
+
+@Data
+@ApiModel(value = "娲诲姩鎶ュ悕浜哄憳鏌ヨ鍙傛暟", description = "娲诲姩鎶ュ悕浜哄憳鏌ヨ鍙傛暟")
+public class ActivityMembersQuery extends AbsQuery {
+
+    /** 娲诲姩id*/
+    private String id;
+
+}
diff --git a/framework/src/main/java/cn/lili/modules/lmk/domain/vo/ActivityVO.java b/framework/src/main/java/cn/lili/modules/lmk/domain/vo/ActivityVO.java
index e9240ba..ab61c97 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/domain/vo/ActivityVO.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/domain/vo/ActivityVO.java
@@ -3,6 +3,7 @@
 
 import cn.lili.base.AbsVo;
 import cn.lili.modules.lmk.domain.entity.Activity;
+import cn.lili.modules.member.entity.vo.MemberVO;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
@@ -12,6 +13,7 @@
 import org.springframework.lang.NonNull;
 
 import java.util.Date;
+import java.util.List;
 
 @Data
 @ApiModel(value = "Activity鏌ヨ鍙傛暟", description = "娲诲姩鏌ヨ〃鍗�")
@@ -80,6 +82,8 @@
     /** 璧勬簮璺緞*/
     private String url;
 
+    /** 鎶ュ悕浜哄憳闆嗗悎*/
+    private List<MemberVO> members;
 
     public static ActivityVO getVoByEntity(@NonNull Activity entity, ActivityVO vo) {
         if(vo == null) {
diff --git a/framework/src/main/java/cn/lili/modules/lmk/mapper/ActivityMapper.java b/framework/src/main/java/cn/lili/modules/lmk/mapper/ActivityMapper.java
index 6304f42..7f1b6e5 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/mapper/ActivityMapper.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/mapper/ActivityMapper.java
@@ -2,14 +2,18 @@
 
 import cn.lili.modules.lmk.domain.entity.Activity;
 import cn.lili.modules.lmk.domain.entity.CustomerBlack;
+import cn.lili.modules.lmk.domain.query.ActivityMembersQuery;
 import cn.lili.modules.lmk.domain.query.ActivityQuery;
 import cn.lili.modules.lmk.domain.query.CustomerBlackQuery;
 import cn.lili.modules.lmk.domain.vo.ActivityVO;
 import cn.lili.modules.lmk.domain.vo.CustomerBlackVO;
+import cn.lili.modules.member.entity.vo.MemberVO;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * 娲诲姩 Mapper 鎺ュ彛
@@ -32,4 +36,6 @@
     */
     IPage getPage(IPage page, @Param("query") ActivityQuery query);
 
+
+    IPage getMembers(IPage page, @Param("query") ActivityMembersQuery query);
 }
diff --git a/framework/src/main/java/cn/lili/modules/lmk/service/ActivityService.java b/framework/src/main/java/cn/lili/modules/lmk/service/ActivityService.java
index 0cfa942..102a5e2 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/service/ActivityService.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/service/ActivityService.java
@@ -3,6 +3,7 @@
 import cn.lili.base.Result;
 import cn.lili.modules.lmk.domain.entity.Activity;
 import cn.lili.modules.lmk.domain.form.ActivityForm;
+import cn.lili.modules.lmk.domain.query.ActivityMembersQuery;
 import cn.lili.modules.lmk.domain.query.ActivityQuery;
 import com.baomidou.mybatisplus.extension.service.IService;
 import org.springframework.web.multipart.MultipartFile;
@@ -68,4 +69,6 @@
     Result activityChangeStatus(ActivityForm form);
 
     Result activityChangeRecommend(ActivityForm form);
+
+    Result activityMembersPage(ActivityMembersQuery query);
 }
diff --git a/framework/src/main/java/cn/lili/modules/lmk/service/impl/ActivityServiceImpl.java b/framework/src/main/java/cn/lili/modules/lmk/service/impl/ActivityServiceImpl.java
index c63218f..f2e2db6 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/service/impl/ActivityServiceImpl.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/service/impl/ActivityServiceImpl.java
@@ -6,6 +6,7 @@
 import cn.lili.modules.lmk.domain.entity.CustomerTagRef;
 import cn.lili.modules.lmk.domain.form.ActivityForm;
 import cn.lili.modules.lmk.domain.form.CustomerTagRefForm;
+import cn.lili.modules.lmk.domain.query.ActivityMembersQuery;
 import cn.lili.modules.lmk.domain.query.ActivityQuery;
 import cn.lili.modules.lmk.domain.vo.ActivityVO;
 import cn.lili.modules.lmk.domain.vo.CustomerBlackVO;
@@ -13,6 +14,8 @@
 import cn.lili.modules.lmk.mapper.CustomerBlackMapper;
 import cn.lili.modules.lmk.service.ActivityService;
 import cn.lili.modules.lmk.service.LmkFileService;
+import cn.lili.modules.member.entity.vo.MemberVO;
+import cn.lili.modules.member.service.MemberService;
 import cn.lili.utils.PageUtil;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -33,6 +36,7 @@
     private final ActivityMapper activityMapper;
 
     private final LmkFileService lmkFileService;
+
 
     @Override
     public Result add(ActivityForm form) {
@@ -144,4 +148,11 @@
         baseMapper.updateById(entity);
         return Result.ok();
     }
+
+    @Override
+    public Result activityMembersPage(ActivityMembersQuery query) {
+        IPage<MemberVO> page = PageUtil.getPage(query, MemberVO.class);
+        baseMapper.getMembers(page, query);
+        return Result.ok().data(page.getRecords()).total(page.getTotal());
+    }
 }
diff --git a/framework/src/main/resources/mapper/lmk/ActivityMapper.xml b/framework/src/main/resources/mapper/lmk/ActivityMapper.xml
index abb1370..68c6209 100644
--- a/framework/src/main/resources/mapper/lmk/ActivityMapper.xml
+++ b/framework/src/main/resources/mapper/lmk/ActivityMapper.xml
@@ -75,5 +75,36 @@
             <if test="query.reportStartTime != null">AND LA.report_start_time >= #{query.reportStartTime}</if>
             <if test="query.reportEndTime != null">AND LA.report_end_time &lt;= #{query.reportEndTime}</if>
     </select>
+    <resultMap id="memberMap" type="cn.lili.modules.member.entity.vo.MemberVO">
+        <id property="id" column="id"/>
+
+        <!-- 鍩虹瀛楁鏄犲皠 -->
+        <result property="username" column="username"/>
+        <result property="nickName" column="nick_name"/>
+        <result property="sex" column="sex"/>
+        <result property="birthday" column="birthday"/>
+        <result property="regionId" column="region_id"/>
+        <result property="region" column="region"/>
+        <result property="mobile" column="mobile"/>
+        <result property="point" column="point"/>
+        <result property="totalPoint" column="total_point"/>
+        <result property="face" column="face"/>
+        <result property="disabled" column="disabled"/>
+        <result property="haveStore" column="have_store"/>
+        <result property="storeId" column="store_id"/>
+        <result property="openId" column="open_id"/>
+        <result property="clientEnum" column="client_enum"/>
+        <result property="lastLoginDate" column="last_login_date"/>
+        <result property="gradeId" column="grade_id"/>
+        <result property="experience" column="experience"/>
+        <result property="createTime" column="create_time"/>
+    </resultMap>
+
+    <select id="getMembers" resultMap="memberMap">
+        select
+            LM.* from lmk_activity_report LAR
+                          LEFT JOIN li_member LM ON LM.id = LAR.user_id
+        WHERE LAR.activity_id = #{query.id}
+    </select>
 
 </mapper>
diff --git a/manager-api/src/main/java/cn/lili/controller/lmk/ActivityController.java b/manager-api/src/main/java/cn/lili/controller/lmk/ActivityController.java
index 8d0be71..307070f 100644
--- a/manager-api/src/main/java/cn/lili/controller/lmk/ActivityController.java
+++ b/manager-api/src/main/java/cn/lili/controller/lmk/ActivityController.java
@@ -5,6 +5,7 @@
 import cn.lili.group.Update;
 import cn.lili.modules.lmk.domain.form.ActivityForm;
 import cn.lili.modules.lmk.domain.form.CustomerBlackForm;
+import cn.lili.modules.lmk.domain.query.ActivityMembersQuery;
 import cn.lili.modules.lmk.domain.query.ActivityQuery;
 import cn.lili.modules.lmk.domain.query.CustomerBlackQuery;
 import cn.lili.modules.lmk.service.ActivityService;
@@ -63,7 +64,7 @@
         return activityService.page(query);
     }
 
-    @GetMapping("/{idh }")
+    @GetMapping("/{id}")
     @ApiOperation(value = "璇︽儏", notes = "璇︽儏")
     public Result detail(@PathVariable("id") String id) {
         return activityService.detail(id);
@@ -85,4 +86,12 @@
     public Result activityChangeRecommend(@RequestBody ActivityForm form){
         return activityService.activityChangeRecommend(form);
     }
+
+    @GetMapping("/activityMembersPage")
+    @ApiOperation(value = "娲诲姩鎶ュ悕浜哄憳鍒嗛〉", notes = "娲诲姩鎶ュ悕浜哄憳鍒嗛〉")
+    public Result activityMembersPage(ActivityMembersQuery query){
+        return activityService.activityMembersPage(query);
+    }
+
+
 }

--
Gitblit v1.8.0