chengf
2026-01-27 b6184e2ddf3db37a94f7efb3b619bbc64642a292
java110-db/src/main/resources/mapper/community/RoomServiceDaoImplMapper.xml
old mode 100644 new mode 100755
@@ -1,26 +1,29 @@
<?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
        ) values (
        #{feeCoefficient},#{section},#{remark},#{userId},#{roomId},#{layer},#{builtUpArea},#{operate},#{roomNum},#{unitId},#{bId},#{apartment},#{state},
        #{communityId}
        )
        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">
        select t.fee_coefficient,t.fee_coefficient feeCoefficient,t.section,t.remark,t.user_id,t.user_id userId,t.room_id,t.room_id
        select t.fee_coefficient,t.fee_coefficient feeCoefficient,t.section,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.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
        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 != ''">
@@ -31,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}
@@ -62,19 +62,25 @@
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
        <if test="roomType !=null and roomType != ''">
            and t.room_type= #{roomType}
        </if>
        <if test="roomSubType !=null and roomSubType != ''">
            and t.room_sub_type= #{roomSubType}
        </if>
        <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
        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,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.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,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}
@@ -84,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}
@@ -113,20 +116,58 @@
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
        <if test="roomType !=null and roomType != ''">
            and t.room_type= #{roomType}
        </if>
        <if test="roomSubType !=null and roomSubType != ''">
            and t.room_sub_type= #{roomSubType}
        </if>
        <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">
        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,t.community_id,t.community_id communityId
        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}
@@ -140,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=",">
@@ -165,6 +205,15 @@
        <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}
        </if>
@@ -174,6 +223,12 @@
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
        <if test="roomType !=null and roomType != ''">
            and t.room_type= #{roomType}
        </if>
        <if test="roomSubType !=null and roomSubType != ''">
            and t.room_sub_type= #{roomSubType}
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        </if>
@@ -181,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">
@@ -192,7 +244,7 @@
        <if test="newBId != null and newBId != ''">
            ,t.b_id = #{newBId}
        </if>
        <if test="feeCoefficient !=null and feeCoefficient != ''">
        <if test="feeCoefficient !=null">
            , t.fee_coefficient= #{feeCoefficient}
        </if>
        <if test="section !=null and section != ''">
@@ -222,6 +274,15 @@
        <if test="state !=null and state != ''">
            , t.state= #{state}
        </if>
        <if test="roomSubType !=null and roomSubType != ''">
            , t.room_sub_type= #{roomSubType}
        </if>
        <if test="roomRent !=null and roomRent != ''">
            , t.room_rent= #{roomRent}
        </if>
        <if test="roomArea !=null and roomArea != ''">
            , t.room_area= #{roomArea}
        </if>
        where 1=1
        <if test="roomId !=null and roomId != ''">
            and t.room_id= #{roomId}
@@ -232,7 +293,6 @@
        <if test="bId !=null and bId != ''">
            and t.b_id= #{bId}
        </if>
    </update>
    <!-- 查询小区房屋数量 add by wuxw 2018-07-03 -->
@@ -252,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>
@@ -270,6 +327,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="bId !=null and bId != ''">
            and t.b_id= #{bId}
        </if>
@@ -282,26 +345,32 @@
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        </if>
        <if test="roomType !=null and roomType != ''">
            and t.room_type= #{roomType}
        </if>
        <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">
        select count(1) count
        FROM building_room t,building_unit u,f_floor f
        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'
        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.`unit_id` = u.`unit_id`
        AND u.`floor_id` = f.`floor_id`
        AND f.`community_id` = t.`community_id`
        AND u.`status_cd` = '0'
        AND f.`status_cd` = '0'
        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>
@@ -314,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}
@@ -327,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}
@@ -339,18 +425,33 @@
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
        <if test="roomType !=null and roomType != ''">
            and t.room_type= #{roomType}
        </if>
        <if test="roomSubType !=null and roomSubType != ''">
            and t.room_sub_type= #{roomSubType}
        </if>
        <if test="states != null">
            and t.state in
            <foreach collection="states" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <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 -->
@@ -360,7 +461,8 @@
        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 building_owner_room_rel borr on borr.`room_id` = t.`room_id` and borr.`status_cd` = '0'
        WHERE 1 =1
        AND t.`community_id` = #{communityId}
@@ -379,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>
@@ -397,6 +496,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="bId !=null and bId != ''">
            and t.b_id= #{bId}
        </if>
@@ -406,12 +511,16 @@
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
        <if test="roomType !=null and roomType != ''">
            and t.room_type= #{roomType}
        </if>
        <if test="roomSubType !=null and roomSubType != ''">
            and t.room_sub_type= #{roomSubType}
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        </if>
        and borr.`room_id` is null
    </select>
    <!-- 查询小区房屋数量 add by wuxw 2018-07-03 -->
@@ -421,7 +530,8 @@
        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 building_owner_room_rel borr on borr.`room_id` = t.`room_id` and borr.`status_cd` = '0'
        WHERE 1 =1
        AND t.`community_id` = #{communityId}
@@ -440,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>
@@ -458,6 +565,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="bId !=null and bId != ''">
            and t.b_id= #{bId}
        </if>
@@ -466,24 +579,33 @@
        </if>
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
        <if test="roomType !=null and roomType != ''">
            and t.room_type= #{roomType}
        </if>
        <if test="roomSubType !=null and roomSubType != ''">
            and t.room_sub_type= #{roomSubType}
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        </if>
        AND borr.`room_id` is not null
    </select>
    <!-- 查询小区房屋信息 add by wuxw 2018-07-03 -->
    <select id="getRoomInfoWithOutSellByCommunityId" parameterType="Map" resultType="Map">
        SELECT t.fee_coefficient,t.fee_coefficient feeCoefficient,t.section,t.status_cd,t.status_cd statusCd,t.remark,t.user_id,
        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
        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'
        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 building_owner_room_rel borr on borr.`room_id` = t.`room_id` and borr.`status_cd` = '0'
        WHERE 1 =1
        AND t.`community_id` = #{communityId}
