longz
2026-09-29 0ca3a3922d2d25df52682b2290be15135cce100e
ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/ChargingCardClient.java
@@ -13,6 +13,7 @@
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.math.BigDecimal;
import java.util.List;
/**
@@ -57,6 +58,32 @@
    R<ChargingCardDeductVO> deductForCharging(@RequestBody ChargingCardDeductDTO dto);
    /**
     * 锁定卡片账户余额(刷卡充电申请,实扣冻结:余额立即扣减并计入锁定金额)。
     *
     * @return data 为锁定后可用余额;余额不足时 R 的 code != 200
     */
    @PostMapping("/t-charging-card/inner/lock-balance")
    R<BigDecimal> lockBalance(@RequestParam("cardId") Long cardId,
                              @RequestParam("amount") BigDecimal amount);
    /**
     * 结算卡片账户余额(解锁锁定额并按实际消费扣减,允许扣成负数;订单号幂等,与旧扣款接口共用唯一键)。
     *
     * @return data.duplicated=true 表示该订单此前已结算成功,本次未重复结算
     */
    @PostMapping("/t-charging-card/inner/settle-charging")
    R<ChargingCardDeductVO> settleForCharging(@RequestBody ChargingCardDeductDTO dto);
    /**
     * 释放卡片锁定金额(未产生消费/订单回滚时使用)。
     *
     * @return data 为释放后可用余额
     */
    @PostMapping("/t-charging-card/inner/unlock-balance")
    R<BigDecimal> unlockBalance(@RequestParam("cardId") Long cardId,
                                @RequestParam("amount") BigDecimal amount);
    /**
     * 批量查询已成功写入充电扣款流水的订单号。
     */
    @PostMapping("/t-charging-card/inner/deducted-order-codes")