Browse Source

出生管理

dev
zhaoqifeng 3 years ago
parent
commit
6fd50f46f3
  1. 9
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcBirthRecordDTO.java
  2. 30
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/BirthRecordUpdateDTO.java
  3. 3
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcBirthRecordController.java
  4. 3
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcBirthRecordService.java
  5. 96
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcBirthRecordServiceImpl.java

9
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcBirthRecordDTO.java

@ -1,8 +1,10 @@
package com.epmet.dto;
import com.epmet.commons.tools.validator.group.AddGroup;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.util.Date;
@ -41,33 +43,39 @@ public class IcBirthRecordDTO implements Serializable {
/**
* 网格ID
*/
@NotBlank(message = "所属网格不能为空", groups = {AddGroup.class})
private String gridId;
private String gridName;
/**
* 所属小区ID
*/
@NotBlank(message = "所属小区不能为空", groups = {AddGroup.class})
private String villageId;
/**
* 所属楼宇Id
*/
@NotBlank(message = "所属楼宇不能为空", groups = {AddGroup.class})
private String buildId;
/**
* 单元id
*/
@NotBlank(message = "所属单元不能为空", groups = {AddGroup.class})
private String unitId;
/**
* 所属家庭Id
*/
@NotBlank(message = "所属家庭不能为空", groups = {AddGroup.class})
private String homeId;
private String home;
/**
* 姓名
*/
@NotBlank(message = "姓名不能为空", groups = {AddGroup.class})
private String name;
/**
@ -83,6 +91,7 @@ public class IcBirthRecordDTO implements Serializable {
/**
* 身份证号
*/
@NotBlank(message = "身份证号不能为空", groups = {AddGroup.class})
private String idCard;
/**

30
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/BirthRecordUpdateDTO.java

@ -0,0 +1,30 @@
package com.epmet.dto.form;
import com.epmet.commons.tools.validator.group.UpdateGroup;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* @Description
* @Author zhaoqifeng
* @Date 2022/5/11 16:23
*/
@NoArgsConstructor
@Data
public class BirthRecordUpdateDTO implements Serializable {
private static final long serialVersionUID = -1847965724862077861L;
@NotBlank(message = "id不能为空", groups = {UpdateGroup.class})
private String id;
@NotBlank(message = "出生地不能为空", groups = {UpdateGroup.class})
private String birthplace;
private String father;
private String mother;
private Integer count;
private String reportDate;
private String householderName;
private String householderRelation;
}

3
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcBirthRecordController.java

@ -19,6 +19,7 @@ import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.dto.IcBirthRecordDTO;
import com.epmet.dto.form.BirthRecordFormDTO;
import com.epmet.dto.form.BirthRecordUpdateDTO;
import com.epmet.excel.IcBirthRecordExcel;
import com.epmet.service.IcBirthRecordService;
import lombok.extern.slf4j.Slf4j;
@ -70,7 +71,7 @@ public class IcBirthRecordController {
@NoRepeatSubmit
@PostMapping("update")
public Result update(@LoginUser TokenDto tokenDto, @RequestBody IcBirthRecordDTO dto){
public Result update(@LoginUser TokenDto tokenDto, @RequestBody BirthRecordUpdateDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
icBirthRecordService.update(tokenDto, dto);

3
epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcBirthRecordService.java

@ -5,6 +5,7 @@ import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.dto.IcBirthRecordDTO;
import com.epmet.dto.form.BirthRecordFormDTO;
import com.epmet.dto.form.BirthRecordUpdateDTO;
import com.epmet.entity.IcBirthRecordEntity;
/**
@ -53,7 +54,7 @@ public interface IcBirthRecordService extends BaseService<IcBirthRecordEntity> {
* @author generator
* @date 2022-05-10
*/
void update(TokenDto tokenDto, IcBirthRecordDTO dto);
void update(TokenDto tokenDto, BirthRecordUpdateDTO dto);
/**
* 批量删除

96
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcBirthRecordServiceImpl.java

@ -19,6 +19,7 @@ import com.epmet.dao.IcResiUserDao;
import com.epmet.dto.ChangeWelfareDTO;
import com.epmet.dto.IcBirthRecordDTO;
import com.epmet.dto.form.BirthRecordFormDTO;
import com.epmet.dto.form.BirthRecordUpdateDTO;
import com.epmet.dto.form.IcResiUserTransferFormDTO;
import com.epmet.dto.result.AllGridsByUserIdResultDTO;
import com.epmet.dto.result.HouseInfoDTO;
@ -146,7 +147,7 @@ public class IcBirthRecordServiceImpl extends BaseServiceImpl<IcBirthRecordDao,
//判断是否有所属组织,如果有,判断是否属于当前组织,没有的话则直接新增
if (StringUtils.isNotEmpty(sync.getIcResiUserId())) {
userEntity.setId(sync.getIcResiUserId());
if (staffInfo.getAgencyId().equals(sync.getAgencyId())) {
if (staffInfo.getAgencyId().equals(sync.getResiAgencyId())) {
//组织相等的情况
if (NumConstant.ZERO_STR.equals(sync.getStatus())) {
//正常状态
@ -213,108 +214,17 @@ public class IcBirthRecordServiceImpl extends BaseServiceImpl<IcBirthRecordDao,
@Override
@Transactional(rollbackFor = Exception.class)
public void update(TokenDto tokenDto, IcBirthRecordDTO dto) {
IcBirthRecordEntity record = baseDao.selectById(dto.getId());
public void update(TokenDto tokenDto, BirthRecordUpdateDTO dto) {
//获取工作人员信息
CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(tokenDto.getCustomerId(), tokenDto.getUserId());
if (null == staffInfo) {
throw new EpmetException("获取工作人员信息失败");
}
if (NumConstant.ONE_STR.equals(dto.getIsCheck()) && NumConstant.ONE_STR.equals(record.getIsCheck())) {
throw new EpmetException("已补充到居民信息");
}
//是否补充居民信息
SyncResiResDTO sync = icResiUserService.checkUser(tokenDto.getCustomerId(), record.getIdCard(), staffInfo.getAgencyId());
if (NumConstant.ONE_STR.equals(dto.getIsCheck())) {
//判断是否可迁入
if (!sync.getMoveInstatus()) {
throw new EpmetException("请联系" + sync.getResiAgencyName() + "迁出该居民后操作");
}
IcResiUserEntity userEntity = ConvertUtils.sourceToTarget(record, IcResiUserEntity.class);
userEntity.setCustomerId(tokenDto.getCustomerId());
userEntity.setAgencyId(staffInfo.getAgencyId());
userEntity.setPids(staffInfo.getAgencyPIds());
userEntity.setYhzgx(dto.getHouseholderRelation());
userEntity.setStatus(NumConstant.ZERO_STR);
userEntity.setSubStatus("11");
//判断是否有所属组织,如果有,判断是否属于当前组织,没有的话则直接新增
if (StringUtils.isNotEmpty(sync.getIcResiUserId())) {
userEntity.setId(sync.getIcResiUserId());
if (staffInfo.getAgencyId().equals(sync.getAgencyId())) {
//组织相等的情况
if (NumConstant.ZERO_STR.equals(sync.getStatus())) {
//正常状态
if (!record.getHomeId().equals(sync.getResiHomeId())) {
//房屋信息不一致
//是否更新 为空,返回确认消息
if (StringUtils.isBlank(dto.getIsReplace())) {
throw new EpmetException("居民信息中房屋信息与当前选择房屋不一致,是否更新?");
} else if (NumConstant.ONE_STR.equals(dto.getIsReplace())) {
//更新居民信息
icResiUserDao.updateById(userEntity);
extracted(tokenDto, ConvertUtils.sourceToTarget(record, IcBirthRecordDTO.class), staffInfo, sync, "change");
}
} else {
//房屋信息一致
//更新居民信息
icResiUserDao.updateById(userEntity);
}
} else {
//迁出或注销状态,
//更新居民信息
icResiUserDao.updateById(userEntity);
//迁入记录
extracted(tokenDto, ConvertUtils.sourceToTarget(record, IcBirthRecordDTO.class), staffInfo, sync, "in");
}
} else {
//组织不相等的情况
//更新居民信息
icResiUserDao.updateById(userEntity);
//迁入记录
extracted(tokenDto, ConvertUtils.sourceToTarget(record, IcBirthRecordDTO.class), staffInfo, sync, "in ");
}
} else {
//添加居民信息
icResiUserDao.insert(userEntity);
//迁入记录
sync.setIcResiUserId(userEntity.getId());
extracted(tokenDto, ConvertUtils.sourceToTarget(record, IcBirthRecordDTO.class), staffInfo, sync, "add");
}
}
IcBirthRecordEntity entity = ConvertUtils.sourceToTarget(dto, IcBirthRecordEntity.class);
entity.setGridId(null);
entity.setBuildId(null);
entity.setUnitId(null);
entity.setHomeId(null);
entity.setName(null);
entity.setMobile(null);
entity.setIdCard(null);
if (NumConstant.ONE_STR.equals(record.getIsCheck())) {
entity.setIsCheck(null);
}
if (NumConstant.ONE_STR.equals(record.getIsWelfare())) {
entity.setIsWelfare(null);
}
updateById(entity);
if (NumConstant.ZERO_STR.equals(record.getIsWelfare()) && NumConstant.ONE_STR.equals(dto.getIsWelfare())) {
ChangeWelfareDTO welfare = new ChangeWelfareDTO();
welfare.setCustomerId(tokenDto.getCustomerId());
welfare.setGridId(record.getGridId());
welfare.setUserId(sync.getIcResiUserId());
welfare.setIdCard(record.getIdCard());
welfare.setMobile(record.getMobile());
welfare.setName(record.getName());
welfare.setGender(record.getGender());
welfare.setJoinReason("出生登记选定");
changeWelfareService.saveWelfareInfo(welfare);
}
}
@Override

Loading…
Cancel
Save