zhubaomin
2025-04-11 a1744d0bf7f0ad8ac861d672cffd7c710dac4e7e
pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportLastMapper.xml
@@ -351,6 +351,8 @@
    <select id="getUnderVoltIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoBatteryVolt">
        SELECT inta.id          AS intakeId,
               inta.name        AS intakeNum,
               inta.lng         AS lng,
               inta.lat         AS lat,
               blo.name         AS blockName,
               hou.battery_volt AS batteryVolt,
               hou.dt           AS getDate
@@ -393,6 +395,8 @@
    <select id="getSpecifiedSignalIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoSignalIntensity">
        SELECT inta.id          AS intakeId,
               inta.name        AS intakeNum,
               inta.lng         AS lng,
               inta.lat         AS lat,
               blo.name         AS blockName,
               hou.signal_value AS signValue,
               hou.dt           AS getDate
@@ -423,36 +427,40 @@
    <!--获取最近未报数的取水口数量-->
    <select id="getUnReportedIntakesCount" resultType="java.lang.Long">
        SELECT
            count(*)
        FROM  pr_intake pit
        LEFT JOIN `rm_on_hour_report_last` rohrl ON pit.id = rohrl.intake_id
        LEFT JOIN pr_controller pct ON pit.id = pct.intakeId
        WHERE  rohrl.id is NULL
        count(*)
        FROM pr_intake pit
        LEFT JOIN `rm_on_hour_report_last` rohrl
        ON (
            pit.id = rohrl.intake_id
        <if test="timeStart != null and timeStart != '' ">
            OR rohrl.rtu_dt  &lt; #{timeStart}
            AND rohrl.dt  > #{timeStart}
        </if>
<!--        <if test="timeStop != null and timeStop != '' ">-->
<!--            OR rohrl.rtu_dt &gt; #{timeStop}-->
<!--        </if>-->
        ORDER BY rtu_dt ASC
        )
        LEFT JOIN ba_block bbl ON bbl.id = pit.blockId
        LEFT JOIN pr_controller pct ON pit.id = pct.intakeId
        WHERE rohrl.id is NULL
    </select>
    <!--获取最近未报数的取水口-->
    <select id="getUnReportedIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoIntakeUnReported">
        SELECT
            pit.`name` intakeNum,
            pct.rtuAddr,
            rohrl.rtu_dt rtuDt
            pit.id      AS intakeId,
            pit.`name`  AS intakeNum,
            pit.lng     AS lng,
            pit.lat     AS lat,
            bbl.name    AS blockName,
            pct.rtuAddr AS rtuAddr
        FROM  pr_intake pit
        LEFT JOIN `rm_on_hour_report_last` rohrl ON pit.id = rohrl.intake_id
        LEFT JOIN `rm_on_hour_report_last` rohrl
        ON (
            pit.id = rohrl.intake_id
        <if test="timeStart != null and timeStart != '' ">
            AND rohrl.dt  > #{timeStart}
        </if>
        )
        LEFT JOIN ba_block bbl ON bbl.id = pit.blockId
        LEFT JOIN pr_controller pct ON pit.id = pct.intakeId
        WHERE  rohrl.id is NULL
        <if test="timeStart != null">
            OR rohrl.rtu_dt  &lt; #{timeStart}
        </if>
<!--        <if test="timeStop != null">-->
<!--            OR rohrl.rtu_dt &gt; #{timeStop}-->
<!--        </if>-->
        ORDER BY rtu_dt ASC
        ORDER BY pit.id DESC
        <trim prefix="limit ">
            <if test="start != null and count != null">
                #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER}