Browse Source

heart-work:待审核列表暂存

dev
yinzuomei 5 years ago
parent
commit
13924c1217
  1. 2
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/NumConstant.java
  2. 5
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/HeartUserInfoDTO.java
  3. 23
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/AuditingActUserFormDTO.java
  4. 9
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/DraftActInfoFormDTO.java
  5. 55
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/AuditingActUserResultDTO.java
  6. 6
      epmet-module/epmet-heart/epmet-heart-server/pom.xml
  7. 27
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/WorkActUserController.java
  8. 20
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/ActUserRelationDao.java
  9. 9
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/HeartUserInfoDao.java
  10. 5
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/HeartUserInfoEntity.java
  11. 18
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/ActUserRelationService.java
  12. 9
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/HeartUserInfoService.java
  13. 23
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/WorkActUserService.java
  14. 24
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/ActUserRelationServiceImpl.java
  15. 12
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/HeartUserInfoServiceImpl.java
  16. 110
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/WorkActUserServiceImpl.java
  17. 24
      epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/ActUserRelationDao.xml
  18. 11
      epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/HeartUserInfoDao.xml
  19. 10
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/UserBaseInfoDTO.java
  20. 80
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/UserBaseInfoResultDTO.java
  21. 71
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/UserWechatResultDTO.java
  22. 9
      epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java
  23. 12
      epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java
  24. 28
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserBaseInfoController.java
  25. 19
      epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserBaseInfoDao.java
  26. 9
      epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserResiInfoDao.java
  27. 9
      epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserWechatDao.java
  28. 8
      epmet-user/epmet-user-server/src/main/java/com/epmet/entity/UserBaseInfoEntity.java
  29. 19
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserBaseInfoService.java
  30. 69
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserBaseInfoServiceImpl.java
  31. 41
      epmet-user/epmet-user-server/src/main/resources/mapper/UserBaseInfoDao.xml
  32. 11
      epmet-user/epmet-user-server/src/main/resources/mapper/UserResiInfoDao.xml
  33. 10
      epmet-user/epmet-user-server/src/main/resources/mapper/UserWechatDao.xml

2
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/NumConstant.java

@ -50,5 +50,5 @@ public interface NumConstant {
String FOUR_STR = "4"; String FOUR_STR = "4";
String FIVE_STR = "5"; String FIVE_STR = "5";
String POSITIVE_EIGHT_STR = "+8"; String POSITIVE_EIGHT_STR = "+8";
String EMPTY_STR = "";
} }

5
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/HeartUserInfoDTO.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;
/** /**
@ -51,7 +52,7 @@ public class HeartUserInfoDTO implements Serializable {
/** /**
* 1是志愿者0不是志愿者志愿者注册成功后需要来更新值 * 1是志愿者0不是志愿者志愿者注册成功后需要来更新值
*/ */
private Integer volunteerFlag; private Boolean volunteerFlag;
/** /**
* 爱心时长(单位分钟)参与并签到了的活动实际结束-实际开始签到的未签到但是有积分的 * 爱心时长(单位分钟)参与并签到了的活动实际结束-实际开始签到的未签到但是有积分的

23
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/AuditingActUserFormDTO.java

@ -0,0 +1,23 @@
package com.epmet.dto.form.work;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* 报名审核-待审核列表入参
*
* @author yinzuomei@elink-cn.com
* @date 2020/7/21 22:12
*/
@Data
public class AuditingActUserFormDTO implements Serializable {
private static final long serialVersionUID = 3811387419859675753L;
public interface AddUserInternalGroup {}
/**
* 活动id
*/
@NotBlank(message = "活动id不能为空", groups = { AddUserInternalGroup.class })
private String actId;
}

9
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/DraftActInfoFormDTO.java

