合格率算法调整

This commit is contained in:
xy
2024-06-20 10:22:43 +08:00
parent 1ca5ce855b
commit cb6a8f8e91
3 changed files with 35 additions and 54 deletions

View File

@@ -16,8 +16,6 @@ public class SteadyData implements Serializable {
private float allTime;
private float tAllTime;
private float frequency=3.1415f;
private float uBalance=3.1415f;
@@ -190,14 +188,6 @@ 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{" +
@@ -205,7 +195,6 @@ public class SteadyData implements Serializable {
", monitors=" + monitors +
", areaIndex='" + areaIndex + '\'' +
", allTime=" + allTime +
", tAllTime=" + tAllTime +
", frequency=" + frequency +
", uBalance=" + uBalance +
", uAberrance=" + uAberrance +

View File

@@ -12,7 +12,6 @@ import com.njcn.pojo.commons.runmanage.SteadyResult;
import com.njcn.pojo.commons.runmanage.SteadyTable;
import com.njcn.pojo.configuration.*;
import com.njcn.pojo.data.Legder;
import com.njcn.pojo.data.LegderExcel;
import com.njcn.pojo.jibei.Dnzljczz;
import com.njcn.pojo.jibei.Znycdz;
import com.njcn.pojo.system.Theme;
@@ -23,10 +22,6 @@ import com.njcn.shiro.token.TokenManager;
import com.njcn.utils.AppConfig;
import com.njcn.utils.PubUtils;
import com.njcn.utils.UserUtil;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -37,11 +32,13 @@ import org.springframework.util.StringUtils;
import javax.annotation.Resource;
import javax.imageio.stream.FileImageInputStream;
import javax.servlet.http.HttpServletResponse;
import java.io.*;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.IOException;
import java.sql.*;
import java.text.DecimalFormat;
import java.util.*;
import java.util.Date;
import java.util.*;
/**
* @author hongawen
@@ -240,11 +237,6 @@ 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 {
@@ -327,15 +319,14 @@ 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(tAllTime, steadyData.getiNeg()));
steadyData.setiNeg(getAcceptlityByData(allTime, steadyData.getiNeg()));
steadyData.setInUharm(getAcceptlityByData(allTime, steadyData.getInUharm()));
//冀北二期 谐波电流 谐波电压 负序电流 间谐波电压含有率 end
steadyData.setVoltageDeviation(getAcceptlityByData(allTime, steadyData.getVoltageDeviation()));
steadyData.setuBalance(getAcceptlityByData(tAllTime, steadyData.getuBalance()));
steadyData.setuBalance(getAcceptlityByData(allTime, steadyData.getuBalance()));
steadyData.setFlicker(getAcceptlityByData(steadyData.getAllFlicker(), steadyData.getFlicker()));
steadyData.setOddVoltage(getAcceptlityByData(allTime, steadyData.getOddVoltage()));
steadyData.setEvenVoltage(getAcceptlityByData(allTime, steadyData.getEvenVoltage()));

View File

@@ -412,32 +412,35 @@
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
B.MYINDEX,
CASE WHEN SUM(B.allTime) = 0 THEN 0 else ROUND((SUM(B.allTime) - SUM(B.UBALANCE)) / SUM(B.allTime), 4) * 100 end uBalance,
CASE WHEN SUM(B.allTime) = 0 THEN 0 else ROUND((SUM(B.allTime) - SUM(B.iNeg))/ SUM(B.allTime), 4) * 100 end 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
(
SELECT
lr.MYINDEX,
lr.TIMEID,
MAX(lr.allTime * pl.TINTERVAL) allTime,
MAX(lr.UBALANCE_OVERTIME * pl.TINTERVAL) UBALANCE,
MAX(lr.I_NEG_OVERTIME * pl.TINTERVAL) iNeg
FROM
LIMIT_RATE lr
LEFT JOIN
PQ_LINEDETAIL pl ON
lr.MYINDEX = pl.LINE_INDEX
WHERE
timeid between #{startTime} and #{endTime}
and myindex in
<foreach collection="list" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
and lr.PHASIC_TYPE IN ('A', 'B', 'C')
GROUP BY lr.MYINDEX, lr.TIMEID
) B
GROUP BY B.MYINDEX
)B
ON
A.line_index = B.line_index
ON A.line_index = B.MYINDEX
) T1,
PQ_LINE T2,
PQ_DEVICE T3,
@@ -581,7 +584,6 @@
left join
(
SELECT
SUM(B.tAllTime) tAllTime,
SUM(B.UBALANCE) UBALANCE,
DECODE( SUM(B.iNeg), NULL, 0, SUM(B.iNeg) ) iNeg
FROM
@@ -589,9 +591,8 @@
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
MAX(lr.UBALANCE_OVERTIME * pl.TINTERVAL) UBALANCE,
MAX(lr.I_NEG_OVERTIME * pl.TINTERVAL) iNeg
FROM
LIMIT_RATE lr
LEFT JOIN