Parcourir la source

活动信息调整

dzx il y a 1 an
Parent
commit
bfde0ab95c

+ 143 - 0
src/main/java/com/xjrsoft/module/activity/controller/ActivityEnrollController.java

@@ -0,0 +1,143 @@
+package com.xjrsoft.module.activity.controller;
+
+import cn.dev33.satoken.annotation.SaCheckPermission;
+import cn.hutool.core.bean.BeanUtil;
+import com.alibaba.excel.EasyExcel;
+import com.alibaba.excel.support.ExcelTypeEnum;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.xjrsoft.common.exception.MyException;
+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.ActivityEnrollPageDto;
+import com.xjrsoft.module.activity.dto.AddActivityEnrollDto;
+import com.xjrsoft.module.activity.dto.ChangeStatusDto;
+import com.xjrsoft.module.activity.dto.UpdateActivityInfoDto;
+import com.xjrsoft.module.activity.entity.ActivityEnroll;
+import com.xjrsoft.module.activity.service.IActivityEnrollService;
+import com.xjrsoft.module.activity.vo.ActivityEnrollExcelVo;
+import com.xjrsoft.module.activity.vo.ActivityEnrollPageVo;
+import com.xjrsoft.module.banding.dto.BandingTaskClassStudentPageDto;
+import com.xjrsoft.module.banding.vo.BandingTaskClassExcelVo;
+import com.xjrsoft.module.banding.vo.BandingTaskClassStudentListVo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.validation.Valid;
+import java.io.ByteArrayOutputStream;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+* @title: 活动信息
+* @Author dzx
+* @Date: 2024-07-19
+* @Version 1.0
+*/
+@RestController
+@RequestMapping("/activity" + "/activityEnroll")
+@Api(value = "/activity"  + "/activityEnroll",tags = "活动登记代码")
+@AllArgsConstructor
+public class ActivityEnrollController {
+
+
+    private final IActivityEnrollService activityEnrollService;
+
+
+    @GetMapping(value = "/page")
+    @ApiOperation(value="活动信息列表(分页)")
+    @SaCheckPermission("activityinfo:detail")
+    public RT<PageOutput<ActivityEnrollPageVo>> page(@Valid ActivityEnrollPageDto dto){
+
+        Page<ActivityEnrollPageVo> page = activityEnrollService.getPage(new Page<>(dto.getLimit(), dto.getSize()), dto);
+        PageOutput<ActivityEnrollPageVo> pageOutput = ConventPage.getPageOutput(page, ActivityEnrollPageVo.class);
+        for (ActivityEnrollPageVo item : pageOutput.getList()) {
+        }
+        return RT.ok(pageOutput);
+    }
+
+    @PostMapping(value = "/change-status")
+    @ApiOperation(value="修改状态")
+    @SaCheckPermission("officebuild:detail")
+    public RT<Boolean> changeStatus(@Valid @RequestBody ChangeStatusDto dto) throws Exception {
+        ActivityEnroll enroll = activityEnrollService.getById(dto.getId());
+        if(enroll == null){
+            throw new MyException("未能找到该信息");
+        }
+        enroll.setStatus(dto.getStatus());
+        activityEnrollService.updateById(enroll);
+        return RT.ok(true);
+    }
+
+
+    @PostMapping
+    @ApiOperation(value = "新增活动信息")
+    @SaCheckPermission("activityinfo:add")
+    public RT<Boolean> add(@Valid @RequestBody AddActivityEnrollDto dto){
+
+        boolean isSuccess = activityEnrollService.save(dto);
+        return RT.ok(isSuccess);
+    }
+
+    @PutMapping
+    @ApiOperation(value = "修改活动信息")
+    @SaCheckPermission("activityinfo:edit")
+    public RT<Boolean> update(@Valid @RequestBody UpdateActivityInfoDto dto){
+
+        ActivityEnroll activityInfo = BeanUtil.toBean(dto, ActivityEnroll.class);
+        return RT.ok(activityEnrollService.update(activityInfo));
+
+    }
+
+    @DeleteMapping
+    @ApiOperation(value = "删除活动信息")
+    @SaCheckPermission("activityinfo:delete")
+    public RT<Boolean> delete(@Valid @RequestBody List<Long> ids){
+        return RT.ok(activityEnrollService.delete(ids));
+    }
+
+
+    @PostMapping("/export-query")
+    @ApiOperation(value = "导出列表")
+    public ResponseEntity<byte[]> exportData(@Valid @RequestBody ActivityEnrollPageDto dto) {
+        List<ActivityEnrollPageVo> listVos = activityEnrollService.getList(dto);
+        List<ActivityEnrollExcelVo> list = new ArrayList<>();
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
+        for (ActivityEnrollPageVo listVo : listVos) {
+            list.add(new ActivityEnrollExcelVo(){{
+                setName(listVo.getName());
+                setMobile(listVo.getMobile());
+                if(listVo.getRoleId() == 2L){
+                    setRoleType("教师");
+                }else if(listVo.getRoleId() == 3L){
+                    setRoleType("学生");
+                }
+                if(listVo.getStatus() == 0){
+                    setStatus("待确认");
+                }else if(listVo.getStatus() == 1){
+                    setStatus("未参与");
+                }else if(listVo.getStatus() == 2){
+                    setStatus("已参与");
+                }
+                setUserName(listVo.getUserName());
+                setCreateDate(sdf.format(listVo.getCreateDate()));
+            }});
+        }
+
+        ByteArrayOutputStream bot = new ByteArrayOutputStream();
+        EasyExcel.write(bot, BandingTaskClassExcelVo.class).automaticMergeHead(false).excelType(ExcelTypeEnum.XLSX).sheet().doWrite(list);
+
+        return RT.fileStream(bot.toByteArray(), "banding" + ExcelTypeEnum.XLSX.getValue());
+    }
+
+}