@ -2,10 +2,8 @@ package com.epmet.dto.form.work;
import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; import com.epmet.commons.tools.validator.group.CustomerClientShowGroup;
import lombok.Data; import lombok.Data;
import org.hibernate.validator.constraints.Length;
import javax.validation.Valid; import javax.validation.Valid;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
import java.io.Serializable; import java.io.Serializable;
import java.math.BigDecimal; import java.math.BigDecimal;
@ -50,8 +48,6 @@ public class DraftActInfoFormDTO implements Serializable {
/** /**
* 活动标题 * 活动标题
*/ */
@NotBlank(message = "活动标题不能为空", groups = {AddDraftUserShowGroup.class})
@Length(min=1, max=50,message = "活动标题限50字以内", groups = {AddDraftUserShowGroup.class})
private String title; private String title;
/** /**
@ -87,13 +83,11 @@ public class DraftActInfoFormDTO implements Serializable {
/** /**
* 活动人数 * 活动人数
*/ */
@Min(0)
private Integer actQuota; private Integer actQuota;
/** /**
* 活动积分 * 活动积分
*/ */
@Min(0)
private Integer reward; private Integer reward;
/** /**
@ -114,8 +108,6 @@ public class DraftActInfoFormDTO implements Serializable {
/** /**
* 报名条件 * 报名条件
*/ */
@NotBlank(message = "报名条件不能为空", groups = {AddDraftUserShowGroup.class})
@Length(min=1, max=50,message = "报名条件限200字以内", groups = {AddDraftUserShowGroup.class})
private String requirement; private String requirement;
/** /**
@ -146,7 +138,6 @@ public class DraftActInfoFormDTO implements Serializable {
/** /**
* 签到有效范围() * 签到有效范围()
*/ */
@Min(0)
private Integer signInRadius; private Integer signInRadius;
/** /**

55
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/AuditingActUserResultDTO.java

@ -0,0 +1,55 @@
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/21 22:14
*/
@Data
public class AuditingActUserResultDTO implements Serializable {
private static final long serialVersionUID = 5567556309702585031L;
/**
* 活动id
*/
private String actId;
/**
* 用户id
*/
private String userId;
/**
* 姓名
*/
private String realName;
/**
* 微信昵称
*/
private String nickName;
/**
* 头像
*/
private String headImgUrl;
/**
* 报名时间yyyy-MM-dd HH:mm:ss
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date signUpTime;
/**
* true: 是志愿者 false : 不是志愿者
*/
private Boolean volunteerFlag;
}

6
epmet-module/epmet-heart/epmet-heart-server/pom.xml

@ -70,6 +70,12 @@
<version>2.0.0</version> <version>2.0.0</version>
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
<dependency>
<groupId>com.epmet</groupId>
<artifactId>epmet-user-client</artifactId>
<version>2.0.0</version>
<scope>compile</scope>
</dependency>
</dependencies> </dependencies>
<build> <build>

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

@ -1,8 +1,18 @@
package com.epmet.controller; package com.epmet.controller;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.dto.form.work.AuditingActUserFormDTO;
import com.epmet.dto.result.work.AuditingActUserResultDTO;
import com.epmet.service.WorkActUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/** /**
* 工作端活动人员相关api * 工作端活动人员相关api
* *
@ -12,4 +22,21 @@ import org.springframework.web.bind.annotation.RestController;
@RestController @RestController
@RequestMapping("/work/actuser") @RequestMapping("/work/actuser")
public class WorkActUserController { public class WorkActUserController {
@Autowired
private WorkActUserService workActUserService;
/**
* @return com.epmet.commons.tools.utils.Result<java.util.List<com.epmet.dto.result.work.AuditingActUserResultDTO>>
* @param formDTO
* @author yinzuomei
* @description 报名审核-待审核列表
* @Date 2020/7/21 22:24
**/
@PostMapping("auditinglist")
public Result<List<AuditingActUserResultDTO>> getAuditingList(@RequestBody AuditingActUserFormDTO formDTO){
ValidatorUtils.validateEntity(formDTO, AuditingActUserFormDTO.AddUserInternalGroup.class);
List<AuditingActUserResultDTO> list=workActUserService.getAuditingList(formDTO);
return new Result<List<AuditingActUserResultDTO>>().ok(list);
}
} }

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

@ -18,9 +18,12 @@
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.ActUserRelationDTO;
import com.epmet.entity.ActUserRelationEntity; import com.epmet.entity.ActUserRelationEntity;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/** /**
* 用户活动关系表 * 用户活动关系表
* *
@ -30,4 +33,21 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper @Mapper
public interface ActUserRelationDao extends BaseDao<ActUserRelationEntity> { public interface ActUserRelationDao extends BaseDao<ActUserRelationEntity> {
/**
* @return java.util.List<com.epmet.dto.ActUserRelationDTO>
* @param actId 活动id
* @author yinzuomei
* @description 根据活动id查询待审核人员关系记录
* @Date 2020/7/21 22:41
**/
List<ActUserRelationDTO> selectAuditingUserList(String actId);
/**
* @return java.util.List<java.lang.String>
* @param actId 活动id
* @author yinzuomei
* @description 根据活动id查询待审核人员,返回用户id集合
* @Date 2020/7/21 22:45
**/
List<String> selectAuditingUserIds(String actId);
} }

9
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/HeartUserInfoDao.java

@ -18,6 +18,7 @@
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.HeartUserInfoDTO;
import com.epmet.entity.HeartUserInfoEntity; import com.epmet.entity.HeartUserInfoEntity;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -30,4 +31,12 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper @Mapper
public interface HeartUserInfoDao extends BaseDao<HeartUserInfoEntity> { public interface HeartUserInfoDao extends BaseDao<HeartUserInfoEntity> {
/**
* @return com.epmet.dto.HeartUserInfoDTO
* @param userId
* @author yinzuomei
* @description 根据用户id查询爱心用户记录
* @Date 2020/7/21 22:48
**/
HeartUserInfoDTO selectByUserId(String userId);
} }

