1.在线监测点-》稳态指标合格率分析 监测点合格率算法调整

2.区域-》指标合格率统计 各维度合格率算法调整
3.运行管理-》指标合格率列表 监测点合格率算法调整
This commit is contained in:
xy
2024-06-19 20:26:23 +08:00
parent cc795fd542
commit 1ca5ce855b
6 changed files with 422 additions and 232 deletions

View File

@@ -16,6 +16,8 @@ public class SteadyData implements Serializable {
private float allTime;
private float tAllTime;
private float frequency=3.1415f;
private float uBalance=3.1415f;
@@ -188,6 +190,14 @@ public class SteadyData implements Serializable {
this.inUharm = inUharm;
}
public float gettAllTime() {
return tAllTime;
}
public void settAllTime(float tAllTime) {
this.tAllTime = tAllTime;
}
@Override
public String toString() {
return "SteadyData{" +
@@ -195,6 +205,7 @@ public class SteadyData implements Serializable {
", monitors=" + monitors +
", areaIndex='" + areaIndex + '\'' +
", allTime=" + allTime +
", tAllTime=" + tAllTime +
", frequency=" + frequency +
", uBalance=" + uBalance +
", uAberrance=" + uAberrance +

View File

@@ -202,23 +202,17 @@ public class LineServiceImpls implements LineService {
return new SteadyData();//全部是3.1415,代表无监测点无数据
}
List<Integer> lineIndexTemp = new ArrayList<>(lineIndexs);
Integer size = lineIndexTemp.size();
int size = lineIndexTemp.size();
try {
if (size > 1000) {
Integer times = size / 1000 + 1;
int times = size / 1000 + 1;
for (int i = 0; i < times; i++) {
if (size > 1000) {
List<Integer> tempIndexs = lineIndexTemp.subList(0, 1000);
//需要区分频率偏差、三相电压不平衡与其他指标的获取方式
SteadyData tempT = limitRateMapper.getsteadDataByT(tempIndexs, startTime, endTime);
//合并数据
steadyData = mergeSteady(steadyData, tempT);
tempIndexs.clear();
} else {
//需要区分频率偏差、三相电压不平衡与其他指标的获取方式
SteadyData tempT = limitRateMapper.getsteadDataByT(lineIndexTemp, startTime, endTime);
steadyData = mergeSteady(steadyData, tempT);
}
}
} else {
//需要区分频率偏差、三相电压不平衡与其他指标的获取方式
@@ -246,7 +240,11 @@ public class LineServiceImpls implements LineService {
} else {
steadyData.setAllTime(steadyData.getAllTime() + tempT.getAllTime());
}
if (steadyData.gettAllTime() == 0) {
steadyData.settAllTime(tempT.gettAllTime());
} else {
steadyData.settAllTime(steadyData.gettAllTime() + tempT.gettAllTime());
}
if (steadyData.getFrequency() == 3.1415f) {
steadyData.setFrequency(tempT.getFrequency());
} else {
@@ -329,14 +327,15 @@ public class LineServiceImpls implements LineService {
return steadyData;
} else {
float allTime = steadyData.getAllTime();
float tAllTime = steadyData.gettAllTime();
//冀北二期 谐波电流 谐波电压 负序电流 间谐波电压含有率 start
steadyData.setHarmVoltage(getAcceptlityByData(allTime, steadyData.getHarmVoltage()));
steadyData.setHarmElec(getAcceptlityByData(allTime, steadyData.getHarmElec()));
steadyData.setiNeg(getAcceptlityByData(allTime, steadyData.getiNeg()));
steadyData.setiNeg(getAcceptlityByData(tAllTime, steadyData.getiNeg()));
steadyData.setInUharm(getAcceptlityByData(allTime, steadyData.getInUharm()));
//冀北二期 谐波电流 谐波电压 负序电流 间谐波电压含有率 end
steadyData.setVoltageDeviation(getAcceptlityByData(allTime, steadyData.getVoltageDeviation()));
steadyData.setuBalance(getAcceptlityByData(allTime, steadyData.getuBalance()));
steadyData.setuBalance(getAcceptlityByData(tAllTime, steadyData.getuBalance()));
steadyData.setFlicker(getAcceptlityByData(steadyData.getAllFlicker(), steadyData.getFlicker()));
steadyData.setOddVoltage(getAcceptlityByData(allTime, steadyData.getOddVoltage()));
steadyData.setEvenVoltage(getAcceptlityByData(allTime, steadyData.getEvenVoltage()));
@@ -350,6 +349,10 @@ public class LineServiceImpls implements LineService {
//计算合格率结果
private float getAcceptlityByData(float allTime, float data) {
float result;
if (Objects.equals(data,3.1415f)) {
result = 3.14159f;
} else {
float accpet = allTime - data;
if (accpet < 0) {
accpet = 0;
@@ -358,8 +361,11 @@ public class LineServiceImpls implements LineService {
return 100.0f;
}
float num = accpet / allTime;
DecimalFormat df = new DecimalFormat("0.00");// 格式化小数
return Float.valueOf(df.format(num * 100));
// 格式化小数
DecimalFormat df = new DecimalFormat("0.00");
result = Float.parseFloat(df.format(num * 100));
}
return result;
}
//计算谐波电压合格率结果

View File

@@ -1151,10 +1151,10 @@ public class DeviceController {
for (int k = 0; k < reportTarget.getList().size(); k++) {
if (null == reportTarget.getList().get(k).getFmaxValue() || null == reportTarget.getList().get(k).getMinValue()) {
break;
} else if (reportTarget.getList().get(k).getFmaxValue() < lowLimit || reportTarget.getList().get(k).getFmaxValue() > overLimit) {
} else if (reportTarget.getList().get(k).getFmaxValue().floatValue() < lowLimit.floatValue() || reportTarget.getList().get(k).getFmaxValue().floatValue() > overLimit.floatValue() ) {
reportTarget.setPass(EnumPass.NOPASS.getCode());
break;
} else if (reportTarget.getList().get(k).getMinValue() < lowLimit || reportTarget.getList().get(k).getMinValue() > overLimit) {
} else if (reportTarget.getList().get(k).getMinValue().floatValue() < lowLimit.floatValue() || reportTarget.getList().get(k).getMinValue().floatValue() > overLimit.floatValue() ) {
reportTarget.setPass(EnumPass.NOPASS.getCode());
break;
} else {

View File

@@ -256,106 +256,188 @@
T1.uBalance,
T1.iNeg,
T1.inUharm
FROM
(
SELECT
A.line_index,
A.harmElec,
A.harmVoltage,
A.frequency,
A.flicker,
A.voltageDeviation,
A.inUharm,
B.uBalance,
B.iNeg
FROM
(
SELECT
MYINDEX line_index,
ROUND(
(
SUM( ALLTIME ) - SUM( GREATEST( IHarm_2_OverTime, IHarm_4_OverTime, IHarm_6_OverTime, IHarm_8_OverTime, IHarm_10_OverTime, IHarm_12_OverTime, IHarm_14_OverTime, IHarm_16_OverTime, IHarm_18_OverTime, IHarm_20_OverTime, IHarm_20_OverTime, IHarm_24_OverTime ,IHarm_3_OverTime, IHarm_5_OverTime, IHarm_7_OverTime, IHarm_9_OverTime, IHarm_11_OverTime, IHarm_13_OverTime, IHarm_15_OverTime, IHarm_17_OverTime, IHarm_19_OverTime, IHarm_21_OverTime, IHarm_23_OverTime, IHarm_25_OverTime ) )
) / SUM( ALLTIME ),
SUM(ALLTIME * TInterval) - SUM( GREATEST(
IHarm_2_OverTime * TInterval,
IHarm_4_OverTime * TInterval,
IHarm_6_OverTime * TInterval,
IHarm_8_OverTime * TInterval,
IHarm_10_OverTime * TInterval,
IHarm_12_OverTime * TInterval,
IHarm_14_OverTime * TInterval,
IHarm_16_OverTime * TInterval,
IHarm_18_OverTime * TInterval,
IHarm_20_OverTime * TInterval,
IHarm_20_OverTime * TInterval,
IHarm_24_OverTime * TInterval,
IHarm_3_OverTime * TInterval,
IHarm_5_OverTime * TInterval,
IHarm_7_OverTime * TInterval,
IHarm_9_OverTime * TInterval,
IHarm_11_OverTime * TInterval,
IHarm_13_OverTime * TInterval,
IHarm_15_OverTime * TInterval,
IHarm_17_OverTime * TInterval,
IHarm_19_OverTime * TInterval,
IHarm_21_OverTime * TInterval,
IHarm_23_OverTime * TInterval,
IHarm_25_OverTime * TInterval ) )
) / SUM(ALLTIME * TInterval),
4
) * 100 harmElec,
ROUND(
(
SUM( ALLTIME ) - SUM( GREATEST( UHarm_2_OverTime, UHarm_4_OverTime, UHarm_6_OverTime, UHarm_8_OverTime, UHarm_10_OverTime, UHarm_12_OverTime, UHarm_14_OverTime, UHarm_16_OverTime, UHarm_18_OverTime, UHarm_20_OverTime, UHarm_22_OverTime, UHarm_24_OverTime,UHarm_3_OverTime, UHarm_5_OverTime, UHarm_7_OverTime, UHarm_9_OverTime, UHarm_11_OverTime, UHarm_13_OverTime, UHarm_15_OverTime, UHarm_17_OverTime, UHarm_19_OverTime, UHarm_21_OverTime, UHarm_23_OverTime, UHarm_25_OverTime ,UAberrance_OverTime) )
) / SUM( ALLTIME ),
SUM(ALLTIME * TInterval) - SUM( GREATEST(
UHarm_2_OverTime * TInterval,
UHarm_4_OverTime * TInterval,
UHarm_6_OverTime * TInterval,
UHarm_8_OverTime * TInterval,
UHarm_10_OverTime * TInterval,
UHarm_12_OverTime * TInterval,
UHarm_14_OverTime * TInterval,
UHarm_16_OverTime * TInterval,
UHarm_18_OverTime * TInterval,
UHarm_20_OverTime * TInterval,
UHarm_22_OverTime * TInterval,
UHarm_24_OverTime * TInterval,
UHarm_3_OverTime * TInterval,
UHarm_5_OverTime * TInterval,
UHarm_7_OverTime * TInterval,
UHarm_9_OverTime * TInterval,
UHarm_11_OverTime * TInterval,
UHarm_13_OverTime * TInterval,
UHarm_15_OverTime * TInterval,
UHarm_17_OverTime * TInterval,
UHarm_19_OverTime * TInterval,
UHarm_21_OverTime * TInterval,
UHarm_23_OverTime * TInterval,
UHarm_25_OverTime * TInterval,
UAberrance_OverTime * TInterval) )
) / SUM(ALLTIME * TInterval),
4
) * 100 harmVoltage,
ROUND( ( SUM( ALLTIME ) - SUM( Freq_Dev_OverTime ) ) / SUM( ALLTIME ), 4 ) * 100 frequency,
ROUND( ( SUM( ALLTIME ) - SUM( UBalance_OverTime ) ) / SUM( ALLTIME ), 4 ) * 100 uBalance,
ROUND( ( SUM(ALLTIME * TInterval) - SUM(Freq_Dev_OverTime * TInterval) ) / SUM(ALLTIME * TInterval), 4 ) * 100 frequency,
ROUND(
(
CASE
WHEN SUM( I_NEG_OVERTIME ) IS NULL THEN
1 ELSE ( SUM( ALLTIME ) - SUM( I_NEG_OVERTIME ) ) / SUM( ALLTIME )
END
),
4
) * 100 iNeg,
ROUND(
(
CASE
SUM( Flicket_AllTime )
SUM(Flicket_AllTime * 120)
WHEN 0 THEN
1 ELSE ( SUM( Flicket_AllTime ) - SUM( Flicker_OverTime ) ) / SUM( Flicket_AllTime )
1 ELSE ( SUM(Flicket_AllTime * 120) - SUM(Flicker_OverTime * 120) ) / SUM(Flicket_AllTime * 120)
END
),
4
) * 100 flicker,
ROUND( ( SUM( ALLTIME ) - SUM( Voltage_Dev_OverTime ) ) / SUM( ALLTIME ), 4 ) * 100 voltageDeviation,
ROUND( ( SUM(ALLTIME * TInterval) - SUM(Voltage_Dev_OverTime * TInterval) ) / SUM(ALLTIME * TInterval), 4 ) * 100 voltageDeviation,
ROUND(
(
CASE
WHEN SUM(
GREATEST(
INUHARM_1_OVERTIME,
INUHARM_2_OVERTIME,
INUHARM_3_OVERTIME,
INUHARM_4_OVERTIME,
INUHARM_5_OVERTIME,
INUHARM_6_OVERTIME,
INUHARM_7_OVERTIME,
INUHARM_8_OVERTIME,
INUHARM_9_OVERTIME,
INUHARM_10_OVERTIME,
INUHARM_11_OVERTIME,
INUHARM_12_OVERTIME,
INUHARM_13_OVERTIME,
INUHARM_14_OVERTIME,
INUHARM_15_OVERTIME,
INUHARM_16_OVERTIME
INUHARM_1_OVERTIME * TInterval,
INUHARM_2_OVERTIME * TInterval,
INUHARM_3_OVERTIME * TInterval,
INUHARM_4_OVERTIME * TInterval,
INUHARM_5_OVERTIME * TInterval,
INUHARM_6_OVERTIME * TInterval,
INUHARM_7_OVERTIME * TInterval,
INUHARM_8_OVERTIME * TInterval,
INUHARM_9_OVERTIME * TInterval,
INUHARM_10_OVERTIME * TInterval,
INUHARM_11_OVERTIME * TInterval,
INUHARM_12_OVERTIME * TInterval,
INUHARM_13_OVERTIME * TInterval,
INUHARM_14_OVERTIME * TInterval,
INUHARM_15_OVERTIME * TInterval,
INUHARM_16_OVERTIME * TInterval
)
) IS NULL THEN
1 ELSE (
SUM( ALLTIME ) - SUM(
SUM(ALLTIME * TInterval) - SUM(
GREATEST(
INUHARM_1_OVERTIME,
INUHARM_2_OVERTIME,
INUHARM_3_OVERTIME,
INUHARM_4_OVERTIME,
INUHARM_5_OVERTIME,
INUHARM_6_OVERTIME,
INUHARM_7_OVERTIME,
INUHARM_8_OVERTIME,
INUHARM_9_OVERTIME,
INUHARM_10_OVERTIME,
INUHARM_11_OVERTIME,
INUHARM_12_OVERTIME,
INUHARM_13_OVERTIME,
INUHARM_14_OVERTIME,
INUHARM_15_OVERTIME,
INUHARM_16_OVERTIME
INUHARM_1_OVERTIME * TInterval,
INUHARM_2_OVERTIME * TInterval,
INUHARM_3_OVERTIME * TInterval,
INUHARM_4_OVERTIME * TInterval,
INUHARM_5_OVERTIME * TInterval,
INUHARM_6_OVERTIME * TInterval,
INUHARM_7_OVERTIME * TInterval,
INUHARM_8_OVERTIME * TInterval,
INUHARM_9_OVERTIME * TInterval,
INUHARM_10_OVERTIME * TInterval,
INUHARM_11_OVERTIME * TInterval,
INUHARM_12_OVERTIME * TInterval,
INUHARM_13_OVERTIME * TInterval,
INUHARM_14_OVERTIME * TInterval,
INUHARM_15_OVERTIME * TInterval,
INUHARM_16_OVERTIME * TInterval
)
)
) / SUM( ALLTIME )
) / SUM(ALLTIME * TInterval)
END
),
4
) * 100 inUharm
FROM
LIMIT_RATE
LEFT JOIN PQ_LINEDETAIL ON
MYINDEX = LINE_INDEX
WHERE
PHASIC_TYPE = 'T'
and timeid between #{startTime} and #{endTime}
timeid between #{startTime} and #{endTime}
and myindex in
<foreach collection="list" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
and PHASIC_TYPE = 'T'
GROUP BY
MYINDEX
) A
LEFT JOIN
(
SELECT
MYINDEX line_index,
ROUND((SUM(ALLTIME * TInterval) - SUM(UBalance_OverTime * TInterval) ) / SUM(ALLTIME * TInterval), 4 ) * 100 uBalance,
ROUND(
(
CASE
WHEN SUM(I_NEG_OVERTIME * TInterval) IS NULL THEN
1 ELSE ( SUM(ALLTIME * TInterval) - SUM(I_NEG_OVERTIME * TInterval) ) / SUM(ALLTIME * TInterval)
END
),
4
) * 100 iNeg
FROM
LIMIT_RATE
LEFT JOIN
PQ_LINEDETAIL ON MYINDEX = LINE_INDEX
WHERE
timeid between #{startTime} and #{endTime}
and myindex in
<foreach collection="list" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
AND PHASIC_TYPE IN ('A', 'B', 'C')
GROUP BY MYINDEX
)B
ON
A.line_index = B.line_index
) T1,
PQ_LINE T2,
PQ_DEVICE T3,
@@ -377,69 +459,154 @@
<select id="getsteadDataByT" resultType="SteadyData">
SELECT
SUM( ALLTIME ) ALLTIME,
SUM( FREQ_DEV_OVERTIME ) FREQUENCY,
SUM( UBALANCE_OVERTIME ) UBALANCE,
DECODE( SUM( I_NEG_OVERTIME ), NULL, 0, SUM( I_NEG_OVERTIME ) ) iNeg,
SUM( GREATEST( IHARM_2_OVERTIME, IHARM_4_OVERTIME, IHARM_6_OVERTIME, IHARM_8_OVERTIME, IHARM_10_OVERTIME, IHARM_12_OVERTIME, IHARM_14_OVERTIME, IHARM_16_OVERTIME, IHARM_18_OVERTIME, IHARM_20_OVERTIME, IHARM_20_OVERTIME, IHARM_24_OVERTIME,IHARM_3_OVERTIME, IHARM_5_OVERTIME, IHARM_7_OVERTIME, IHARM_9_OVERTIME, IHARM_11_OVERTIME, IHARM_13_OVERTIME, IHARM_15_OVERTIME, IHARM_17_OVERTIME, IHARM_19_OVERTIME, IHARM_21_OVERTIME, IHARM_23_OVERTIME, IHARM_25_OVERTIME ) ) harmElec,
SUM( GREATEST( UHARM_2_OVERTIME, UHARM_4_OVERTIME, UHARM_6_OVERTIME, UHARM_8_OVERTIME, UHARM_10_OVERTIME, UHARM_12_OVERTIME, UHARM_14_OVERTIME, UHARM_16_OVERTIME, UHARM_18_OVERTIME, UHARM_20_OVERTIME, UHARM_22_OVERTIME, UHARM_24_OVERTIME,UHARM_3_OVERTIME, UHARM_5_OVERTIME, UHARM_7_OVERTIME, UHARM_9_OVERTIME, UHARM_11_OVERTIME, UHARM_13_OVERTIME, UHARM_15_OVERTIME, UHARM_17_OVERTIME, UHARM_19_OVERTIME, UHARM_21_OVERTIME, UHARM_23_OVERTIME, UHARM_25_OVERTIME,UABERRANCE_OVERTIME ) ) harmVoltage,
SUM( FLICKER_OVERTIME ) FLICKER,
SUM( FLICKET_ALLTIME ) ALLFLICKER,
SUM( VOLTAGE_DEV_OVERTIME ) VOLTAGEDEVIATION,
*
FROM
(
SELECT
SUM(ALLTIME * TInterval) ALLTIME,
SUM(FREQ_DEV_OVERTIME * TInterval) FREQUENCY,
SUM(
GREATEST(
IHARM_2_OVERTIME * TInterval,
IHARM_4_OVERTIME * TInterval,
IHARM_6_OVERTIME * TInterval,
IHARM_8_OVERTIME * TInterval,
IHARM_10_OVERTIME * TInterval,
IHARM_12_OVERTIME * TInterval,
IHARM_14_OVERTIME * TInterval,
IHARM_16_OVERTIME * TInterval,
IHARM_18_OVERTIME * TInterval,
IHARM_20_OVERTIME * TInterval,
IHARM_20_OVERTIME * TInterval,
IHARM_24_OVERTIME * TInterval,
IHARM_3_OVERTIME * TInterval,
IHARM_5_OVERTIME * TInterval,
IHARM_7_OVERTIME * TInterval,
IHARM_9_OVERTIME * TInterval,
IHARM_11_OVERTIME * TInterval,
IHARM_13_OVERTIME * TInterval,
IHARM_15_OVERTIME * TInterval,
IHARM_17_OVERTIME * TInterval,
IHARM_19_OVERTIME * TInterval,
IHARM_21_OVERTIME * TInterval,
IHARM_23_OVERTIME * TInterval,
IHARM_25_OVERTIME * TInterval ) ) harmElec,
SUM(
GREATEST(
UHARM_2_OVERTIME * TInterval,
UHARM_4_OVERTIME * TInterval,
UHARM_6_OVERTIME * TInterval,
UHARM_8_OVERTIME * TInterval,
UHARM_10_OVERTIME * TInterval,
UHARM_12_OVERTIME * TInterval,
UHARM_14_OVERTIME * TInterval,
UHARM_16_OVERTIME * TInterval,
UHARM_18_OVERTIME * TInterval,
UHARM_20_OVERTIME * TInterval,
UHARM_22_OVERTIME * TInterval,
UHARM_24_OVERTIME * TInterval,
UHARM_3_OVERTIME * TInterval,
UHARM_5_OVERTIME * TInterval,
UHARM_7_OVERTIME * TInterval,
UHARM_9_OVERTIME * TInterval,
UHARM_11_OVERTIME * TInterval,
UHARM_13_OVERTIME * TInterval,
UHARM_15_OVERTIME * TInterval,
UHARM_17_OVERTIME * TInterval,
UHARM_19_OVERTIME * TInterval,
UHARM_21_OVERTIME * TInterval,
UHARM_23_OVERTIME * TInterval,
UHARM_25_OVERTIME * TInterval,
UABERRANCE_OVERTIME * TInterval) ) harmVoltage,
SUM(FLICKER_OVERTIME * 120) FLICKER,
SUM(FLICKET_ALLTIME * 120) ALLFLICKER,
SUM(VOLTAGE_DEV_OVERTIME * TInterval) VOLTAGEDEVIATION,
DECODE(
SUM(
GREATEST(
INUHARM_1_OVERTIME,
INUHARM_2_OVERTIME,
INUHARM_3_OVERTIME,
INUHARM_4_OVERTIME,
INUHARM_5_OVERTIME,
INUHARM_6_OVERTIME,
INUHARM_7_OVERTIME,
INUHARM_8_OVERTIME,
INUHARM_9_OVERTIME,
INUHARM_10_OVERTIME,
INUHARM_11_OVERTIME,
INUHARM_12_OVERTIME,
INUHARM_13_OVERTIME,
INUHARM_14_OVERTIME,
INUHARM_15_OVERTIME,
INUHARM_16_OVERTIME
INUHARM_1_OVERTIME * TInterval,
INUHARM_2_OVERTIME * TInterval,
INUHARM_3_OVERTIME * TInterval,
INUHARM_4_OVERTIME * TInterval,
INUHARM_5_OVERTIME * TInterval,
INUHARM_6_OVERTIME * TInterval,
INUHARM_7_OVERTIME * TInterval,
INUHARM_8_OVERTIME * TInterval,
INUHARM_9_OVERTIME * TInterval,
INUHARM_10_OVERTIME * TInterval,
INUHARM_11_OVERTIME * TInterval,
INUHARM_12_OVERTIME * TInterval,
INUHARM_13_OVERTIME * TInterval,
INUHARM_14_OVERTIME * TInterval,
INUHARM_15_OVERTIME * TInterval,
INUHARM_16_OVERTIME * TInterval
)
),
NULL,
0,
SUM(
GREATEST(
INUHARM_1_OVERTIME,
INUHARM_2_OVERTIME,
INUHARM_3_OVERTIME,
INUHARM_4_OVERTIME,
INUHARM_5_OVERTIME,
INUHARM_6_OVERTIME,
INUHARM_7_OVERTIME,
INUHARM_8_OVERTIME,
INUHARM_9_OVERTIME,
INUHARM_10_OVERTIME,
INUHARM_11_OVERTIME,
INUHARM_12_OVERTIME,
INUHARM_13_OVERTIME,
INUHARM_14_OVERTIME,
INUHARM_15_OVERTIME,
INUHARM_16_OVERTIME
INUHARM_1_OVERTIME * TInterval,
INUHARM_2_OVERTIME * TInterval,
INUHARM_3_OVERTIME * TInterval,
INUHARM_4_OVERTIME * TInterval,
INUHARM_5_OVERTIME * TInterval,
INUHARM_6_OVERTIME * TInterval,
INUHARM_7_OVERTIME * TInterval,
INUHARM_8_OVERTIME * TInterval,
INUHARM_9_OVERTIME * TInterval,
INUHARM_10_OVERTIME * TInterval,
INUHARM_11_OVERTIME * TInterval,
INUHARM_12_OVERTIME * TInterval,
INUHARM_13_OVERTIME * TInterval,
INUHARM_14_OVERTIME * TInterval,
INUHARM_15_OVERTIME * TInterval,
INUHARM_16_OVERTIME * TInterval
)
)
) inUharm
FROM
LIMIT_RATE
LEFT JOIN
PQ_LINEDETAIL ON
MYINDEX = LINE_INDEX
WHERE
PHASIC_TYPE = 'T'
AND
MYINDEX IN
<foreach collection="list" open="(" close=")" separator="," item="item">
#{item}
</foreach>
AND PHASIC_TYPE = 'T'
AND TIMEID BETWEEN #{startTime} AND #{endTime}
) A
left join
(
SELECT
SUM(B.tAllTime) tAllTime,
SUM(B.UBALANCE) UBALANCE,
DECODE( SUM(B.iNeg), NULL, 0, SUM(B.iNeg) ) iNeg
FROM
(
SELECT
lr.MYINDEX,
lr.TIMEID,
SUM(lr.ALLTIME * pl.TINTERVAL) tAllTime,
SUM(lr.UBALANCE_OVERTIME * pl.TINTERVAL) UBALANCE,
SUM(lr.I_NEG_OVERTIME * pl.TINTERVAL) iNeg
FROM
LIMIT_RATE lr
LEFT JOIN
PQ_LINEDETAIL pl ON
lr.MYINDEX = pl.LINE_INDEX
WHERE
lr.MYINDEX IN
<foreach collection="list" open="(" close=")" separator="," item="item">
#{item}
</foreach>
AND lr.PHASIC_TYPE IN ('A', 'B', 'C')
AND lr.TIMEID between #{startTime} and #{endTime}
GROUP BY lr.MYINDEX,lr.TIMEID
) B
) ON 1 = 1
</select>
<select id="getHarmonicRate" resultType="HarmonicRateInfo">

View File

@@ -122,7 +122,7 @@
<div class="fr" id="exportMonitorTable" style="margin-top: 3px">
<a class="dt-button buttons-html5"><i class='glyphicon glyphicon-share'></i><span>导出</span></a>
</div>
<div class="fr" id="calculate" style="margin-top: 3px;display: none">
<div class="fr" id="calculate" style="margin-top: 3px;display: block">
<a class="dt-button buttons-html5"><i class='glyphicon glyphicon-share'></i><span>计算</span></a>
</div>
<div class="form-group fr mr10" id="fliteData">

View File

@@ -147,6 +147,7 @@ function getSteady(startTime,endTime,lineIndex){
initWtzb(null);
}else{
var info = data.body;
console.log(info)
var frequency={};var frequencyitem={};
var flicker={};var flickeritem={};
var unbalanceVol={};var unbalanceVolitem={};
@@ -205,7 +206,8 @@ function getSteady(startTime,endTime,lineIndex){
unbalanceVol.itemStyle=unbalanceVolitem;
//谐波电压
harmVoltage.value=getHarmVoltageValue(info.uAberrance,info.evenVoltage,info.oddVoltage);
// harmVoltage.value=getHarmVoltageValue(info.uAberrance,info.evenVoltage,info.oddVoltage);
harmVoltage.value=info.harmVoltage;
if(harmVoltage.value===3.14159){
harmVoltageUitem.color=noData;
harmVoltage.value=1.555;
@@ -238,7 +240,8 @@ function getSteady(startTime,endTime,lineIndex){
deviationVol.itemStyle=deviationVolitem;
//谐波电流
harmElec.value=getHarmElecValue(info.oddElectric,info.evenElectric);
// harmElec.value=getHarmElecValue(info.oddElectric,info.evenElectric);
harmElec.value=info.harmElec;
if(harmElec.value===3.14159){
harmElecitem.color=noData;
harmElec.value=1.555;
@@ -315,13 +318,12 @@ function getSteady(startTime,endTime,lineIndex){
}
//计算谐波电压
var harmVoltage =getHarmVoltageValue(info.uAberrance,info.evenVoltage,info.oddVoltage);
if(harmVoltage===3.14159){
if(info.harmVoltage===3.14159){
document.getElementById("data4").innerText = "(暂无数据)";
}else if(harmVoltage>100){
}else if(info.harmVoltage>100){
document.getElementById("data4").innerText = "100";
}else{
document.getElementById("data4").innerText = Number(harmVoltage).toFixed(2);
document.getElementById("data4").innerText = info.harmVoltage;
}
if(info.voltageDeviation===3.14159){
@@ -331,14 +333,14 @@ function getSteady(startTime,endTime,lineIndex){
}else{
document.getElementById("data5").innerText = info.voltageDeviation;
}
//计算谐波电流
var harmElec=getHarmElecValue(info.oddElectric,info.evenElectric);
if(harmElec===3.14159){
if(info.harmElec===3.14159){
document.getElementById("data6").innerText = "(暂无数据)";
}else if(harmElec>100){
}else if(info.harmElec>100){
document.getElementById("data6").innerText = "100";
}else{
document.getElementById("data6").innerText = harmElec;
document.getElementById("data6").innerText = info.harmElec;
}
if(info.iNeg===3.14159){
@@ -501,7 +503,8 @@ function getSteadyTB(startTime,endTime,laststartTime,lastendTime,lineIndex,selec
thisvalue2 = info[0].uBalance;
}
//获取谐波电压
var harmVoltage =getHarmVoltageValue(info[0].uAberrance,info[0].evenVoltage,info[0].oddVoltage);
// var harmVoltage =getHarmVoltageValue(info[0].uAberrance,info[0].evenVoltage,info[0].oddVoltage);
var harmVoltage = info[0].harmVoltage;
if(harmVoltage===3.14159){
thisTime.push(1.555);
thisvalue3="暂无数据";
@@ -524,7 +527,8 @@ function getSteadyTB(startTime,endTime,laststartTime,lastendTime,lineIndex,selec
thisvalue4 = info[0].voltageDeviation;
}
//获取谐波电流
var harmElec=getHarmElecValue(info[0].oddElectric,info[0].evenElectric);
// var harmElec=getHarmElecValue(info[0].oddElectric,info[0].evenElectric);
var harmElec = info[0].harmElec;
if(harmElec===3.14159){
thisTime.push(1.555);
thisvalue5="暂无数据";
@@ -590,7 +594,8 @@ function getSteadyTB(startTime,endTime,laststartTime,lastendTime,lineIndex,selec
lastvalue2 = info[1].uBalance;
}
//获取谐波电压
var harmVoltage =getHarmVoltageValue(info[1].uAberrance,info[1].evenVoltage,info[1].oddVoltage);
// var harmVoltage =getHarmVoltageValue(info[1].uAberrance,info[1].evenVoltage,info[1].oddVoltage);
var harmVoltage = info[1].harmVoltage;
if(harmVoltage===3.14159){
lastTime.push(1.555);
lastvalue3="暂无数据";
@@ -613,7 +618,8 @@ function getSteadyTB(startTime,endTime,laststartTime,lastendTime,lineIndex,selec
lastvalue4 = info[1].voltageDeviation;
}
//获取谐波电流
var harmElec=getHarmElecValue(info[1].oddElectric,info[1].evenElectric);
// var harmElec=getHarmElecValue(info[1].oddElectric,info[1].evenElectric);
var harmElec = info[1].harmElec;
if(harmElec===3.14159){
lastTime.push(1.555);
lastvalue5="暂无数据";