+ 15 - 0
src/main/java/com/xjrsoft/module/activity/controller/ActivityInfoController.java

@@ -3,11 +3,13 @@ package com.xjrsoft.module.activity.controller;
 import cn.dev33.satoken.annotation.SaCheckPermission;
 import cn.hutool.core.bean.BeanUtil;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.xjrsoft.common.exception.MyException;
 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.ActivityInfoPageDto;
 import com.xjrsoft.module.activity.dto.AddActivityInfoDto;
+import com.xjrsoft.module.activity.dto.ChangeStatusDto;
 import com.xjrsoft.module.activity.dto.UpdateActivityInfoDto;
 import com.xjrsoft.module.activity.entity.ActivityInfo;
 import com.xjrsoft.module.activity.service.IActivityInfoService;
@@ -73,6 +75,19 @@ public class ActivityInfoController {
         return RT.ok(BeanUtil.toBean(activityInfo, ActivityInfoVo.class));
     }
 
+    @PostMapping(value = "/change-status")
+    @ApiOperation(value="修改状态")
+    @SaCheckPermission("officebuild:detail")
+    public RT<Boolean> changeStatus(@Valid @RequestBody ChangeStatusDto dto) throws Exception {
+        ActivityInfo activityInfo = activityInfoService.getById(dto.getId());
+        if(activityInfo == null){
+            throw new MyException("未能找到活动信息");
+        }
+        activityInfo.setStatus(dto.getStatus());
+        activityInfoService.updateById(activityInfo);
+        return RT.ok(true);
+    }
+
 
     @PostMapping
     @ApiOperation(value = "新增活动信息")

+ 24 - 0
src/main/java/com/xjrsoft/module/activity/dto/ActivityEnrollPageDto.java

@@ -0,0 +1,24 @@
+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 ActivityEnrollPageDto extends PageInput {
+
+    @ApiModelProperty("活动id")
+    private Long activityInfoId;
+
+    @ApiModelProperty("状态(0:待确认 1:未参与 2:已参与)")
+    private Integer status;
+}

+ 3 - 8
src/main/java/com/xjrsoft/module/activity/dto/AddActivityEnrollDto.java

@@ -5,7 +5,7 @@ import lombok.Data;
 
 import java.io.Serializable;
 import java.util.Date;
-
+import java.util.List;
 
 
 /**
@@ -27,12 +27,7 @@ public class AddActivityEnrollDto implements Serializable {
     /**
     * 参与人(xjr_user)
     */
-    @ApiModelProperty("参与人(xjr_user)")
-    private Date userId;
-    /**
-    * 状态(0:待确认 1:未参与 2:已参与)
-    */
-    @ApiModelProperty("状态(0:待确认 1:未参与 2:已参与)")
-    private Integer STATUS;
+    @ApiModelProperty("参与人")
+    private List<AddActivityEnrollRangeDto> enrollRangeList;
 
 }

+ 30 - 0
src/main/java/com/xjrsoft/module/activity/dto/ChangeStatusDto.java

@@ -0,0 +1,30 @@
+package com.xjrsoft.module.activity.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+
+
+/**
+* @title: 活动信息
+* @Author dzx
+* @Date: 2024-07-19
+* @Version 1.0
+*/
+@Data
+public class ChangeStatusDto implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+    * 赛事名称
+    */
+    @ApiModelProperty("主键编号")
+    private Long id;
+    /**
+    * 状态(0:未发布 1:报名中 2:报名结束 3:活动结束)
+    */
+    @ApiModelProperty("状态")
+    private Integer status;
+}

+ 2 - 2
src/main/java/com/xjrsoft/module/activity/entity/ActivityEnroll.java

@@ -78,12 +78,12 @@ public class ActivityEnroll implements Serializable {
     * 参与人(xjr_user)
     */
     @ApiModelProperty("参与人(xjr_user)")
-    private Date userId;
+    private Long userId;
     /**
     * 状态(0:待确认 1:未参与 2:已参与)
     */
     @ApiModelProperty("状态(0:待确认 1:未参与 2:已参与)")
-    private Integer STATUS;
+    private Integer status;
 
 
 }

+ 9 - 0
src/main/java/com/xjrsoft/module/activity/mapper/ActivityEnrollMapper.java

@@ -1,8 +1,14 @@
 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.ActivityEnrollPageDto;
 import com.xjrsoft.module.activity.entity.ActivityEnroll;
+import com.xjrsoft.module.activity.vo.ActivityEnrollPageVo;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
 * @title: 活动登记表
@@ -13,4 +19,7 @@ import org.apache.ibatis.annotations.Mapper;
 @Mapper
 public interface ActivityEnrollMapper extends MPJBaseMapper<ActivityEnroll> {
 
+    Page<ActivityEnrollPageVo> getPage(Page<ActivityEnrollPageVo> page, @Param("dto") ActivityEnrollPageDto dto);
+
+    List<ActivityEnrollPageVo> getList(@Param("dto") ActivityEnrollPageDto dto);
 }

+ 0 - 2
src/main/java/com/xjrsoft/module/activity/mapper/ActivityInfoMapper.java

@@ -5,8 +5,6 @@ import com.github.yulichang.base.MPJBaseMapper;
 import com.xjrsoft.module.activity.dto.ActivityInfoPageDto;
 import com.xjrsoft.module.activity.entity.ActivityInfo;
 import com.xjrsoft.module.activity.vo.ActivityInfoPageVo;
-import com.xjrsoft.module.xycxedu.dto.ExamSubjectScoreDto;
-import com.xjrsoft.module.xycxedu.vo.ExamSubjectScorePageVo;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 

+ 48 - 0
src/main/java/com/xjrsoft/module/activity/service/IActivityEnrollService.java

@@ -0,0 +1,48 @@
+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.ActivityEnrollPageDto;
+import com.xjrsoft.module.activity.dto.AddActivityEnrollDto;
+import com.xjrsoft.module.activity.dto.AddActivityInfoDto;
+import com.xjrsoft.module.activity.entity.ActivityEnroll;
+import com.xjrsoft.module.activity.vo.ActivityEnrollPageVo;
+
+import java.util.List;
+
+/**
+* @title: 活动信息
+* @Author dzx
+* @Date: 2024-07-19
+* @Version 1.0
+*/
+
+public interface IActivityEnrollService extends MPJBaseService<ActivityEnroll> {
+    /**
+    * 新增
+    *
+    * @return
+    */
+    Boolean save(AddActivityEnrollDto dto);
+
+    /**
+    * 更新
+    *
+    * @param activityInfo
+    * @return
+    */
+    Boolean update(ActivityEnroll activityInfo);
+
+    /**
+    * 删除
+    *
+    * @param ids
+    * @return
+    */
+    Boolean delete(List<Long> ids);
+
+
+    Page<ActivityEnrollPageVo> getPage(Page<ActivityEnrollPageVo> page, ActivityEnrollPageDto dto);
+
+    List<ActivityEnrollPageVo> getList(ActivityEnrollPageDto dto);
+}

+ 0 - 1
src/main/java/com/xjrsoft/module/activity/service/IActivityInfoService.java

@@ -6,7 +6,6 @@ import com.xjrsoft.module.activity.dto.ActivityInfoPageDto;
 import com.xjrsoft.module.activity.dto.AddActivityInfoDto;
 import com.xjrsoft.module.activity.entity.ActivityInfo;
 import com.xjrsoft.module.activity.vo.ActivityInfoPageVo;
-import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 

+ 129 - 0
src/main/java/com/xjrsoft/module/activity/service/impl/ActivityEnrollServiceImpl.java

