Browse Source

bug修复调整

dzx 1 year ago
parent
commit
6e2ae47b6a

+ 5 - 3
src/main/java/com/xjrsoft/module/activity/controller/ActivityEnrollController.java

@@ -11,6 +11,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.xjrsoft.common.model.result.RT;
 import com.xjrsoft.common.page.ConventPage;
 import com.xjrsoft.common.page.PageOutput;
+import com.xjrsoft.module.activity.dto.ActivityEnrollExportDto;
 import com.xjrsoft.module.activity.dto.ActivityEnrollPageDto;
 import com.xjrsoft.module.activity.dto.AddActivityEnrollDto;
 import com.xjrsoft.module.activity.dto.ChangeStatusDto;
@@ -119,7 +120,7 @@ public class ActivityEnrollController {
 
     @PostMapping("/export-query")
     @ApiOperation(value = "导出列表")
-    public ResponseEntity<byte[]> exportData(@Valid @RequestBody ActivityEnrollPageDto dto) {
+    public ResponseEntity<byte[]> exportData(@Valid @RequestBody ActivityEnrollExportDto dto) {
         List<ActivityEnrollPageVo> listVos = activityEnrollService.getList(dto);
         List<ActivityEnrollExcelVo> list = new ArrayList<>();
         SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
@@ -127,9 +128,10 @@ public class ActivityEnrollController {
             list.add(new ActivityEnrollExcelVo(){{
                 setName(listVo.getName());
                 setMobile(listVo.getMobile());
-                if(listVo.getRoleId() == 2L){
+                if(listVo.getTeacherId() != null){
                     setRoleType("教师");
-                }else if(listVo.getRoleId() == 3L){
+                }
+                if(listVo.getStudentId() != null){
                     setRoleType("学生");
                 }
                 if(listVo.getStatus() == 0){

+ 8 - 5
src/main/java/com/xjrsoft/module/activity/controller/ActivityInfoController.java

@@ -4,16 +4,20 @@ import cn.dev33.satoken.annotation.SaCheckPermission;
 import cn.dev33.satoken.stp.StpUtil;
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.db.Entity;
+import cn.hutool.json.JSONArray;
+import cn.hutool.json.JSONUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.google.gson.JsonArray;
 import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
 import com.google.gson.JsonParser;
 import com.xjrsoft.common.exception.MyException;
 import com.xjrsoft.common.model.result.RT;
 import com.xjrsoft.common.mybatis.SqlRunnerAdapter;
 import com.xjrsoft.common.page.ConventPage;
 import com.xjrsoft.common.page.PageOutput;
+import com.xjrsoft.module.activity.dto.ActivityEnrollExportDto;
 import com.xjrsoft.module.activity.dto.ActivityEnrollPageDto;
 import com.xjrsoft.module.activity.dto.ActivityInfoPageDto;
 import com.xjrsoft.module.activity.dto.AddActivityInfoDto;
@@ -113,10 +117,9 @@ public class ActivityInfoController {
 
         List<ActivityEnrollRangeVo> userRelationList = new ArrayList<>();
         if(activityInfo.getEnrollRange() != null && !activityInfo.getEnrollRange().isEmpty()){
-            JsonParser parser = new JsonParser();
-            JsonArray asJsonArray = parser.parse(activityInfo.getEnrollRange()).getAsJsonArray();
-            for (JsonElement jsonElement : asJsonArray) {
-                ActivityEnrollRangeVo relationDto = BeanUtil.toBean(jsonElement.getAsJsonObject().toString(), ActivityEnrollRangeVo.class);
+            JSONArray asJsonArray = JSONUtil.parseArray(activityInfo.getEnrollRange());
+            for (Object jsonElement : asJsonArray) {
+                ActivityEnrollRangeVo relationDto = JSONUtil.toBean(JSONUtil.parseObj(jsonElement), ActivityEnrollRangeVo.class);
                 if(relationDto.getUserId() != null){
                     XjrUser xjrUser = xjrUserService.getById(relationDto.getUserId());
                     if(xjrUser != null){
@@ -139,7 +142,7 @@ public class ActivityInfoController {
         }
         infoVo.setActivityEnrollRangeList(userRelationList);
 
-        ActivityEnrollPageDto dto = new ActivityEnrollPageDto();
+        ActivityEnrollExportDto dto = new ActivityEnrollExportDto();
         dto.setActivityInfoId(id);
         List<ActivityEnrollPageVo> enrollList = enrollService.getList(dto);
         infoVo.setEnrollCount(enrollList.size());

+ 28 - 0
src/main/java/com/xjrsoft/module/activity/dto/ActivityEnrollExportDto.java

@@ -0,0 +1,28 @@
+package com.xjrsoft.module.activity.dto;
+
+import com.xjrsoft.common.page.PageInput;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+
+/**
+* @title: 活动信息分页查询入参
+* @Author dzx
+* @Date: 2024-07-19
+* @Version 1.0
+*/
+@Data
+@EqualsAndHashCode(callSuper = false)
+public class ActivityEnrollExportDto {
+
+    @ApiModelProperty("活动id")
+    private Long activityInfoId;
+
+    @ApiModelProperty("状态(0:待确认 1:未参与 2:已参与)")
+    private Integer status;
+
+    @ApiModelProperty("登录人id")
+    private Long loginUserId;
+
+}

+ 2 - 1
src/main/java/com/xjrsoft/module/activity/mapper/ActivityEnrollMapper.java

@@ -2,6 +2,7 @@ package com.xjrsoft.module.activity.mapper;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.yulichang.base.MPJBaseMapper;
+import com.xjrsoft.module.activity.dto.ActivityEnrollExportDto;
 import com.xjrsoft.module.activity.dto.ActivityEnrollPageDto;
 import com.xjrsoft.module.activity.entity.ActivityEnroll;
 import com.xjrsoft.module.activity.vo.ActivityEnrollPageVo;
@@ -21,5 +22,5 @@ public interface ActivityEnrollMapper extends MPJBaseMapper<ActivityEnroll> {
 
     Page<ActivityEnrollPageVo> getPage(Page<ActivityEnrollPageVo> page, @Param("dto") ActivityEnrollPageDto dto);
 
-    List<ActivityEnrollPageVo> getList(@Param("dto") ActivityEnrollPageDto dto);
+    List<ActivityEnrollPageVo> getList(@Param("dto") ActivityEnrollExportDto dto);
 }

+ 2 - 1
src/main/java/com/xjrsoft/module/activity/service/IActivityEnrollService.java

@@ -2,6 +2,7 @@ package com.xjrsoft.module.activity.service;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.yulichang.base.MPJBaseService;
+import com.xjrsoft.module.activity.dto.ActivityEnrollExportDto;
 import com.xjrsoft.module.activity.dto.ActivityEnrollPageDto;
 import com.xjrsoft.module.activity.dto.AddActivityEnrollDto;
 import com.xjrsoft.module.activity.entity.ActivityEnroll;
@@ -43,5 +44,5 @@ public interface IActivityEnrollService extends MPJBaseService<ActivityEnroll> {
 
     Page<ActivityEnrollPageVo> getPage(Page<ActivityEnrollPageVo> page, ActivityEnrollPageDto dto);
 
-    List<ActivityEnrollPageVo> getList(ActivityEnrollPageDto dto);
+    List<ActivityEnrollPageVo> getList(ActivityEnrollExportDto dto);
 }

+ 2 - 1
src/main/java/com/xjrsoft/module/activity/service/impl/ActivityEnrollServiceImpl.java

@@ -6,6 +6,7 @@ import com.github.yulichang.base.MPJBaseServiceImpl;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import com.xjrsoft.common.enums.DeleteMark;
 import com.xjrsoft.common.utils.VoToColumnUtil;
+import com.xjrsoft.module.activity.dto.ActivityEnrollExportDto;
 import com.xjrsoft.module.activity.dto.ActivityEnrollPageDto;
 import com.xjrsoft.module.activity.dto.AddActivityEnrollDto;
 import com.xjrsoft.module.activity.dto.AddActivityEnrollRangeDto;
@@ -126,7 +127,7 @@ public class ActivityEnrollServiceImpl extends MPJBaseServiceImpl<ActivityEnroll
     }
 
     @Override
-    public List<ActivityEnrollPageVo> getList(ActivityEnrollPageDto dto) {
+    public List<ActivityEnrollPageVo> getList(ActivityEnrollExportDto dto) {
         return this.baseMapper.getList(dto);
     }
 }

+ 4 - 2
src/main/resources/mapper/activity/ActivityEnrollMapper.xml

@@ -14,8 +14,10 @@
         </if>
     </select>
 
-    <select id="getList" parameterType="com.xjrsoft.module.activity.dto.ActivityEnrollPageDto" resultType="com.xjrsoft.module.activity.vo.ActivityEnrollPageVo">
-        SELECT t1.id,t1.status,t2.name,t1.create_date,t2.user_name,t2.mobile,t1.activity_info_id FROM activity_enroll t1
+    <select id="getList" parameterType="com.xjrsoft.module.activity.dto.ActivityEnrollExportDto" resultType="com.xjrsoft.module.activity.vo.ActivityEnrollPageVo">
+        SELECT t1.id,t1.status,t2.name,t1.create_date,t2.user_name,t2.mobile,
+        (select id from base_teacher where user_id = t1.user_id) as teacher_id,
+        (select id from base_student where user_id = t1.user_id) as student_id FROM activity_enroll t1
         INNER JOIN xjr_user t2 ON t1.user_id = t2.id
         WHERE t1.delete_mark = 0 AND t1.activity_info_id = #{dto.activityInfoId}
         <if test="dto.status != null">