Commit b7170d05 authored by ZWT's avatar ZWT

得到的

parent 79854b6f
...@@ -67,12 +67,12 @@ ...@@ -67,12 +67,12 @@
ID=#{id} ID=#{id}
</select> </select>
<insert id="batchInsert" parameterType="list"> <insert id="batchInsert" parameterType="list" databaseId="MySQL">
INSERT INTO SPACE_YESTERDAY_GREEN_RATE (ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME, MODIFY_BY_ID, INSERT INTO SPACE_YESTERDAY_GREEN_RATE (ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME, MODIFY_BY_ID,
MODIFY_BY_NAME, MODIFY_TIME, WELLHEAD_ID, WELL_NUMBER, RECORD_DATE, START_SEQ, WELL_TOTAL_POWER_ACTUAL, MODIFY_BY_NAME, MODIFY_TIME, WELLHEAD_ID, WELL_NUMBER, RECORD_DATE, START_SEQ, WELL_TOTAL_POWER_ACTUAL,
WELL_TOTAL_POWER_OPTIMIZE, WELL_GREEN_POWER_ACTUAL, WELL_GREEN_POWER_OPTIMIZE, GREEN_POWER_RATE_ACTUAL, WELL_TOTAL_POWER_OPTIMIZE, WELL_GREEN_POWER_ACTUAL, WELL_GREEN_POWER_OPTIMIZE, GREEN_POWER_RATE_ACTUAL,
GREEN_POWER_RATE_OPTIMIZE, LINE_NAME, POWER_COST_ACTUAL, POWER_COST_OPTIMIZE, CITY_COST_ACTUAL, GREEN_POWER_RATE_OPTIMIZE, LINE_NAME, POWER_COST_ACTUAL, POWER_COST_OPTIMIZE, CITY_COST_ACTUAL,
CITY_COST_OPTIMIZE) CITY_COST_OPTIMIZE, IS_DELETED)
VALUES VALUES
<foreach collection="list" item="item" separator=","> <foreach collection="list" item="item" separator=",">
( (
...@@ -97,8 +97,45 @@ ...@@ -97,8 +97,45 @@
#{item.powerCostActual}, #{item.powerCostActual},
#{item.powerCostOptimize}, #{item.powerCostOptimize},
#{item.cityCostActual}, #{item.cityCostActual},
#{item.cityCostOptimize} #{item.cityCostOptimize},
1
) )
</foreach> </foreach>
</insert> </insert>
<insert id="batchInsert" parameterType="list" databaseId="Oracle">
INSERT ALL
<foreach collection="list" item="item">
INTO SPACE_YESTERDAY_GREEN_RATE (ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME, MODIFY_BY_ID,
MODIFY_BY_NAME, MODIFY_TIME, WELLHEAD_ID, WELL_NUMBER, RECORD_DATE, START_SEQ, WELL_TOTAL_POWER_ACTUAL,
WELL_TOTAL_POWER_OPTIMIZE, WELL_GREEN_POWER_ACTUAL, WELL_GREEN_POWER_OPTIMIZE, GREEN_POWER_RATE_ACTUAL,
GREEN_POWER_RATE_OPTIMIZE, LINE_NAME, POWER_COST_ACTUAL, POWER_COST_OPTIMIZE, CITY_COST_ACTUAL,
CITY_COST_OPTIMIZE, IS_DELETED) VALUES (
#{item.id},
#{item.createById},
#{item.createByName},
#{item.createTime},
#{item.modifyById},
#{item.modifyByName},
#{item.modifyTime},
#{item.wellheadId},
#{item.wellNumber},
#{item.recordDate},
#{item.startSeq},
#{item.wellTotalPowerActual},
#{item.wellTotalPowerOptimize},
#{item.wellGreenPowerActual},
#{item.wellGreenPowerOptimize},
#{item.greenPowerRateActual},
#{item.greenPowerRateOptimize},
#{item.lineName},
#{item.powerCostActual},
#{item.powerCostOptimize},
#{item.cityCostActual},
#{item.cityCostOptimize},
1
)
</foreach>
SELECT * FROM DUAL
</insert>
</mapper> </mapper>
\ No newline at end of file
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="pps.core.prediction.mapper.PlantPredictedPowerShortTermViewMapper"> <mapper namespace="pps.core.prediction.mapper.PlantPredictedPowerShortTermViewMapper">
<resultMap id="BaseResultMap" type="pps.core.prediction.entity.PlantPredictedPowerShortTermView"> <resultMap id="BaseResultMap" type="pps.core.prediction.entity.PlantPredictedPowerShortTermView">
<id column="ID" property="id" /> <id column="ID" property="id"/>
<result column="PLANT_ID" property="plantId"/> <result column="PLANT_ID" property="plantId"/>
<result column="DATA_DATE" property="dataDate"/> <result column="DATA_DATE" property="dataDate"/>
<result column="POWER" property="power"/> <result column="POWER" property="power"/>
...@@ -41,40 +41,79 @@ ...@@ -41,40 +41,79 @@
</resultMap> </resultMap>
<select id="selectPredictionPower30" parameterType="pps.core.prediction.entity.PlantPredictedPowerShortTermView" <select id="selectPredictionPower30" parameterType="pps.core.prediction.entity.PlantPredictedPowerShortTermView"
resultMap="BaseResultMap"> resultMap="BaseResultMap" databaseId="MySQL">
SELECT
Z.STATION_NAME,
Z.DATA_DATE AS CREATE_TIME,
MAX( Z.PREDICT_POWER ) AS PREDICT_POWER
FROM
(
SELECT
L.LINE_NAME AS STATION_NAME,
CASE
WHEN MINUTE ( T.DATA_DATE ) &lt; 31 THEN
DATE_FORMAT( T.DATA_DATE, '%H:00:00' ) ELSE DATE_FORMAT( T.DATA_DATE, '%H:30:00' )
END DATA_DATE,
T.PREDICT_POWER
FROM
BASE_POWER_LINE L
JOIN BASE_POWER_LINE_PLANT E ON L.ID = E.LINE_ID
JOIN BASE_PHOTOVOLTAIC_PLANT P ON P.ID = E.PLANT_ID
JOIN PLANT_PREDICTED_POWER_SHORT_TERM T ON P.ID = T.PLANT_ID
WHERE
T.DATA_DATE BETWEEN #{startTime}
AND #{endTime}
<if test="stationNames != null and stationNames.size() > 0">
AND L.LINE_NAME IN
<foreach collection="stationNames" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
) Z
GROUP BY
Z.STATION_NAME,
Z.DATA_DATE
ORDER BY
Z.STATION_NAME,
Z.DATA_DATE
</select>
<select id="selectPredictionPower30" parameterType="pps.core.prediction.entity.PlantPredictedPowerShortTermView"
resultMap="BaseResultMap" databaseId="Oracle">
SELECT SELECT
z.station_name, Z.STATION_NAME,
z.data_date AS create_time, Z.DATA_DATE AS CREATE_TIME,
MAX( z.predict_power ) AS predict_power MAX( Z.PREDICT_POWER ) AS PREDICT_POWER
FROM FROM
( (
SELECT SELECT
l.line_name AS station_name, L.LINE_NAME AS STATION_NAME,
'1970-01-01 ' || TO_CHAR( TO_DATE( T.DATA_DATE, 'YYYY-MM-DD HH24:MI:SS' ), 'HH24' ) ||
CASE CASE
WHEN MINUTE ( t.data_date ) &lt; 31 THEN WHEN EXTRACT( MINUTE FROM CAST( TO_DATE( T.DATA_DATE, 'YYYY-MM-DD HH24:MI:SS' ) AS TIMESTAMP ) ) &lt; 31 THEN
DATE_FORMAT( t.data_date, '%H:00:00' ) ELSE DATE_FORMAT( t.data_date, '%H:30:00' ) ':00:00' ELSE ':30:00'
END data_date, END AS DATA_DATE,
t.predict_power T.PREDICT_POWER
FROM FROM
base_power_line l BASE_POWER_LINE L
JOIN base_power_line_plant e ON l.id = e.line_id JOIN BASE_POWER_LINE_PLANT E ON L.ID = E.LINE_ID
JOIN base_photovoltaic_plant p ON p.id = e.plant_id JOIN BASE_PHOTOVOLTAIC_PLANT P ON P.ID = E.PLANT_ID
JOIN plant_predicted_power_short_term t ON p.id = t.plant_id JOIN PLANT_PREDICTED_POWER_SHORT_TERM T ON P.ID = T.PLANT_ID
WHERE WHERE
t.data_date BETWEEN #{startTime} TO_DATE( T.DATA_DATE, 'YYYY-MM-DD HH24:MI:SS' ) BETWEEN #{startTime}
AND #{endTime} AND #{endTime}
<if test="stationNames != null and stationNames.size() > 0"> <if test="stationNames != null and stationNames.size() > 0">
AND l.line_name IN AND L.LINE_NAME IN
<foreach collection="stationNames" item="item" open="(" separator="," close=")"> <foreach collection="stationNames" item="item" open="(" separator="," close=")">
#{item} #{item}
</foreach> </foreach>
</if> </if>
) z ) Z
GROUP BY GROUP BY
z.station_name, Z.STATION_NAME,
z.data_date Z.DATA_DATE
ORDER BY ORDER BY
z.station_name, Z.STATION_NAME,
z.data_date Z.DATA_DATE
</select> </select>
</mapper> </mapper>
\ No newline at end of file
...@@ -352,42 +352,83 @@ ...@@ -352,42 +352,83 @@
</select> </select>
<select id="selectAvgPower30" parameterType="pps.core.prediction.entity.ThirdActivePowerView" <select id="selectAvgPower30" parameterType="pps.core.prediction.entity.ThirdActivePowerView"
resultMap="BaseResultMap"> resultMap="BaseResultMap" databaseId="MySQL">
SELECT z.station_name, SELECT Z.STATION_NAME,
z.create_date, Z.CREATE_DATE,
MAX(z.photovoltaic_power) AS photovoltaic_power MAX(Z.PHOTOVOLTAIC_POWER) AS PHOTOVOLTAIC_POWER
FROM (SELECT l.line_name AS station_name, FROM (SELECT L.LINE_NAME AS STATION_NAME,
CASE
WHEN MINUTE ( T.CREATE_DATE) &lt; 31 THEN
DATE_FORMAT( T.CREATE_DATE, '%H:00:00' ) ELSE DATE_FORMAT( T.CREATE_DATE, '%H:30:00' )
END CREATE_DATE ,
T.PHOTOVOLTAIC_POWER
FROM
BASE_POWER_LINE L
JOIN BASE_POWER_LINE_PLANT E ON L.ID = E.LINE_ID
JOIN BASE_PHOTOVOLTAIC_PLANT P ON P.ID = E.PLANT_ID
JOIN THIRD_ACTIVE_POWER T ON P.STATION_NAME = T.STATION_NAME
WHERE
T.CREATE_DATE BETWEEN #{startTime}
AND #{endTime}
<if test="systemSource != null">
AND T.SYSTEM_SOURCE = #{systemSource}
</if>
<if test="stationName != null and stationName != ''">
AND T.STATION_NAME = #{stationName}
</if>
<if test="stationNames != null and stationNames.size() > 0">
AND L.LINE_NAME IN
<foreach collection="stationNames" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
) Z
GROUP BY
Z.STATION_NAME,
Z.CREATE_DATE
ORDER BY
Z.STATION_NAME,
Z.CREATE_DATE
</select>
<select id="selectAvgPower30" parameterType="pps.core.prediction.entity.ThirdActivePowerView"
resultMap="BaseResultMap" databaseId="Oracle">
SELECT Z.STATION_NAME,
Z.CREATE_DATE,
MAX(Z.PHOTOVOLTAIC_POWER) AS PHOTOVOLTAIC_POWER
FROM (SELECT L.LINE_NAME AS STATION_NAME,
'1970-01-01 ' || TO_CHAR( T.CREATE_DATE, 'HH24' ) ||
CASE CASE
WHEN MINUTE ( t.create_date) &lt; 31 THEN WHEN EXTRACT( MINUTE FROM CAST( T.CREATE_DATE AS TIMESTAMP ) ) &lt; 31 THEN
DATE_FORMAT( t.create_date, '%H:00:00' ) ELSE DATE_FORMAT( t.create_date, '%H:30:00' ) ':00:00' ELSE ':30:00'
END create_date , END AS CREATE_DATE,
t.photovoltaic_power T.PHOTOVOLTAIC_POWER
FROM FROM
base_power_line l BASE_POWER_LINE L
JOIN base_power_line_plant e ON l.id = e.line_id JOIN BASE_POWER_LINE_PLANT E ON L.ID = E.LINE_ID
JOIN base_photovoltaic_plant p ON p.id = e.plant_id JOIN BASE_PHOTOVOLTAIC_PLANT P ON P.ID = E.PLANT_ID
JOIN third_active_power t ON p.station_name = t.station_name JOIN THIRD_ACTIVE_POWER T ON P.STATION_NAME = T.STATION_NAME
WHERE WHERE
t.create_date BETWEEN #{startTime} T.CREATE_DATE BETWEEN #{startTime}
AND #{endTime} AND #{endTime}
<if test="systemSource != null"> <if test="systemSource != null">
AND t.system_source = #{systemSource} AND T.SYSTEM_SOURCE = #{systemSource}
</if> </if>
<if test="stationName != null and stationName != ''"> <if test="stationName != null and stationName != ''">
AND t.station_name = #{stationName} AND T.STATION_NAME = #{stationName}
</if> </if>
<if test="stationNames != null and stationNames.size() > 0"> <if test="stationNames != null and stationNames.size() > 0">
AND l.line_name IN AND L.LINE_NAME IN
<foreach collection="stationNames" item="item" open="(" separator="," close=")"> <foreach collection="stationNames" item="item" open="(" separator="," close=")">
#{item} #{item}
</foreach> </foreach>
</if> </if>
) z ) Z
GROUP BY GROUP BY
z.station_name, Z.STATION_NAME,
z.create_date Z.CREATE_DATE
ORDER BY ORDER BY
z.station_name, Z.STATION_NAME,
z.create_date Z.CREATE_DATE
</select> </select>
</mapper> </mapper>
\ No newline at end of file
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment