pay: submit.php 直出收银台页(new-api 易支付对接)
- submit.php 验签建单后不再 302,直接渲染自包含收银台 HTML, 支付宝二维码由服务端 skip2/go-qrcode 生成 PNG data URL 内嵌 - 新增公开轮询端点 /cashier-status(页面经 /api 前缀访问), 与 PaySvc.CashierStatus 共用 cashierStatusReply - Cashier.vue 收银台页同步改版:取景框二维码、倒计时进度条, 去掉跳上游收银台的外链 Generated with [Devin](https://devin.ai) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
// pay_routes.go 易支付兼容协议端点:/submit.php(跳收银台)、/mapi.php(JSON下单)、/api.php(查单)。
|
||||
// pay_routes.go 易支付兼容协议端点:/submit.php(验签建单+直出收银台页)、/mapi.php(JSON下单)、/api.php(查单)。
|
||||
package service
|
||||
|
||||
import (
|
||||
@@ -12,20 +12,18 @@ import (
|
||||
"github.com/cyi-cc/cyi-box/backend/internal/store"
|
||||
)
|
||||
|
||||
// paySubmitHandler GET/POST /submit.php:验签建单后 302 到收银台。
|
||||
// paySubmitHandler GET/POST /submit.php:验签建单后直接渲染收银台页(无跳转)。
|
||||
func PaySubmitHandler(st *store.Store, up *payx.Client) fun.RouteHandler {
|
||||
return func(c *fun.RouteCtx) error {
|
||||
order, err := epayCreateOrder(c, st, up)
|
||||
if err != nil {
|
||||
return epayFail(c, err)
|
||||
}
|
||||
// 当码支付:优先跳二维码支付链接(qr.alipay.com),退化到本地收银台
|
||||
target := order.Qrcode
|
||||
if target == "" {
|
||||
target = "/cashier/" + order.TradeNo
|
||||
o, err := st.Q().GetPayOrderByTradeNo(context.Background(), order.TradeNo)
|
||||
if err != nil {
|
||||
return epayFail(c, err)
|
||||
}
|
||||
c.RequestCtx.Redirect(target, 302)
|
||||
return nil
|
||||
return renderCashier(c, o)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user