Browse Source

租房审核PC端新增

feature/addRentHouseOfPC
wanggongfeng 3 years ago
parent
commit
e8b7866337
  1. 5
      epmet-plugins-module/pli-power-base/pli-power-base-client/src/main/java/com/epmet/plugin/power/dto/rent/RentContractInfoDTO.java
  2. 18
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/rent/controller/RentContractInfoController.java
  3. 5
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/rent/entity/RentContractInfoEntity.java
  4. 20
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/rent/service/RentContractInfoService.java
  5. 79
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/rent/service/impl/RentContractInfoServiceImpl.java
  6. 1
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/resources/db/migration/V0.0.13__pli_rent_contract_info_add_isPcInput.sql
  7. 6
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/resources/mapper/rent/RentContractInfoDao.xml

5
epmet-plugins-module/pli-power-base/pli-power-base-client/src/main/java/com/epmet/plugin/power/dto/rent/RentContractInfoDTO.java

@ -212,4 +212,9 @@ public class RentContractInfoDTO implements Serializable {
* 是否黑名单
*/
private String isBlack;
/**
* 是否是PC录入01
*/
private String isPcInput;
}

18
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/rent/controller/RentContractInfoController.java

@ -54,6 +54,15 @@ public class RentContractInfoController {
return new Result();
}
@NoRepeatSubmit
@PostMapping("savePc")
public Result savePc(@RequestBody RentContractInfoDTO dto) {
//效验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
rentContractInfoService.savePc(dto);
return new Result();
}
@NoRepeatSubmit
@PostMapping("review")
public Result review(@RequestBody RentContractInfoDTO dto) {
@ -89,6 +98,15 @@ public class RentContractInfoController {
return new Result();
}
@NoRepeatSubmit
@PostMapping("updatePc")
public Result updatePc(@RequestBody RentContractInfoDTO dto) {
//效验数据
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
rentContractInfoService.updatePc(dto);
return new Result();
}
@DeleteMapping("delete")
public Result delete(@RequestBody String[] ids) {
//效验数据

5
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/rent/entity/RentContractInfoEntity.java

@ -171,4 +171,9 @@ public class RentContractInfoEntity extends BaseEpmetEntity {
*/
private String customerId;
/**
* 是否是PC录入01
*/
private String isPcInput;
}

20
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/rent/service/RentContractInfoService.java

@ -57,6 +57,16 @@ public interface RentContractInfoService extends BaseService<RentContractInfoEnt
*/
void save(RentContractInfoDTO dto);
/**
* 默认保存(PC )
*
* @param dto
* @return void
* @author generator
* @date 2022-04-22
*/
void savePc(RentContractInfoDTO dto);
/**
* 审核
*
@ -97,6 +107,16 @@ public interface RentContractInfoService extends BaseService<RentContractInfoEnt
*/
void update(RentContractInfoDTO dto);
/**
* 默认更新(PC端)
*
* @param dto
* @return void
* @author generator
* @date 2022-04-22
*/
void updatePc(RentContractInfoDTO dto);
/**
* 批量删除
*

79
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/rent/service/impl/RentContractInfoServiceImpl.java

@ -189,6 +189,77 @@ public class RentContractInfoServiceImpl extends BaseServiceImpl<RentContractInf
updateTenantAndFile(entity.getId(), dto);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void savePc(RentContractInfoDTO dto) {
RentContractInfoEntity entity = ConvertUtils.sourceToTarget(dto, RentContractInfoEntity.class);
entity.setCustomerId(loginUserUtil.getLoginUserCustomerId());
entity.setIsPcInput("1");
insert(entity);
// 处理租客信息和合同信息
updateTenantAndFile(entity.getId(), dto);
// PC新增,默认审核通过,需要更新基础库头像信息以及居民信息,最后更新房屋的状态
if (NumConstant.ONE_STR.equals(entity.getState())) {
// 获取基本信息
RentContractInfoDTO contractDto = get(dto.getId());
// 获取租客信息
Map<String, Object> tenantParams = new HashMap<>(4);
tenantParams.put("contractId", contractDto.getId());
List<RentTenantInfoDTO> tenantList = rentTenantInfoService.list(tenantParams);
tenantList.forEach(tenant -> {
RentTenantFormDTO formDTO = new RentTenantFormDTO();
List<IcResiUserAttachmentDTO> images = new ArrayList<>();
formDTO.setCustomerId(loginUserUtil.getLoginUserCustomerId());
formDTO.setIdCard(tenant.getIdCard());
formDTO.setType(NumConstant.ONE_STR);
List<RentContractFileDTO> imgList = rentContractFileService.listByRefAndType(tenant.getId(), NumConstant.ZERO_STR);
imgList.forEach(img -> {
// 更新基础库的人员头像
IcResiUserAttachmentDTO image = new IcResiUserAttachmentDTO();
image.setAttachmentUrl(img.getFileUrl());
image.setCustomerId(loginUserUtil.getLoginUserCustomerId());
images.add(image);
});
formDTO.setImages(images);
// 初始化居民信息
IcResiUserDTO user = new IcResiUserDTO();
user.setCustomerId(loginUserUtil.getLoginUserCustomerId());
user.setGridId(contractDto.getGridId());
user.setVillageId(contractDto.getVillageId());
user.setBuildId(contractDto.getBuildId());
user.setUnitId(contractDto.getUnitId());
user.setHomeId(contractDto.getHomeId());
user.setName(tenant.getName());
user.setIdCard(tenant.getIdCard());
user.setMobile(tenant.getMobile());
user.setGender(IdCardNoValidatorUtils.getGender(tenant.getIdCard()));
user.setAgencyId(contractDto.getCommunityId());
Result<CustomerAgencyDTO> agencyInfo = govOrgOpenFeignClient.getAgencyById(contractDto.getCommunityId());
user.setPids(agencyInfo.getData().getPids());
formDTO.setUser(user);
epmetUserOpenFeignClient.updateImage(formDTO);
});
// 更新房屋的状态为租赁
Result<IcHouseDTO> houseInfo = govOrgOpenFeignClient.get(dto.getHomeId());
IcHouseAddFormDTO formDTO = ConvertUtils.sourceToTarget(houseInfo.getData(), IcHouseAddFormDTO.class);
formDTO.setRentFlag(NumConstant.ONE);
formDTO.setHouseId(dto.getHomeId());
govOrgOpenFeignClient.houseUpdate(formDTO);
}
}
@Override
@Transactional(rollbackFor = Exception.class)
public void review(RentContractInfoDTO dto) {
@ -323,6 +394,14 @@ public class RentContractInfoServiceImpl extends BaseServiceImpl<RentContractInf
updateTenantAndFile(entity.getId(), dto);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void updatePc(RentContractInfoDTO dto) {
RentContractInfoEntity entity = ConvertUtils.sourceToTarget(dto, RentContractInfoEntity.class);
updateById(entity);
updateTenantAndFile(entity.getId(), dto);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(String[] ids) {

1
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/resources/db/migration/V0.0.13__pli_rent_contract_info_add_isPcInput.sql

@ -0,0 +1 @@
ALTER TABLE pli_rent_contract_info ADD COLUMN IS_PC_INPUT varchar(1) COMMENT '是否来源于PC端录入(0:否;1:是)';

6
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/resources/mapper/rent/RentContractInfoDao.xml

@ -37,13 +37,15 @@
<select id="getContractInfoList" resultType="com.epmet.plugin.power.dto.rent.RentContractInfoDTO">
SELECT
i.*,
IF
( b.id IS NULL, '否', '是' ) AS isBlack
IF( b.id IS NULL, '否', '是' ) AS isBlack
FROM
pli_rent_contract_info i
LEFT JOIN pli_rent_blacklist b ON i.LESSEE_ID_CARD = b.ID_CARD AND b.DEL_FLAG = '0'
WHERE
i.DEL_FLAG = '0'
<if test="isPcInput != null and isPcInput != ''">
AND i.IS_PC_INPUT = #{isPcInput}
</if>
<if test="customerId != null and customerId != ''">
AND i.CUSTOMER_ID = #{customerId}
</if>

Loading…
Cancel
Save