5
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/HeartUserInfoEntity.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;
/** /**
* 用户信息 * 用户信息
* *
@ -51,7 +48,7 @@ public class HeartUserInfoEntity extends BaseEpmetEntity {
/** /**
* 1是志愿者0不是志愿者志愿者注册成功后需要来更新值 * 1是志愿者0不是志愿者志愿者注册成功后需要来更新值
*/ */
private Integer volunteerFlag; private Boolean volunteerFlag;
/** /**
* 爱心时长(单位分钟)参与并签到了的活动实际结束-实际开始签到的未签到但是有积分的 * 爱心时长(单位分钟)参与并签到了的活动实际结束-实际开始签到的未签到但是有积分的

18
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/ActUserRelationService.java

@ -92,4 +92,22 @@ public interface ActUserRelationService extends BaseService<ActUserRelationEntit
* @date 2020-07-19 * @date 2020-07-19
*/ */
void delete(String[] ids); void delete(String[] ids);
/**
* @return java.util.List<com.epmet.dto.ActUserRelationDTO>
* @param actId
* @author yinzuomei
* @description 根据活动id查询待审核人员关系记录
* @Date 2020/7/21 22:40
**/
List<ActUserRelationDTO> getAuditingUserList(String actId);
/**
* @return java.util.List<java.lang.String>
* @param actId
* @author yinzuomei
* @description 根据活动id查询待审核人员,返回用户id集合
* @Date 2020/7/21 22:44
**/
List<String> getAuditingUserIds(String actId);
} }

9
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/HeartUserInfoService.java

@ -92,4 +92,13 @@ public interface HeartUserInfoService extends BaseService<HeartUserInfoEntity> {
* @date 2020-07-19 * @date 2020-07-19
*/ */
void delete(String[] ids); void delete(String[] ids);
/**
* @return com.epmet.dto.HeartUserInfoDTO
* @param userId
* @author yinzuomei
* @description 根据用户id查询爱心用户记录
* @Date 2020/7/21 22:48
**/
HeartUserInfoDTO getByUserId(String userId);
} }

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

@ -0,0 +1,23 @@
package com.epmet.service;
import com.epmet.dto.form.work.AuditingActUserFormDTO;
import com.epmet.dto.result.work.AuditingActUserResultDTO;
import java.util.List;
/**
* 工作端活动人员相关api
*
* @author yinzuomei@elink-cn.com
* @date 2020/7/21 22:23
*/
public interface WorkActUserService {
/**
* @return java.util.List<com.epmet.dto.result.work.AuditingActUserResultDTO>
* @param formDTO
* @author yinzuomei
* @description 报名审核-待审核列表
* @Date 2020/7/21 22:25
**/
List<AuditingActUserResultDTO> getAuditingList(AuditingActUserFormDTO formDTO);
}

24
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/ActUserRelationServiceImpl.java

@ -101,4 +101,28 @@ public class ActUserRelationServiceImpl extends BaseServiceImpl<ActUserRelationD
baseDao.deleteBatchIds(Arrays.asList(ids)); baseDao.deleteBatchIds(Arrays.asList(ids));
} }
/**
* @param actId
* @return java.util.List<com.epmet.dto.ActUserRelationDTO>
* @author yinzuomei
* @description 根据活动id查询待审核人员关系记录
* @Date 2020/7/21 22:40
**/
@Override
public List<ActUserRelationDTO> getAuditingUserList(String actId) {
return baseDao.selectAuditingUserList(actId);
}
/**
* @param actId
* @return java.util.List<java.lang.String>
* @author yinzuomei
* @description 根据活动id查询待审核人员,返回用户id集合
* @Date 2020/7/21 22:44
**/
@Override
public List<String> getAuditingUserIds(String actId) {
return baseDao.selectAuditingUserIds(actId);
}
} }

12
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/HeartUserInfoServiceImpl.java

@ -101,4 +101,16 @@ public class HeartUserInfoServiceImpl extends BaseServiceImpl<HeartUserInfoDao,
baseDao.deleteBatchIds(Arrays.asList(ids)); baseDao.deleteBatchIds(Arrays.asList(ids));
} }
/**
* @param userId
* @return com.epmet.dto.HeartUserInfoDTO
* @author yinzuomei
* @description 根据用户id查询爱心用户记录
* @Date 2020/7/21 22:48
**/
@Override
public HeartUserInfoDTO getByUserId(String userId) {
return baseDao.selectByUserId(userId);
}
} }

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

