Commit 7e690066 authored by ZWT's avatar ZWT

得到的

parent 01bce0a4
......@@ -301,4 +301,20 @@ public class BaseUtils {
public static String randomUUIDString() {
return UUID.randomUUID(true).toString(true);
}
/**
* 字符串转日期时间
*
* @param dateStr 日期str
* @return {@link DateTime }
*/
public static DateTime strToDateTime(String dateStr) {
//转换开始时间和结束时间(开始时间不能为24:00)
if (CharSequenceUtil.equals(dateStr, BusinessConstant.END_OF_DAY_TIME)) {
return BusinessConstant.DATE_FLAG;
} else {
return DateUtil.parse(dateStr + BusinessConstant.INITIALIZATION_SECOND, BusinessConstant.TIME_FORMAT);
}
}
}
\ No newline at end of file
package pps.core.base.service;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.text.CharSequenceUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import pps.cloud.base.service.IBasePriceStrategyCloudService;
......@@ -12,6 +10,7 @@ import pps.core.base.entity.BasePriceStrategyDetailEnt;
import pps.core.base.mapper.BasePriceStrategyDetailMapper;
import pps.core.common.constant.BusinessConstant;
import pps.core.common.entity.BaseModel;
import pps.core.common.utils.BaseUtils;
import xstartup.annotation.XService;
import xstartup.base.XContext;
import xstartup.data.XListResult;
......@@ -64,27 +63,12 @@ public class BasePriceStrategyCloudServiceImpl implements IBasePriceStrategyClou
output.setPeriodTypeKey(ent.getPeriodTypeKey());
output.setStartTime(ent.getStartTime());
output.setEndTime(ent.getEndTime());
output.setOpenTime(this.strToDateTime(ent.getStartTime()));
output.setCloseTime(this.strToDateTime(ent.getEndTime()));
output.setOpenTime(BaseUtils.strToDateTime(ent.getStartTime()));
output.setCloseTime(BaseUtils.strToDateTime(ent.getEndTime()));
output.setElectrovalence(ent.getElectrovalence());
outputs.add(output);
}
}
return XListResult.success(outputs);
}
/**
* 字符串转日期时间
*
* @param dateStr 日期str
* @return {@link DateTime }
*/
private DateTime strToDateTime(String dateStr) {
//转换开始时间和结束时间(开始时间不能为24:00)
if (CharSequenceUtil.equals(dateStr, BusinessConstant.END_OF_DAY_TIME)) {
return BusinessConstant.DATE_FLAG;
} else {
return DateUtil.parse(dateStr + BusinessConstant.INITIALIZATION_SECOND, BusinessConstant.TIME_FORMAT);
}
}
}
\ No newline at end of file
......@@ -2634,12 +2634,7 @@ public class SpaceOptimizeBaseService {
private Map<String, List<SpaceInstitutionDurationEnt>> getDurationMap(XContext context, String detailId) {
SpaceInstitutionDurationMapper durationMapper = context.getBean(SpaceInstitutionDurationMapper.class);
//通过间开ID和井口ID查所有井口时段配置
List<SpaceInstitutionDurationEnt> durationList = durationMapper.selectList(new QueryWrapper<SpaceInstitutionDurationEnt>()
.select("*",
"STR_TO_DATE( CONCAT( open_well_time, ':00' ), '%H:%i:%s' ) AS openTime",
"STR_TO_DATE( CONCAT( close_well_time, ':00' ), '%H:%i:%s' ) AS closeTime"
)
.lambda()
List<SpaceInstitutionDurationEnt> durationList = durationMapper.selectList(new LambdaQueryWrapper<SpaceInstitutionDurationEnt>()
.eq(BaseModel::getIsDeleted, BusinessConstant.ONE)
.eq(SpaceInstitutionDurationEnt::getInstitutionId, detailId)
.orderByAsc(SpaceInstitutionDurationEnt::getOpenWellTime)
......@@ -2647,6 +2642,11 @@ public class SpaceOptimizeBaseService {
if (CollUtil.isEmpty(durationList)) {
//没有设置时间段,无法优化
return Collections.emptyMap();
} else {
for (SpaceInstitutionDurationEnt ent : durationList) {
ent.setOpenTime(BaseUtils.strToDateTime(ent.getOpenWellTime()));
ent.setCloseTime(BaseUtils.strToDateTime(ent.getCloseWellTime()));
}
}
return durationList.stream()
.collect(
......
......@@ -256,7 +256,7 @@
</resultMap>
<select id="selectWellheadsByInstitutionIds" parameterType="pps.core.space.entity.SpaceInstitutionWellheadView"
resultMap="ExtResultMap">
resultMap="ExtResultMap" databaseId="MySQL">
SELECT
W.INSTITUTION_ID,
W.WELLHEAD_ID,
......@@ -287,6 +287,38 @@
</if>
</select>
<select id="selectWellheadsByInstitutionIds" parameterType="pps.core.space.entity.SpaceInstitutionWellheadView"
resultMap="ExtResultMap" databaseId="Oracle">
SELECT
W.INSTITUTION_ID,
W.WELLHEAD_ID,
W.WELL_NUMBER,
W.RUN_TYPE_KEY,
NVL( W.INTERVAL_TYPE_KEY, '999' ) AS INTERVAL_TYPE_KEY,
W.INTERVAL_DESCRIBE,
NVL( W.START_SEQ, 0 ) AS START_SEQ,
W.OPEN_WELL_DAY,
W.CLOSE_WELL_DAY,
W.RUN_DURATION,
W.MAX_OPEN,
W.MIN_OPEN,
W.MAX_CLOSE,
W.MIN_CLOSE,
B.SERVICE_RATING
FROM
SPACE_INSTITUTION_WELLHEAD W
JOIN BASE_WELLHEAD B ON W.WELLHEAD_ID = B.ID
WHERE
W.IS_DELETED = 1
AND B.IS_DELETED = 1
<if test="list != null and list.size()>0">
AND W.INSTITUTION_ID IN
<foreach collection="list" open="(" close=")" separator="," item="item">
#{item}
</foreach>
</if>
</select>
<select id="selectInstitutionWellheadList" parameterType="pps.core.space.entity.SpaceInstitutionWellheadView"
resultMap="BaseResultMap" databaseId="MySQL">
SELECT W.WELLHEAD_ID,
......
......@@ -108,7 +108,7 @@
ID=#{id}
</select>
<insert id="batchInsert" parameterType="list">
<insert id="batchInsert" parameterType="list" databaseId="MySQL">
INSERT INTO SPACE_OPTIMIZE_EFFECT ( ID ,
IS_DELETED,
CREATE_BY_ID,
......@@ -199,4 +199,97 @@
)
</foreach>
</insert>
<insert id="batchInsert" parameterType="list" databaseId="Oracle">
INSERT ALL
<foreach collection="list" item="item">
INTO SPACE_OPTIMIZE_EFFECT ( ID ,
IS_DELETED,
CREATE_BY_ID,
CREATE_BY_NAME,
CREATE_TIME,
MODIFY_BY_ID,
MODIFY_BY_NAME,
MODIFY_TIME,
PERIOD_ID,
WELLHEAD_ID,
WELL_NUMBER,
OPTIMIZE_DATE,
OPTIMAL_RESULT,
TOTAL_DURATION,
GREEN_POWER_DURATION,
LOW_POWER_DURATION,
MID_POWER_DURATION,
HIGH_POWER_DURATION,
PEAK_POWER_DURATION,
GREEN_POWER_RATE,
GREEN_POWER_COST,
LOW_POWER_COST,
MID_POWER_COST,
HIGH_POWER_COST,
PEAK_POWER_COST,
POWER_COST,
OPTIMAL_TOTAL_DURATION,
OPTIMAL_GREEN_POWER_DURATION,
OPTIMAL_LOW_POWER_DURATION,
OPTIMAL_MID_POWER_DURATION,
OPTIMAL_HIGH_POWER_DURATION,
OPTIMAL_PEAK_POWER_DURATION,
OPTIMAL_GREEN_POWER_RATE,
OPTIMAL_GREEN_POWER_COST,
OPTIMAL_LOW_POWER_COST,
OPTIMAL_MID_POWER_COST,
OPTIMAL_HIGH_POWER_COST,
OPTIMAL_PEAK_POWER_COST,
OPTIMAL_POWER_COST,
GREEN_POWER_UPGRADE,
COST_DOWN,
INSTITUTION_RESULT)
VALUES (
#{item.id},
#{item.isDeleted},
#{item.createById},
#{item.createByName},
#{item.createTime},
#{item.modifyById},
#{item.modifyByName},
#{item.modifyTime},
#{item.periodId},
#{item.wellheadId},
#{item.wellNumber},
#{item.optimizeDate},
#{item.optimalResult},
#{item.totalDuration},
#{item.greenPowerDuration},
#{item.lowPowerDuration},
#{item.midPowerDuration},
#{item.highPowerDuration},
#{item.peakPowerDuration},
#{item.greenPowerRate},
#{item.greenPowerCost},
#{item.lowPowerCost},
#{item.midPowerCost},
#{item.highPowerCost},
#{item.peakPowerCost},
#{item.powerCost},
#{item.optimalTotalDuration},
#{item.optimalGreenPowerDuration},
#{item.optimalLowPowerDuration},
#{item.optimalMidPowerDuration},
#{item.optimalHighPowerDuration},
#{item.optimalPeakPowerDuration},
#{item.optimalGreenPowerRate},
#{item.optimalGreenPowerCost},
#{item.optimalLowPowerCost},
#{item.optimalMidPowerCost},
#{item.optimalHighPowerCost},
#{item.optimalPeakPowerCost},
#{item.optimalPowerCost},
#{item.greenPowerUpgrade},
#{item.costDown},
#{item.institutionResult}
)
</foreach>
SELECT * FROM DUAL
</insert>
</mapper>
\ No newline at end of file
......@@ -5,7 +5,7 @@
<insert id="longPeriodBatchInsertList" parameterType="list" databaseId="MySQL">
INSERT INTO SPACE_OPTIMIZE_LONG_PERIOD ( ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME,
MODIFY_BY_ID, MODIFY_BY_NAME, MODIFY_TIME, LINE_ID, INSTITUTION_ID, EXECUTION_CYCLE, OPTIMIZE_STATE,
OPTIMIZE_DEADLINE )
OPTIMIZE_DEADLINE, IS_DELETED )
VALUES
<foreach collection="list" item="item" separator=",">
(
......@@ -20,7 +20,8 @@
#{item.institutionId},
#{item.executionCycle},
#{item.optimizeState},
#{item.optimizeDeadline}
#{item.optimizeDeadline},
1
)
</foreach>
</insert>
......@@ -30,7 +31,7 @@
<foreach collection="list" item="item">
INTO SPACE_OPTIMIZE_LONG_PERIOD ( ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME,
MODIFY_BY_ID, MODIFY_BY_NAME, MODIFY_TIME, LINE_ID, INSTITUTION_ID, EXECUTION_CYCLE, OPTIMIZE_STATE,
OPTIMIZE_DEADLINE )
OPTIMIZE_DEADLINE, IS_DELETED )
VALUES
(
#{item.id},
......@@ -44,7 +45,8 @@
#{item.institutionId},
#{item.executionCycle},
#{item.optimizeState},
#{item.optimizeDeadline}
#{item.optimizeDeadline},
1
)
</foreach>
SELECT * FROM DUAL
......@@ -52,7 +54,7 @@
<insert id="longWellheadBatchInsertList" parameterType="list" databaseId="MySQL">
INSERT INTO SPACE_OPTIMIZE_LONG_WELLHEAD ( ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME,
MODIFY_BY_ID, MODIFY_BY_NAME, MODIFY_TIME, LONG_PERIOD_ID, WELLHEAD_ID, WELL_NUMBER, START_SEQ, OPTIMIZE_DATE)
MODIFY_BY_ID, MODIFY_BY_NAME, MODIFY_TIME, LONG_PERIOD_ID, WELLHEAD_ID, WELL_NUMBER, START_SEQ, OPTIMIZE_DATE, IS_DELETED )
VALUES
<foreach collection="list" item="item" separator=",">
(
......@@ -67,7 +69,8 @@
#{item.wellheadId},
#{item.wellNumber},
#{item.startSeq},
#{item.optimizeDate}
#{item.optimizeDate},
1
)
</foreach>
</insert>
......@@ -77,7 +80,7 @@
<foreach collection="list" item="item">
INTO SPACE_OPTIMIZE_LONG_WELLHEAD ( ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME,
MODIFY_BY_ID, MODIFY_BY_NAME, MODIFY_TIME, LONG_PERIOD_ID, WELLHEAD_ID, WELL_NUMBER, START_SEQ,
OPTIMIZE_DATE) VALUES (
OPTIMIZE_DATE, IS_DELETED ) VALUES (
#{item.id},
#{item.createById},
#{item.createByName},
......@@ -89,7 +92,8 @@
#{item.wellheadId},
#{item.wellNumber},
#{item.startSeq},
#{item.optimizeDate}
#{item.optimizeDate},
1
)
</foreach>
SELECT * FROM DUAL
......@@ -111,7 +115,7 @@
GENERATION_TYPE_KEY,
OPEN_WELL_TIME,
CLOSE_WELL_TIME,
FIRST_START, OPTIMIZE_DATE
FIRST_START, OPTIMIZE_DATE, IS_DELETED
)
VALUES
<foreach collection="list" item="item" separator=",">
......@@ -138,7 +142,8 @@
#{item.openWellTime},
#{item.closeWellTime},
#{item.firstStart},
#{item.optimizeDate}
#{item.optimizeDate},
1
)
</foreach>
</insert>
......@@ -162,7 +167,7 @@
OPEN_WELL_TIME,
CLOSE_WELL_TIME,
FIRST_START,
OPTIMIZE_DATE
OPTIMIZE_DATE, IS_DELETED
) VALUES (
#{item.id},
#{item.createById},
......@@ -186,7 +191,7 @@
#{item.openWellTime},
#{item.closeWellTime},
#{item.firstStart},
#{item.optimizeDate}
#{item.optimizeDate},1
)
</foreach>
SELECT * FROM DUAL
......@@ -195,7 +200,7 @@
<insert id="midPeriodBatchInsertList" parameterType="list" databaseId="MySQL">
INSERT INTO SPACE_OPTIMIZE_MID_PERIOD ( ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME,
MODIFY_BY_ID, MODIFY_BY_NAME, MODIFY_TIME, LINE_ID, INSTITUTION_ID, EXECUTION_CYCLE, OPTIMIZE_STATE,
OPTIMIZE_DEADLINE )
OPTIMIZE_DEADLINE, IS_DELETED )
VALUES
<foreach collection="list" item="item" separator=",">
(
......@@ -210,7 +215,8 @@
#{item.institutionId},
#{item.executionCycle},
#{item.optimizeState},
#{item.optimizeDeadline}
#{item.optimizeDeadline},
1
)
</foreach>
</insert>
......@@ -220,7 +226,7 @@
<foreach collection="list" item="item">
INTO SPACE_OPTIMIZE_MID_PERIOD ( ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME,
MODIFY_BY_ID, MODIFY_BY_NAME, MODIFY_TIME, LINE_ID, INSTITUTION_ID, EXECUTION_CYCLE, OPTIMIZE_STATE,
OPTIMIZE_DEADLINE ) VALUES
OPTIMIZE_DEADLINE, IS_DELETED ) VALUES
(
#{item.id},
#{item.createById},
......@@ -233,7 +239,8 @@
#{item.institutionId},
#{item.executionCycle},
#{item.optimizeState},
#{item.optimizeDeadline}
#{item.optimizeDeadline},
1
)
</foreach>
SELECT * FROM DUAL
......@@ -241,7 +248,7 @@
<insert id="midWellheadBatchInsertList" parameterType="list" databaseId="MySQL">
INSERT INTO SPACE_OPTIMIZE_MID_WELLHEAD ( ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME,
MODIFY_BY_ID, MODIFY_BY_NAME, MODIFY_TIME, MID_PERIOD_ID, WELLHEAD_ID, WELL_NUMBER, START_SEQ, OPTIMIZE_DATE)
MODIFY_BY_ID, MODIFY_BY_NAME, MODIFY_TIME, MID_PERIOD_ID, WELLHEAD_ID, WELL_NUMBER, START_SEQ, OPTIMIZE_DATE, IS_DELETED )
VALUES
<foreach collection="list" item="item" separator=",">
(
......@@ -256,7 +263,7 @@
#{item.wellheadId},
#{item.wellNumber},
#{item.startSeq},
#{item.optimizeDate}
#{item.optimizeDate},1
)
</foreach>
</insert>
......@@ -266,7 +273,7 @@
<foreach collection="list" item="item">
INTO SPACE_OPTIMIZE_MID_WELLHEAD ( ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME,
MODIFY_BY_ID, MODIFY_BY_NAME, MODIFY_TIME, MID_PERIOD_ID, WELLHEAD_ID, WELL_NUMBER, START_SEQ,
OPTIMIZE_DATE)
OPTIMIZE_DATE, IS_DELETED )
VALUES (
#{item.id},
#{item.createById},
......@@ -279,7 +286,8 @@
#{item.wellheadId},
#{item.wellNumber},
#{item.startSeq},
#{item.optimizeDate}
#{item.optimizeDate},
1
)
</foreach>
SELECT * FROM DUAL
......@@ -301,7 +309,7 @@
GENERATION_TYPE_KEY,
OPEN_WELL_TIME,
CLOSE_WELL_TIME,
FIRST_START, OPTIMIZE_DATE
FIRST_START, OPTIMIZE_DATE, IS_DELETED
)
VALUES
<foreach collection="list" item="item" separator=",">
......@@ -328,7 +336,8 @@
#{item.openWellTime},
#{item.closeWellTime},
#{item.firstStart},
#{item.optimizeDate}
#{item.optimizeDate},
1
)
</foreach>
</insert>
......@@ -352,7 +361,7 @@
GENERATION_TYPE_KEY,
OPEN_WELL_TIME,
CLOSE_WELL_TIME,
FIRST_START, OPTIMIZE_DATE
FIRST_START, OPTIMIZE_DATE, IS_DELETED
) VALUES (
#{item.id},
#{item.createById},
......@@ -376,7 +385,8 @@
#{item.openWellTime},
#{item.closeWellTime},
#{item.firstStart},
#{item.optimizeDate}
#{item.optimizeDate},
1
)
</foreach>
SELECT * FROM DUAL
......@@ -384,7 +394,7 @@
<insert id="shortPeriodBatchInsertList" parameterType="list" databaseId="MySQL">
INSERT INTO SPACE_OPTIMIZE_SHORT_PERIOD (ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME, MODIFY_BY_ID,
MODIFY_BY_NAME, MODIFY_TIME, LINE_ID, INSTITUTION_ID, OPTIMIZE_STATE, OPTIMIZE_DATE)
MODIFY_BY_NAME, MODIFY_TIME, LINE_ID, INSTITUTION_ID, OPTIMIZE_STATE, OPTIMIZE_DATE, IS_DELETED )
VALUES
<foreach collection="list" item="item" separator=",">
(
......@@ -398,7 +408,8 @@
#{item.lineId},
#{item.institutionId},
#{item.optimizeState},
#{item.optimizeDeadline}
#{item.optimizeDeadline},
1
)
</foreach>
</insert>
......@@ -407,7 +418,7 @@
INSERT ALL
<foreach collection="list" item="item">
INTO SPACE_OPTIMIZE_SHORT_PERIOD (ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME, MODIFY_BY_ID,
MODIFY_BY_NAME, MODIFY_TIME, LINE_ID, INSTITUTION_ID, OPTIMIZE_STATE, OPTIMIZE_DATE) VALUES (
MODIFY_BY_NAME, MODIFY_TIME, LINE_ID, INSTITUTION_ID, OPTIMIZE_STATE, OPTIMIZE_DATE, IS_DELETED ) VALUES (
#{item.id},
#{item.createById},
#{item.createByName},
......@@ -418,7 +429,8 @@
#{item.lineId},
#{item.institutionId},
#{item.optimizeState},
#{item.optimizeDeadline}
#{item.optimizeDeadline},
1
)
</foreach>
SELECT * FROM DUAL
......@@ -427,7 +439,7 @@
<insert id="shortWellheadBatchInsertList" parameterType="list" databaseId="MySQL">
INSERT INTO SPACE_OPTIMIZE_SHORT_WELLHEAD (ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME, MODIFY_BY_ID,
MODIFY_BY_NAME, MODIFY_TIME, SHORT_PERIOD_ID, WELLHEAD_ID, WELL_NUMBER, START_SEQ,
OPTIMIZE_DATE,FROSTPROOF_WELL)
OPTIMIZE_DATE,FROSTPROOF_WELL, IS_DELETED )
VALUES
<foreach collection="list" item="item" separator=",">
(
......@@ -443,7 +455,8 @@
#{item.wellNumber},
#{item.startSeq},
#{item.optimizeDate},
#{item.frostproofWell}
#{item.frostproofWell},
1
)
</foreach>
</insert>
......@@ -453,7 +466,7 @@
<foreach collection="list" item="item">
INTO SPACE_OPTIMIZE_SHORT_WELLHEAD (ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME, MODIFY_BY_ID,
MODIFY_BY_NAME, MODIFY_TIME, SHORT_PERIOD_ID, WELLHEAD_ID, WELL_NUMBER, START_SEQ,
OPTIMIZE_DATE,FROSTPROOF_WELL)
OPTIMIZE_DATE,FROSTPROOF_WELL, IS_DELETED )
VALUES (
#{item.id},
#{item.createById},
......@@ -467,7 +480,8 @@
#{item.wellNumber},
#{item.startSeq},
#{item.optimizeDate},
#{item.frostproofWell}
#{item.frostproofWell},
1
)
</foreach>
SELECT * FROM DUAL
......@@ -476,7 +490,7 @@
<insert id="shortDurationBatchInsertList" parameterType="list" databaseId="MySQL">
INSERT INTO SPACE_OPTIMIZE_SHORT_DURATION (ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME,
MODIFY_BY_ID, MODIFY_BY_NAME, MODIFY_TIME, RECORD_ID, SHORT_PERIOD_ID, WELLHEAD_ID, IS_OPTIMIZE,
GENERATION_TYPE_KEY, OPEN_WELL_TIME, CLOSE_WELL_TIME, FIRST_START, OPTIMIZE_DATE)
GENERATION_TYPE_KEY, OPEN_WELL_TIME, CLOSE_WELL_TIME, FIRST_START, OPTIMIZE_DATE, IS_DELETED )
VALUES
<foreach collection="list" item="item" separator=",">
(
......@@ -502,7 +516,8 @@
#{item.openWellTime},
#{item.closeWellTime},
#{item.firstStart},
#{item.optimizeDate}
#{item.optimizeDate},
1
)
</foreach>
</insert>
......@@ -512,7 +527,7 @@
<foreach collection="list" item="item">
INTO SPACE_OPTIMIZE_SHORT_DURATION (ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME,
MODIFY_BY_ID, MODIFY_BY_NAME, MODIFY_TIME, RECORD_ID, SHORT_PERIOD_ID, WELLHEAD_ID, IS_OPTIMIZE,
GENERATION_TYPE_KEY, OPEN_WELL_TIME, CLOSE_WELL_TIME, FIRST_START, OPTIMIZE_DATE)
GENERATION_TYPE_KEY, OPEN_WELL_TIME, CLOSE_WELL_TIME, FIRST_START, OPTIMIZE_DATE, IS_DELETED )
VALUES(
#{item.id},
#{item.createById},
......@@ -536,7 +551,8 @@
#{item.openWellTime},
#{item.closeWellTime},
#{item.firstStart},
#{item.optimizeDate}
#{item.optimizeDate},
1
)
</foreach>
SELECT * FROM DUAL
......@@ -545,7 +561,7 @@
<insert id="ultraPeriodBatchInsertList" parameterType="list" databaseId="MySQL">
INSERT INTO SPACE_OPTIMIZE_ULTRA_PERIOD ( ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME,
MODIFY_BY_ID, MODIFY_BY_NAME, MODIFY_TIME, LINE_ID, INSTITUTION_ID, EXECUTION_CYCLE, OPTIMIZE_STATE,
OPTIMIZE_DEADLINE )
OPTIMIZE_DEADLINE, IS_DELETED )
VALUES
<foreach collection="list" item="item" separator=",">
(
......@@ -560,7 +576,8 @@
#{item.institutionId},
#{item.executionCycle},
#{item.optimizeState},
#{item.optimizeDeadline}
#{item.optimizeDeadline},
1
)
</foreach>
</insert>
......@@ -570,7 +587,7 @@
<foreach collection="list" item="item">
INTO SPACE_OPTIMIZE_ULTRA_PERIOD ( ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME,
MODIFY_BY_ID, MODIFY_BY_NAME, MODIFY_TIME, LINE_ID, INSTITUTION_ID, EXECUTION_CYCLE, OPTIMIZE_STATE,
OPTIMIZE_DEADLINE )
OPTIMIZE_DEADLINE, IS_DELETED )
VALUES (
#{item.id},
#{item.createById},
......@@ -583,7 +600,8 @@
#{item.institutionId},
#{item.executionCycle},
#{item.optimizeState},
#{item.optimizeDeadline}
#{item.optimizeDeadline},
1
)
</foreach>
SELECT * FROM DUAL
......@@ -591,7 +609,7 @@
<insert id="ultraWellheadBatchInsertList" parameterType="list" databaseId="MySQL">
INSERT INTO SPACE_OPTIMIZE_ULTRA_WELLHEAD ( ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME,
MODIFY_BY_ID, MODIFY_BY_NAME, MODIFY_TIME, ULTRA_PERIOD_ID, WELLHEAD_ID, WELL_NUMBER, START_SEQ, OPTIMIZE_DATE)
MODIFY_BY_ID, MODIFY_BY_NAME, MODIFY_TIME, ULTRA_PERIOD_ID, WELLHEAD_ID, WELL_NUMBER, START_SEQ, OPTIMIZE_DATE, IS_DELETED )
VALUES
<foreach collection="list" item="item" separator=",">
(
......@@ -606,7 +624,8 @@
#{item.wellheadId},
#{item.wellNumber},
#{item.startSeq},
#{item.optimizeDate}
#{item.optimizeDate},
1
)
</foreach>
</insert>
......@@ -616,7 +635,7 @@
<foreach collection="list" item="item">
INTO SPACE_OPTIMIZE_ULTRA_WELLHEAD ( ID, CREATE_BY_ID, CREATE_BY_NAME, CREATE_TIME,
MODIFY_BY_ID, MODIFY_BY_NAME, MODIFY_TIME, ULTRA_PERIOD_ID, WELLHEAD_ID, WELL_NUMBER, START_SEQ,
OPTIMIZE_DATE) VALUES (
OPTIMIZE_DATE, IS_DELETED ) VALUES (
#{item.id},
#{item.createById},
#{item.createByName},
......@@ -628,7 +647,8 @@
#{item.wellheadId},
#{item.wellNumber},
#{item.startSeq},
#{item.optimizeDate}
#{item.optimizeDate},
1
)
</foreach>
SELECT * FROM DUAL
......@@ -650,7 +670,7 @@
GENERATION_TYPE_KEY,
OPEN_WELL_TIME,
CLOSE_WELL_TIME,
FIRST_START, OPTIMIZE_DATE
FIRST_START, OPTIMIZE_DATE, IS_DELETED
)
VALUES
<foreach collection="list" item="item" separator=",">
......@@ -677,7 +697,8 @@
#{item.openWellTime},
#{item.closeWellTime},
#{item.firstStart},
#{item.optimizeDate}
#{item.optimizeDate},
1
)
</foreach>
</insert>
......@@ -700,7 +721,7 @@
GENERATION_TYPE_KEY,
OPEN_WELL_TIME,
CLOSE_WELL_TIME,
FIRST_START, OPTIMIZE_DATE
FIRST_START, OPTIMIZE_DATE, IS_DELETED
) VALUES (
#{item.id},
#{item.createById},
......@@ -724,7 +745,8 @@
#{item.openWellTime},
#{item.closeWellTime},
#{item.firstStart},
#{item.optimizeDate}
#{item.optimizeDate},
1
)
</foreach>
SELECT * FROM DUAL
......
......@@ -301,7 +301,7 @@
<!--*********************************************************************************-->
<select id="selectMidPowerHalfHourList" resultMap="BaseResultMap">
<select id="selectMidPowerHalfHourList" resultMap="BaseResultMap" databaseId="MySQL">
SELECT
IFNULL( AVG( A.PREDICT_POWER ), 0 ) AS POWER,
A.CREATE_TIME AS CREATE_TIME
......@@ -345,7 +345,51 @@
A.CREATE_TIME
</select>
<select id="selectShortPowerHalfHourList" resultMap="BaseResultMap">
<select id="selectMidPowerHalfHourList" resultMap="BaseResultMap" databaseId="Oracle">
SELECT
NVL( AVG( A.PREDICT_POWER ), 0 ) AS POWER,
A.CREATE_TIME AS CREATE_TIME
FROM
(
SELECT
PREDICT_POWER,
'1970-01-01 ' || TO_CHAR (
<choose>
<when test="formatType == 0">
TO_DATE( DATA_DATE , 'YYYY-MM-DD HH24:MI:SS')
</when>
<otherwise>
CASE
MINUTE ( DATA_DATE )
WHEN 15 THEN
DATE_SUB( DATA_DATE, INTERVAL 15 MINUTE )
WHEN 45 THEN
DATE_SUB( DATA_DATE, INTERVAL 15 MINUTE ) ELSE DATA_DATE
END
</otherwise>
</choose>
, 'HH24:MI:SS' ) AS CREATE_TIME
FROM
PLANT_PREDICTED_POWER_MID_TERM
WHERE
PLANT_ID IN
<foreach collection="plantIds" item="item" open="(" separator="," close=")">
#{item}
</foreach>
<if test="startTime != null and endTime != null">
AND
DATA_DATE BETWEEN
#{startTime} AND
#{endTime}
</if>
) A
GROUP BY
A.CREATE_TIME
ORDER BY
A.CREATE_TIME
</select>
<select id="selectShortPowerHalfHourList" resultMap="BaseResultMap" databaseId="MySQL">
SELECT
IFNULL( AVG( A.PREDICT_POWER ), 0 ) AS POWER,
A.CREATE_TIME AS CREATE_TIME
......@@ -388,4 +432,48 @@
ORDER BY
A.CREATE_TIME
</select>
<select id="selectShortPowerHalfHourList" resultMap="BaseResultMap" databaseId="Oracle">
SELECT
NVL( AVG( A.PREDICT_POWER ), 0 ) AS POWER,
A.CREATE_TIME AS CREATE_TIME
FROM
(
SELECT
PREDICT_POWER,
'1970-01-01 ' || TO_CHAR (
<choose>
<when test="formatType == 0">
TO_DATE( DATA_DATE , 'YYYY-MM-DD HH24:MI:SS')
</when>
<otherwise>
CASE
MINUTE ( DATA_DATE )
WHEN 15 THEN
DATE_SUB( DATA_DATE, INTERVAL 15 MINUTE )
WHEN 45 THEN
DATE_SUB( DATA_DATE, INTERVAL 15 MINUTE ) ELSE DATA_DATE
END
</otherwise>
</choose>
, 'HH24:MI:SS' ) AS CREATE_TIME
FROM
PLANT_PREDICTED_POWER_SHORT_TERM
WHERE
PLANT_ID IN
<foreach collection="plantIds" item="item" open="(" separator="," close=")">
#{item}
</foreach>
<if test="startTime != null and endTime != null">
AND
DATA_DATE BETWEEN
#{startTime} AND
#{endTime}
</if>
) A
GROUP BY
A.CREATE_TIME
ORDER BY
A.CREATE_TIME
</select>
</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