Browse Source

heart-work:报名审核-详情api

dev_shibei_match
yinzuomei 5 years ago
parent
commit
f05c44dd1f
  1. 18
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/ActUserLogDTO.java
  2. 27
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/AactUserDetailFormDTO.java
  3. 26
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/AuditResult.java
  4. 103
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/AuditingUserDetailResultDTO.java
  5. 29
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/CancelResult.java
  6. 34
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/HistoricalActInfo.java
  7. 30
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/HistoricalAuditResult.java
  8. 30
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/WorkActUserController.java
  9. 23
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/ActUserLogDao.java
  10. 27
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/ActUserRelationDao.java
  11. 18
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/ActUserLogEntity.java
  12. 10
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/WorkActUserService.java
  13. 120
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/WorkActUserServiceImpl.java
  14. 28
      epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActUserLogDao.xml
  15. 35
      epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActUserRelationDao.xml

18
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/ActUserLogDTO.java

@ -17,9 +17,10 @@
package com.epmet.dto; package com.epmet.dto;
import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import lombok.Data;
/** /**
@ -50,13 +51,14 @@ public class ActUserLogDTO implements Serializable {
/** /**
* 操作类型已报名/待审核auditing * 操作类型已报名/待审核auditing
审核通过passed * 审核通过passed
审核不通过refused * 审核不通过refused
取消报名canceld * 取消报名canceld
发放积分rewarded * 已签到signedin
拒绝发放积分refuse_reward * 发放积分rewarded
重新处理processing * 拒绝发放积分refuse_reward
* 重新处理processing
*
*/ */
private String operationType; private String operationType;

27
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/AactUserDetailFormDTO.java

@ -0,0 +1,27 @@
package com.epmet.dto.form.work;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* 报名审核-人员详情-入参DTO
*
* @author yinzuomei@elink-cn.com
* @date 2020/7/22 22:22
*/
@Data
public class AactUserDetailFormDTO implements Serializable {
private static final long serialVersionUID = 5791290477143999176L;
public interface AddUserInternalGroup {
}
/**
* 列表页返回的主键
*/
@NotBlank(message = "主键不能为空", groups = {AddUserInternalGroup.class})
private String actUserRelationId;
}

26
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/AuditResult.java

@ -0,0 +1,26 @@
package com.epmet.dto.result.work;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 审核结果已通过/已拒绝
*
* @author yinzuomei@elink-cn.com
* @date 2020/7/23 14:01
*/
@Data
public class AuditResult implements Serializable {
private static final long serialVersionUID = -656845099071435835L;
/**
* 审核通过/拒绝的时间yyyy-MM-dd HH:mm:ss
*/
private Date auditTime;
/**
* 拒绝原因status=passed时返回空字符串
*/
private String refusedReason;
}

103
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/AuditingUserDetailResultDTO.java

@ -0,0 +1,103 @@
package com.epmet.dto.result.work;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 报名审核-待审核人员详情-返参DTO
*
* @author yinzuomei@elink-cn.com
* @date 2020/7/22 22:24
*/
@Data
public class AuditingUserDetailResultDTO implements Serializable {
private static final long serialVersionUID = 6259802533450991971L;
/**
* 活动id
*/
private String actId;
/**
* 用户id
*/
private String userId;
/**
* 姓名
*/
private String realName;
/**
* 性别1男2女0未知
*/
private String gender;
/**
* true: 是志愿者 false : 不是志愿者
*/
private Boolean volunteerFlag;
/**
* 联系方式
*/
private String mobile;
/**
* 身份证号
*/
private String idNum;
/**
* 居住地址
*/
private String address;
/**
* 待审核auditing 审核通过passed 审核不通过refused 取消报名canceld
*/
private String status;
/**
* 报名时间yyyy-MM-dd HH:mm:ss
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date signUpTime;
/**
* 返回文本已拒绝5次
*/
private String refusedCountDesc;
/**
* 最近一次拒绝原因
*/
private String latestRefusedReason;
/**
* 最近一次拒绝的时间yyyy-MM-dd HH:mm:ss
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date latestAuditTime;
/**
* 历史活动情况
*/
private HistoricalActInfo historicalActInfo;
/**
* 取消信息已取消界面
*/
private CancelResult cancelResult;
/**
* 审核结果已通过/已拒绝
*/
private AuditResult auditResult;
/**
* 审核历史待审核界面需要显示
*/
private HistoricalAuditResult historicalAuditResult;
}

