Commit da8955be authored by lixuan's avatar lixuan

feat: 房源

parent 5e9c4be3
Pipeline #145503 canceled with stages
......@@ -100,7 +100,7 @@ public class HouseResourceDetail {
private String remark;
private List<BusinessEntityDto> businessEntityDtoList;
private List<AssociationBusinessEntityHouseResourceDto> associationBusinessEntityHouseResourceDtos;
private Integer registrationPlaceFlag;
}
......@@ -32,4 +32,6 @@ public interface BusinessEntityInfoMapper {
BigDecimal selectYearSellByHouseResourceId(@Param("houseResourceId") String houseResourceId);
List<BusinessEntityInfo> selectByName(@Param("name") String name);
List<BusinessEntityInfo> selectByIdList(@Param("idList") List<String> idList);
}
......@@ -13,4 +13,6 @@ public interface HouseResourceBusinessEntityInfoMappingMapper {
void deleteByHouseResourceId(String houseResourceId);
List<HouseResourceBusinessEntityInfoMapping> selectByBusinessEntityInfoId(String businessEntityInfoId);
List<HouseResourceBusinessEntityInfoMapping> selectByHouseResourceId(String houseResourceId);
}
......@@ -131,16 +131,29 @@ public class HouseResourceServiceImpl implements HouseResourceService {
houseResourceDetail.setRentalUnitText(HouseEnums.RentalUnitEnum.getDescByCode(houseResourceDetail.getRentalUnit()));
houseResourceDetail.setHireStatusText(HouseEnums.hireStatusTextEnum.getDescByCode(houseResourceDetail.getHireStatus()));
List<BusinessEntityInfo> businessEntityInfos = businessEntityInfoMapper.selectAllBusinessEntityInfosByHouseResourceId(houseResourceDetail.getId());
List<BusinessEntityDto> businessEntityDtoList = new ArrayList<>();
for (BusinessEntityInfo businessEntityInfo : businessEntityInfos) {
BusinessEntityDto businessEntityDto = new BusinessEntityDto();
BeanUtils.copyProperties(businessEntityInfo, businessEntityDto);
List<BusinessEntitySell> businessEntitySells = businessEntitySellMapper.selectBusinessEntitySellByEntityId(businessEntityInfo.getId());
businessEntityDto.setBusinessEntitySells(businessEntitySells);
businessEntityDtoList.add(businessEntityDto);
List<HouseResourceBusinessEntityInfoMapping> houseResourceMappings = houseResourceBusinessEntityInfoMappingMapper.selectByHouseResourceId(id);
if (!CollectionUtils.isEmpty(houseResourceMappings)) {
List<AssociationBusinessEntityHouseResourceDto> result = new ArrayList<>();
List<BusinessEntityInfo> businessEntityInfos = businessEntityInfoMapper.selectByIdList(houseResourceMappings.stream().map(HouseResourceBusinessEntityInfoMapping::getBusinessEntityInfoId).collect(Collectors.toList()));
businessEntityInfos.forEach(x -> {
AssociationBusinessEntityHouseResourceDto associationBusinessEntityHouseResourceDto = new AssociationBusinessEntityHouseResourceDto();
BeanUtils.copyProperties(x, associationBusinessEntityHouseResourceDto);
if (StringUtils.hasText(x.getHouseResourceId())) {
List<HouseResourceBusinessEntityInfoMapping> businessEntityInfoMappings = houseResourceBusinessEntityInfoMappingMapper.selectByBusinessEntityInfoId(x.getId());
if (!CollectionUtils.isEmpty(businessEntityInfoMappings)) {
List<HouseResourcePage> list = houseResourceMapper.selectByIdList(businessEntityInfoMappings.stream().map(HouseResourceBusinessEntityInfoMapping::getHouseResourceId).collect(Collectors.toList()));
List<HouseResourcePage> handleList = handleHouseList(list, false);
associationBusinessEntityHouseResourceDto.setHouseResources(handleList);
}
}
List<BusinessEntitySell> businessEntitySells = businessEntitySellMapper.selectBusinessEntitySellByEntityId(x.getId());
if (!CollectionUtils.isEmpty(businessEntitySells)) {
associationBusinessEntityHouseResourceDto.setBusinessEntitySells(businessEntitySells);
}
result.add(associationBusinessEntityHouseResourceDto);
});
houseResourceDetail.setAssociationBusinessEntityHouseResourceDtos(result);
}
houseResourceDetail.setBusinessEntityDtoList(businessEntityDtoList);
return houseResourceDetail;
}
......
......@@ -84,4 +84,10 @@
<select id="selectByName" resultType="com.ruoyi.system.domain.house.BusinessEntityInfo">
SELECT t2.* FROM house_resource t1 LEFT JOIN business_entity_info t2 ON t1.id = t2.house_resource_id WHERE t2.name like concat('%', #{name}, '%')
</select>
<select id="selectByIdList" resultType="com.ruoyi.system.domain.house.BusinessEntityInfo">
SELECT * FROM business_entity_info WHERE id IN
<foreach item="item" index="index" collection="idList" open="(" separator="," close=")">
#{item}
</foreach>
</select>
</mapper>
......@@ -24,4 +24,8 @@
resultType="com.ruoyi.system.domain.house.HouseResourceBusinessEntityInfoMapping">
SELECT * FROM house_resource_business_entity_info_mapping WHERE business_entity_info_id = #{businessEntityInfoId,jdbcType=VARCHAR}
</select>
<select id="selectByHouseResourceId"
resultType="com.ruoyi.system.domain.house.HouseResourceBusinessEntityInfoMapping">
SELECT * FROM house_resource_business_entity_info_mapping WHERE house_resource_id = #{houseResourceId,jdbcType=VARCHAR}
</select>
</mapper>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment