chengf
2026-03-11 b88a288f4f787b509463678e3cd9ccfa3f37014b
java110-db/src/main/resources/mapper/community/RoomServiceDaoImplMapper.xml
@@ -167,7 +167,12 @@
        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
        left join f_floor ff on ff.floor_id = bu.floor_id
        where 1 =1
        <if test="floorNum !=null and floorNum != ''">
            and ff.floor_num = #{floorNum}
        </if>
        <if test="feeCoefficient !=null and feeCoefficient != ''">
            and t.fee_coefficient= #{feeCoefficient}
        </if>
@@ -182,6 +187,18 @@
        </if>
        <if test="roomId !=null and roomId != ''">
            and t.room_id= #{roomId}
        </if>
        <if test="doorRoomNum !=null and doorRoomNum != ''">
            and t.door_room_num= #{doorRoomNum}
        </if>
        <if test="propertyType !=null and propertyType != ''">
            and t.property_type= #{propertyType}
        </if>
        <if test="propertyAddress !=null and propertyAddress != ''">
            and t.property_address= #{propertyAddress}
        </if>
        <if test="roadName !=null and roadName != ''">
            and t.road_name= #{roadName}
        </if>
        <if test="roomIds != null">
            and t.room_id in
@@ -200,6 +217,9 @@
        </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
@@ -354,9 +374,11 @@
        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
        <if test="communityId !=null and communityId != ''">
            AND t.`community_id` = #{communityId}
            AND t.`community_id` in (#{communityId},'9999')
        </if>
        and t.status_cd ='0'
        <if test="floorId !=null and floorId != ''">
@@ -376,6 +398,9 @@
        </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
@@ -424,9 +449,6 @@
            <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
@@ -743,7 +765,18 @@
        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
        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` =
@@ -760,6 +793,9 @@
            <foreach collection="communityIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="roadName !=null and roadName != ''">
            AND t.`road_name` = #{roadName}
        </if>
        <if test="floorId !=null and floorId != ''">
            and f.`floor_id`= #{floorId}
@@ -803,6 +839,9 @@
        <if test="roomNum !=null and roomNum != ''">
            and t.room_num= #{roomNum}
        </if>
        <if test="roomNumIsNull != null">
            and t.room_num = ''
        </if>
        <if test="roomNumLike !=null and roomNumLike != ''">
            and t.`room_num` like concat('%', #{roomNumLike},'%')
        </if>
@@ -818,6 +857,9 @@
        <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}
        </if>
@@ -832,6 +874,9 @@
        </if>
        <if test="roomSubType !=null and roomSubType != ''">
            and t.room_sub_type= #{roomSubType}
        </if>
        <if test="propertyType !=null and propertyType != ''">
            and t.property_type= #{propertyType}
        </if>
        <if test="states != null">
            and t.state in
@@ -973,4 +1018,32 @@
            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>