29
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/CancelResult.java

@ -0,0 +1,29 @@
package com.epmet.dto.result.work;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 取消信息已取消界面
*
* @author yinzuomei@elink-cn.com
* @date 2020/7/23 13:53
*/
@Data
public class CancelResult implements Serializable {
private static final long serialVersionUID = -4638522326622908384L;
/**
* 取消的原因:当status=canceld,才有值
*/
private String cancelReason;
/**
* 取消的时间yyyy-MM-dd HH:mm:ss
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date cancelTime;
}

34
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/HistoricalActInfo.java

@ -0,0 +1,34 @@
package com.epmet.dto.result.work;
import lombok.Data;
import java.io.Serializable;
/**
* 用户历史活动情况
*
* @author yinzuomei@elink-cn.com
* @date 2020/7/23 12:39
*/
@Data
public class HistoricalActInfo implements Serializable {
private static final long serialVersionUID = -7554295919888726898L;
/**
* 实际参加活动个数
*/
private Integer signInActNum;
/**
* 报名活动个数
*/
private Integer signUpActNum;
/**
* 获得积分活动个数
*/
private Integer obtainPointsActNum;
public HistoricalActInfo(){
this.signInActNum=0;
this.signUpActNum=0;
this.obtainPointsActNum=0;
}
}

30
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/HistoricalAuditResult.java

@ -0,0 +1,30 @@
package com.epmet.dto.result.work;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 审核历史待审核界面需要显示
*
* @author yinzuomei@elink-cn.com
* @date 2020/7/23 14:03
*/
@Data
public class HistoricalAuditResult implements Serializable {
/**
* 最近一次拒绝原因
*/
private String latestRefusedReason;
/**
* 最近一次拒绝的时间yyyy-MM-dd HH:mm:ss
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date latestAuditTime;
/**
* 返回文本已拒绝5次
*/
private String refusedCountDesc;
}

30
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/WorkActUserController.java

@ -2,6 +2,7 @@ package com.epmet.controller;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.dto.form.work.AactUserDetailFormDTO;
import com.epmet.dto.form.work.AuditingActUserFormDTO; import com.epmet.dto.form.work.AuditingActUserFormDTO;
import com.epmet.dto.result.work.*; import com.epmet.dto.result.work.*;
import com.epmet.service.WorkActUserService; import com.epmet.service.WorkActUserService;
@ -36,8 +37,7 @@ public class WorkActUserController {
@PostMapping("auditinglist") @PostMapping("auditinglist")
public Result<List<AuditingActUserResultDTO>> getAuditingList(@RequestBody AuditingActUserFormDTO formDTO){ public Result<List<AuditingActUserResultDTO>> getAuditingList(@RequestBody AuditingActUserFormDTO formDTO){
ValidatorUtils.validateEntity(formDTO, AuditingActUserFormDTO.AddUserInternalGroup.class); ValidatorUtils.validateEntity(formDTO, AuditingActUserFormDTO.AddUserInternalGroup.class);
List<AuditingActUserResultDTO> list=workActUserService.getAuditingList(formDTO); return new Result<List<AuditingActUserResultDTO>>().ok(workActUserService.getAuditingList(formDTO));
return new Result<List<AuditingActUserResultDTO>>().ok(list);
} }
@ -51,8 +51,7 @@ public class WorkActUserController {
@PostMapping("passedlist") @PostMapping("passedlist")
public Result<List<PassedActUserResultDTO>> getPassedList(@RequestBody AuditingActUserFormDTO formDTO){ public Result<List<PassedActUserResultDTO>> getPassedList(@RequestBody AuditingActUserFormDTO formDTO){
ValidatorUtils.validateEntity(formDTO, AuditingActUserFormDTO.AddUserInternalGroup.class); ValidatorUtils.validateEntity(formDTO, AuditingActUserFormDTO.AddUserInternalGroup.class);
List<PassedActUserResultDTO> list=workActUserService.getPassedList(formDTO); return new Result<List<PassedActUserResultDTO>>().ok(workActUserService.getPassedList(formDTO));
return new Result<List<PassedActUserResultDTO>>().ok(list);
} }
/** /**
@ -65,8 +64,7 @@ public class WorkActUserController {
@PostMapping("rejectedlist") @PostMapping("rejectedlist")
public Result<List<RejectedActUserResultDTO>> getRejectedlist(@RequestBody AuditingActUserFormDTO formDTO){ public Result<List<RejectedActUserResultDTO>> getRejectedlist(@RequestBody AuditingActUserFormDTO formDTO){
ValidatorUtils.validateEntity(formDTO, AuditingActUserFormDTO.AddUserInternalGroup.class); ValidatorUtils.validateEntity(formDTO, AuditingActUserFormDTO.AddUserInternalGroup.class);
List<RejectedActUserResultDTO> list=workActUserService.getRejectedlist(formDTO); return new Result<List<RejectedActUserResultDTO>>().ok(workActUserService.getRejectedlist(formDTO));
return new Result<List<RejectedActUserResultDTO>>().ok(list);
} }
/** /**
@ -77,10 +75,9 @@ public class WorkActUserController {
* @Date 2020/7/22 16:23 * @Date 2020/7/22 16:23
**/ **/
@PostMapping("canceledlist") @PostMapping("canceledlist")
public Result getCanceledList(@RequestBody AuditingActUserFormDTO formDTO){ public Result<List<CanceledActUserResultDTO>> getCanceledList(@RequestBody AuditingActUserFormDTO formDTO){
ValidatorUtils.validateEntity(formDTO, AuditingActUserFormDTO.AddUserInternalGroup.class); ValidatorUtils.validateEntity(formDTO, AuditingActUserFormDTO.AddUserInternalGroup.class);
List<CanceledActUserResultDTO> list=workActUserService.getCanceledList(formDTO); return new Result<List<CanceledActUserResultDTO>>().ok(workActUserService.getCanceledList(formDTO));
return new Result<List<CanceledActUserResultDTO>>().ok(list);
} }
/** /**
@ -93,8 +90,19 @@ public class WorkActUserController {
@PostMapping("signupstat") @PostMapping("signupstat")
public Result<ActSignUpStatResultDTO> getActSignUpStat(@RequestBody AuditingActUserFormDTO formDTO){ public Result<ActSignUpStatResultDTO> getActSignUpStat(@RequestBody AuditingActUserFormDTO formDTO){
ValidatorUtils.validateEntity(formDTO, AuditingActUserFormDTO.AddUserInternalGroup.class); ValidatorUtils.validateEntity(formDTO, AuditingActUserFormDTO.AddUserInternalGroup.class);
ActSignUpStatResultDTO resultDTO=workActUserService.getActSignUpStat(formDTO.getActId()); return new Result<ActSignUpStatResultDTO>().ok(workActUserService.getActSignUpStat(formDTO.getActId()));
return new Result<ActSignUpStatResultDTO>().ok(resultDTO);
} }
/**
* @param formDTO
* @return com.epmet.commons.tools.utils.Result<com.epmet.dto.result.work.AuditingUserDetailResultDTO>
* @author yinzuomei
* @description 报名审核-人员详情
* @Date 2020/7/22 22:44
**/
@PostMapping("userdetail")
public Result<AuditingUserDetailResultDTO> queryAuditingUserDetail(@RequestBody AactUserDetailFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, AactUserDetailFormDTO.AddUserInternalGroup.class);
return new Result<AuditingUserDetailResultDTO>().ok(workActUserService.queryAuditingUserDetail(formDTO));
}
} }

