shanshanzhong d3541a89ae
All checks were successful
Build docker and publish / build (20.15.1) (push) Successful in 6m26s
fix(iap): 修复苹果IAP重复处理交易的问题
添加对已存在订阅的检查逻辑,避免重复处理相同的苹果IAP交易
添加测试恢复接口的示例代码
2025-12-17 04:00:02 -08:00

24 lines
727 B
Go

package apple
import (
"github.com/gin-gonic/gin"
appleLogic "github.com/perfect-panel/server/internal/logic/public/iap/apple"
"github.com/perfect-panel/server/internal/svc"
"github.com/perfect-panel/server/internal/types"
"github.com/perfect-panel/server/pkg/result"
)
func RestoreAppleTransactionsHandler(svcCtx *svc.ServiceContext) func(c *gin.Context) {
return func(c *gin.Context) {
var req types.RestoreAppleTransactionsRequest
_ = c.ShouldBind(&req)
if err := svcCtx.Validate(&req); err != nil {
result.ParamErrorResult(c, err)
return
}
l := appleLogic.NewRestoreLogic(c.Request.Context(), svcCtx)
err := l.Restore(&req)
result.HttpResult(c, map[string]bool{"success": err == nil}, err)
}
}