feat: 移除mock支付、卡不可复用、新增设备端取消订单接口

1. 移除所有mock支付逻辑,订单强制走微信支付
2. 卡状态流转改为单向:UNUSED->RESERVED->USED(终态不可复用)
3. 解绑接口改为仅清除device_id,卡状态保持USED
4. 新增设备端取消订单接口 POST /api/jst/daycard/cancel/{orderNo}
5. 修复微信回调验签header大小写问题
6. 临时注释分账标记(商户号未开通分账权限)
7. 删除多余的App UI辅助接口(ApiJstUiController)
8. 清理application.yml中无用UI配置
This commit is contained in:
zhaogd
2026-08-06 13:43:34 +08:00
parent ec1f300c53
commit 8385196b38
13 changed files with 100 additions and 462 deletions
@@ -195,6 +195,28 @@ public class ApiJstController {
return buildSuccessResponse(data);
}
/**
* 取消天卡订单(用户放弃支付时调用)
*/
@ApiOperation(value = "取消天卡订单",
notes = "请求头必传 sign。用户取消支付时调用,取消订单并释放卡,允许设备重新下单。")
@ApiImplicitParams({
@ApiImplicitParam(name = "sign", value = "设备签名", required = true, paramType = "header", dataType = "string")
})
@PostMapping("/daycard/cancel/{orderNo}")
public Map<String, Object> cancelDayCard(@PathVariable("orderNo") String orderNo, HttpServletRequest request) {
try {
Long deviceId = deviceIdFrom(request);
dayCardOrderService.cancelOrder(orderNo, deviceId);
Map<String, Object> data = new HashMap<>();
data.put("orderNo", orderNo);
data.put("status", "CANCELLED");
return buildSuccessResponse(data);
} catch (ASException e) {
return rrExceptionResponse(e);
}
}
/**
* 设备心跳:更新设备心跳时间,续期 sign
*/