@ -0,0 +1,110 @@
package com.epmet.service.impl;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.ActUserRelationDTO;
import com.epmet.dto.HeartUserInfoDTO;
import com.epmet.dto.form.work.AuditingActUserFormDTO;
import com.epmet.dto.result.UserBaseInfoResultDTO;
import com.epmet.dto.result.work.AuditingActUserResultDTO;
import com.epmet.feign.EpmetUserOpenFeignClient;
import com.epmet.service.ActUserRelationService;
import com.epmet.service.HeartUserInfoService;
import com.epmet.service.WorkActUserService;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
* 工作端活动人员相关api
*
* @author yinzuomei@elink-cn.com
* @date 2020/7/21 22:23
*/
@Service
public class WorkActUserServiceImpl implements WorkActUserService {
private Logger logger = LogManager.getLogger(WorkActUserServiceImpl.class);
@Autowired
private ActUserRelationService actUserRelationService;
@Autowired
private HeartUserInfoService heartUserInfoService;
@Autowired
private EpmetUserOpenFeignClient epmetUserOpenFeignClient;
/**
* @param formDTO
* @return java.util.List<com.epmet.dto.result.work.AuditingActUserResultDTO>
* @author yinzuomei
* @description 报名审核-待审核列表
* @Date 2020/7/21 22:25
**/
@Override
public List<AuditingActUserResultDTO> getAuditingList(AuditingActUserFormDTO formDTO) {
List<AuditingActUserResultDTO> list=new ArrayList<>();
//查询出待审核的人员列表
List<ActUserRelationDTO> actUserRelationDTOList=actUserRelationService.getAuditingUserList(formDTO.getActId());
if(null==actUserRelationDTOList||actUserRelationDTOList.size()==0){
logger.info(String.format("当前活动%s没有待审核的报名人员",formDTO.getActId()));
return list;
}
//查询出待审核的人员id集合
List<String> userIdList=actUserRelationService.getAuditingUserIds(formDTO.getActId());
//根据待审核的人员结合,查询出用户基本信息
List<UserBaseInfoResultDTO> userInfoList=this.queryUserBaseInfo(userIdList);
//调用epemet_user服务获取用户的基本信息
for(ActUserRelationDTO actUserRelationDTO:actUserRelationDTOList){
AuditingActUserResultDTO resultDTO=new AuditingActUserResultDTO();
resultDTO.setActId(formDTO.getActId());
resultDTO.setUserId(actUserRelationDTO.getUserId());
resultDTO.setSignUpTime(actUserRelationDTO.getCreatedTime());
//微信基本信息先默认为空字符串
resultDTO.setRealName(NumConstant.EMPTY_STR);
resultDTO.setNickName(NumConstant.EMPTY_STR);
resultDTO.setHeadImgUrl(NumConstant.EMPTY_STR);
HeartUserInfoDTO heartUserInfoDTO=heartUserInfoService.getByUserId(actUserRelationDTO.getUserId());
//true: 是志愿者 false : 不是志愿者
if(null!=heartUserInfoDTO){
resultDTO.setVolunteerFlag(heartUserInfoDTO.getVolunteerFlag());
}else{
resultDTO.setVolunteerFlag(false);
}
//赋值基本信息
for(UserBaseInfoResultDTO userBaseInfoResultDTO:userInfoList){
if(actUserRelationDTO.getUserId().equals(userBaseInfoResultDTO.getUserId())){
resultDTO.setRealName(userBaseInfoResultDTO.getRealName());
resultDTO.setNickName(userBaseInfoResultDTO.getNickname());
resultDTO.setHeadImgUrl(userBaseInfoResultDTO.getHeadImgUrl());
break;
}
}
list.add(resultDTO);
}
return list;
}
/**
* @return java.util.List<com.epmet.dto.result.UserBaseInfoResultDTO>
* @param userIdList
* @author yinzuomei
* @description 传入用户id集合返回用户的基本信息包含微信基本信息
* @Date 2020/7/22 10:38
**/
private List<UserBaseInfoResultDTO> queryUserBaseInfo(List<String> userIdList) {
List<UserBaseInfoResultDTO> userInfoList=new ArrayList<>();
if(null==userIdList||userIdList.size()==0){
return userInfoList;
}
Result<List<UserBaseInfoResultDTO>> resultUserList =epmetUserOpenFeignClient.queryUserBaseInfo(userIdList);
if(resultUserList.success()&&resultUserList.getData().size()>0){
return resultUserList.getData();
}else{
logger.warn("查询用户基本信息接口返回失败");
}
return userInfoList;
}
}

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

@ -25,5 +25,29 @@
<result property="updatedTime" column="UPDATED_TIME"/> <result property="updatedTime" column="UPDATED_TIME"/>
</resultMap> </resultMap>
<!-- 根据活动id,查询待审核人员关系记录 -->
<select id="selectAuditingUserList" resultType="com.epmet.dto.ActUserRelationDTO" parameterType="java.lang.String">
SELECT
aur.*
FROM
act_user_relation aur
WHERE
aur.DEL_FLAG = '0'
AND aur.`STATUS` = 'auditing'
AND aur.ACT_ID = #{actId}
order by aur.CREATED_TIME desc
</select>
<!-- 根据活动id,查询待审核人员,返回用户id集合-->
<select id="selectAuditingUserIds" resultType="java.lang.String" parameterType="java.lang.String">
SELECT
distinct aur.USER_ID as userIds
FROM
act_user_relation aur
WHERE
aur.DEL_FLAG = '0'
AND aur.`STATUS` = 'auditing'
AND aur.ACT_ID = #{actId}
order by aur.CREATED_TIME desc
</select>
</mapper> </mapper>