23
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/ActUserLogDao.java

@ -18,8 +18,10 @@
package com.epmet.dao; package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.ActUserLogDTO;
import com.epmet.entity.ActUserLogEntity; import com.epmet.entity.ActUserLogEntity;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/** /**
* 用户活动关系日志表 * 用户活动关系日志表
@ -29,5 +31,24 @@ import org.apache.ibatis.annotations.Mapper;
*/ */
@Mapper @Mapper
public interface ActUserLogDao extends BaseDao<ActUserLogEntity> { public interface ActUserLogDao extends BaseDao<ActUserLogEntity> {
/**
* @return java.lang.Integer
* @param actId
* @param userId
* @author yinzuomei
* @description 被拒绝的总次数
* @Date 2020/7/23 14:13
**/
Integer selectRefusedCount(@Param("actId") String actId, @Param("userId") String userId);
/**
* @return com.epmet.dto.ActUserLogDTO
* @param actId
* @param userId
* @author yinzuomei
* @description 最后被拒绝的记录
* @Date 2020/7/23 14:13
**/
ActUserLogDTO selectLatestRefused(@Param("actId") String actId, @Param("userId") String userId);
} }

27
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/ActUserRelationDao.java

@ -61,4 +61,31 @@ public interface ActUserRelationDao extends BaseDao<ActUserRelationEntity> {
* @Date 2020/7/22 18:20 * @Date 2020/7/22 18:20
**/ **/
Integer selectCountUser(@Param("actId") String actId, @Param("status")String status); Integer selectCountUser(@Param("actId") String actId, @Param("status")String status);
/**
* @return java.lang.Integer
* @param userId
* @author yinzuomei
* @description 实际参加活动个数(已经签到的)
* @Date 2020/7/23 15:56
**/
Integer countSignInActNum(String userId);
/**
* @return java.lang.Integer
* @param userId
* @author yinzuomei
* @description 报名活动个数act_user_realation
* @Date 2020/7/23 15:57
**/
Integer countSignUpActNum(String userId);
/**
* @return java.lang.Integer
* @param userId
* @author yinzuomei
* @description 获得积分活动个数
* @Date 2020/7/23 15:57
**/
Integer countObtainPointsActNum(String userId);
} }

