mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-04-20 11:05:18 +08:00
update 电池算法应用Service
This commit is contained in:
@@ -143,6 +143,12 @@ public class ChargeAlgorithmRecord extends BaseEntity {
|
||||
@Excel(name = "故障体系指标")
|
||||
private String failureMetrics;
|
||||
|
||||
/**
|
||||
* 性能体系指标
|
||||
*/
|
||||
@Excel(name = "性能体系指标")
|
||||
private String performanceMetrics;
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return new ToStringBuilder(this, ToStringStyle.JSON_STYLE)
|
||||
@@ -167,6 +173,7 @@ public class ChargeAlgorithmRecord extends BaseEntity {
|
||||
.append("maxAllowableElectricityAlarm", getMaxAllowableElectricityAlarm())
|
||||
.append("securitySystemLevel", getSecuritySystemLevel())
|
||||
.append("failureMetrics", getFailureMetrics())
|
||||
.append("performanceMetrics", getPerformanceMetrics())
|
||||
.append("createTime", getCreateTime())
|
||||
.toString();
|
||||
}
|
||||
|
||||
@@ -108,6 +108,12 @@ public class ChargeAlgorithmRecordServiceImpl implements ChargeAlgorithmRecordSe
|
||||
String securitySystemLevel = record.getSecuritySystemLevel();
|
||||
ChargeAlgorithmRecordVO.SecuritySystem securitySystem = JSON.parseObject(securitySystemLevel, ChargeAlgorithmRecordVO.SecuritySystem.class);
|
||||
|
||||
String failureMetricsStr = record.getFailureMetrics();
|
||||
ChargeAlgorithmRecordVO.FailureMetrics failureMetrics = JSON.parseObject(failureMetricsStr, ChargeAlgorithmRecordVO.FailureMetrics.class);
|
||||
|
||||
String performanceMetricsStr = record.getPerformanceMetrics();
|
||||
ChargeAlgorithmRecordVO.PerformanceMetrics performanceMetrics = JSON.parseObject(performanceMetricsStr, ChargeAlgorithmRecordVO.PerformanceMetrics.class);
|
||||
|
||||
ChargeAlgorithmRecordVO vo = ChargeAlgorithmRecordVO.builder()
|
||||
.orderCode(record.getOrderCode())
|
||||
.score(record.getScore())
|
||||
@@ -128,7 +134,8 @@ public class ChargeAlgorithmRecordServiceImpl implements ChargeAlgorithmRecordSe
|
||||
.maxAllowableVoltageAlarm(record.getMaxAllowableVoltageAlarm())
|
||||
.maxAllowableElectricityAlarm(record.getMaxAllowableElectricityAlarm())
|
||||
.securitySystemLevel(securitySystem)
|
||||
.failureMetrics(record.getFailureMetrics())
|
||||
.failureMetrics(failureMetrics)
|
||||
.performanceMetrics(performanceMetrics)
|
||||
|
||||
.build();
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.jsowell.pile.vo.uniapp.customer;
|
||||
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import com.jsowell.common.annotation.Excel;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
@@ -7,6 +8,7 @@ import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 电池充电订单报告VO
|
||||
@@ -138,7 +140,9 @@ public class ChargeAlgorithmRecordVO {
|
||||
* 故障体系指标
|
||||
*/
|
||||
@Excel(name = "故障体系指标")
|
||||
private String failureMetrics;
|
||||
private FailureMetrics failureMetrics;
|
||||
|
||||
private PerformanceMetrics performanceMetrics;
|
||||
|
||||
@Data
|
||||
public static class SecuritySystem{
|
||||
@@ -155,4 +159,95 @@ public class ChargeAlgorithmRecordVO {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@Data
|
||||
public static class FailureMetrics{
|
||||
// @JSONField(name = "volt_rise_alarm")
|
||||
private VoltRiseAlarm voltRiseAlarm;
|
||||
|
||||
private VoltRiseAlarm voltDecayAlarm;
|
||||
|
||||
private VoltRiseAlarm tempDiffAlarm;
|
||||
|
||||
private VoltRiseAlarm tempRiseAlarm;
|
||||
|
||||
private VoltRiseAlarm socAlarm;
|
||||
|
||||
@Data
|
||||
public static class VoltRiseAlarm{
|
||||
private List<String> threshold;
|
||||
|
||||
private String result;
|
||||
|
||||
private String value;
|
||||
}
|
||||
|
||||
@Data
|
||||
public static class voltDecayAlarm{
|
||||
private List<String> threshold;
|
||||
|
||||
private String result;
|
||||
|
||||
private String value;
|
||||
}
|
||||
|
||||
@Data
|
||||
public static class tempDiffAlarm{
|
||||
private List<String> threshold;
|
||||
|
||||
private String result;
|
||||
|
||||
private String value;
|
||||
}
|
||||
|
||||
@Data
|
||||
public static class tempRiseAlarm{
|
||||
private List<String> threshold;
|
||||
|
||||
private String result;
|
||||
|
||||
private String value;
|
||||
}
|
||||
|
||||
@Data
|
||||
public static class socAlarm{
|
||||
private List<String> threshold;
|
||||
|
||||
private String result;
|
||||
|
||||
private String value;
|
||||
}
|
||||
}
|
||||
|
||||
public static class PerformanceMetrics{
|
||||
private ChargingLoss chargingLoss;
|
||||
private BMSAccuracy bmsAccuracy;
|
||||
private DCInternalResistance dcInternalResistance;
|
||||
|
||||
public static class ChargingLoss{
|
||||
private List<String> threshold;
|
||||
|
||||
private String result;
|
||||
|
||||
private String value;
|
||||
}
|
||||
|
||||
public static class BMSAccuracy{
|
||||
private List<String> threshold;
|
||||
|
||||
private String result;
|
||||
|
||||
private String value;
|
||||
}
|
||||
|
||||
public static class DCInternalResistance{
|
||||
private List<String> threshold;
|
||||
|
||||
private String result;
|
||||
|
||||
private String value;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -26,11 +26,14 @@
|
||||
<result property="maxAllowableElectricityAlarm" column="max_allowable_electricity_alarm" />
|
||||
<result property="securitySystemLevel" column="security_system_level" />
|
||||
<result property="failureMetrics" column="failure_metrics" />
|
||||
<result property="performanceMetrics" column="performance_metrics" />
|
||||
<result property="createTime" column="create_time" />
|
||||
</resultMap>
|
||||
|
||||
<sql id="selectChargeAlgorithmRecordVo">
|
||||
select id, order_code, score, capacity_metrics, energy_indicator, consistency, temp_consistency, volt_consistency, capacity_consistency, sot, thermal_runaway, cooling, seal, current_soc, soc_alarm, temp_diff_alarm, temp_rise_alarm, max_allowable_voltage_alarm, max_allowable_electricity_alarm, security_system_level, failure_metrics, create_time from charge_algorithm_record
|
||||
select id, order_code, score, capacity_metrics, energy_indicator, consistency, temp_consistency, volt_consistency,
|
||||
capacity_consistency, sot, thermal_runaway, cooling, seal, current_soc, soc_alarm, temp_diff_alarm, temp_rise_alarm,
|
||||
max_allowable_voltage_alarm, max_allowable_electricity_alarm, security_system_level, failure_metrics, performance_metrics, create_time from charge_algorithm_record
|
||||
</sql>
|
||||
|
||||
<select id="selectChargeAlgorithmRecordList" parameterType="com.jsowell.pile.domain.ChargeAlgorithmRecord" resultMap="ChargeAlgorithmRecordResult">
|
||||
@@ -56,6 +59,7 @@
|
||||
<if test="maxAllowableElectricityAlarm != null and maxAllowableElectricityAlarm != ''"> and max_allowable_electricity_alarm = #{maxAllowableElectricityAlarm}</if>
|
||||
<if test="securitySystemLevel != null and securitySystemLevel != ''"> and security_system_level = #{securitySystemLevel}</if>
|
||||
<if test="failureMetrics != null and failureMetrics != ''"> and failure_metrics = #{failureMetrics}</if>
|
||||
<if test="performanceMetrics != null and performanceMetrics != ''"> and performance_metrics = #{performanceMetrics}</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
@@ -87,6 +91,7 @@
|
||||
<if test="maxAllowableElectricityAlarm != null">max_allowable_electricity_alarm,</if>
|
||||
<if test="securitySystemLevel != null">security_system_level,</if>
|
||||
<if test="failureMetrics != null">failure_metrics,</if>
|
||||
<if test="performanceMetrics != null">performance_metrics,</if>
|
||||
<if test="createTime != null">create_time,</if>
|
||||
</trim>
|
||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||
@@ -110,6 +115,7 @@
|
||||
<if test="maxAllowableElectricityAlarm != null">#{maxAllowableElectricityAlarm},</if>
|
||||
<if test="securitySystemLevel != null">#{securitySystemLevel},</if>
|
||||
<if test="failureMetrics != null">#{failureMetrics},</if>
|
||||
<if test="performanceMetrics != null">#{performanceMetrics},</if>
|
||||
<if test="createTime != null">#{createTime},</if>
|
||||
</trim>
|
||||
</insert>
|
||||
@@ -137,6 +143,7 @@
|
||||
<if test="maxAllowableElectricityAlarm != null">max_allowable_electricity_alarm = #{maxAllowableElectricityAlarm},</if>
|
||||
<if test="securitySystemLevel != null">security_system_level = #{securitySystemLevel},</if>
|
||||
<if test="failureMetrics != null">failure_metrics = #{failureMetrics},</if>
|
||||
<if test="performanceMetrics != null">performance_metrics = #{performanceMetrics},</if>
|
||||
<if test="createTime != null">create_time = #{createTime},</if>
|
||||
</trim>
|
||||
where id = #{id}
|
||||
|
||||
@@ -28,6 +28,7 @@ import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.math.RoundingMode;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@@ -240,20 +241,20 @@ public class ChargeAlgorithmService {
|
||||
detailInfo.setCurrentSoc(new BigDecimal(realTimeData_0x23.getSoc()).intValue());
|
||||
detailInfo.setReportTime(realTimeData_0x23.getDateTime().replaceAll("[^0-9]", ""));
|
||||
detailInfo.setMaxAllowElectricity(new BigDecimal(parameterConfigData.getBmsMaxCurrent()).toBigInteger().toString());
|
||||
detailInfo.setSingleMaxAllowVoltage(parameterConfigData.getBmsMaxVoltage());
|
||||
detailInfo.setSingleMaxAllowVoltage(new BigDecimal(parameterConfigData.getBmsMaxVoltage()).setScale(1, RoundingMode.HALF_DOWN).toString());
|
||||
detailInfo.setDcv(new BigDecimal(realTimeData_0x23.getPileVoltageOutput()).toBigInteger().toString());
|
||||
detailInfo.setDca(new BigDecimal(realTimeData_0x23.getPileCurrentOutput()).toBigInteger().toString());
|
||||
detailInfo.setBmsDemandVoltage(new BigDecimal(realTimeData_0x23.getBmsVoltageDemand()).toBigInteger().toString());
|
||||
detailInfo.setBmsDemandElectricity(new BigDecimal(realTimeData_0x23.getBmsCurrentDemand()).toBigInteger().toString());
|
||||
detailInfo.setChargePower(realTimeData_0x23.getOutputPower());
|
||||
detailInfo.setSingleMaxVoltage(parameterConfigData.getPileMaxOutputVoltage());
|
||||
detailInfo.setSingleMinVoltage(parameterConfigData.getPileMinOutputVoltage());
|
||||
detailInfo.setSingleMaxVoltage(new BigDecimal(parameterConfigData.getPileMaxOutputVoltage()).setScale(1, RoundingMode.HALF_DOWN).toString());
|
||||
detailInfo.setSingleMinVoltage(new BigDecimal(parameterConfigData.getPileMinOutputVoltage()).setScale(1, RoundingMode.HALF_DOWN).toString());
|
||||
|
||||
detailInfo.setMeasuringChargeVoltage(new BigDecimal(realTimeData_0x23.getBmsChargingVoltage()).toBigInteger().toString());
|
||||
detailInfo.setMeasuringChargeElectricity(new BigDecimal(realTimeData_0x23.getBmsChargingCurrent()).toBigInteger().toString());
|
||||
detailInfo.setMaxSingleVoltageGroupNum(new BigDecimal(realTimeData_0x23.getBmsMaxVoltageAndGroup()).intValue());
|
||||
|
||||
detailInfo.setMaxAllowTotalVoltage(parameterConfigData.getBmsMaxChargingVoltage());
|
||||
detailInfo.setMaxAllowTotalVoltage(new BigDecimal(parameterConfigData.getBmsMaxChargingVoltage()).toBigInteger().toString());
|
||||
detailInfo.setBeforeChargeTotalVoltage(new BigDecimal(parameterConfigData.getBmsRealTimeVoltage()).toBigInteger().toString());
|
||||
|
||||
detailInfo.setVentTemp("0");
|
||||
|
||||
Reference in New Issue
Block a user