chengf
2026-01-27 b6184e2ddf3db37a94f7efb3b619bbc64642a292
java110-db/src/main/resources/mapper/community/RoomServiceDaoImplMapper.xml
@@ -1,20 +1,17 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="roomServiceDaoImpl">
    <!-- 保存小区房屋信息 add by wuxw 2018-07-03 -->
    <insert id="saveBusinessRoomInfo" parameterType="Map">
        insert into business_building_room(
        fee_coefficient,section,remark,user_id,room_id,layer,built_up_area,operate,room_num,unit_id,b_id,apartment,state,community_id,
        room_type,room_sub_type,room_rent,room_area
        ) values (
        #{feeCoefficient},#{section},#{remark},#{userId},#{roomId},#{layer},#{builtUpArea},#{operate},#{roomNum},#{unitId},#{bId},#{apartment},#{state},
        #{communityId},#{roomType},#{roomSubType},#{roomRent},#{roomArea}
        )
        insert into business_building_room(fee_coefficient, section, remark, user_id, room_id, layer, built_up_area,
        operate, room_num, unit_id, b_id, apartment, state, community_id,
        room_type, room_sub_type, room_rent, room_area)
        values (#{feeCoefficient}, #{section}, #{remark}, #{userId}, #{roomId}, #{layer}, #{builtUpArea}, #{operate},
        #{roomNum}, #{unitId}, #{bId}, #{apartment}, #{state},
        #{communityId}, #{roomType}, #{roomSubType}, #{roomRent}, #{roomArea})
    </insert>
    <!-- 查询小区房屋信息(Business) add by wuxw 2018-07-03 -->
    <select id="getBusinessRoomInfo" parameterType="Map" resultType="Map">
@@ -22,7 +19,11 @@
        userId,t.room_id,t.room_id
        roomId,t.layer,t.built_up_area,t.built_up_area builtUpArea,t.operate,t.room_num,t.room_num
        roomNum,t.unit_id,t.unit_id unitId,t.b_id,t.b_id bId,t.apartment,t.state,t.community_id,t.community_id
        communityId,t.room_type,t.room_type roomType,t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type roomSubType,t.room_rent roomRent,t.room_area roomArea
        communityId,t.room_type,t.room_type roomType,t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type
        roomSubType,
        t.room_rent roomRent,t.room_area roomArea
        t.door_room_num,t.property_type,t.property_address,t.house_certificate_no,
        t.door_room_num doorRoomNum,t.property_type propertyType,t.property_address propertyAddress,t.house_certificate_no houseCertificateNo
        from business_building_room t
        where 1 =1
        <if test="feeCoefficient !=null and feeCoefficient != ''">
@@ -33,9 +34,6 @@
        </if>
        <if test="remark !=null and remark != ''">
            and t.remark= #{remark}
        </if>
        <if test="userId !=null and userId != ''">
            and t.user_id= #{userId}
        </if>
        <if test="roomId !=null and roomId != ''">
            and t.room_id= #{roomId}
@@ -73,18 +71,16 @@
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        </if>
    </select>
    <!-- 保存小区房屋信息至 instance表中 add by wuxw 2018-07-03 -->
    <insert id="saveRoomInfoInstance" parameterType="Map">
        insert into building_room(
        fee_coefficient,section,status_cd,remark,user_id,room_id,layer,built_up_area,room_num,unit_id,b_id,apartment,state,community_id,
        room_type,room_sub_type,room_rent,room_area
        room_type,room_sub_type,room_rent,room_area,door_room_num,property_type,property_address,house_certificate_no
        ) select
        t.fee_coefficient,t.section,'0',t.remark,t.user_id,t.room_id,t.layer,t.built_up_area,t.room_num,t.unit_id,t.b_id,t.apartment,t.state,t.community_id,
        t.room_type,t.room_sub_type,t.room_rent,t.room_area
        t.room_type,t.room_sub_type,t.room_rent,t.room_area,door_room_num,property_type,property_address,house_certificate_no
        from business_building_room t where 1=1
        <if test="feeCoefficient !=null and feeCoefficient != ''">
            and t.fee_coefficient= #{feeCoefficient}
@@ -94,9 +90,6 @@
        </if>
        <if test="remark !=null and remark != ''">
            and t.remark= #{remark}
        </if>
        <if test="userId !=null and userId != ''">
            and t.user_id= #{userId}
        </if>
        <if test="roomId !=null and roomId != ''">
            and t.room_id= #{roomId}
@@ -132,9 +125,39 @@
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        </if>
        <choose>
            <when test="doorRoomNum != null and doorRoomNum != ''">
                and t.door_room_num = #{doorRoomNum}
            </when>
            <otherwise>
                and t.door_room_num = ''
            </otherwise>
        </choose>
        <choose>
            <when test="propertyType != null and propertyType != ''">
                and t.property_type = #{propertyType}
            </when>
            <otherwise>
                and t.property_type = ''
            </otherwise>
        </choose>
        <choose>
            <when test="propertyAddress != null and propertyAddress != ''">
                and t.property_address = #{propertyAddress}
            </when>
            <otherwise>
                and t.property_address = ''
            </otherwise>
        </choose>
        <choose>
            <when test="houseCertificateNo != null and houseCertificateNo != ''">
                and t.house_certificate_no = #{houseCertificateNo}
            </when>
            <otherwise>
                and t.house_certificate_no = ''
            </otherwise>
        </choose>
    </insert>
    <!-- 查询小区房屋信息 add by wuxw 2018-07-03 -->
    <select id="getRoomInfo" parameterType="Map" resultType="Map">
@@ -144,6 +167,7 @@
        bId,t.apartment,t.state,t.community_id,t.community_id communityId,t.room_type,t.room_type roomType,
        t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type roomSubType,t.room_rent roomRent,t.room_area roomArea
        from building_room t
        left join building_unit bu on bu.unit_id = t.unit_id
        where 1 =1
        <if test="feeCoefficient !=null and feeCoefficient != ''">
            and t.fee_coefficient= #{feeCoefficient}
@@ -157,13 +181,12 @@
        <if test="remark !=null and remark != ''">
            and t.remark= #{remark}
        </if>
        <if test="userId !=null and userId != ''">
            and t.user_id= #{userId}
        </if>
        <if test="roomId !=null and roomId != ''">
            and t.room_id= #{roomId}
        </if>
        <if test="roadName !=null and roadName != ''">
            and t.road_name= #{roadName}
        </if>
        <if test="roomIds != null">
            and t.room_id in
            <foreach collection="roomIds" item="item" open="(" close=")" separator=",">
@@ -181,6 +204,15 @@
        </if>
        <if test="unitId !=null and unitId != ''">
            and t.unit_id= #{unitId}
        </if>
        <if test="unitNum !=null and unitNum != ''">
            and bu.unit_num= #{unitNum}
        </if>
        <if test="unitIds != null">
            and t.unit_id in
            <foreach collection="unitIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="bId !=null and bId != ''">
            and t.b_id= #{bId}
@@ -204,10 +236,7 @@
        <if test="page != -1 and page != null">
            limit #{page},#{row}
        </if>
    </select>
    <!-- 修改小区房屋信息 add by wuxw 2018-07-03 -->
    <update id="updateRoomInfoInstance" parameterType="Map">
@@ -264,7 +293,6 @@
        <if test="bId !=null and bId != ''">
            and t.b_id= #{bId}
        </if>
    </update>
    <!-- 查询小区房屋数量 add by wuxw 2018-07-03 -->
@@ -284,9 +312,6 @@
        <if test="remark !=null and remark != ''">
            and t.remark= #{remark}
        </if>
        <if test="userId !=null and userId != ''">
            and t.user_id= #{userId}
        </if>
        <if test="roomId !=null and roomId != ''">
            and t.room_id= #{roomId}
        </if>
@@ -301,6 +326,12 @@
        </if>
        <if test="unitId !=null and unitId != ''">
            and t.unit_id= #{unitId}
        </if>
        <if test="unitIds != null">
            and t.unit_id in
            <foreach collection="unitIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="bId !=null and bId != ''">
            and t.b_id= #{bId}
@@ -320,11 +351,7 @@
        <if test="roomSubType !=null and roomSubType != ''">
            and t.room_sub_type= #{roomSubType}
        </if>
    </select>
    <!-- 查询小区房屋数量 add by wuxw 2018-07-03 -->
    <select id="queryRoomsByCommunityIdCount" parameterType="Map" resultType="Map">
@@ -334,13 +361,16 @@
        inner JOIN f_floor f on u.`floor_id` = f.`floor_id` AND f.`community_id` = t.`community_id` AND f.`status_cd` =
        '0'
        left join t_dict td on t.state = td.status_cd and td.table_name = 'building_room' and td.table_columns = 'state'
        left join building_owner_room_rel borr on borr.room_id = t.room_id
        left join building_owner bo on bo.owner_id = borr.owner_id
        WHERE 1 =1
        AND t.`community_id` = #{communityId}
        <if test="communityId !=null and communityId != ''">
            AND t.`community_id` = #{communityId}
        </if>
        and t.status_cd ='0'
        <if test="floorId !=null and floorId != ''">
            and f.`floor_id`= #{floorId}
        </if>
        <if test="feeCoefficient !=null and feeCoefficient != ''">
            and t.fee_coefficient= #{feeCoefficient}
        </if>
@@ -353,9 +383,17 @@
        <if test="remark !=null and remark != ''">
            and t.remark= #{remark}
        </if>
        <if test="roomId !=null and roomId != ''">
            and t.room_id= #{roomId}
        </if>
        <if test="ownerName != null">
            and bo.`name` = #{ownerName}
        </if>
        <if test="roomIds != null">
            and t.room_id in
            <foreach collection="roomIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="layer !=null and layer != ''">
            and t.layer= #{layer}
@@ -366,8 +404,17 @@
        <if test="roomNum !=null and roomNum != ''">
            and t.room_num= #{roomNum}
        </if>
        <if test="roomNumLike !=null and roomNumLike != ''">
            and t.`room_num` like concat('%', #{roomNumLike},'%')
        </if>
        <if test="unitId !=null and unitId != ''">
            and t.unit_id= #{unitId}
        </if>
        <if test="unitIds != null">
            and t.unit_id in
            <foreach collection="unitIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="bId !=null and bId != ''">
            and t.b_id= #{bId}
@@ -393,15 +440,18 @@
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        </if>
        <if test="communityIds != null">
            and t.community_id in
            <foreach collection="communityIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="floorNum !=null and floorNum != ''">
            and f.`floor_num`= #{floorNum}
        </if>
        <if test="unitNum !=null and unitNum != ''">
            and u.unit_num= #{unitNum}
        </if>
    </select>
    <!-- 查询小区房屋数量 add by wuxw 2018-07-03 -->
@@ -431,9 +481,6 @@
        <if test="remark !=null and remark != ''">
            and t.remark= #{remark}
        </if>
        <if test="userId !=null and userId != ''">
            and t.user_id= #{userId}
        </if>
        <if test="roomId !=null and roomId != ''">
            and t.room_id= #{roomId}
        </if>
@@ -448,6 +495,12 @@
        </if>
        <if test="unitId !=null and unitId != ''">
            and t.unit_id= #{unitId}
        </if>
        <if test="unitIds != null">
            and t.unit_id in
            <foreach collection="unitIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="bId !=null and bId != ''">
            and t.b_id= #{bId}
@@ -468,8 +521,6 @@
            and t.community_id= #{communityId}
        </if>
        and borr.`room_id` is null
    </select>
    <!-- 查询小区房屋数量 add by wuxw 2018-07-03 -->
@@ -499,9 +550,6 @@
        <if test="remark !=null and remark != ''">
            and t.remark= #{remark}
        </if>
        <if test="userId !=null and userId != ''">
            and t.user_id= #{userId}
        </if>
        <if test="roomId !=null and roomId != ''">
            and t.room_id= #{roomId}
        </if>
@@ -516,6 +564,12 @@
        </if>
        <if test="unitId !=null and unitId != ''">
            and t.unit_id= #{unitId}
        </if>
        <if test="unitIds != null">
            and t.unit_id in
            <foreach collection="unitIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="bId !=null and bId != ''">
            and t.b_id= #{bId}
@@ -536,8 +590,6 @@
            and t.community_id= #{communityId}
        </if>
        AND borr.`room_id` is not null
    </select>
    <!-- 查询小区房屋信息 add by wuxw 2018-07-03 -->
@@ -545,8 +597,10 @@
        SELECT t.fee_coefficient,t.fee_coefficient feeCoefficient,t.section,t.status_cd,t.status_cd
        statusCd,t.remark,t.user_id,
        t.user_id userId,t.room_id,t.room_id roomId,t.layer,t.built_up_area,t.built_up_area builtUpArea,t.room_num,
        t.room_num roomNum,t.unit_id,t.unit_id unitId,t.b_id,t.b_id bId,t.apartment,t.state,u.`unit_num` unitNum,f.floor_num floorNum
        ,t.room_type roomType,t.room_type,t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type roomSubType,t.room_rent roomRent,t.room_area roomArea
        t.room_num roomNum,t.unit_id,t.unit_id unitId,t.b_id,t.b_id bId,t.apartment,t.state,u.`unit_num`
        unitNum,f.floor_num floorNum
        ,t.room_type roomType,t.room_type,t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type
        roomSubType,t.room_rent roomRent,t.room_area roomArea
        FROM
        building_room t
        INNER JOIN building_unit u on t.`unit_id` = u.`unit_id` and u.`status_cd` = '0'
@@ -570,9 +624,6 @@
        <if test="remark !=null and remark != ''">
            and t.remark= #{remark}
        </if>
        <if test="userId !=null and userId != ''">
            and t.user_id= #{userId}
        </if>
        <if test="roomId !=null and roomId != ''">
            and t.room_id= #{roomId}
        </if>
@@ -587,6 +638,12 @@
        </if>
        <if test="unitId !=null and unitId != ''">
            and t.unit_id= #{unitId}
        </if>
        <if test="unitIds != null">
            and t.unit_id in
            <foreach collection="unitIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="bId !=null and bId != ''">
            and t.b_id= #{bId}
@@ -610,7 +667,6 @@
        <if test="page != -1 and page != null">
            limit #{page},#{row}
        </if>
    </select>
    <!-- 查询小区房屋信息 add by wuxw 2018-07-03 -->
@@ -619,7 +675,8 @@
        statusCd,t.remark,t.user_id,
        t.user_id userId,t.room_id,t.room_id roomId,t.layer,t.built_up_area,t.built_up_area builtUpArea,t.room_num,
        t.room_num roomNum,t.unit_id,t.unit_id unitId,t.b_id,t.b_id bId,t.apartment,t.state,u.`unit_num` unitNum,
        t.room_type roomType,t.room_type,t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type roomSubType,t.room_rent roomRent,t.room_area roomArea
        t.room_type roomType,t.room_type,t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type roomSubType,t.room_rent
        roomRent,t.room_area roomArea,t.door_room_num doorRoomNum,t.property_type propertyType,t.property_address propertyAddress,t.house_certificate_no houseCertificateNo
        FROM
        building_room t
        INNER JOIN building_unit u on t.`unit_id` = u.`unit_id` and u.`status_cd` = '0'
@@ -643,9 +700,6 @@
        <if test="remark !=null and remark != ''">
            and t.remark= #{remark}
        </if>
        <if test="userId !=null and userId != ''">
            and t.user_id= #{userId}
        </if>
        <if test="roomId !=null and roomId != ''">
            and t.room_id= #{roomId}
        </if>
@@ -660,6 +714,12 @@
        </if>
        <if test="unitId !=null and unitId != ''">
            and t.unit_id= #{unitId}
        </if>
        <if test="unitIds != null">
            and t.unit_id in
            <foreach collection="unitIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="bId !=null and bId != ''">
            and t.b_id= #{bId}
@@ -683,9 +743,7 @@
        <if test="page != -1 and page != null">
            limit #{page},#{row}
        </if>
    </select>
    <!-- 查询小区房屋信息 add by wuxw 2018-07-03 -->
    <select id="getRoomInfoByCommunityId" parameterType="Map" resultType="Map">
@@ -695,15 +753,36 @@
        t.room_num roomNum,t.unit_id,t.unit_id unitId,t.b_id,t.b_id bId,t.apartment,t.state,u.`unit_num` unitNum,
        u.unit_id unitId,f.floor_id floorId,f.floor_num floorNum,f.floor_area floorArea,u.unit_area unitArea,td.name
        stateName,t.room_type roomType,t.room_type,t.`community_id` communityId,td1.`name` roomSubTypeName
        ,t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type roomSubType,t.room_rent roomRent,t.room_area roomArea
        ,t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type roomSubType,t.room_rent roomRent,t.room_area roomArea,
         t.door_room_num doorRoomNum,t.property_type propertyType,t.property_address propertyAddress,t.house_certificate_no houseCertificateNo,
        concat(f.floor_num,'-',u.unit_num,'-',t.room_num) roomName,
        t.property_type propertyType,
        t.property_address propertyAddress,
        t.house_certificate_no houseCertificateNo,
        t.road_name roadName,
        t.buy_date buyDate,
        t.sell_date sellDate,
        t.sell_state sellState,
        t.room_buyer roomBuyer,
        t.eoc eoc,
        t.property_certificate_no propertyCertificateNo,
        t.is_ev_charger_installed isEvChargerInstalled
        FROM building_room t
        inner join building_unit u on t.`unit_id` = u.`unit_id` and u.`status_cd` = '0'
        inner JOIN f_floor f on u.`floor_id` = f.`floor_id` AND f.`community_id` = t.`community_id` AND f.`status_cd` = '0'
        inner JOIN f_floor f on u.`floor_id` = f.`floor_id` AND f.`community_id` = t.`community_id` AND f.`status_cd` =
        '0'
        left join t_dict td on t.state = td.status_cd and td.table_name = 'building_room' and td.table_columns = 'state'
        left join t_dict td1 on t.room_sub_type = td1.status_cd and td1.table_name = 'building_room' and td1.table_columns = 'room_sub_type'
        left join t_dict td1 on t.room_sub_type = td1.status_cd and td1.table_name = 'building_room' and
        td1.table_columns = 'room_sub_type'
        WHERE 1 =1
        <if test="floorId !=null and floorId != ''">
        <if test="communityId !=null and communityId != ''">
            AND t.`community_id` = #{communityId}
        </if>
        <if test="communityIds != null">
            and t.community_id in
            <foreach collection="communityIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="floorId !=null and floorId != ''">
            and f.`floor_id`= #{floorId}
@@ -747,11 +826,23 @@
        <if test="roomNum !=null and roomNum != ''">
            and t.room_num= #{roomNum}
        </if>
        <if test="roomNumLike !=null and roomNumLike != ''">
            and t.`room_num` like concat('%', #{roomNumLike},'%')
        </if>
        <if test="unitId !=null and unitId != ''">
            and t.unit_id= #{unitId}
        </if>
        <if test="unitIds != null">
            and t.unit_id in
            <foreach collection="unitIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="unitNum !=null and unitNum != ''">
            and u.unit_num= #{unitNum}
        </if>
        <if test="doorRoomNum !=null and doorRoomNum != ''">
            and t.door_room_num= #{doorRoomNum}
        </if>
        <if test="bId !=null and bId != ''">
            and t.b_id= #{bId}
@@ -774,14 +865,11 @@
                #{item}
            </foreach>
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        </if>
        order by f.floor_num ,u.unit_num,t.room_num
        order by f.seq,u.unit_num,CONVERT(t.layer,SIGNED),CONVERT(t.room_num,SIGNED) asc
        <!-- order by t.create_time desc-->
        <if test="page != -1 and page != null">
            limit #{page},#{row}
        </if>
    </select>
    <!-- 根据业主查询房屋信息 -->
@@ -792,7 +880,8 @@
        t.user_id userId,t.room_id,t.room_id roomId,t.layer,t.built_up_area,t.built_up_area builtUpArea,t.room_num,
        t.room_num roomNum,t.unit_id,t.unit_id unitId,t.b_id,t.b_id bId,t.apartment,t.state,u.`unit_num`
        unitNum,f.`floor_num` floorNum,t.room_type roomType,t.room_type,f.floor_id floorId
        ,t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type roomSubType,t.room_rent roomRent,t.room_area roomArea
        ,t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type roomSubType,t.room_rent roomRent,t.room_area
        roomArea,bo.name ownerName
        FROM
        building_owner bo,building_room t,building_owner_room_rel borr,building_unit u,f_floor f
        WHERE
@@ -820,12 +909,15 @@
        <if test="name !=null and name != ''">
            and bo.name= #{name}
        </if>
        <if test="ownerNameLike !=null and ownerNameLike != ''">
            and bo.name like concat('%',#{ownerNameLike},'%')
        </if>
        <if test="link !=null and link != ''">
            and bo.link= #{link}
        </if>
        <!--        <if test="statusCd !=null and statusCd != ''">-->
        <!--            and bo.status_cd= #{statusCd}-->
        <!--        </if>-->
        <!--<if test="statusCd !=null and statusCd != ''">
            and bo.status_cd= #{statusCd}
        </if>-->
        <if test="remark !=null and remark != ''">
            and bo.remark= #{remark}
        </if>
@@ -834,9 +926,6 @@
        </if>
        <if test="bId !=null and bId != ''">
            and bo.b_id= #{bId}
        </if>
        <if test="userId !=null and userId != ''">
            and bo.user_id= #{userId}
        </if>
        <if test="age !=null and age != ''">
            and bo.age= #{age}
@@ -847,8 +936,8 @@
        <if test="ownerTypeCd !=null and ownerTypeCd != ''">
            and bo.owner_type_cd= #{ownerTypeCd}
        </if>
        order by f.floor_num,u.unit_num,t.room_num desc
    </select>
    <!-- 查询小区房屋信息 add by wuxw 2018-07-03 -->
    <select id="getRoomInfos" parameterType="Map" resultType="Map">
@@ -888,6 +977,12 @@
        <if test="unitId !=null and unitId != ''">
            and t.unit_id= #{unitId}
        </if>
        <if test="unitIds != null">
            and t.unit_id in
            <foreach collection="unitIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
@@ -903,6 +998,33 @@
        <if test="page != -1 and page != null">
            limit #{page},#{row}
        </if>
    </select>
    <select id="queryRoomsAsReport" parameterType="Map" resultType="Map">
        select br.property_type,bf.floor_num,bu.unit_num,br.room_num,br.door_room_num,br.property_address,br.room_area,bo.`name`,br.room_id from building_room br
         left join building_unit bu on br.unit_id = bu.unit_id
         inner join f_floor bf on bu.floor_id = bf.floor_id
         left join building_owner_room_rel borr on borr.room_id = br.room_id
         left join building_owner bo on bo.owner_id = borr.owner_id
        where 1 = 1
            <if test="communityId != null">
                and br.community_id = #{communityId}
            </if>
        <if test="floorNum != null">
            and bf.floor_num = #{floorNum}
        </if>
        <if test="unitNum != null">
            and bu.unit_num = #{unitNum}
        </if>
        <if test="roomNum != null">
            and br.room_num = #{roomNum}
        </if>
        <if test="ownerName != null">
            and bo.`name` = #{ownerName}
        </if>
        <if test="page != -1 and page != null">
            limit #{page},#{row}
        </if>
    </select>
</mapper>