18
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/ActUserLogEntity.java

@ -18,13 +18,10 @@
package com.epmet.entity; package com.epmet.entity;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.epmet.commons.mybatis.entity.BaseEpmetEntity; import com.epmet.commons.mybatis.entity.BaseEpmetEntity;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import java.util.Date;
/** /**
* 用户活动关系日志表 * 用户活动关系日志表
* *
@ -50,13 +47,14 @@ public class ActUserLogEntity extends BaseEpmetEntity {
/** /**
* 操作类型已报名/待审核auditing * 操作类型已报名/待审核auditing
审核通过passed * 审核通过passed
审核不通过refused * 审核不通过refused
取消报名canceld * 取消报名canceld
发放积分rewarded * 已签到signedin
拒绝发放积分refuse_reward * 发放积分rewarded
重新处理processing * 拒绝发放积分refuse_reward
* 重新处理processing
*
*/ */
private String operationType; private String operationType;

10
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/WorkActUserService.java

@ -1,5 +1,6 @@
package com.epmet.service; package com.epmet.service;
import com.epmet.dto.form.work.AactUserDetailFormDTO;
import com.epmet.dto.form.work.AuditingActUserFormDTO; import com.epmet.dto.form.work.AuditingActUserFormDTO;
import com.epmet.dto.result.work.*; import com.epmet.dto.result.work.*;
@ -56,4 +57,13 @@ public interface WorkActUserService {
* @Date 2020/7/22 17:02 * @Date 2020/7/22 17:02
**/ **/
ActSignUpStatResultDTO getActSignUpStat(String actId); ActSignUpStatResultDTO getActSignUpStat(String actId);
/**
* @return com.epmet.dto.result.work.AuditingUserDetailResultDTO
* @param formDTO
* @author yinzuomei
* @description 报名审核-待审核人员详情
* @Date 2020/7/22 22:44
**/
AuditingUserDetailResultDTO queryAuditingUserDetail(AactUserDetailFormDTO formDTO);
} }

120
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/WorkActUserServiceImpl.java

