Browse Source

Merge branch 'feature/addRentHouseOfPC'

dev_zufangUpdate
wanggongfeng 3 years ago
parent
commit
da693b84f9
  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. 22
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/rent/service/RentContractInfoService.java
  5. 84
      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. 51
      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;
}

22
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);
/**
* 批量删除
*
@ -106,4 +126,4 @@ public interface RentContractInfoService extends BaseService<RentContractInfoEnt
* @date 2022-04-22
*/
void delete(String[] ids);
}
}

84
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,82 @@ public class RentContractInfoServiceImpl extends BaseServiceImpl<RentContractInf
updateTenantAndFile(entity.getId(), dto);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void savePc(RentContractInfoDTO dto) {
// PC 端新增,默认审核通过(0:待审核;1:通过;2:不通过)
dto.setState("1");
// 是否是 PC 录入(0:否,1:是)
dto.setIsPcInput("1");
RentContractInfoEntity entity = ConvertUtils.sourceToTarget(dto, RentContractInfoEntity.class);
entity.setCustomerId(loginUserUtil.getLoginUserCustomerId());
insert(entity);
// 处理租客信息和合同信息
updateTenantAndFile(entity.getId(), dto);
// PC新增,默认审核通过,需要更新基础库头像信息以及居民信息,最后更新房屋的状态
if (NumConstant.ONE_STR.equals(entity.getState())) {
// 获取基本信息
RentContractInfoDTO contractDto = get(entity.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 +399,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:是)';

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

@ -36,14 +36,56 @@
<select id="getContractInfoList" resultType="com.epmet.plugin.power.dto.rent.RentContractInfoDTO">
SELECT
i.*,
IF
( b.id IS NULL, '否', '是' ) AS isBlack
i.ID,
i.COMMUNITY_ID,
i.COMMUNITY_NAME,
i.GRID_ID,
i.GRID_NAME,
i.VILLAGE_ID,
i.VILLAGE_NAME,
i.BUILD_ID,
i.BUILD_NAME,
i.UNIT_ID,
i.UNIT_NAME,
i.HOME_ID,
i.HOME_NAME,
i.OWNER_NAME,
i.STATE,
i.LESSOR_NAME,
i.LESSOR_ID_CARD,
i.LESSOR_MOBILE,
i.LESSOR_RELATION,
i.LESSEE_NAME,
i.LESSEE_ID_CARD,
i.LESSEE_MOBILE,
i.LESSEE_UNIT,
i.SIGN_DATE,
i.REVIEW_DATE,
i.START_DATE,
i.END_DATE,
i.REASON,
i.DEL_FLAG,
i.REVISION,
i.CREATED_BY,
i.CREATED_TIME,
i.UPDATED_BY,
i.UPDATED_TIME,
i.CUSTOMER_ID,
i.LESSOR_LIVE_ADDRESS,
i.LESSEE_HOUSE_ADDRESS,
i.IS_PC_INPUT,
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 == 1 or isPcInput == '1'">
AND i.IS_PC_INPUT = '1'
</if>
<if test="isPcInput == 2 or isPcInput == '2'">
AND (i.IS_PC_INPUT != '1' or i.IS_PC_INPUT is null)
</if>
<if test="customerId != null and customerId != ''">
AND i.CUSTOMER_ID = #{customerId}
</if>
@ -115,5 +157,6 @@
AND DATE( i.END_DATE ) &lt;= CURDATE()
</if>
</if>
order by i.CREATED_TIME desc
</select>
</mapper>
</mapper>

Loading…
Cancel
Save