11
epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/HeartUserInfoDao.xml

@ -19,5 +19,14 @@
<result property="updatedTime" column="UPDATED_TIME"/> <result property="updatedTime" column="UPDATED_TIME"/>
</resultMap> </resultMap>
<!-- 根据用户id查询爱心用户记录 -->
<select id="selectByUserId" resultType="com.epmet.dto.HeartUserInfoDTO" parameterType="java.lang.String">
SELECT
*
FROM
heart_user_info hui
WHERE
hui.DEL_FLAG = '0'
AND hui.USER_ID =#{userId}
</select>
</mapper> </mapper>

10
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/UserBaseInfoDTO.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;
/** /**
@ -54,10 +55,15 @@ public class UserBaseInfoDTO implements Serializable {
private String surname; private String surname;
/** /**
* *
*/ */
private String name; private String name;
/**
* 姓名
*/
private String realName;
/** /**
* 身份证号 * 身份证号
*/ */

80
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/UserBaseInfoResultDTO.java

@ -0,0 +1,80 @@
package com.epmet.dto.result;
import lombok.Data;
import java.io.Serializable;
/**
* 用户基本信息-居民录入的基本信息
*
* @author yinzuomei@elink-cn.com
* @date 2020/7/22 9:26
*/
@Data
public class UserBaseInfoResultDTO implements Serializable {
private static final long serialVersionUID = 3124057264557384333L;
/**
* 用户id
*/
private String userId;
/**
* 手机号(注册手机号)
*/
private String mobile;
/**
* 姓氏
*/
private String surname;
/**
*
*/
private String name;
/**
* 姓名
*/
private String realName;
/**
* 身份证号
*/
private String idNum;
/**
* 性别1男2女0未知
*/
private String gender;
/**
* 街道
*/
private String street;
/**
* 小区名称
*/
private String district;
/**
* 楼栋单元
*/
private String buildingAddress;
/**
* 昵称(目前来源于微信昵称后续系统可支持用户有昵称)
*/
private String nickname;
/**
* 头像目前来源于微信后续系统顾客支持上传头像
*/
private String headImgUrl;
/**
* 微信基本信息
*/
private UserWechatResultDTO userWechatResultDTO;
}

71
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/UserWechatResultDTO.java

@ -0,0 +1,71 @@
package com.epmet.dto.result;
import lombok.Data;
import java.io.Serializable;
/**
* 用户基本信息-微信信息
*
* @author yinzuomei@elink-cn.com
* @date 2020/7/22 9:27
*/
@Data
public class UserWechatResultDTO implements Serializable {
private static final long serialVersionUID = 5770079291635923923L;
/**
* 用户ID
* */
private String userId;
/**
* 微信openId
*/
private String wxOpenId;
/**
* 微信unionId
*/
private String unionId;
/**
* 手机号
*/
private String mobile;
/**
* 昵称
*/
private String nickname;
/**
* 性别:0.未知 1.男性2女性
*/
private Integer sex;
/**
* 头像
*/
private String headImgUrl;
/**
* 国家
*/
private String country;
/**
* 省份
*/
private String province;
/**
* 城市
*/
private String city;
/**
* 语言
*/
private String language;
}

9
epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java

@ -139,4 +139,13 @@ public interface EpmetUserOpenFeignClient {
@PostMapping("/epmetuser/staffrole/staffroles") @PostMapping("/epmetuser/staffrole/staffroles")
Result<List<GovStaffRoleDTO>> getRolesOfStaff(StaffRoleFormDTO staffRoleFormDTO); Result<List<GovStaffRoleDTO>> getRolesOfStaff(StaffRoleFormDTO staffRoleFormDTO);
/**
* @param userIdList
* @return com.epmet.commons.tools.utils.Result<java.util.List < com.epmet.dto.result.UserBaseInfoResultDTO>>
* @author yinzuomei
* @description 传入用户id集合返回用户的基本信息包含微信基本信息
* @Date 2020/7/22 9:30
**/
@PostMapping("/epmetuser/userbaseinfo/queryuserbaseinfo")
Result<List<UserBaseInfoResultDTO>> queryUserBaseInfo(@RequestBody List<String> userIdList);
} }

12
epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java

@ -86,4 +86,16 @@ public class EpmetUserOpenFeignClientFallback implements EpmetUserOpenFeignClien
public Result<List<GovStaffRoleDTO>> getRolesOfStaff(StaffRoleFormDTO staffRoleFormDTO) { public Result<List<GovStaffRoleDTO>> getRolesOfStaff(StaffRoleFormDTO staffRoleFormDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getRolesOfStaff", staffRoleFormDTO); return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getRolesOfStaff", staffRoleFormDTO);
} }
/**
* @param userIdList
* @return com.epmet.commons.tools.utils.Result<java.util.List < com.epmet.dto.result.UserBaseInfoResultDTO>>
* @author yinzuomei
* @description 传入用户id集合返回用户的基本信息包含微信基本信息
* @Date 2020/7/22 9:30
**/
@Override
public Result<List<UserBaseInfoResultDTO>> queryUserBaseInfo(List<String> userIdList) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "queryUserBaseInfo", userIdList);
}
} }

28
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserBaseInfoController.java

@ -23,9 +23,10 @@ import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.AssertUtils; import com.epmet.commons.tools.validator.AssertUtils;
import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.commons.tools.validator.group.AddGroup; import com.epmet.commons.tools.validator.group.AddGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.commons.tools.validator.group.DefaultGroup; import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.dto.UserBaseInfoDTO; import com.epmet.dto.UserBaseInfoDTO;
import com.epmet.dto.result.UserBaseInfoResultDTO;
import com.epmet.excel.UserBaseInfoExcel; import com.epmet.excel.UserBaseInfoExcel;
import com.epmet.service.UserBaseInfoService; import com.epmet.service.UserBaseInfoService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -91,4 +92,29 @@ public class UserBaseInfoController {
ExcelUtils.exportExcelToTarget(response, null, list, UserBaseInfoExcel.class); ExcelUtils.exportExcelToTarget(response, null, list, UserBaseInfoExcel.class);
} }
/**
* @param userIdList
* @return com.epmet.commons.tools.utils.Result<java.util.List < com.epmet.dto.result.UserBaseInfoResultDTO>>
* @author yinzuomei
* @description 传入用户id集合返回用户的基本信息包含微信基本信息
* @Date 2020/7/22 9:34
**/
@PostMapping("queryuserbaseinfo")
public Result<List<UserBaseInfoResultDTO>> queryUserBaseInfo(@RequestBody List<String> userIdList) {
List<UserBaseInfoResultDTO> list = userBaseInfoService.queryUserBaseInfo(userIdList);
return new Result<List<UserBaseInfoResultDTO>>().ok(list);
}
/**
* @return com.epmet.commons.tools.utils.Result
* @param
* @author yinzuomei
* @description 初始化历史用户信息到user_base_info数据
* @Date 2020/7/22 10:42
**/
@PostMapping("initbaseinfo")
public Result initBaseInfo(){
userBaseInfoService.initBaseInfo();
return new Result();
}
} }

19
epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserBaseInfoDao.java

@ -18,6 +18,8 @@
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.result.UserBaseInfoResultDTO;
import com.epmet.dto.result.UserWechatResultDTO;
import com.epmet.entity.UserBaseInfoEntity; import com.epmet.entity.UserBaseInfoEntity;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -30,4 +32,21 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper @Mapper
public interface UserBaseInfoDao extends BaseDao<UserBaseInfoEntity> { public interface UserBaseInfoDao extends BaseDao<UserBaseInfoEntity> {
/**
* @return com.epmet.dto.result.UserBaseInfoResultDTO
* @param userId
* @author yinzuomei
* @description 根据用户id查询user_base_info基本信息
* @Date 2020/7/22 9:46
**/
UserBaseInfoResultDTO selectListByUserIdList(String userId);
/**
* @return com.epmet.dto.result.UserWechatResultDTO
* @param userId
* @author yinzuomei
* @description 根据用户id获取user_wechat表微信用户基本信息
* @Date 2020/7/22 9:46
**/
UserWechatResultDTO selectUserWechatByUserId(String userId);
} }

9
epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserResiInfoDao.java

@ -78,4 +78,13 @@ public interface UserResiInfoDao extends BaseDao<UserResiInfoEntity> {
* @date 2020/5/11 11:18 * @date 2020/5/11 11:18
*/ */
IssueInitiatorResultDTO selectIssueInitiator(IssueInitiatorFormDTO formDTO); IssueInitiatorResultDTO selectIssueInitiator(IssueInitiatorFormDTO formDTO);
/**
* @return com.epmet.dto.UserResiInfoDTO
* @param userId
* @author yinzuomei
* @description 根据要用户id,查询用户注册的信息
* @Date 2020/7/22 10:58
**/
UserResiInfoDTO selectByUserId(String userId);
} }

9
epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserWechatDao.java