@ -1,10 +1,15 @@
package com.epmet.service.impl; package com.epmet.service.impl;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.constant.ActConstant; import com.epmet.constant.ActConstant;
import com.epmet.dao.ActInfoDao; import com.epmet.dao.ActInfoDao;
import com.epmet.dao.ActUserLogDao;
import com.epmet.dao.ActUserRelationDao;
import com.epmet.dto.ActUserLogDTO;
import com.epmet.dto.ActUserRelationDTO; import com.epmet.dto.ActUserRelationDTO;
import com.epmet.dto.HeartUserInfoDTO; import com.epmet.dto.HeartUserInfoDTO;
import com.epmet.dto.form.work.AactUserDetailFormDTO;
import com.epmet.dto.form.work.AuditingActUserFormDTO; import com.epmet.dto.form.work.AuditingActUserFormDTO;
import com.epmet.dto.result.UserBaseInfoResultDTO; import com.epmet.dto.result.UserBaseInfoResultDTO;
import com.epmet.dto.result.work.*; import com.epmet.dto.result.work.*;
@ -37,6 +42,10 @@ public class WorkActUserServiceImpl implements WorkActUserService {
private EpmetUserOpenFeignClient epmetUserOpenFeignClient; private EpmetUserOpenFeignClient epmetUserOpenFeignClient;
@Autowired @Autowired
private ActInfoDao actInfoDao; private ActInfoDao actInfoDao;
@Autowired
private ActUserLogDao actUserLogDao;
@Autowired
private ActUserRelationDao actUserRelationDao;
/** /**
* @param formDTO * @param formDTO
* @return java.util.List<com.epmet.dto.result.work.AuditingActUserResultDTO> * @return java.util.List<com.epmet.dto.result.work.AuditingActUserResultDTO>
@ -56,7 +65,7 @@ public class WorkActUserServiceImpl implements WorkActUserService {
//查询出待审核的人员id集合 //查询出待审核的人员id集合
List<String> userIdList=actUserRelationService.getUserIdList(formDTO.getActId(), ActConstant.ACT_USER_STATUS_AUDITING); List<String> userIdList=actUserRelationService.getUserIdList(formDTO.getActId(), ActConstant.ACT_USER_STATUS_AUDITING);
//根据待审核的人员集合,查询出用户基本信息 //根据待审核的人员集合,查询出用户基本信息
List<UserBaseInfoResultDTO> userInfoList=this.queryUserBaseInfo(userIdList); List<UserBaseInfoResultDTO> userInfoList=this.queryUserBaseInfoList(userIdList);
for(ActUserRelationDTO actUserRelationDTO:actUserRelationDTOList){ for(ActUserRelationDTO actUserRelationDTO:actUserRelationDTOList){
AuditingActUserResultDTO auditingDTO=new AuditingActUserResultDTO(); AuditingActUserResultDTO auditingDTO=new AuditingActUserResultDTO();
auditingDTO.setActUserRelationId(actUserRelationDTO.getId()); auditingDTO.setActUserRelationId(actUserRelationDTO.getId());
@ -98,7 +107,7 @@ public class WorkActUserServiceImpl implements WorkActUserService {
//查询已通过审核的人员id集合 //查询已通过审核的人员id集合
List<String> userIdList=actUserRelationService.getUserIdList(formDTO.getActId(), ActConstant.ACT_USER_STATUS_PASSED); List<String> userIdList=actUserRelationService.getUserIdList(formDTO.getActId(), ActConstant.ACT_USER_STATUS_PASSED);
//根据已通过的人员集合,查询出用户基本信息 //根据已通过的人员集合,查询出用户基本信息
List<UserBaseInfoResultDTO> userInfoList=this.queryUserBaseInfo(userIdList); List<UserBaseInfoResultDTO> userInfoList=this.queryUserBaseInfoList(userIdList);
for(ActUserRelationDTO actUserRelationDTO:actUserRelationDTOList){ for(ActUserRelationDTO actUserRelationDTO:actUserRelationDTOList){
PassedActUserResultDTO passedDTO=new PassedActUserResultDTO(); PassedActUserResultDTO passedDTO=new PassedActUserResultDTO();
passedDTO.setActUserRelationId(actUserRelationDTO.getId()); passedDTO.setActUserRelationId(actUserRelationDTO.getId());
@ -141,7 +150,7 @@ public class WorkActUserServiceImpl implements WorkActUserService {
//查询已拒绝审核的人员id集合 //查询已拒绝审核的人员id集合
List<String> userIdList=actUserRelationService.getUserIdList(formDTO.getActId(), ActConstant.ACT_USER_STATUS_REFUSED); List<String> userIdList=actUserRelationService.getUserIdList(formDTO.getActId(), ActConstant.ACT_USER_STATUS_REFUSED);
//根据已拒绝的人员集合,查询出用户基本信息 //根据已拒绝的人员集合,查询出用户基本信息
List<UserBaseInfoResultDTO> userInfoList=this.queryUserBaseInfo(userIdList); List<UserBaseInfoResultDTO> userInfoList=this.queryUserBaseInfoList(userIdList);
for(ActUserRelationDTO actUserRelationDTO:actUserRelationDTOList){ for(ActUserRelationDTO actUserRelationDTO:actUserRelationDTOList){
RejectedActUserResultDTO rejectedDTO=new RejectedActUserResultDTO(); RejectedActUserResultDTO rejectedDTO=new RejectedActUserResultDTO();
rejectedDTO.setActUserRelationId(actUserRelationDTO.getId()); rejectedDTO.setActUserRelationId(actUserRelationDTO.getId());
@ -185,7 +194,7 @@ public class WorkActUserServiceImpl implements WorkActUserService {
//查询已取消审核的人员id集合 //查询已取消审核的人员id集合
List<String> userIdList=actUserRelationService.getUserIdList(formDTO.getActId(), ActConstant.ACT_USER_STATUS_CANCELD); List<String> userIdList=actUserRelationService.getUserIdList(formDTO.getActId(), ActConstant.ACT_USER_STATUS_CANCELD);
//根据已取消的人员集合,查询出用户基本信息 //根据已取消的人员集合,查询出用户基本信息
List<UserBaseInfoResultDTO> userInfoList=this.queryUserBaseInfo(userIdList); List<UserBaseInfoResultDTO> userInfoList=this.queryUserBaseInfoList(userIdList);
for(ActUserRelationDTO actUserRelationDTO:actUserRelationDTOList){ for(ActUserRelationDTO actUserRelationDTO:actUserRelationDTOList){
CanceledActUserResultDTO cancelDTO=new CanceledActUserResultDTO(); CanceledActUserResultDTO cancelDTO=new CanceledActUserResultDTO();
cancelDTO.setActUserRelationId(actUserRelationDTO.getId()); cancelDTO.setActUserRelationId(actUserRelationDTO.getId());
@ -241,6 +250,89 @@ public class WorkActUserServiceImpl implements WorkActUserService {
return actInfo; return actInfo;
} }
/**
* @param formDTO
* @return com.epmet.dto.result.work.AuditingUserDetailResultDTO
* @author yinzuomei
* @description 报名审核-待审核人员详情
* @Date 2020/7/22 22:44
**/
@Override
public AuditingUserDetailResultDTO queryAuditingUserDetail(AactUserDetailFormDTO formDTO) {
ActUserRelationDTO actUserRelationDTO=actUserRelationService.get(formDTO.getActUserRelationId());
UserBaseInfoResultDTO userBaseInfo=queryUserBaseInfo(actUserRelationDTO.getUserId());
AuditingUserDetailResultDTO resultDTO=new AuditingUserDetailResultDTO();
//基本信息赋值
resultDTO.setActId(actUserRelationDTO.getActId());
resultDTO.setUserId(actUserRelationDTO.getUserId());
resultDTO.setRealName(userBaseInfo.getRealName());
resultDTO.setGender(userBaseInfo.getGender());
resultDTO.setMobile(userBaseInfo.getMobile());
resultDTO.setIdNum(userBaseInfo.getIdNum());
resultDTO.setAddress(userBaseInfo.getStreet()+userBaseInfo.getDistrict()+userBaseInfo.getBuildingAddress());
resultDTO.setSignUpTime(actUserRelationDTO.getCreatedTime());
/**
* 当前状态已报名/待审核auditing
审核通过passed
审核不通过refused
取消报名canceld
*/
resultDTO.setStatus(actUserRelationDTO.getStatus());
HistoricalActInfo historicalActInfo=this.getHistoricalActInfo(actUserRelationDTO.getUserId());
resultDTO.setHistoricalActInfo(historicalActInfo);
if(ActConstant.ACT_USER_STATUS_AUDITING.equals(resultDTO.getStatus())){
//被拒绝过,才赋值
Integer refusedCount=actUserLogDao.selectRefusedCount(actUserRelationDTO.getActId(),actUserRelationDTO.getUserId());
if(null!=refusedCount&&refusedCount>0){
ActUserLogDTO latestRefused=actUserLogDao.selectLatestRefused(actUserRelationDTO.getActId(),actUserRelationDTO.getUserId());
HistoricalAuditResult historicalAuditResult=new HistoricalAuditResult();
historicalAuditResult.setLatestAuditTime(latestRefused.getCreatedTime());
historicalAuditResult.setLatestRefusedReason(latestRefused.getReason());
historicalAuditResult.setRefusedCountDesc(String.format("已拒绝%s次",refusedCount));
resultDTO.setHistoricalAuditResult(historicalAuditResult);
}
}else if(ActConstant.ACT_USER_STATUS_PASSED.equals(resultDTO.getStatus())||ActConstant.ACT_USER_STATUS_REFUSED.equals(resultDTO.getStatus())){
AuditResult auditResult=new AuditResult();
auditResult.setAuditTime(actUserRelationDTO.getAuditTime());
auditResult.setRefusedReason(actUserRelationDTO.getFailureReason());
resultDTO.setAuditResult(auditResult);
}else if(ActConstant.ACT_USER_STATUS_CANCELD.equals(resultDTO.getStatus())){
CancelResult cancelResult=new CancelResult();
cancelResult.setCancelReason(actUserRelationDTO.getCancelReason());
cancelResult.setCancelTime(actUserRelationDTO.getCancelTime());
resultDTO.setCancelResult(cancelResult);
}
return resultDTO;
}
/**
* @return com.epmet.dto.result.work.HistoricalActInfo
* @param userId
* @author yinzuomei
* @description 用户历史活动情况
* @Date 2020/7/23 15:56
**/
private HistoricalActInfo getHistoricalActInfo(String userId) {
HistoricalActInfo historicalActInfo=new HistoricalActInfo();
/**
* 实际参加活动个数(已经签到的)
*/
Integer signInActNum=actUserRelationDao.countSignInActNum(userId);
historicalActInfo.setSignInActNum(signInActNum);
/**
* 报名活动个数act_user_realation
*/
Integer signUpActNum=actUserRelationDao.countSignUpActNum(userId);
historicalActInfo.setSignUpActNum(signUpActNum);
/**
* 获得积分活动个数
*/
Integer obtainPointsActNum=actUserRelationDao.countObtainPointsActNum(userId);
historicalActInfo.setObtainPointsActNum(obtainPointsActNum);
return historicalActInfo;
}
private Boolean getVolunteerFlag(String userId) { private Boolean getVolunteerFlag(String userId) {
HeartUserInfoDTO heartUserInfoDTO=heartUserInfoService.getByUserId(userId); HeartUserInfoDTO heartUserInfoDTO=heartUserInfoService.getByUserId(userId);
//true: 是志愿者 false : 不是志愿者 //true: 是志愿者 false : 不是志愿者
@ -257,7 +349,7 @@ public class WorkActUserServiceImpl implements WorkActUserService {
* @description 传入用户id集合返回用户的基本信息包含微信基本信息 * @description 传入用户id集合返回用户的基本信息包含微信基本信息
* @Date 2020/7/22 10:38 * @Date 2020/7/22 10:38
**/ **/
private List<UserBaseInfoResultDTO> queryUserBaseInfo(List<String> userIdList) { private List<UserBaseInfoResultDTO> queryUserBaseInfoList(List<String> userIdList) {
List<UserBaseInfoResultDTO> userInfoList=new ArrayList<>(); List<UserBaseInfoResultDTO> userInfoList=new ArrayList<>();
if(null==userIdList||userIdList.size()==0){ if(null==userIdList||userIdList.size()==0){
return userInfoList; return userInfoList;
@ -271,4 +363,22 @@ public class WorkActUserServiceImpl implements WorkActUserService {
} }
return userInfoList; return userInfoList;
} }
/**
* @return com.epmet.dto.result.UserBaseInfoResultDTO
* @param userId
* @author yinzuomei
* @description 根据用户id获取用户基本信息
* @Date 2020/7/23 12:52
**/
private UserBaseInfoResultDTO queryUserBaseInfo(String userId) {
List<String> userIdList = new ArrayList<>();
userIdList.add(userId);
//调用epemet_user服务获取用户的基本信息
Result<List<UserBaseInfoResultDTO>> resultUserList = epmetUserOpenFeignClient.queryUserBaseInfo(userIdList);
if (!resultUserList.success() || resultUserList.getData().size() < 1 || null == resultUserList.getData().get(0)) {
throw new RenException("查询用户基本信息失败");
}
return resultUserList.getData().get(0);
}
} }

28
epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActUserLogDao.xml

@ -16,6 +16,30 @@
<result property="updatedBy" column="UPDATED_BY"/> <result property="updatedBy" column="UPDATED_BY"/>
<result property="updatedTime" column="UPDATED_TIME"/> <result property="updatedTime" column="UPDATED_TIME"/>
</resultMap> </resultMap>
<!--被 拒绝的总次数 -->
<select id="selectRefusedCount" parameterType="map" resultType="java.lang.Integer">
SELECT
count( 1 )
FROM
act_user_log acl
WHERE
acl.DEL_FLAG = '0'
AND acl.OPERATION_TYPE = 'refused'
AND acl.ACT_ID = #{actId}
AND acl.USER_ID=#{userId}
</select>
<!-- 最后被拒绝的记录 -->
<select id="selectLatestRefused" parameterType="map" resultType="com.epmet.dto.ActUserLogDTO">
SELECT
*
FROM
act_user_log acl
WHERE
acl.DEL_FLAG = '0'
AND acl.OPERATION_TYPE = 'refused'
AND acl.ACT_ID = #{actId}
AND acl.USER_ID=#{userId}
order by acl.CREATED_TIME desc
limit 1
</select>
</mapper> </mapper>

35
epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActUserRelationDao.xml

@ -61,4 +61,39 @@
AND aur.`STATUS` =#{status} AND aur.`STATUS` =#{status}
AND aur.ACT_ID = #{actId} AND aur.ACT_ID = #{actId}
</select> </select>
<!-- 实际参加活动个数(已经签到的) -->
<select id="countSignInActNum" resultType="java.lang.Integer" parameterType="java.lang.String">
SELECT
count( 1 ) as total
FROM
act_user_relation acu
WHERE
DEL_FLAG = '0'
AND acu.SIGN_IN_FLAG = 'signed_in'
AND acu.USER_ID = #{userId}
</select>
<!-- 报名活动个数(act_user_realation) -->
<select id="countSignUpActNum" resultType="java.lang.Integer" parameterType="java.lang.String">
SELECT
count( 1 ) as total
FROM
act_user_relation acu
WHERE
DEL_FLAG = '0'
AND acu.USER_ID = #{userId}
</select>
<!-- 获得积分活动个数 -->
<select id="countObtainPointsActNum" resultType="java.lang.Integer" parameterType="java.lang.String">
SELECT
count( 1 ) as total
FROM
act_user_relation acu
WHERE
DEL_FLAG = '0'
and REWARD_FLAG='agree'
AND acu.USER_ID = #{userId}
</select>
</mapper> </mapper>
Loading…
Cancel
Save