From 36e7b299289c393c3460140dc966e83f9ea2e749 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期二, 11 二月 2025 09:51:22 +0800
Subject: [PATCH] 修改bug
---
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java | 2
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/QueryChargeOrderInfoResult.java | 4 +
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/model/ConnectorStatusInfo.java | 3 +
ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingGunClient.java | 9 +++
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/TCECController.java | 11 +++
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/TCECUtil.java | 9 ++
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/QueryTerminalCodeResult.java | 2
ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingGunFallbackFactory.java | 5 +
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java | 11 +++
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/OrderInfo.java | 35 ++++++++---
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/model/ConnectorStatusInfo1.java | 54 ++++++++++++++++++
11 files changed, 128 insertions(+), 17 deletions(-)
diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingGunFallbackFactory.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingGunFallbackFactory.java
index 384df0f..81b2753 100644
--- a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingGunFallbackFactory.java
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingGunFallbackFactory.java
@@ -69,6 +69,11 @@
public R pushChargingGunStatus(Integer id, Integer status) {
return R.fail("接口状态变化后推送给第三方失败:" + throwable.getMessage());
}
+
+ @Override
+ public R<TChargingGun> getChargingGunByFullNumber(String fullNumber) {
+ return R.fail("根据枪唯一码查询信息失败:" + throwable.getMessage());
+ }
};
}
}
diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingGunClient.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingGunClient.java
index bb7bc35..5224e07 100644
--- a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingGunClient.java
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingGunClient.java
@@ -86,4 +86,13 @@
*/
@PostMapping("/t-charging-gun/pushChargingGunStatus")
R pushChargingGunStatus(@RequestParam("id") Integer id, @RequestParam("status") Integer status);
+
+
+
+ /**
+ * 根据枪唯一码查询信息
+ * @return
+ */
+ @PostMapping("/t-charging-gun/getChargingGunByFullNumber")
+ R<TChargingGun> getChargingGunByFullNumber(@RequestParam("fullNumber") String fullNumber);
}
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java
index 961ab8a..bdc8e6e 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java
@@ -321,5 +321,16 @@
.eq(TChargingGun::getDelFlag, 0));
return R.ok(list);
}
+
+
+ /**
+ * 根据枪唯一码查询信息
+ * @return
+ */
+ @PostMapping("/getChargingGunByFullNumber")
+ public R<TChargingGun> getChargingGunByFullNumber(@RequestParam("fullNumber") String fullNumber){
+ TChargingGun chargingGun = chargingGunService.getOne(new LambdaQueryWrapper<TChargingGun>().eq(TChargingGun::getDelFlag, 0).eq(TChargingGun::getFullNumber, fullNumber));
+ return R.ok(chargingGun);
+ }
}
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/TCECController.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/TCECController.java
index 1973b3b..f931203 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/TCECController.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/TCECController.java
@@ -271,7 +271,7 @@
stationInfo.setOperatorID("906171535");
stationInfo.setEquipmentOwnerID("906171535");
stationInfo.setStationName(datum.getName());
- stationInfo.setCountryCode(datum.getCountryCode());
+ stationInfo.setCountryCode(StringUtils.isNotEmpty(datum.getCountryCode()) ? datum.getCountryCode() : "CN");
stationInfo.setAreaCode(datum.getDistrictsCode());
stationInfo.setAddress(datum.getAddress());
stationInfo.setStationTel(datum.getPhone());
@@ -393,6 +393,7 @@
//构建设备接口信息
equipmentInfo.setConnectorInfos(buildConnectorInfos(tChargingPile.getId(), tChargingPile.getCode(), chargingGunList));
+ equipmentInfo.setPower(tChargingPile.getRatedPower());
equipmentInfos.add(equipmentInfo);
}
return equipmentInfos;
@@ -475,6 +476,9 @@
connectorStatusInfo.setStatus(255);
break;
}
+ ConnectorStatusInfo connectorStatusInfo1 = new ConnectorStatusInfo();
+ BeanUtils.copyProperties(connectorStatusInfo, connectorStatusInfo1);
+ connectorStatusInfo.setConnectorStatusInfo(connectorStatusInfo1);
List<Operator> operators = operatorClient.getAllOperator().getData();
for (Operator operator : operators) {
TCECUtil.notificationStationStatus(operator, connectorStatusInfo);
@@ -1422,8 +1426,11 @@
QueryTerminalCode queryTerminalCode = JSON.parseObject(decrypt, QueryTerminalCode.class);
String qrCode = queryTerminalCode.getQRCode();
String substring = qrCode.substring(qrCode.indexOf("=") + 1);
+ TChargingGun chargingGun = chargingGunClient.getChargingGunByFullNumber(substring).getData();
QueryTerminalCodeResult queryTerminalCodeResult = new QueryTerminalCodeResult();
- queryTerminalCodeResult.setTerminalCode(substring);
+ if(null != chargingGun){
+ queryTerminalCodeResult.setTerminalCode(chargingGun.getId().toString());
+ }
//参数加密
String jsonString = JacksonUtils.toJson(queryTerminalCodeResult);
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/TCECUtil.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/TCECUtil.java
index 54980d9..8d147f0 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/TCECUtil.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/TCECUtil.java
@@ -297,7 +297,10 @@
sign = SignUtil.bytesToHexString(hmacMd5);
break;
case "KuaiDian":
- sign = SignUtil.hmacSign(model.getData(), key);
+ //进行字符串拼接、计算
+ String m1 = new StringBuilder(model.getOperatorID()).append(model.getData()).append(model.getTimeStamp()).append(model.getSeq()).toString();
+ // 打印计算得到的签名Sig
+ sign = SignUtil.hmacSign(m1, key);
break;
}
return sign;
@@ -327,7 +330,9 @@
sign = SignUtil.bytesToHexString(hmacMd5);
break;
case "KuaiDian":
- sign = SignUtil.hmacSign(model.getData(), key);
+ //进行字符串拼接、计算
+ String m1 = new StringBuilder(model.getOperatorID()).append(model.getData()).append(model.getTimeStamp()).append(model.getSeq()).toString();
+ sign = SignUtil.hmacSign(m1, key);
break;
}
return sign;
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/OrderInfo.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/OrderInfo.java
index fa1630a..1a8763a 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/OrderInfo.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/OrderInfo.java
@@ -1,5 +1,6 @@
package com.ruoyi.integration.drainage.kuaidian.model;
+import com.fasterxml.jackson.annotation.JsonProperty;
import com.ruoyi.integration.drainage.model.ChargeDetail;
import lombok.Data;
@@ -19,48 +20,57 @@
* 充电订单号
*/
@NotNull
- private String StartChargeSeq;
+ @JsonProperty("StartChargeSeq")
+ private String startChargeSeq;
/**
* 充电设备接口编码
*/
@NotNull
- private String ConnectorID;
+ @JsonProperty("ConnectorID")
+ private String connectorID;
/**
* 开始充电时间
* yyyy-MM-dd HH:mm:ss
*/
@NotNull
- private String StartTime;
+ @JsonProperty("StartTime")
+ private String startTime;
/**
* 结束充电时间
* yyyy-MM-dd HH:mm:ss
*/
@NotNull
- private String EndTime;
+ @JsonProperty("EndTime")
+ private String endTime;
/**
* 累计充电电量
*/
@NotNull
- private BigDecimal TotalPower;
+ @JsonProperty("TotalPower")
+ private BigDecimal totalPower;
/**
* 总电费
*/
@NotNull
- private BigDecimal TotalElecMoney;
+ @JsonProperty("TotalElecMoney")
+ private BigDecimal totalElecMoney;
/**
* 总服务费
*/
@NotNull
- private BigDecimal TotalSeviceMoney;
+ @JsonProperty("TotalSeviceMoney")
+ private BigDecimal totalSeviceMoney;
/**
* 累计总金额
*/
@NotNull
- private BigDecimal TotalMoney;
+ @JsonProperty("TotalMoney")
+ private BigDecimal totalMoney;
/**
* 车辆识别码
*/
@Null
+ @JsonProperty("VIN")
private String VIN;
/**
* 充电结束原因
@@ -72,15 +82,18 @@
* 5`99:自定义
*/
@NotNull
- private Integer StopReason;
+ @JsonProperty("StopReason")
+ private Integer stopReason;
/**
* 时段数N
* 范围0`23
*/
@Null
- private Integer SumPeriod;
+ @JsonProperty("SumPeriod")
+ private Integer sumPeriod;
/**
* 充电明细信息
*/
- private List<ChargeDetail> ChargeDetails;
+ @JsonProperty("ChargeDetails")
+ private List<ChargeDetail> chargeDetails;
}
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/QueryChargeOrderInfoResult.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/QueryChargeOrderInfoResult.java
index 544ae8e..3b1d520 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/QueryChargeOrderInfoResult.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/QueryChargeOrderInfoResult.java
@@ -1,5 +1,6 @@
package com.ruoyi.integration.drainage.kuaidian.model;
+import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.util.List;
@@ -14,5 +15,6 @@
/**
* 充电订单账单集合
*/
- private List<OrderInfo> OrderInfos;
+ @JsonProperty("Orderlnfos")
+ private List<OrderInfo> orderInfos;
}
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/QueryTerminalCodeResult.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/QueryTerminalCodeResult.java
index 2d022ee..695c3a0 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/QueryTerminalCodeResult.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/QueryTerminalCodeResult.java
@@ -1,5 +1,6 @@
package com.ruoyi.integration.drainage.kuaidian.model;
+import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
@@ -15,5 +16,6 @@
* 枪号
*/
@NotNull
+ @JsonProperty("TerminalCode")
private String TerminalCode;
}
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/model/ConnectorStatusInfo.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/model/ConnectorStatusInfo.java
index 7a13ce1..215b381 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/model/ConnectorStatusInfo.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/model/ConnectorStatusInfo.java
@@ -49,4 +49,7 @@
@Null
@JsonProperty("LookStatus")
private Integer lookStatus;
+
+ @JsonProperty("ConnectorStatusInfo")
+ private ConnectorStatusInfo connectorStatusInfo;
}
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/model/ConnectorStatusInfo1.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/model/ConnectorStatusInfo1.java
new file mode 100644
index 0000000..95ebd57
--- /dev/null
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/model/ConnectorStatusInfo1.java
@@ -0,0 +1,54 @@
+package com.ruoyi.integration.drainage.model;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+import javax.validation.constraints.Null;
+
+/**
+ * 充电设备接口状态
+ * @author zhibing.pu
+ * @Date 2025/1/21 14:53
+ */
+@Data
+public class ConnectorStatusInfo1 {
+ /**
+ * 充电设备接口编码
+ */
+ @NotNull
+ @JsonProperty("ConnectorID")
+ private String connectorID;
+ /**
+ * 充电设备接口状态
+ * 0:离网
+ * 1:空闲
+ * 2:占用(未充电)
+ * 3:占用(充电中)
+ * 4:占用(预约锁定)
+ * 255:故障
+ */
+ @NotNull
+ @JsonProperty("Status")
+ private Integer status;
+ /**
+ * 车位状态
+ * 0:未知
+ * 10:空闲
+ * 50:占用
+ */
+ @Null
+ @JsonProperty("ParkStatus")
+ private Integer parkStatus;
+ /**
+ * 地锁状态
+ * 0:未知
+ * 10:已解锁
+ * 50:已上锁
+ */
+ @Null
+ @JsonProperty("LookStatus")
+ private Integer lookStatus;
+
+ private ConnectorStatusInfo1 ConnectorStatusInfo;
+}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
index 9e68b8c..974db7f 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
@@ -1942,7 +1942,7 @@
chargingOrder.setChargingCapacity(query.getCharging_degree());
chargingOrder.setElectricity(query.getCharging_degree());
chargingOrder.setTotalElectricity(new BigDecimal(100 - query.getSoc()));
- BmsDemandAndChargerExportation data = bmsDemandAndChargerExportationClient.getBmsDemandAndChargerExportation(chargingOrder.getCode()).getData();
+ BmsDemandAndChargerExportation data = bmsDemandAndChargerExportationClient.getBmsDemandAndChargerExportation(chargingOrder1.getCode()).getData();
if(null != data){
chargingOrder.setNeedElec(data.getBms_current_requirements());
}
--
Gitblit v1.7.1