From 4a5e1477afc559cf870b34e4693f41d85e9580d1 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期三, 09 九月 2026 15:39:35 +0800
Subject: [PATCH] 新增加VIN充电和刷卡充电业务逻辑
---
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java | 193 ++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 187 insertions(+), 6 deletions(-)
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java
index 02f977b..1f09cd7 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java
@@ -5,7 +5,10 @@
import com.ruoyi.common.core.dto.ChargingOrderGroup;
import com.ruoyi.common.core.dto.ChargingPercentProvinceDto;
import com.ruoyi.common.core.web.domain.AjaxResult;
+import com.ruoyi.order.api.dto.ChargingStatisticeDTO;
+import com.ruoyi.order.api.dto.DeviceStartChargingDTO;
import com.ruoyi.order.api.factory.ChargingOrderFallbackFactory;
+import com.ruoyi.order.api.model.AddTripartitePlatformOrder;
import com.ruoyi.order.api.model.ChargingListQuery;
import com.ruoyi.order.api.model.TChargingOrder;
import com.ruoyi.order.api.model.TSettlementConfirm;
@@ -18,6 +21,7 @@
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
+import java.math.BigDecimal;
import java.util.List;
/**
@@ -31,7 +35,7 @@
R<String> queryOrderByGunId(@PathVariable("id") String id);
@PostMapping(value = "/t-charging-order/useOrderCount")
R<Long> useOrderCount(@RequestParam("userId") Long userId);
- @PostMapping(value = "/t-charging-order/chargingBillListR")
+ @PostMapping(value = "/chargingBill/chargingBillListR")
R<ChargingBillVO> chargingBillListR(@RequestBody ChargingListQuery dto);
@PostMapping(value = "/t-charging-order/detail")
R<TChargingOrder> orderDetail(@RequestParam("orderId") Long orderId);
@@ -42,6 +46,15 @@
@PostMapping(value = "/t-charging-order/getBySiteIdAndTime")
R<List<ChargingOrderGroup>> getBySiteIdAndTime(@RequestBody ChargingPercentProvinceDto chargingPercentProvinceDto);
+
+
+ /**
+ * 根据站点id和时间区间查询订单数据
+ * @param chargingPercentProvinceDto
+ * @return
+ */
+ @PostMapping(value = "/t-charging-order/getOrderBySiteIdAndTime")
+ R<List<TChargingOrder>> getOrderBySiteIdAndTime(@RequestBody ChargingPercentProvinceDto chargingPercentProvinceDto);
@@ -86,6 +99,13 @@
*/
@PostMapping(value = "/t-charging-order/getOrderByCode/{code}")
R<TChargingOrder> getOrderByCode(@PathVariable("code") String code);
+
+ /**
+ * 根据订单编号前缀将握手 VIN 写入对应订单表
+ */
+ @PostMapping(value = "/t-charging-order/updateHandshakeVin")
+ R<Boolean> updateHandshakeVin(@RequestParam("orderCode") String orderCode,
+ @RequestParam("vin") String vin);
/**
@@ -120,8 +140,8 @@
@GetMapping(value = "/financial/settlement/downloadSettlement/{uid}")
public R<TSettlementConfirm> downloadSettlement(@PathVariable("uid") String uid);
- @GetMapping(value = "/financial/settlement/settlementTotalR")
- public R<SettlementTotalVO> settlementTotalR(String time);
+ @GetMapping(value = "/financial/settlement/settlementTotalR/{time}/{userId}")
+ public R<SettlementTotalVO> settlementTotalR(@PathVariable("time")String time,@PathVariable("userId")Long userId);
/**
* 修改充电订单
@@ -153,6 +173,28 @@
/**
+ * 充电支付成功回调通知
+ * @param out_trade_no
+ * @param transaction_id
+ * @param attach
+ */
+ @PostMapping("/t-charging-order/chargingOrderALICallback")
+ void chargingOrderALICallback(@RequestParam("out_trade_no") String out_trade_no,
+ @RequestParam("transaction_id") String transaction_id,
+ @RequestParam("attach") String attach);
+
+ /**
+ * 充电支付成功回调通知
+ * @param out_trade_no
+ * @param transaction_id
+ * @param attach
+ */
+ @PostMapping("/t-charging-order/chargingOrderALIH5Callback")
+ void chargingOrderALIH5Callback(@RequestParam("out_trade_no") String out_trade_no,
+ @RequestParam("transaction_id") String transaction_id,
+ @RequestParam("attach") String attach);
+
+ /**
* 远程启动失败后退款回调
* @param out_refund_no
* @param refund_id
@@ -177,13 +219,12 @@
@RequestParam("out_trade_no") String tradeState,
@RequestParam("out_trade_no") String success_time);
- //todo 待监听完成后调用此方法
/**
* 修改安全检测数据
* @param securityDetection
*/
@PostMapping("/t-charging-order/securityDetection")
- void securityDetection(@RequestBody SecurityDetection securityDetection);
+ void securityDetection(@RequestBody SecurityDetectionVO securityDetection);
/**
@@ -191,5 +232,145 @@
* @param message
*/
@PostMapping("/t-charging-order/startChargeSuccessfully")
- void startChargeSuccessfully(PlatformStartChargingReplyMessage message);
+ void startChargeSuccessfully(PlatformStartChargingReplyMessageVO message);
+
+
+ /**
+ * 停止充电应答处理
+ * @param platformStopChargingReply
+ */
+ @PostMapping("/t-charging-order/terminateSuccessfulResponse")
+ void terminateSuccessfulResponse(@RequestBody PlatformStopChargingReplyVO platformStopChargingReply);
+
+ /**
+ * 停止充电返回账单后计算费用
+ * @param vo
+ */
+ @PostMapping("/t-charging-order/endChargeBillingCharge")
+ R endChargeBillingCharge(@RequestBody TransactionRecordMessageVO vo);
+
+ /**
+ * 获取充电订单数据
+ * @param order
+ * @return
+ */
+ @PostMapping("/t-charging-order/getChargingOrder")
+ R<List<TChargingOrder>> getChargingOrder(@RequestBody TChargingOrderVo order);
+ /**
+ * 获取充电订单数据
+ * @param
+ * @return
+ */
+ @PostMapping(value = "/t-charging-order/getChargingStatistics")
+ public R<List<TChargingOrder>> getChargingStatistics(@RequestBody ChargingStatisticeDTO dto);
+
+
+ /**
+ * 根据车辆id获取指定时间范围内的数据
+ * @param carId
+ * @param startTime
+ * @param endTime
+ * @return
+ */
+ @PostMapping("/t-charging-order/getCarChargingOrder")
+ R<List<TChargingOrder>> getCarChargingOrder(@RequestParam("carId") Long carId, @RequestParam("startTime") String startTime,
+ @RequestParam("endTime") String endTime);
+
+
+ /**
+ * 根据车牌号查询指定时间范围内的数据
+ * @param plateNum
+ * @param startTime
+ * @param endTime
+ * @return
+ */
+ @PostMapping("/t-charging-order/getCarChargingOrderByPlateNum")
+ R<List<TChargingOrder>> getCarChargingOrderByPlateNum(@RequestParam("plateNum") String plateNum, @RequestParam("startTime") String startTime,
+ @RequestParam("endTime") String endTime);
+
+
+
+
+ /**
+ * 添加三方平台充电订单数据
+ * @return
+ */
+ @PostMapping("/t-charging-order/addTripartitePlatformOrder")
+ R addTripartitePlatformOrder(@RequestBody AddTripartitePlatformOrder query);
+
+
+ /**
+ * 根据三方平台订单id获取充电数据
+ * @param startChargeSeq
+ * @return
+ */
+ @PostMapping("/t-charging-order/getChargingOrderByStartChargeSeq")
+ R<TChargingOrder> getChargingOrderByStartChargeSeq(@RequestParam("startChargeSeq") String startChargeSeq);
+
+
+
+ /**
+ * 根据三方平台订单ids获取充电数据
+ * @param startChargeSeqs
+ * @return
+ */
+ @PostMapping("/t-charging-order/getChargingOrderByStartChargeSeqs")
+ R<List<TChargingOrder>> getChargingOrderByStartChargeSeqs(@RequestParam("startChargeSeqs") List<String> startChargeSeqs);
+
+
+
+
+ /**
+ * 三方平台请求停止充电
+ * @param startChargeSeq
+ * @return
+ */
+ @PostMapping("/t-charging-order/tripartitePlatformStopCharge")
+ R tripartitePlatformStopCharge(@RequestParam("startChargeSeq") String startChargeSeq);
+
+ /**
+ * 充电桩大屏 获取站点集合中总的充电量
+ */
+ @GetMapping("/t-charging-order/getSumDegreeBySiteIds")
+ R<BigDecimal> getSumDegreeBySiteIds(@RequestParam("siteIds") List<Integer> SiteIds);
+
+ /**
+ * 充电桩大屏 获取站点集合中累计充电量(已结束+已支付订单口径, 与 large-screen/summary 一致)
+ */
+ @GetMapping("/t-charging-order/getLargeScreenTotalCapacity")
+ R<BigDecimal> getLargeScreenTotalCapacity(@RequestParam("siteIds") List<Integer> siteIds);
+
+ /**
+ * 查询指定站点中实际发生过充电的用户ID
+ */
+ @PostMapping("/t-charging-order/getAppUserIdsBySiteIds")
+ R<List<Long>> getAppUserIdsBySiteIds(@RequestBody List<Integer> siteIds);
+
+ @PostMapping("/t-vin-charging-order/inner/charging-status")
+ R<List<VinChargingStatusVO>> getChargingVinStatus(@RequestBody List<Long> vinIds);
+
+
+// /**
+// * 获取充电订单列表
+// * @param statusList
+// * @return
+// */
+// @GetMapping("/t-charging-order/getOrderListByStatus")
+// R<List<TChargingOrder>> getOrderListByStatus(List<Integer> statusList);
+
+ /**
+ * 添加订单
+ * @param chargingOrder
+ * @return
+ */
+ @PostMapping("/t-charging-order/addChargingOrder")
+ R<Long> addChargingOrder(@RequestBody TChargingOrder chargingOrder);
+
+ /**
+ * 设备主动发起充电(刷卡/VIN码)鉴权建单
+ * @param dto 启动鉴权请求(桩编码、枪编号、启动方式、账户、卡密码)
+ * @return 鉴权结果(含订单编号与失败原因)
+ */
+ @PostMapping("/t-charging-order/inner/device-start-charging")
+ R<DeviceStartChargingVO> deviceStartCharging(@RequestBody DeviceStartChargingDTO dto);
}
--
Gitblit v1.7.1