mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-04-20 11:05:18 +08:00
update
This commit is contained in:
@@ -51,6 +51,10 @@ import java.math.BigDecimal;
|
||||
import java.security.NoSuchAlgorithmException;
|
||||
import java.security.NoSuchProviderException;
|
||||
import java.security.spec.InvalidKeySpecException;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.LocalTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.*;
|
||||
|
||||
@Service
|
||||
@@ -792,10 +796,14 @@ public class ChangZhouPlatformServiceImpl implements ThirdPartyPlatformService {
|
||||
SupChargeDetails detail;
|
||||
for (BillingPriceVO billingPriceVO : billingList) {
|
||||
detail = new SupChargeDetails();
|
||||
|
||||
String startTime = convertTime(billingPriceVO.getStartTime());
|
||||
String endTime = convertTime(billingPriceVO.getEndTime());
|
||||
|
||||
if (StringUtils.equals(billingPriceVO.getTimeType(), BillingTimeTypeEnum.SHARP.getValue())) {
|
||||
// 尖时段
|
||||
detail.setDetailStartTime(billingPriceVO.getStartTime());
|
||||
detail.setDetailEndTime(billingPriceVO.getEndTime());
|
||||
detail.setDetailStartTime(startTime);
|
||||
detail.setDetailEndTime(endTime);
|
||||
detail.setElecPrice(new BigDecimal(billingPriceVO.getElectricityPrice()).setScale(4, BigDecimal.ROUND_HALF_UP));
|
||||
detail.setSevicePrice(new BigDecimal(billingPriceVO.getServicePrice()).setScale(4, BigDecimal.ROUND_HALF_UP));
|
||||
detail.setDetailPower(orderDetail.getSharpUsedElectricity());
|
||||
@@ -803,8 +811,8 @@ public class ChangZhouPlatformServiceImpl implements ThirdPartyPlatformService {
|
||||
detail.setDetailSeviceMoney(orderDetail.getSharpServicePrice());
|
||||
} else if (StringUtils.equals(billingPriceVO.getTimeType(), BillingTimeTypeEnum.PEAK.getValue())) {
|
||||
// 峰时段
|
||||
detail.setDetailStartTime(billingPriceVO.getStartTime());
|
||||
detail.setDetailEndTime(billingPriceVO.getEndTime());
|
||||
detail.setDetailStartTime(startTime);
|
||||
detail.setDetailEndTime(endTime);
|
||||
detail.setElecPrice(new BigDecimal(billingPriceVO.getElectricityPrice()).setScale(4, BigDecimal.ROUND_HALF_UP));
|
||||
detail.setSevicePrice(new BigDecimal(billingPriceVO.getServicePrice()).setScale(4, BigDecimal.ROUND_HALF_UP));
|
||||
detail.setDetailPower(orderDetail.getPeakUsedElectricity());
|
||||
@@ -812,8 +820,8 @@ public class ChangZhouPlatformServiceImpl implements ThirdPartyPlatformService {
|
||||
detail.setDetailSeviceMoney(orderDetail.getPeakServicePrice());
|
||||
} else if (StringUtils.equals(billingPriceVO.getTimeType(), BillingTimeTypeEnum.FLAT.getValue())) {
|
||||
// 平时段
|
||||
detail.setDetailStartTime(billingPriceVO.getStartTime());
|
||||
detail.setDetailEndTime(billingPriceVO.getEndTime());
|
||||
detail.setDetailStartTime(startTime);
|
||||
detail.setDetailEndTime(endTime);
|
||||
detail.setElecPrice(new BigDecimal(billingPriceVO.getElectricityPrice()).setScale(4, BigDecimal.ROUND_HALF_UP));
|
||||
detail.setSevicePrice(new BigDecimal(billingPriceVO.getServicePrice()).setScale(4, BigDecimal.ROUND_HALF_UP));
|
||||
detail.setDetailPower(orderDetail.getFlatUsedElectricity());
|
||||
@@ -821,8 +829,8 @@ public class ChangZhouPlatformServiceImpl implements ThirdPartyPlatformService {
|
||||
detail.setDetailSeviceMoney(orderDetail.getFlatServicePrice());
|
||||
} else if (StringUtils.equals(billingPriceVO.getTimeType(), BillingTimeTypeEnum.VALLEY.getValue())) {
|
||||
// 谷时段
|
||||
detail.setDetailStartTime(billingPriceVO.getStartTime());
|
||||
detail.setDetailEndTime(billingPriceVO.getEndTime());
|
||||
detail.setDetailStartTime(startTime);
|
||||
detail.setDetailEndTime(endTime);
|
||||
detail.setElecPrice(new BigDecimal(billingPriceVO.getElectricityPrice()).setScale(4, BigDecimal.ROUND_HALF_UP));
|
||||
detail.setSevicePrice(new BigDecimal(billingPriceVO.getServicePrice()).setScale(4, BigDecimal.ROUND_HALF_UP));
|
||||
detail.setDetailPower(orderDetail.getValleyUsedElectricity());
|
||||
@@ -835,6 +843,28 @@ public class ChangZhouPlatformServiceImpl implements ThirdPartyPlatformService {
|
||||
}
|
||||
|
||||
|
||||
public static String convertTime(String timeStr) {
|
||||
try {
|
||||
// 1. 解析输入的 HH:mm 为 LocalTime
|
||||
DateTimeFormatter timeFormatter = DateTimeFormatter.ofPattern("HH:mm");
|
||||
LocalTime localTime = LocalTime.parse(timeStr, timeFormatter);
|
||||
|
||||
// 2. 获取当前日期(年、月、日)
|
||||
LocalDate currentDate = LocalDate.now();
|
||||
|
||||
// 3. 合并日期和时间为 LocalDateTime
|
||||
LocalDateTime dateTime = LocalDateTime.of(currentDate, localTime);
|
||||
|
||||
// 4. 格式化为目标格式 yyyy-MM-dd HH:mm:ss
|
||||
DateTimeFormatter outputFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
||||
return dateTime.format(outputFormatter);
|
||||
|
||||
} catch (Exception e) {
|
||||
throw new IllegalArgumentException("时间格式错误,应为 HH:mm", e);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 获取配置密钥信息
|
||||
|
||||
Reference in New Issue
Block a user