@@ -0,0 +1,129 @@
+package com.xjrsoft.module.activity.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+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.ActivityEnrollPageDto;
+import com.xjrsoft.module.activity.dto.AddActivityEnrollDto;
+import com.xjrsoft.module.activity.dto.AddActivityEnrollRangeDto;
+import com.xjrsoft.module.activity.entity.ActivityEnroll;
+import com.xjrsoft.module.activity.mapper.ActivityEnrollMapper;
+import com.xjrsoft.module.activity.service.IActivityEnrollService;
+import com.xjrsoft.module.activity.vo.ActivityEnrollPageVo;
+import com.xjrsoft.module.organization.entity.User;
+import com.xjrsoft.module.organization.entity.UserDeptRelation;
+import com.xjrsoft.module.organization.service.IUserService;
+import com.xjrsoft.module.student.entity.BaseStudentSchoolRoll;
+import com.xjrsoft.module.student.service.IBaseStudentSchoolRollService;
+import com.xjrsoft.module.teacher.entity.XjrUser;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+/**
+* @title: 活动信息
+* @Author dzx
+* @Date: 2024-07-19
+* @Version 1.0
+*/
+@Service
+@AllArgsConstructor
+public class ActivityEnrollServiceImpl extends MPJBaseServiceImpl<ActivityEnrollMapper, ActivityEnroll> implements IActivityEnrollService {
+    private final IUserService userService;
+    private final IBaseStudentSchoolRollService rollService;
+    @Override
+    public Boolean save(AddActivityEnrollDto dto) {
+        List<ActivityEnroll> insertList = new ArrayList<>();
+        if(dto.getEnrollRangeList() != null){
+            List<ActivityEnroll> existList = this.list(
+                    new QueryWrapper<ActivityEnroll>().lambda()
+                            .eq(ActivityEnroll::getActivityInfoId, dto.getActivityInfoId())
+                            .eq(ActivityEnroll::getDeleteMark, DeleteMark.NODELETE.getCode())
+            );
+            Date createDate = new Date();
+            Map<Long, ActivityEnroll> existMap = existList.stream().collect(Collectors.toMap(ActivityEnroll::getUserId, x -> x));
+            for (AddActivityEnrollRangeDto enrollRange : dto.getEnrollRangeList()) {
+                if(enrollRange.getUserId() != null){
+                    if(!existMap.containsKey(enrollRange.getUserId() )){
+                        insertList.add(
+                                new ActivityEnroll(){{
+                                    setUserId(enrollRange.getUserId());
+                                    setCreateDate(createDate);
+                                    setActivityInfoId(dto.getActivityInfoId());
+                                    setStatus(0);
+                                }}
+                        );
+                    }
+                }else if(enrollRange.getDeptId() != null){
+                    List<User> userList = userService.list(
+                            new MPJLambdaWrapper<User>()
+                                    .select(XjrUser::getId)
+                                    .select(XjrUser.class, x -> VoToColumnUtil.fieldsToColumns(XjrUser.class).contains(x.getProperty()))
+                                    .innerJoin(UserDeptRelation.class, UserDeptRelation::getUserId, User::getId)
+                                    .eq(UserDeptRelation::getDeptId, enrollRange.getDeptId())
+                    );
+                    for (User user : userList) {
+                        insertList.add(
+                                new ActivityEnroll(){{
+                                    setUserId(user.getId());
+                                    setCreateDate(createDate);
+                                    setActivityInfoId(dto.getActivityInfoId());
+                                    setStatus(0);
+                                }}
+                        );
+                    }
+                }else if(enrollRange.getClassId() != null){
+                    List<BaseStudentSchoolRoll> userList = rollService.list(
+                            new MPJLambdaWrapper<BaseStudentSchoolRoll>()
+                                    .select(BaseStudentSchoolRoll::getId)
+                                    .select(BaseStudentSchoolRoll.class, x -> VoToColumnUtil.fieldsToColumns(BaseStudentSchoolRoll.class).contains(x.getProperty()))
+                                    .innerJoin(XjrUser.class, XjrUser::getId, BaseStudentSchoolRoll::getUserId)
+                                    .eq(BaseStudentSchoolRoll::getClassId, enrollRange.getClassId())
+                    );
+                    for (BaseStudentSchoolRoll user : userList) {
+                        insertList.add(
+                                new ActivityEnroll(){{
+                                    setUserId(user.getUserId());
+                                    setCreateDate(createDate);
+                                    setActivityInfoId(dto.getActivityInfoId());
+                                    setStatus(0);
+                                }}
+                        );
+                    }
+                }
+            }
+        }
+        if(!insertList.isEmpty()){
+            this.saveBatch(insertList);
+        }
+        return true;
+    }
+
+    @Override
+    public Boolean update(ActivityEnroll activityInfo) {
+        return null;
+    }
+
+    @Override
+    public Boolean delete(List<Long> ids) {
+        return null;
+    }
+
+    public Page<ActivityEnrollPageVo> getPage(Page<ActivityEnrollPageVo> page, ActivityEnrollPageDto dto) {
+        return this.baseMapper.getPage(page, dto);
+    }
+
+    @Override
+    public List<ActivityEnrollPageVo> getList(ActivityEnrollPageDto dto) {
+        return this.baseMapper.getList(dto);
+    }
+}

