liurunyu
2024-10-23 1061e15efcc66ba0ae5e95ae0af5c41b6104dea7
为”远程监测“功能查询在线取水口和不在线取水口SQL语句修改
1个文件已修改
26 ■■■■ 已修改文件
pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml
@@ -532,7 +532,7 @@
        SELECT COUNT(*) AS recordCount
        FROM pr_intake inta
        INNER JOIN pr_controller con ON con.intakeId = inta.id
        <if test="onLineMap != null and onLineMap !='' and isOnLine != null">
        <if test="onLineMap != null and onLineMap !='' and onLineMap != '[]' and isOnLine != null">
            LEFT JOIN JSON_TABLE(
                <!--'[{"rtuAddr":"37142501020100215","isOnLine":true},{"rtuAddr":"4000004","isOnLine":true},{"rtuAddr":"dy20240325","isOnLine":false}]',-->
                #{onLineMap},
@@ -543,8 +543,15 @@
            ) rtus ON con.rtuAddr = rtus.rtuAddr
        </if>
        WHERE con.intakeId is not null
        <if test="isOnLine != null">
            AND rtus.isOnLine = #{isOnLine}
        <if test="isOnLine != null and isOnLine == false">
            <if test="onLineMap != null and onLineMap !='' and onLineMap != '[]'">
                AND rtus.isOnLine = false OR rtus.rtuAddr IS NULL
            </if>
        </if>
        <if test="isOnLine != null and isOnLine == true">
            <if test="onLineMap != null and onLineMap !='' and onLineMap != '[]'">
                AND rtus.isOnLine = true
            </if>
        </if>
        <if test="intakeNum != null and intakeNum != ''">
            AND inta.name = #{intakeNum}
@@ -577,7 +584,7 @@
            WHERE (alarm_loss = 1 OR alarm_battery_volt = 1 OR alarm_valve = 1 OR alarm_water_meter_fault = 1)
            AND dt >= DATE_SUB(NOW(), INTERVAL 12 HOUR)
        ) alarm ON alarm.intakeId = inta.id
        <if test="onLineMap != null and onLineMap !='' and isOnLine != null">
        <if test="onLineMap != null and onLineMap !='' and onLineMap != '[]' and isOnLine != null">
            LEFT JOIN JSON_TABLE(
                <!--'[{"rtuAddr":"37142501020100215","isOnLine":true},{"rtuAddr":"4000004","isOnLine":true},{"rtuAddr":"dy20240325","isOnLine":false}]',-->
                #{onLineMap},
@@ -588,8 +595,15 @@
            ) rtus ON con.rtuAddr = rtus.rtuAddr
        </if>
        WHERE con.intakeId is not null
        <if test="isOnLine != null">
            AND rtus.isOnLine = #{isOnLine}
        <if test="isOnLine != null and isOnLine == false">
            <if test="onLineMap != null and onLineMap !='' and onLineMap != '[]'">
                AND rtus.isOnLine = false OR rtus.rtuAddr IS NULL
            </if>
        </if>
        <if test="isOnLine != null and isOnLine == true">
            <if test="onLineMap != null and onLineMap !='' and onLineMap != '[]'">
                AND rtus.isOnLine = true
            </if>
        </if>
        <if test="intakeNum != null and intakeNum != ''">
            AND inta.name = #{intakeNum}