Browse Source

充电桩的数量

2025年2月12日16:40:12
qingyuan_dev_new
lishuai 11 months ago
parent
commit
f45ddcbccf
  1. 15
      modules/qingyuan/src/main/java/com/thing/qingyuan/screen/StationChargeStatus.java
  2. 6
      modules/qingyuan/src/main/java/com/thing/qingyuan/screen/service/impl/StationScreenServiceImpl.java

15
modules/qingyuan/src/main/java/com/thing/qingyuan/screen/StationChargeStatus.java

@ -55,7 +55,8 @@ public class StationChargeStatus {
public static class GunUsageDuration { public static class GunUsageDuration {
@Schema(description = "枪名") @Schema(description = "枪名")
private String gunName; private String gunName;
// @Schema(description = "枪id")
// private String connectorId;
@Schema(description = "枪使用时长,单位 h") @Schema(description = "枪使用时长,单位 h")
private BigDecimal hours; private BigDecimal hours;
} }
@ -75,7 +76,7 @@ public class StationChargeStatus {
.collect( .collect(
Collectors.toMap( Collectors.toMap(
ConnectorInfoEntity::getConnectorId, ConnectorInfoEntity::getConnectorId,
ConnectorInfoEntity::getConnectorName,
ConnectorInfoEntity::getConnectorId,
(v1, v2) -> v1)); (v1, v2) -> v1));
// 汇总使用率数据 // 汇总使用率数据
@ -97,10 +98,18 @@ public class StationChargeStatus {
BigDecimal.valueOf(24 * (long) chargeStatus.getTotalGunCount()), BigDecimal.valueOf(24 * (long) chargeStatus.getTotalGunCount()),
3, 3,
RoundingMode.HALF_UP); RoundingMode.HALF_UP);
List<GunUsageDuration> updatedList =
gunUsageDurationList.stream()
.sorted(Comparator.comparing(GunUsageDuration::getGunName)) // 排序
.toList();
// 遍历排序后的列表设置connectorName为下标
for (int i = 0; i < updatedList.size(); i++) {
updatedList.get(i).setGunName(String.valueOf(i)); // 设置connectorName为下标值
}
return chargeStatus return chargeStatus
.setUsagePercent(usagePercent.multiply(new BigDecimal("100"))) .setUsagePercent(usagePercent.multiply(new BigDecimal("100")))
.setGunUsageDurations(gunUsageDurationList);
.setGunUsageDurations(updatedList);
} }
private StationChargeStatus add(ConnectorInfoEntity gunInfo) { private StationChargeStatus add(ConnectorInfoEntity gunInfo) {

6
modules/qingyuan/src/main/java/com/thing/qingyuan/screen/service/impl/StationScreenServiceImpl.java

@ -16,12 +16,10 @@ import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.*;
import java.util.function.Function; import java.util.function.Function;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import java.util.stream.IntStream;
/** /**
* @author SiYang * @author SiYang

Loading…
Cancel
Save