+ 49 - 0
src/main/java/com/xjrsoft/module/activity/vo/ActivityEnrollExcelVo.java

@@ -0,0 +1,49 @@
+package com.xjrsoft.module.activity.vo;
+
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.annotation.write.style.ContentStyle;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+* @title: 活动信息分页列表出参
+* @Author dzx
+* @Date: 2024-07-19
+* @Version 1.0
+*/
+@Data
+public class ActivityEnrollExcelVo {
+
+    @ContentStyle(dataFormat = 49)
+    @ExcelProperty("用户类型")
+    @ApiModelProperty("用户类型")
+    private String roleType;
+
+    @ContentStyle(dataFormat = 49)
+    @ExcelProperty("姓名")
+    @ApiModelProperty("姓名")
+    private String name;
+
+    @ContentStyle(dataFormat = 49)
+    @ExcelProperty("用户名")
+    @ApiModelProperty("用户名")
+    private String userName;
+
+    @ContentStyle(dataFormat = 49)
+    @ExcelProperty("手机号")
+    @ApiModelProperty("手机号")
+    private String mobile;
+
+    @ContentStyle(dataFormat = 49)
+    @ExcelProperty("报名时间")
+    @ApiModelProperty("报名时间")
+    private String createDate;
+
+    @ContentStyle(dataFormat = 49)
+    @ExcelProperty("参与状态")
+    @ApiModelProperty("参与状态")
+    private String status;
+
+}

+ 54 - 0
src/main/java/com/xjrsoft/module/activity/vo/ActivityEnrollPageVo.java

@@ -0,0 +1,54 @@
+package com.xjrsoft.module.activity.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+* @title: 活动信息分页列表出参
+* @Author dzx
+* @Date: 2024-07-19
+* @Version 1.0
+*/
+@Data
+public class ActivityEnrollPageVo {
+
+    /**
+    * 
+    */
+    @ApiModelProperty("")
+    private String id;
+    /**
+    * 赛事名称
+    */
+    @ApiModelProperty("参与人员名称")
+    private String name;
+    /**
+    * 报名时间
+    */
+    @ApiModelProperty("报名时间")
+    private Date createDate;
+    /**
+    * 活动结束时间
+    */
+    @ApiModelProperty("活动结束时间")
+    private Date endDate;
+    /**
+    * 用户名
+    */
+    @ApiModelProperty("用户名")
+    private String userName;
+
+    @ApiModelProperty("手机号")
+    private String mobile;
+
+    @ApiModelProperty("角色id")
+    private Long roleId;
+    /**
+    * 状态(0:待确认 1:未参与 2:已参与)
+    */
+    @ApiModelProperty("状态(0:待确认 1:未参与 2:已参与)")
+    private Integer status;
+
+}

+ 25 - 0
src/main/resources/mapper/activity/ActivityEnrollMapper.xml

@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.xjrsoft.module.activity.mapper.ActivityEnrollMapper">
+    <select id="getPage" 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,t1.mobile,t3.role_id FROM activity_enroll t1
+        INNER JOIN xjr_user t2 ON t1.user_id = t2.id
+        LEFT JOIN xjr_user_role_relation t3 ON t3.user_id = t2.id
+        WHERE t1.delete_mark = 0 AND t1.activity_info_id = #{dto.activityInfoId}
+        <if test="dto.status != null">
+            and t1.status = #{dto.status}
+        </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,t1.mobile,t3.role_id FROM activity_enroll t1
+        INNER JOIN xjr_user t2 ON t1.user_id = t2.id
+        LEFT JOIN xjr_user_role_relation t3 ON t3.user_id = t2.id
+        WHERE t1.delete_mark = 0 AND t1.activity_info_id = #{dto.activityInfoId}
+        <if test="dto.status != null">
+            and t1.status = #{dto.status}
+        </if>
+    </select>
+</mapper>