zhongrj
2023-11-02 23ee61424846639ee5c0e001aa5977b4c392d324
小区商铺查询修改
6 files modified
125 ■■■■ changed files
src/main/java/org/springblade/common/node/TreeNode.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/doorplateAddress/controller/DoorplateAddressController.java 6 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.java 16 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml 71 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/doorplateAddress/service/IDoorplateAddressService.java 2 ●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java 25 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/common/node/TreeNode.java
@@ -32,6 +32,11 @@
    private String name;
    /**
     * 地址类型
     */
    private Integer addressType;
    /**
     * 父节点ID
     */
    @JsonSerialize(using = ToStringSerializer.class)
src/main/java/org/springblade/modules/doorplateAddress/controller/DoorplateAddressController.java
@@ -126,7 +126,7 @@
    /**
     * 根据角色获取功能集合数据
     * @param type
     * @param type 1:查社区  2:查场所  3:查房屋
     * @param roleName
     * @return
     */
@@ -143,8 +143,8 @@
     * @return
     */
    @GetMapping("/getHousesList")
    public R getHousesList(String name,String code,Integer type) {
        return R.data(doorplateAddressService.getHousesList(name,code,type));
    public R getHousesList(String name,String code,Integer type,Integer addressType) {
        return R.data(doorplateAddressService.getHousesList(name,code,type,addressType));
    }
    /**
src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.java
@@ -99,4 +99,20 @@
    List<DoorplateAddressVOTree> getDistrictVOTreeList(@Param("code") String code);
    List<DoorplateAddressVOTree> getBuildingVOTreeList(@Param("code") String code);
    /**
     * 查询街路巷
     * @param name
     * @param code
     * @return
     */
    List<TreeNode> getStreetRuList(@Param("name") String name,@Param("code") String code);
    /**
     * 根据街路巷编号查询街路巷门牌名称集合
     * @param name 该处当社区编号用
     * @param code 街路巷编号
     * @return
     */
    List<FuncNode> getDoorplateNameList(@Param("name") String name,@Param("code") String code);
}
src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml
@@ -22,15 +22,47 @@
    <select id="getDistrictList" resultType="org.springblade.common.node.TreeNode" >
        select aoi_code as id,aoi_name as name from jczz_doorplate_address
        where 1=1
        and nei_name = #{name}
        and aoi_name !=''
        and aoi_code !=''
        <if test="name != null and name!=''">
            and nei_name = #{name}
        </if>
        <if test="code != null and code!=''">
            and nei_code = #{code}
        </if>
        group by aoi_code,aoi_name
        union all
        (
        select aoi_code as id,sub_aoi as name from jczz_doorplate_address
        where 1=1
        and aoi_code !=''
        and sub_aoi != ''
        <if test="name != null and name!=''">
            and nei_name = #{name}
        </if>
        <if test="code != null and code!=''">
            and nei_code = #{code}
        </if>
        group by aoi_code,sub_aoi
        )
        union all
        (
        select nei_code as id,'自建房/商铺' as name from jczz_doorplate_address
        where 1=1
        and aoi_code is null
        <if test="name != null and name!=''">
            and nei_name = #{name}
        </if>
        <if test="code != null and code!=''">
            and nei_code = #{code}
        </if>
        group by nei_code
        )
    </select>
    <!--根据社区名称查询楼栋集合-->
    <!--根据小区名称查询楼栋集合-->
    <select id="getBuildingList" resultType="org.springblade.common.node.TreeNode" >
        select building_code as id,building_name as name from jczz_doorplate_address
        select building_code as id,building_name as name,1 as addressType from jczz_doorplate_address
        where 1=1
        and aoi_code = #{code}
        and building_code !=''
@@ -79,21 +111,44 @@
    </select>
    <select id="getDistrictVOTreeList"
            resultType="org.springblade.modules.doorplateAddress.vo.DoorplateAddressVOTree">
        SELECT district_code as code,district_name as name
        SELECT aoi_code as code,aoi_name as name
        FROM jczz_doorplate_address
        WHERE street_ru_code =#{code}
        and district_code is not null and district_code !=''
        and district_name is not null and district_name !=''
       GROUP BY district_code,district_name
        and aoi_code is not null and aoi_code !=''
        and aoi_name is not null and aoi_name !=''
       GROUP BY aoi_code,aoi_name
    </select>
    <select id="getBuildingVOTreeList"
            resultType="org.springblade.modules.doorplateAddress.vo.DoorplateAddressVOTree">
        SELECT building_code as code,building_name as name
        FROM jczz_doorplate_address
        WHERE district_code =#{code}
        WHERE aoi_code =#{code}
          and building_code is not null and building_code !=''
        and building_name is not null and building_name !=''
        GROUP BY building_code,building_name
    </select>
    <!--根据社区查询街路巷集合-->
    <select id="getStreetRuList" resultType="org.springblade.common.node.TreeNode" >
        select street_ru_code as id,street_ru_name as name,2 as addressType from jczz_doorplate_address
        where 1=1
        and aoi_code is null
        <if test="name != null and name!=''">
            and nei_name = #{name}
        </if>
        <if test="code != null and code!=''">
            and nei_code = #{code}
        </if>
        group by street_ru_code,street_ru_name
    </select>
    <!--根据街路巷编号查询街路巷门牌名称集合-->
    <select id="getDoorplateNameList" resultType="org.springblade.modules.doorplateAddress.vo.FuncNode">
        select address_code as addressCode,doorplate_name as houseNo from jczz_doorplate_address
        where 1=1
        and street_ru_code = #{code}
        and nei_code = #{name}
        and aoi_code is null
    </select>
</mapper>
src/main/java/org/springblade/modules/doorplateAddress/service/IDoorplateAddressService.java
@@ -56,7 +56,7 @@
     * @param type 类型 1:社区  2:小区  3:楼栋  4:户室
     * @return
     */
    Object getHousesList(String name, String code, Integer type);
    Object getHousesList(String name, String code, Integer type,Integer addressType);
    /**
     * 查询房屋及出租详情信息
src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java
@@ -122,22 +122,35 @@
     * @return
     */
    @Override
    public Object getHousesList(String name, String code, Integer type) {
    public Object getHousesList(String name, String code, Integer type,Integer addressType) {
        List<TreeNode> list = new ArrayList<>();
        // 查小区,场所
        if (type==1){
            // 根据社区名称查询小区集合
            list  = baseMapper.getDistrictList(name,code);
        }
        // 查楼栋,场所
        // 查楼栋,街路巷
        if (type==2){
            // 根据社区名称查询楼栋集合
            list  = baseMapper.getBuildingList(name,code);
            // 判断 code 长度,如果 code 长度大于 12 则为小区查楼栋,否则则按社区查街路巷
            if (code.length()>12){
                // 根据社区名称查询楼栋集合
                list = baseMapper.getBuildingList(name, code);
            }else {
                // 查询街路巷
                list = baseMapper.getStreetRuList(name, code);
            }
        }
        // 查户室
        if (type==3){
            // 查询户室及住户相关信息,单元中包含住户
            return getUnitHouseholdList(name,code);
            // 判断地址类型
            if (addressType==1) {
                // 查询户室及住户相关信息,单元中包含住户
                return getUnitHouseholdList(name, code);
            }
            if (addressType==2) {
                // 根据街路巷编号查询街路巷门牌名称集合
                return baseMapper.getDoorplateNameList(name,code);
            }
        }
        return list;
    }