@@ -502,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>
@@ -520,6 +639,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="bId !=null and bId != ''">
            and t.b_id= #{bId}
        </if>
@@ -528,6 +653,12 @@
        </if>
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
        <if test="roomType !=null and roomType != ''">
            and t.room_type= #{roomType}
        </if>
        <if test="roomSubType !=null and roomSubType != ''">
            and t.room_sub_type= #{roomSubType}
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
@@ -536,18 +667,21 @@
        <if test="page != -1 and page != null">
            limit #{page},#{row}
        </if>
    </select>
    <!-- 查询小区房屋信息 add by wuxw 2018-07-03 -->
    <select id="getRoomInfoWithSellByCommunityId" parameterType="Map" resultType="Map">
        SELECT t.fee_coefficient,t.fee_coefficient feeCoefficient,t.section,t.status_cd,t.status_cd statusCd,t.remark,t.user_id,
        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
        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.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'
        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 building_owner_room_rel borr on borr.`room_id` = t.`room_id` and borr.`status_cd` = '0'
        WHERE 1 =1
        AND t.`community_id` = #{communityId}
@@ -566,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>
@@ -584,6 +715,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="bId !=null and bId != ''">
            and t.b_id= #{bId}
        </if>
@@ -593,6 +730,12 @@
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
        <if test="roomType !=null and roomType != ''">
            and t.room_type= #{roomType}
        </if>
        <if test="roomSubType !=null and roomSubType != ''">
            and t.room_sub_type= #{roomSubType}
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        </if>
@@ -600,24 +743,47 @@
        <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">
        SELECT t.fee_coefficient,t.fee_coefficient feeCoefficient,t.section,t.status_cd,t.status_cd statusCd,t.remark,t.user_id,
        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,
        u.unit_id unitId,f.floor_id floorId,f.floor_num floorNum,f.floor_area floorArea,u.unit_area unitArea
        FROM building_room t,building_unit u,f_floor f
        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.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'
        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'
        WHERE 1 =1
        AND t.`unit_id` = u.`unit_id`
        AND u.`floor_id` = f.`floor_id`
        AND f.`community_id` = t.`community_id`
        AND u.`status_cd` = '0'
        AND f.`status_cd` = '0'
        AND t.`community_id` = #{communityId}
        <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}
        </if>
@@ -648,17 +814,35 @@
        <if test="layer !=null and layer != ''">
            and t.layer= #{layer}
        </if>
        <if test="layers != null">
            and t.layer in
            <foreach collection="layers" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="builtUpArea !=null and builtUpArea != ''">
            and t.built_up_area= #{builtUpArea}
        </if>
        <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}
@@ -669,22 +853,35 @@
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        <if test="roomType !=null and roomType != ''">
            and t.room_type= #{roomType}
        </if>
        <if test="roomSubType !=null and roomSubType != ''">
            and t.room_sub_type= #{roomSubType}
        </if>
        <if test="states != null">
            and t.state in
            <foreach collection="states" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        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>
    <!-- 根据业主查询房屋信息 -->
    <select id="getRoomInfoByOwner" parameterType="Map" resultType="Map">
        SELECT
        t.fee_coefficient,t.fee_coefficient feeCoefficient,t.section,t.status_cd,t.status_cd statusCd,t.remark,t.user_id,
        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
        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,bo.name ownerName
        FROM
        building_owner bo,building_room t,building_owner_room_rel borr,building_unit u,f_floor f
        WHERE
@@ -694,22 +891,33 @@
        AND u.`floor_id` = f.`floor_id`
        AND u.`status_cd` = '0'
        AND f.`status_cd` = '0'
        AND borr.`status_cd` = '0'
        AND t.`status_cd` = '0'
        AND bo.`status_cd` = '0'
        AND bo.`owner_type_cd` = '1001'
        <if test="roomType !=null and roomType != ''">
            and t.room_type= #{roomType}
        </if>
        <if test="roomSubType !=null and roomSubType != ''">
            and t.room_sub_type= #{roomSubType}
        </if>
        <if test="statusCd !=null and statusCd != ''">
            and borr.`status_cd` = #{statusCd}
        </if>
        <if test="sex !=null ">
            and bo.sex= #{sex}
        </if>
        <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 != ''">
        <!--<if test="statusCd !=null and statusCd != ''">
            and bo.status_cd= #{statusCd}
        </if>
        </if>-->
        <if test="remark !=null and remark != ''">
            and bo.remark= #{remark}
        </if>
@@ -718,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}
@@ -731,18 +936,22 @@
        <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">
        SELECT t.fee_coefficient,t.fee_coefficient feeCoefficient,t.section,t.status_cd,t.status_cd statusCd,t.remark,t.user_id,
        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
        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,f.floor_num floorNum
        ,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'
        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'
        WHERE t.status_cd= '0'
        <if test="floorId !=null and floorId != ''">
            and f.`floor_id`= #{floorId}
@@ -768,8 +977,20 @@
        <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>
        <if test="roomType !=null and roomType != ''">
            and t.room_type= #{roomType}
        </if>
        <if test="roomSubType !=null and roomSubType != ''">
            and t.room_sub_type= #{roomSubType}
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
@@ -777,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>