@ -55,4 +55,13 @@ public interface UserWechatDao extends BaseDao<UserWechatEntity>{
* @CreatedTime 2020/4/26 18:53 * @CreatedTime 2020/4/26 18:53
*/ */
List<UserHeadPhotoDTO> selectUserHeadPhotoByUserId(List<CertifiedResultDTO> certifiedResultDTOS); List<UserHeadPhotoDTO> selectUserHeadPhotoByUserId(List<CertifiedResultDTO> certifiedResultDTOS);
/**
* @return com.epmet.entity.UserWechatEntity
* @param
* @author yinzuomei
* @description 查询已经授权的微信用户信息
* @Date 2020/7/22 10:46
**/
List<UserWechatDTO> selectAll();
} }

8
epmet-user/epmet-user-server/src/main/java/com/epmet/entity/UserBaseInfoEntity.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;
/** /**
* 用户基础信息 * 用户基础信息
* *
@ -63,6 +60,11 @@ public class UserBaseInfoEntity extends BaseEpmetEntity {
*/ */
private String name; private String name;
/**
* 姓名
*/
private String realName;
/** /**
* 身份证号 * 身份证号
*/ */

19
epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserBaseInfoService.java

@ -20,6 +20,7 @@ package com.epmet.service;
import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.UserBaseInfoDTO; import com.epmet.dto.UserBaseInfoDTO;
import com.epmet.dto.result.UserBaseInfoResultDTO;
import com.epmet.entity.UserBaseInfoEntity; import com.epmet.entity.UserBaseInfoEntity;
import java.util.List; import java.util.List;
@ -92,4 +93,22 @@ public interface UserBaseInfoService extends BaseService<UserBaseInfoEntity> {
* @date 2020-07-19 * @date 2020-07-19
*/ */
void delete(String[] ids); void delete(String[] ids);
/**
* @return java.util.List<com.epmet.dto.result.UserBaseInfoResultDTO>
* @param userIdList
* @author yinzuomei
* @description 传入用户id集合返回用户的基本信息包含微信基本信息
* @Date 2020/7/22 9:35
**/
List<UserBaseInfoResultDTO> queryUserBaseInfo(List<String> userIdList);
/**
* @return void
* @param
* @author yinzuomei
* @description 初始化历史用户信息到user_base_info数据
* @Date 2020/7/22 10:42
**/
void initBaseInfo();
} }

69
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserBaseInfoServiceImpl.java

@ -20,11 +20,17 @@ package com.epmet.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.dao.UserBaseInfoDao; import com.epmet.dao.UserBaseInfoDao;
import com.epmet.dao.UserResiInfoDao;
import com.epmet.dao.UserWechatDao;
import com.epmet.dto.UserBaseInfoDTO; import com.epmet.dto.UserBaseInfoDTO;
import com.epmet.dto.UserResiInfoDTO;
import com.epmet.dto.UserWechatDTO;
import com.epmet.dto.result.UserBaseInfoResultDTO;
import com.epmet.dto.result.UserWechatResultDTO;
import com.epmet.entity.UserBaseInfoEntity; import com.epmet.entity.UserBaseInfoEntity;
import com.epmet.redis.UserBaseInfoRedis; import com.epmet.redis.UserBaseInfoRedis;
import com.epmet.service.UserBaseInfoService; import com.epmet.service.UserBaseInfoService;
@ -33,6 +39,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -48,6 +55,10 @@ public class UserBaseInfoServiceImpl extends BaseServiceImpl<UserBaseInfoDao, Us
@Autowired @Autowired
private UserBaseInfoRedis userBaseInfoRedis; private UserBaseInfoRedis userBaseInfoRedis;
@Autowired
private UserWechatDao userWechatDao;
@Autowired
private UserResiInfoDao userResiInfoDao;
@Override @Override
public PageData<UserBaseInfoDTO> page(Map<String, Object> params) { public PageData<UserBaseInfoDTO> page(Map<String, Object> params) {
@ -101,4 +112,60 @@ public class UserBaseInfoServiceImpl extends BaseServiceImpl<UserBaseInfoDao, Us
baseDao.deleteBatchIds(Arrays.asList(ids)); baseDao.deleteBatchIds(Arrays.asList(ids));
} }
/**
* @param userIdList
* @return java.util.List<com.epmet.dto.result.UserBaseInfoResultDTO>
* @author yinzuomei
* @description 传入用户id集合返回用户的基本信息包含微信基本信息
* @Date 2020/7/22 9:35
**/
@Override
public List<UserBaseInfoResultDTO> queryUserBaseInfo(List<String> userIdList) {
if(null==userIdList||userIdList.size()<1){
return new ArrayList<>();
}
List<UserBaseInfoResultDTO> userBaseInfoList=new ArrayList<>();
for(String userId:userIdList){
UserBaseInfoResultDTO userBaseInfoResultDTO=baseDao.selectListByUserIdList(userId);
if(null!=userBaseInfoResultDTO){
UserWechatResultDTO userWechatResultDTO=baseDao.selectUserWechatByUserId(userId);
userBaseInfoResultDTO.setUserWechatResultDTO(userWechatResultDTO);
userBaseInfoList.add(userBaseInfoResultDTO);
}
}
return userBaseInfoList;
}
/**
* @return void
* @author yinzuomei
* @description 初始化历史用户信息到user_base_info数据
* @Date 2020/7/22 10:42
**/
@Override
public void initBaseInfo() {
List<UserWechatDTO> userWechatDTOList=userWechatDao.selectAll();
for(UserWechatDTO userWechatDTO:userWechatDTOList){
UserResiInfoDTO userResiInfoDTO=userResiInfoDao.selectByUserId(userWechatDTO.getUserId());
UserBaseInfoEntity userBaseInfoEntity=new UserBaseInfoEntity();
userBaseInfoEntity.setUserId(userResiInfoDTO.getUserId());
userBaseInfoEntity.setMobile(userResiInfoDTO.getRegMobile());
userBaseInfoEntity.setSurname(userResiInfoDTO.getSurname());
userBaseInfoEntity.setName(userResiInfoDTO.getName());
userBaseInfoEntity.setRealName(userResiInfoDTO.getSurname()+userResiInfoDTO.getName());
//查询党员信息
// userBaseInfoEntity.setIdNum();
userBaseInfoEntity.setGender(userWechatDTO.getSex().toString());
userBaseInfoEntity.setStreet(userResiInfoDTO.getStreet());
userBaseInfoEntity.setDistrict(userResiInfoDTO.getDistrict());
userBaseInfoEntity.setBuildingAddress(userResiInfoDTO.getBuildingAddress());
userBaseInfoEntity.setNickname(userWechatDTO.getNickname());
userBaseInfoEntity.setHeadImgUrl(userWechatDTO.getHeadImgUrl());
baseDao.insert(userBaseInfoEntity);
}
return;
}
} }

