guoshilong
2023-11-09 66ee93f5df8418e065eb2d36e18157a4477386c7
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/jcsb/mapper/DbReporttMapper.xml
@@ -98,7 +98,8 @@
        </if>
        ORDER BY reportTime ASC
    </select>
    <select id="getYearList" resultType="cn.gistack.sm.jcsb.vo.DbReportVO">
    <select id="getMonthList" resultType="cn.gistack.sm.jcsb.vo.DbReportVO">
        SELECT
        SDR.RESERVOIR_NAME,
        SDR.RESERVOIR_ID,
@@ -129,8 +130,7 @@
        GROUP BY RESERVOIR_NAME,RESERVOIR_ID,TYPE,STATION_ID,acb."cd_nm",DATE_FORMAT(RECORD_TIME,'%Y-%m')
        ORDER BY reportTime ASC
    </select>
    <select id="getYearListWy" resultType="cn.gistack.sm.jcsb.vo.DbReportVO">
    <select id="getMonthListWy" resultType="cn.gistack.sm.jcsb.vo.DbReportVO">
        SELECT
        SDR.RESERVOIR_NAME,
        SDR.RESERVOIR_ID,
@@ -163,4 +163,69 @@
        GROUP BY RESERVOIR_NAME,RESERVOIR_ID,TYPE,STATION_ID,awcb."cd_nm",DATE_FORMAT(RECORD_TIME,'%Y-%m')
        ORDER BY reportTime ASC
    </select>
    <select id="getYearList" resultType="cn.gistack.sm.jcsb.vo.DbReportVO">
        SELECT
        SDR.RESERVOIR_NAME,
        SDR.RESERVOIR_ID,
        SDR.TYPE,
        SDR.STATION_ID,
        acb."cd_nm" as stationName,
        DATE_FORMAT(SDR.RECORD_TIME,'%Y') as reportTime,
        AVG(SDR.val) as val
        FROM SM_DB_REPORT SDR
        LEFT JOIN SJZT_MD."att_cd_base" acb    ON acb."res_cd" = sdr.reservoir_id and acb."cd" = SDR.station_id
        WHERE SDR.is_deleted = 0
        <if test="vo.type != null and vo.type != ''">
            AND  SDR.TYPE = #{vo.type}
            AND acb."cd_type" = #{vo.type}
        </if>
        <if test="vo.startTime !=null and vo.startTime !=''">
            AND DATE_FORMAT(sdr.record_time,'%Y') &gt;=  DATE_FORMAT(#{vo.startTime} ,'%Y')
        </if>
        <if test="vo.endTime !=null and vo.endTime !=''">
            AND DATE_FORMAT(sdr.record_time,'%Y') &lt;=  DATE_FORMAT(#{vo.endTime} ,'%Y')
        </if>
        <if test="vo.ch != null and vo.ch != ''">
            AND acb."ch" = #{vo.ch}
        </if>
        <if test="vo.reservoirId != null and vo.reservoirId !='' ">
            AND sdr.reservoir_id = #{vo.reservoirId}
        </if>
        GROUP BY RESERVOIR_NAME,RESERVOIR_ID,TYPE,STATION_ID,acb."cd_nm",DATE_FORMAT(RECORD_TIME,'%Y')
        ORDER BY reportTime ASC
    </select>
    <select id="getYearListWy" resultType="cn.gistack.sm.jcsb.vo.DbReportVO">
        SELECT
        SDR.RESERVOIR_NAME,
        SDR.RESERVOIR_ID,
        SDR.TYPE,
        SDR.STATION_ID,
        awcb."cd_nm" as stationName,
        DATE_FORMAT(SDR.RECORD_TIME,'%Y') as reportTime,
        AVG(SDR.de_val) as deVal,
        AVG(SDR.dn_val) as dnVal,
        AVG(SDR.du_val) as duVal
        FROM SM_DB_REPORT SDR
        LEFT JOIN SJZT_MD."att_wy_cd_base" awcb    ON awcb."res_cd" = sdr.reservoir_id and awcb."cd" = SDR.station_id
        WHERE SDR.is_deleted = 0
        <if test="vo.type != null and vo.type != ''">
            AND  SDR.TYPE = #{vo.type}
            AND awcb."cd_type" = #{vo.type}
        </if>
        <if test="vo.startTime !=null and vo.startTime !=''">
            AND DATE_FORMAT(sdr.record_time,'%Y') &gt;=  DATE_FORMAT(#{vo.startTime} ,'%Y')
        </if>
        <if test="vo.endTime !=null and vo.endTime !=''">
            AND DATE_FORMAT(sdr.record_time,'%Y') &lt;=  DATE_FORMAT(#{vo.endTime} ,'%Y')
        </if>
        <if test="vo.ch != null and vo.ch != ''">
            AND awcb."ch" = #{vo.ch}
        </if>
        <if test="vo.reservoirId != null and vo.reservoirId !='' ">
            AND sdr.reservoir_id = #{vo.reservoirId}
        </if>
        GROUP BY RESERVOIR_NAME,RESERVOIR_ID,TYPE,STATION_ID,awcb."cd_nm",DATE_FORMAT(RECORD_TIME,'%Y')
        ORDER BY reportTime ASC
    </select>
</mapper>