电能质量问题修改
This commit is contained in:
@@ -128,7 +128,10 @@ public class CarryCapcityServiceImpl implements CarryCapcityService {
|
|||||||
dataHarmPowerQ2List = (List<CarryCapcityData>) redisUtil.getObjectByKey(lineId + "#" + LocalDateTimeUtil.format(startDate2, formatter) + "#" + LocalDateTimeUtil.format(endDate2, formatter) + "#" + "Q");
|
dataHarmPowerQ2List = (List<CarryCapcityData>) redisUtil.getObjectByKey(lineId + "#" + LocalDateTimeUtil.format(startDate2, formatter) + "#" + LocalDateTimeUtil.format(endDate2, formatter) + "#" + "Q");
|
||||||
dataHarmPowerU2List = (List<CarryCapcityData>) redisUtil.getObjectByKey(lineId + "#" + LocalDateTimeUtil.format(startDate2, formatter) + "#" + LocalDateTimeUtil.format(endDate2, formatter) + "#" + "U");
|
dataHarmPowerU2List = (List<CarryCapcityData>) redisUtil.getObjectByKey(lineId + "#" + LocalDateTimeUtil.format(startDate2, formatter) + "#" + LocalDateTimeUtil.format(endDate2, formatter) + "#" + "U");
|
||||||
|
|
||||||
if(CollectionUtil.isEmpty(dataHarmPowerPList)){
|
if(CollectionUtil.isEmpty(dataHarmPowerPList)||
|
||||||
|
CollectionUtil.isEmpty(dataHarmPowerP2List)||
|
||||||
|
CollectionUtil.isEmpty(dataHarmPowerQ2List)||
|
||||||
|
CollectionUtil.isEmpty(dataHarmPowerU2List)){
|
||||||
CarryCapacityDataPO one = carryCapacityDataPOService.lambdaQuery().eq(CarryCapacityDataPO::getLineId, lineId)
|
CarryCapacityDataPO one = carryCapacityDataPOService.lambdaQuery().eq(CarryCapacityDataPO::getLineId, lineId)
|
||||||
.eq(CarryCapacityDataPO::getStartTime, startTime)
|
.eq(CarryCapacityDataPO::getStartTime, startTime)
|
||||||
.eq(CarryCapacityDataPO::getEndTime, endTime).one();
|
.eq(CarryCapacityDataPO::getEndTime, endTime).one();
|
||||||
|
|||||||
@@ -157,7 +157,7 @@ public class CZNLPG {
|
|||||||
* 结论:【拟接入光伏容量】为入参;【A/B/C相有功功率】和【A/B/C相无功功率值】95%小值从A/B/C相历史数据中计算得出; 为枚举参数;能够计算三相配变首端电压 、 、 ,从而得出U 。
|
* 结论:【拟接入光伏容量】为入参;【A/B/C相有功功率】和【A/B/C相无功功率值】95%小值从A/B/C相历史数据中计算得出; 为枚举参数;能够计算三相配变首端电压 、 、 ,从而得出U 。
|
||||||
* 380v -U=C-a(p_min -k*S_pv/3)-b*q_min
|
* 380v -U=C-a(p_min -k*S_pv/3)-b*q_min
|
||||||
* 220v -U=C-a(p_min -k*S_pv)-b*q_min
|
* 220v -U=C-a(p_min -k*S_pv)-b*q_min
|
||||||
*
|
*(后续咨询只分单项三项,目前数据都是三项)
|
||||||
* @Param:
|
* @Param:
|
||||||
* @return: double
|
* @return: double
|
||||||
* @Author: clam
|
* @Author: clam
|
||||||
@@ -165,13 +165,13 @@ public class CZNLPG {
|
|||||||
*/
|
*/
|
||||||
public static double calculateU(double C, double a, double b, double p_min, double K, double q_min,double S_pv, double voltage) {
|
public static double calculateU(double C, double a, double b, double p_min, double K, double q_min,double S_pv, double voltage) {
|
||||||
|
|
||||||
if (voltage == 220) {
|
// if (voltage == 220) {
|
||||||
return C-a*(p_min-K*S_pv)-b*q_min;
|
// return C-a*(p_min-K*S_pv)-b*q_min;
|
||||||
} else if (voltage == 380) {
|
// } else if (voltage == 380) {
|
||||||
return C-a*(p_min-K*S_pv/3)-b*q_min;
|
return C-a*(p_min-K*S_pv/3)-b*q_min;
|
||||||
} else {
|
// } else {
|
||||||
return 0;
|
// return 0;
|
||||||
}
|
// }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -181,19 +181,20 @@ public class CZNLPG {
|
|||||||
* k为修正系数,徐工提供海南k系数,是否需要考虑不同季节台区日照系数。
|
* k为修正系数,徐工提供海南k系数,是否需要考虑不同季节台区日照系数。
|
||||||
* 结论:【电压等级】为入参;I_(stock,h)为台区一周内的h次谐波电流95%概率大值,I_"inv" ^h%为光伏逆变器第h次的典型谐波电流含有率,
|
* 结论:【电压等级】为入参;I_(stock,h)为台区一周内的h次谐波电流95%概率大值,I_"inv" ^h%为光伏逆变器第h次的典型谐波电流含有率,
|
||||||
* 为枚举参数;k为枚举参数;能够计算各次的谐波电流幅值 、 、 ,从而得出 。
|
* 为枚举参数;k为枚举参数;能够计算各次的谐波电流幅值 、 、 ,从而得出 。
|
||||||
|
* (后续咨询只分单项三项,目前数据都是三项)
|
||||||
*/
|
*/
|
||||||
public static double calculateITm(double I_cp95, double k, double voltage, double S_pv, double K, double I_inv) {
|
public static double calculateITm(double I_cp95, double k, double voltage, double S_pv, double K, double I_inv) {
|
||||||
double term1 = Math.pow(I_cp95, 2);
|
double term1 = Math.pow(I_cp95, 2);
|
||||||
double term2 = 0, term3 = 0;
|
double term2 = 0, term3 = 0;
|
||||||
if (voltage == 220) {
|
// if (voltage == 220) {
|
||||||
term2 = Math.pow(k * S_pv * I_inv / 220, 2);
|
// term2 = Math.pow(k * S_pv * I_inv / 220, 2);
|
||||||
term3 = K * I_cp95 * (k * S_pv * I_inv / 220);
|
// term3 = K * I_cp95 * (k * S_pv * I_inv / 220);
|
||||||
} else if (voltage == 380) {
|
// } else if (voltage == 380) {
|
||||||
term2 = Math.pow(k * S_pv * I_inv / 3 * 220, 2);
|
term2 = Math.pow(k * S_pv * I_inv / 3 * 220, 2);
|
||||||
term3 = K * I_cp95 * (k * S_pv * I_inv / 3 * 220);
|
term3 = K * I_cp95 * (k * S_pv * I_inv / 3 * 220);
|
||||||
} else {
|
// } else {
|
||||||
return 0;
|
// return 0;
|
||||||
}
|
// }
|
||||||
|
|
||||||
double sumOfTerms = term1 + term2 + term3;
|
double sumOfTerms = term1 + term2 + term3;
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
package com.njcn.process.pojo.po;
|
package com.njcn.process.pojo.po;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
@@ -23,6 +25,7 @@ public class RMpElectricQualityProblemFlowDetails implements Serializable {
|
|||||||
/**
|
/**
|
||||||
* 电能质量问题编号
|
* 电能质量问题编号
|
||||||
*/
|
*/
|
||||||
|
@TableId(type = IdType.INPUT)
|
||||||
private String powerQualityProblemNo;
|
private String powerQualityProblemNo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -240,7 +240,11 @@ public class IssuesServiceImpl implements IssuesService {
|
|||||||
private RMpElectricQualityProblemFlowDetails flowDetailSelectOne(String powerQualityProblemNo) {
|
private RMpElectricQualityProblemFlowDetails flowDetailSelectOne(String powerQualityProblemNo) {
|
||||||
LambdaQueryWrapper<RMpElectricQualityProblemFlowDetails> flowQuery = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<RMpElectricQualityProblemFlowDetails> flowQuery = new LambdaQueryWrapper<>();
|
||||||
flowQuery.eq(RMpElectricQualityProblemFlowDetails::getPowerQualityProblemNo, powerQualityProblemNo);
|
flowQuery.eq(RMpElectricQualityProblemFlowDetails::getPowerQualityProblemNo, powerQualityProblemNo);
|
||||||
return flowDetailsMapper.selectOne(flowQuery);
|
RMpElectricQualityProblemFlowDetails rMpElectricQualityProblemFlowDetails = flowDetailsMapper.selectOne(flowQuery);
|
||||||
|
if(Objects.isNull(rMpElectricQualityProblemFlowDetails)){
|
||||||
|
rMpElectricQualityProblemFlowDetails = new RMpElectricQualityProblemFlowDetails();
|
||||||
|
}
|
||||||
|
return rMpElectricQualityProblemFlowDetails;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -399,7 +403,13 @@ public class IssuesServiceImpl implements IssuesService {
|
|||||||
details.setDataDateYyfx(local);
|
details.setDataDateYyfx(local);
|
||||||
details.setReportProcessContentYyfx(ArrayUtil.toString(processParam.getReportProcessContentYyfx()));
|
details.setReportProcessContentYyfx(ArrayUtil.toString(processParam.getReportProcessContentYyfx()));
|
||||||
details.setUserReportProcessContentYyfx(ArrayUtil.toString(processParam.getUserReportProcessContentYyfx()));
|
details.setUserReportProcessContentYyfx(ArrayUtil.toString(processParam.getUserReportProcessContentYyfx()));
|
||||||
flowDetailsMapper.insert(details);
|
RMpElectricQualityProblemFlowDetails rMpElectricQualityProblemFlowDetails = flowDetailsMapper.selectById(details.getPowerQualityProblemNo());
|
||||||
|
if (rMpElectricQualityProblemFlowDetails != null) {
|
||||||
|
flowDetailsMapper.updateById(details);
|
||||||
|
}else {
|
||||||
|
flowDetailsMapper.insert(details);
|
||||||
|
|
||||||
|
}
|
||||||
LambdaQueryWrapper<RStatElectricQualityProblemFlow> issuesQuery = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<RStatElectricQualityProblemFlow> issuesQuery = new LambdaQueryWrapper<>();
|
||||||
issuesQuery.eq(RStatElectricQualityProblemFlow::getPowerQualityProblemNo, processParam.getPowerQualityProblemNo());
|
issuesQuery.eq(RStatElectricQualityProblemFlow::getPowerQualityProblemNo, processParam.getPowerQualityProblemNo());
|
||||||
RStatElectricQualityProblemFlow issuesOut = issuesMapper.selectOne(issuesQuery);
|
RStatElectricQualityProblemFlow issuesOut = issuesMapper.selectOne(issuesQuery);
|
||||||
|
|||||||
Reference in New Issue
Block a user