Commit d5f8cf33 authored by lixuan's avatar lixuan

feat: 房源

parent 1dc8a445
Pipeline #145095 failed with stages
in 35 minutes and 8 seconds
......@@ -26,6 +26,8 @@ public interface HouseResourceMapper {
List<HouseResourcePage> selectList(@Param("query") HouseResourcePageQuery houseResourcePageQuery);
List<HouseResourcePage> exportList(@Param("query") HouseResourcePageQuery houseResourcePageQuery);
List<HouseResource> selectAll();
List<HouseResource> selectPageBusinessEntityStatistics();
......
......@@ -26,6 +26,8 @@ public interface HouseResourceService {
List<HouseResourcePage> listHouseResources(HouseResourcePageQuery query);
List<HouseResourcePage> exportListHouseResources(HouseResourcePageQuery query);
BusinessEntityStatisticsDetail businessEntityStatistics(HouseResourcePageQuery query);
PageBusinessEntityStatisticsDetail pageBusinessEntityStatistics(PageBusinessEntityStatisticsQuery query);
......
......@@ -292,6 +292,25 @@ public class HouseResourceServiceImpl implements HouseResourceService {
}
}
@Override
public List<HouseResourcePage> exportListHouseResources(HouseResourcePageQuery query) {
String userId = SecurityUtils.getLoginUser().getUser().getUserId();
GridRegionUserExample example = new GridRegionUserExample();
GridRegionUserExample.Criteria criteria = example.createCriteria();
criteria.andIsValidEqualTo("1");
criteria.andUserIdEqualTo(userId);
List<GridRegionUser> gridRegionUsers = gridRegionUserMapper.selectByExample(example);
if (!CollectionUtils.isEmpty(gridRegionUsers) && !SecurityUtils.getLoginUser().getUser().isAdmin()) {
query.setWgCodes(gridRegionUsers.stream().map(GridRegionUser::getWgId).collect(Collectors.toList()));
}
List<HouseResourcePage> list = houseResourceMapper.exportList(query);
if (CollectionUtils.isEmpty(list)) {
return Collections.emptyList();
} else {
return handleHouseList(list, true);
}
}
@Override
public BusinessEntityStatisticsDetail businessEntityStatistics(HouseResourcePageQuery query) {
List<HouseResourcePage> listPages = houseResourceMapper.selectProfileGraph(query);
......
......@@ -273,6 +273,55 @@
</if>
</trim>
</select>
<select id="exportList" resultType="com.ruoyi.system.domain.house.vo.HouseResourcePage">
SELECT
t2.wg_name AS wgName4,
t1.*,
t4.year_sell
FROM
house_resource t1
LEFT JOIN grid_region t2 ON t2.wg_code = t1.four
LEFT JOIN business_entity_info t3 ON t1.id = t3.house_resource_id
LEFT JOIN business_entity_sell t4 ON t4.business_entity_info_id = t3.id
<where>
<if test="query.wgType != null">
and t1.type = #{query.wgType}
</if>
<if test="query.two != null and query.two != ''">
and t1.two = #{query.two}
</if>
<if test="query.three != null and query.three != ''">
and t1.three = #{query.three}
</if>
<if test="query.four != null and query.four != ''">
and t1.four = #{query.four}
</if>
<if test="query.houseResourceAttribute != null">
and t1.house_resource_attribute = #{query.houseResourceAttribute}
</if>
<if test="query.hireStatus != null">
and t1.hire_status = #{query.hireStatus}
</if>
<if test="query.houseNumber != null and query.houseNumber != ''">
and t1.house_number like concat('%', #{query.houseNumber}, '%')
</if>
<if test="query.wgCodes != null and query.wgCodes.size() > 0">
and t1.two in
<foreach item="item" index="index" collection="query.wgCodes" open="(" separator="," close=")">
#{item}
</foreach>
</if>
</where>
GROUP BY t1.id
<trim prefix="having" prefixOverrides="and">
<if test="query.houseAreaMin != null and query.houseAreaMin != '' and query.houseAreaMax != null and query.houseAreaMax != ''">
and t1.house_area <![CDATA[ >= ]]> #{query.houseAreaMin} and t1.house_area <![CDATA[ <= ]]> #{query.houseAreaMax}
</if>
<if test="query.yearSellMin != null and query.yearSellMin != '' and query.yearSellMax != null and query.yearSellMax != ''">
and t4.year_sell <![CDATA[ >= ]]> #{query.yearSellMin} and t4.year_sell <![CDATA[ <= ]]> #{query.yearSellMax}
</if>
</trim>
</select>
<select id="selectAll" resultType="com.ruoyi.system.domain.house.HouseResource">
SELECT * FROM house_resource
</select>
......
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