41
epmet-user/epmet-user-server/src/main/resources/mapper/UserBaseInfoDao.xml

@ -24,5 +24,46 @@
<result property="updatedTime" column="UPDATED_TIME"/> <result property="updatedTime" column="UPDATED_TIME"/>
</resultMap> </resultMap>
<!-- 根据用户id查询user_base_info基本信息 -->
<select id="selectListByUserIdList" parameterType="java.lang.String" resultType="com.epmet.dto.result.UserBaseInfoResultDTO">
SELECT
ubi.USER_ID,
ubi.MOBILE,
ubi.SURNAME,
ubi.`NAME`,
ubi.real_name,
ubi.ID_NUM,
ubi.GENDER,
ubi.STREET,
ubi.DISTRICT,
ubi.BUILDING_ADDRESS,
ubi.NICKNAME,
ubi.HEAD_IMG_URL
FROM
user_base_info ubi
WHERE
ubi.DEL_FLAG = '0'
AND ubi.USER_ID = #{userId}
</select>
<!-- 根据用户id获取user_wechat表微信用户基本信息 -->
<select id="selectUserWechatByUserId" parameterType="java.lang.String" resultType="com.epmet.dto.result.UserWechatResultDTO">
SELECT
uw.USER_ID,
uw.WX_OPEN_ID,
uw.WX_UNION_ID,
uw.MOBILE,
uw.NICKNAME,
uw.SEX,
uw.HEAD_IMG_URL,
uw.COUNTRY,
uw.PROVINCE,
uw.CITY,
uw.`LANGUAGE`
FROM
user_wechat uw
WHERE
uw.DEL_FLAG = '0'
AND uw.USER_ID = #{userId}
</select>
</mapper> </mapper>

11
epmet-user/epmet-user-server/src/main/resources/mapper/UserResiInfoDao.xml

@ -153,4 +153,15 @@
AND uri.del_flag = 0 AND uri.del_flag = 0
AND uw.del_flag = 0 AND uw.del_flag = 0
</select> </select>
<!-- 根据要用户id,查询用户注册的信息 -->
<select id="selectByUserId" resultType="com.epmet.dto.UserResiInfoDTO">
SELECT
*
FROM
user_resi_info uri
WHERE
uri.DEL_FLAG = '0'
AND uri.USER_ID = #{userId}
</select>
</mapper> </mapper>

10
epmet-user/epmet-user-server/src/main/resources/mapper/UserWechatDao.xml

@ -79,4 +79,14 @@
AND del_flag = 0 AND del_flag = 0
</select> </select>
<!-- 查询已经授权的微信用户信息 -->
<select id="selectAll" resultType="com.epmet.dto.UserWechatDTO">
SELECT
*
FROM
user_wechat uw
WHERE
uw.DEL_FLAG = '0'
AND uw.NICKNAME IS NOT NULL
</select>
</mapper> </mapper>

Loading…
Cancel
Save