Browse Source

家庭成员迁出

master
zhaoqifeng 3 years ago
parent
commit
3216ed01d7
  1. 38
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/ConfirmListFormDTO.java
  2. 1
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/MoveOutMemberFormDTO.java
  3. 26
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/ConfirmListResultDTO.java
  4. 40
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/MoveOutDetailResultDTO.java
  5. 77
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java
  6. 23
      epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserConfirmDao.java
  7. 54
      epmet-user/epmet-user-server/src/main/java/com/epmet/enums/UserConfirmEnum.java
  8. 33
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserConfirmService.java
  9. 104
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserConfirmServiceImpl.java
  10. 77
      epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserConfirmDao.xml

38
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/ConfirmListFormDTO.java

@ -0,0 +1,38 @@
package com.epmet.dto.form;
import com.epmet.commons.tools.dto.form.PageFormDTO;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @Description
* @Author zhaoqifeng
* @Date 2022/6/22 14:16
*/
@NoArgsConstructor
@Data
public class ConfirmListFormDTO extends PageFormDTO implements Serializable {
private static final long serialVersionUID = -3784221830789219648L;
private String customerId;
private String agencyId;
private String staffId;
private String name;
private String mobile;
private String idCard;
/**
* 迁出类型
*/
private String submitType;
/**
* 审核状态
*/
private String confirmResult;
private String gridId;
private String villageId;
private String buildId;
private String unitId;
private String homeId;
}

1
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/MoveOutMemberFormDTO.java

@ -133,4 +133,5 @@ public class MoveOutMemberFormDTO implements Serializable {
* 与户主关系
*/
private String yhzgx;
private String moveOutDate;
}

26
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/ConfirmListResultDTO.java

@ -0,0 +1,26 @@
package com.epmet.dto.result;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @Description
* @Author zhaoqifeng
* @Date 2022/6/22 14:27
*/
@NoArgsConstructor
@Data
public class ConfirmListResultDTO {
private String id;
private String name;
private String gender;
private String mobile;
private String idCard;
private String gridId;
private String gridName;
private String homeId;
private String homeName;
private String submitType;
private String newHomeName;
private String confirmResult;
}

40
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/MoveOutDetailResultDTO.java

@ -0,0 +1,40 @@
package com.epmet.dto.result;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
/**
* @Description
* @Author zhaoqifeng
* @Date 2022/6/22 16:15
*/
@NoArgsConstructor
@Data
public class MoveOutDetailResultDTO implements Serializable {
private static final long serialVersionUID = -8151267925780583596L;
private String id;
private String icResiUserId;
private String name;
private String mobile;
private String idCard;
private String gridId;
private String gridName;
private String villageName;
private String buildName;
private String unitName;
private String homeId;
private String homeName;
private String outType;
private String newGridName;
private String newHomeName;
private String moveOutDate;
private String deleteReason;
private String confirmResult;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date createdTime;
private String reason;
}

77
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java

@ -3,18 +3,18 @@ package com.epmet.controller;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.annotation.MaskResponse;
import com.epmet.commons.tools.enums.HomeMemberOperationEnum;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.commons.tools.validator.group.AddGroup;
import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.dto.IcResiUserConfirmDTO;
import com.epmet.dto.form.IcResiUserConfirmGetDTO;
import com.epmet.dto.form.IcResiUserConfirmSubmitDTO;
import com.epmet.dto.form.MoveOutMemberFormDTO;
import com.epmet.dto.form.RegisterAndBindFormDTO;
import com.epmet.dto.form.*;
import com.epmet.dto.result.ConfirmListResultDTO;
import com.epmet.dto.result.HomeInfoResultDTO;
import com.epmet.dto.result.HomeUserBriefResultDTO;
import com.epmet.dto.result.MoveOutDetailResultDTO;
import com.epmet.service.IcResiUserConfirmService;
import com.epmet.service.IcResiUserService;
import com.epmet.service.MyHomeService;
@ -50,38 +50,6 @@ public class MyHomeController {
return new Result().ok(myHomeService.selectListHomeMember(houseCode, tokenDto.getCustomerId()));
}
// /**
// * @describe: 新增家庭成员
// * @author wangtong
// * @date 2022/6/1 15:50
// * @params [dto]
// * @return com.epmet.commons.tools.utils.Result
// */
// @PostMapping("addMember")
// public Result addMember(@RequestBody IcResiUserConfirmSubmitDTO dto){
// //效验数据
// ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
// dto.setSubmitType(HomeMemberOperationEnum.ADD.getCode());
// return icResiUserConfirmService.addMember(dto);
// }
//
// /**
// * @describe: 修改家庭成员
// * @author wangtong
// * @date 2022/6/1 15:27
// * @params [dto]
// * @return com.epmet.commons.tools.utils.Result
// */
// @PostMapping("editMember")
// public Result save(@RequestBody IcResiUserConfirmSubmitDTO dto){
// //效验数据
// ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
// dto.setSubmitType(HomeMemberOperationEnum.UPDATE.getCode());
// return icResiUserConfirmService.editMember(dto);
// }
//
/**
* @return com.epmet.commons.tools.utils.Result
* @describe: 删除家庭成员
@ -188,11 +156,46 @@ public class MyHomeController {
* @author LZN
* @date 2022/6/10 11:06
*/
@PostMapping("/moveOutMember")
@PostMapping("moveOutMember")
public Result moveOutMember(@RequestBody MoveOutMemberFormDTO form, @LoginUser TokenDto tokenDto) {
form.setCustomerId(tokenDto.getCustomerId());
icResiUserConfirmService.moveOutMember(form);
return new Result();
}
/**
* 迁出审核列表
*
* @Param tokenDto
* @Param form
* @Return {@link Result< PageData< ConfirmListResultDTO>>}
* @Author zhaoqifeng
* @Date 2022/6/22 16:13
*/
@PostMapping("confirmList")
public Result<PageData<ConfirmListResultDTO>> confirmList(@LoginUser TokenDto tokenDto, @RequestBody ConfirmListFormDTO form) {
form.setCustomerId(tokenDto.getCustomerId());
form.setStaffId(tokenDto.getUserId());
return new Result<PageData<ConfirmListResultDTO>>().ok(icResiUserConfirmService.confirmList(form));
}
@PostMapping("moveOutConfirmDetail")
public Result<MoveOutDetailResultDTO> moveOutConfirmDetail(@LoginUser TokenDto tokenDto, @RequestBody IcResiUserConfirmDTO formDTO) {
return new Result<MoveOutDetailResultDTO>().ok(icResiUserConfirmService.moveOutConfirmDetail(tokenDto.getCustomerId(), formDTO.getId()));
}
/**
* 迁出审核
*
* @Param formDTO
* @Return {@link Result}
* @Author zhaoqifeng
* @Date 2022/6/22 16:46
*/
@PostMapping("moveOutConfirm")
public Result moveOutConfirm( @RequestBody IcResiUserConfirmDTO formDTO) {
icResiUserConfirmService.moveOutConfirm(formDTO);
return new Result();
}
}

23
epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserConfirmDao.java

@ -1,10 +1,15 @@
package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.form.ConfirmListFormDTO;
import com.epmet.dto.result.ConfirmListResultDTO;
import com.epmet.dto.result.MoveOutDetailResultDTO;
import com.epmet.entity.IcResiUserConfirmEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 居民信息审核表
*
@ -48,4 +53,22 @@ public interface IcResiUserConfirmDao extends BaseDao<IcResiUserConfirmEntity> {
*/
void deleteByIdCard(@Param("idCard") String idCard, @Param("customerId") String customerId,
@Param("submitType") String submitType);
/**
* 迁出审核列表
* @Param form
* @Return {@link List< ConfirmListResultDTO>}
* @Author zhaoqifeng
* @Date 2022/6/22 16:28
*/
List<ConfirmListResultDTO> getConfirmList(ConfirmListFormDTO form);
/**
* 迁出审核详情
* @Param id
* @Return {@link MoveOutDetailResultDTO}
* @Author zhaoqifeng
* @Date 2022/6/22 16:27
*/
MoveOutDetailResultDTO getMoveOutConfirmDetail(String id);
}

54
epmet-user/epmet-user-server/src/main/java/com/epmet/enums/UserConfirmEnum.java

@ -0,0 +1,54 @@
package com.epmet.enums;
import java.util.Objects;
/**
* @author Administrator
*/
public enum UserConfirmEnum {
//审核状态
AUDITING("0", "未审核"),
PASSED("1", "已通过"),
REJECT("2", "未通过"),
ADD("add", "新增"),
UPDATE("update", "修改"),
OUT("out", "迁至客户外"),
IN("in", "迁至客户内"),
;
private String code;
private String name;
UserConfirmEnum(String code, String name) {
this.code = code;
this.name = name;
}
public static String getName(String code) {
UserConfirmEnum[] userConfirmEnums = values();
for (UserConfirmEnum userConfirmEnum : userConfirmEnums) {
if (Objects.equals(userConfirmEnum.getCode(), code)) {
return userConfirmEnum.getName();
}
}
return null;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}

33
epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserConfirmService.java

@ -4,9 +4,12 @@ import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.IcResiUserConfirmDTO;
import com.epmet.dto.form.ConfirmListFormDTO;
import com.epmet.dto.form.IcResiUserConfirmGetDTO;
import com.epmet.dto.form.IcResiUserConfirmSubmitDTO;
import com.epmet.dto.form.MoveOutMemberFormDTO;
import com.epmet.dto.result.ConfirmListResultDTO;
import com.epmet.dto.result.MoveOutDetailResultDTO;
import com.epmet.entity.IcResiUserConfirmEntity;
import java.util.List;
@ -135,4 +138,34 @@ public interface IcResiUserConfirmService extends BaseService<IcResiUserConfirmE
* @date 2022/6/10 11:06
*/
void moveOutMember(MoveOutMemberFormDTO form);
/**
* 迁出审核列表
*
* @Param form
* @Return {@link PageData< ConfirmListResultDTO>}
* @Author zhaoqifeng
* @Date 2022/6/22 14:30
*/
PageData<ConfirmListResultDTO> confirmList(ConfirmListFormDTO form);
/**
* 迁出审核详情
*
* @Param id
* @Return {@link MoveOutDetailResultDTO}
* @Author zhaoqifeng
* @Date 2022/6/22 16:21
*/
MoveOutDetailResultDTO moveOutConfirmDetail(String customerId, String id);
/**
* 迁出审核
*
* @Param formDTO
* @Return {@link null}
* @Author zhaoqifeng
* @Date 2022/6/22 16:45
*/
void moveOutConfirm(IcResiUserConfirmDTO formDTO);
}

104
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserConfirmServiceImpl.java

@ -5,19 +5,36 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult;
import com.epmet.commons.tools.enums.GenderEnum;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.redis.common.CustomerIcHouseRedis;
import com.epmet.commons.tools.redis.common.CustomerOrgRedis;
import com.epmet.commons.tools.redis.common.CustomerStaffRedis;
import com.epmet.commons.tools.redis.common.bean.GridInfoCache;
import com.epmet.commons.tools.redis.common.bean.HouseInfoCache;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dao.IcResiUserConfirmDao;
import com.epmet.dao.IcResiUserDao;
import com.epmet.dto.IcResiUserConfirmDTO;
import com.epmet.dto.form.ConfirmListFormDTO;
import com.epmet.dto.form.IcResiUserConfirmGetDTO;
import com.epmet.dto.form.IcResiUserConfirmSubmitDTO;
import com.epmet.dto.form.MoveOutMemberFormDTO;
import com.epmet.dto.result.ConfirmListResultDTO;
import com.epmet.dto.result.MoveOutDetailResultDTO;
import com.epmet.entity.IcResiUserConfirmEntity;
import com.epmet.entity.IcResiUserEntity;
import com.epmet.enums.UserConfirmEnum;
import com.epmet.redis.IcResiUserConfirmRedis;
import com.epmet.service.IcResiUserConfirmService;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -33,6 +50,7 @@ import java.util.Map;
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-06-01
*/
@Slf4j
@Service
public class IcResiUserConfirmServiceImpl extends BaseServiceImpl<IcResiUserConfirmDao, IcResiUserConfirmEntity> implements IcResiUserConfirmService {
@ -199,4 +217,90 @@ public class IcResiUserConfirmServiceImpl extends BaseServiceImpl<IcResiUserConf
icResiUserConfirmDao.insert(entity);
}
/**
* 迁出审核列表
*
* @param form
* @Param form
* @Return {@link PageData< ConfirmListResultDTO >}
* @Author zhaoqifeng
* @Date 2022/6/22 14:30
*/
@Override
public PageData<ConfirmListResultDTO> confirmList(ConfirmListFormDTO form) {
//获取工作人员所属组织
CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(form.getCustomerId(), form.getStaffId());
if (null == staffInfo) {
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "获取用户信息失败", "获取用户信息失败");
}
form.setAgencyId(staffInfo.getAgencyId());
PageHelper.startPage(form.getPageNo(), form.getPageSize());
List<ConfirmListResultDTO> list =baseDao.getConfirmList(form);
PageInfo<ConfirmListResultDTO> pageInfo = new PageInfo<>(list);
if (CollectionUtils.isNotEmpty(list)) {
list.forEach(item -> {
//获取网格信息
GridInfoCache gridInfo = CustomerOrgRedis.getGridInfo(item.getGridId());
if (null != gridInfo) {
log.warn("迁出审核列表获取网格缓存失败");
item.setGridName(gridInfo.getGridNamePath());
}
//获取房屋信息
HouseInfoCache houseInfo = CustomerIcHouseRedis.getHouseInfo(form.getCustomerId(), item.getHomeId());
if (null != houseInfo) {
log.warn("迁出审核列表获取房屋缓存失败");
item.setHomeName(houseInfo.getAllName());
}
item.setGender(GenderEnum.getName(item.getGender()));
item.setConfirmResult(UserConfirmEnum.getName(item.getConfirmResult()));
});
}
return new PageData<>(list, pageInfo.getTotal());
}
/**
* 迁出审核详情
*
* @param id
* @Param id
* @Return {@link MoveOutDetailResultDTO}
* @Author zhaoqifeng
* @Date 2022/6/22 16:21
*/
@Override
public MoveOutDetailResultDTO moveOutConfirmDetail(String customerId, String id) {
MoveOutDetailResultDTO result = baseDao.getMoveOutConfirmDetail(id);
if (null != result) {
//获取网格信息
GridInfoCache gridInfo = CustomerOrgRedis.getGridInfo(result.getGridId());
//获取房屋信息
HouseInfoCache houseInfo = CustomerIcHouseRedis.getHouseInfo(customerId, result.getHomeId());
if (null == houseInfo) {
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "获取房屋信息失败", "获取房屋信息失败");
}
result.setGridName(houseInfo.getGridName());
result.setVillageName(houseInfo.getNeighborHoodName());
result.setBuildName(houseInfo.getBuildingName());
result.setUnitName(houseInfo.getUnitName());
result.setHomeName(houseInfo.getDoorName());
}
return result;
}
/**
* 迁出审核
*
* @param formDTO
* @Param formDTO
* @Return {@link null}
* @Author zhaoqifeng
* @Date 2022/6/22 16:45
*/
@Override
@Transactional(rollbackFor = Exception.class)
public void moveOutConfirm(IcResiUserConfirmDTO formDTO) {
baseDao.updateById(ConvertUtils.sourceToTarget(formDTO, IcResiUserConfirmEntity.class));
}
}

77
epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserConfirmDao.xml

@ -59,6 +59,83 @@
AND CONFIRM_RESULT = '0'
AND SUBMIT_TYPE = #{submitType}
</select>
<select id="getConfirmList" resultType="com.epmet.dto.result.ConfirmListResultDTO">
SELECT
a.ID,
b.`NAME`,
b.GENDER,
b.ID_CARD,
b.MOBILE,
b.GRID_ID,
b.HOME_ID,
SUBMIT_TYPE,
VILLAGE_NAME + BUILD_NAME + UNIT_NAME + HOME_NAME AS newHomeName,
CONFIRM_RESULT
FROM
ic_resi_user_confirm a
INNER JOIN ic_resi_user b ON a.IC_RESI_USER_ID = b.ID
AND b.DEL_FLAG = 0
WHERE
a.DEL_FLAG = 0
AND a.SUBMIT_TYPE IN ( 'in', 'out' )
AND a.AGENCY_ID = #{agencyId}
<if test="null != name and name.trim() != ''">
AND b.NAME LIKE CONCAT(('%',#{name},'%'))
</if>
<if test="null != idCard and idCard.trim() != ''">
AND b.ID_CARD LIKE CONCAT(('%',#{idCard},'%'))
</if>
<if test="null != mobile and mobile.trim() != ''">
AND b.MOBILE LIKE CONCAT(('%',#{mobile},'%'))
</if>
<if test="null != submitType and submitType.trim() != ''">
AND SUBMIT_TYPE = #{submitType}
</if>
<if test="null != confirmResult and confirmResult.trim() != ''">
AND CONFIRM_RESULT = #{confirmResult}
</if>
<if test="null != gridId and gridId.trim() != ''">
AND b.GRID_ID = #{gridId}
</if>
<if test="null != villageId and villageId.trim() != ''">
AND b.VILLAGE_ID = #{villageId}
</if>
<if test="null != buildId and buildId.trim() != ''">
AND b.BUILD_ID = #{buildId}
</if>
<if test="null != unitId and unitId.trim() != ''">
AND b.UNIT_ID = #{unitId}
</if>
<if test="null != homeId and homeId.trim() != ''">
AND b.HOME_ID = #{homeId}
</if>
ORDER BY a.CREATED_TIME DESC
</select>
<select id="getMoveOutConfirmDetail" resultType="com.epmet.dto.result.MoveOutDetailResultDTO">
SELECT
a.ID,
a.IC_RESI_USER_ID,
b.`NAME`,
b.ID_CARD,
b.MOBILE,
b.GRID_ID,
b.HOME_ID,
a.SUBMIT_TYPE AS outType,
a.GRID_NAME AS newGridName,
a.VILLAGE_NAME + a.BUILD_NAME + a.UNIT_NAME + a.HOME_NAME AS newHomeName,
a.CONFIRM_RESULT,
a.MOVE_OUT_DATE,
a.DELETE_REASON,
a.REASON,
a.CREATED_TIME
FROM
ic_resi_user_confirm a
INNER JOIN ic_resi_user b ON a.IC_RESI_USER_ID = b.ID
AND b.DEL_FLAG = 0
WHERE
a.DEL_FLAG = 0
AND a.ID = #{id}
</select>
</mapper>

Loading…
Cancel
Save