This commit is contained in:
liangzai 2025-06-03 21:39:36 +08:00
parent d82cd261c4
commit 740464a8ec
3 changed files with 12 additions and 3 deletions

View File

@ -31,6 +31,7 @@ func (l *AlipayCallbackLogic) AlipayCallback(w http.ResponseWriter, r *http.Requ
logx.Errorf("支付宝支付回调,%+v", err) logx.Errorf("支付宝支付回调,%+v", err)
return nil return nil
} }
alipay.ACKNotification(w) alipay.ACKNotification(w)
return nil return nil
} }

View File

@ -11,6 +11,7 @@ import (
"tyc-server/common/ctxdata" "tyc-server/common/ctxdata"
"tyc-server/pkg/core/payment" "tyc-server/pkg/core/payment"
"github.com/zeromicro/go-zero/core/logx"
"github.com/zeromicro/go-zero/core/stores/sqlx" "github.com/zeromicro/go-zero/core/stores/sqlx"
) )
@ -22,13 +23,14 @@ type PayService struct {
productModel model.ProductModel productModel model.ProductModel
userAuthModel model.UserAuthModel userAuthModel model.UserAuthModel
userModel model.UserModel userModel model.UserModel
asyncService *AsynqService
alipayService *payment.AliPayService alipayService *payment.AliPayService
wechatService *payment.WechatPayService wechatService *payment.WechatPayService
appleService *payment.ApplePayService appleService *payment.ApplePayService
} }
// NewPayService 创建支付服务 // NewPayService 创建支付服务
func NewPayService(c config.Config, orderModel model.OrderModel, orderRefundModel model.OrderRefundModel, productModel model.ProductModel, userAuthModel model.UserAuthModel, userModel model.UserModel) *PayService { func NewPayService(c config.Config, orderModel model.OrderModel, orderRefundModel model.OrderRefundModel, productModel model.ProductModel, userAuthModel model.UserAuthModel, userModel model.UserModel, asyncService *AsynqService) *PayService {
ps := &PayService{ ps := &PayService{
config: c, config: c,
orderModel: orderModel, orderModel: orderModel,
@ -36,6 +38,7 @@ func NewPayService(c config.Config, orderModel model.OrderModel, orderRefundMode
productModel: productModel, productModel: productModel,
userAuthModel: userAuthModel, userAuthModel: userAuthModel,
userModel: userModel, userModel: userModel,
asyncService: asyncService,
} }
// 根据配置选择性初始化支付服务 // 根据配置选择性初始化支付服务
@ -265,6 +268,10 @@ func (p *PayService) HandlePaymentCallback(ctx context.Context, payType string,
if err != nil { if err != nil {
return fmt.Errorf("更新订单状态失败: %v", err) return fmt.Errorf("更新订单状态失败: %v", err)
} }
if asyncErr := p.asyncService.SendQueryTask(order.Id); asyncErr != nil {
logx.Errorf("异步任务调度失败: %v", asyncErr)
return asyncErr
}
return nil return nil
}) })
} }

View File

@ -139,6 +139,7 @@ func initBusinessServices(c config.Config, models *BaseModels, adminModels *Admi
westDexService := service.NewWestDexService(c) westDexService := service.NewWestDexService(c)
yushanService := service.NewYushanService(c) yushanService := service.NewYushanService(c)
tianjuService := service.NewTianjuService(c) tianjuService := service.NewTianjuService(c)
asynqService := service.NewAsynqService(c)
// 初始化API请求服务 // 初始化API请求服务
apiRequestService := service.NewApiRequestService( apiRequestService := service.NewApiRequestService(
@ -158,15 +159,15 @@ func initBusinessServices(c config.Config, models *BaseModels, adminModels *Admi
}) })
return &BusinessServices{ return &BusinessServices{
PayService: service.NewPayService(c, models.OrderModel, models.OrderRefundModel, models.ProductModel, models.UserAuthModel, models.UserModel), PayService: service.NewPayService(c, models.OrderModel, models.OrderRefundModel, models.ProductModel, models.UserAuthModel, models.UserModel, asynqService),
WestDexService: westDexService, WestDexService: westDexService,
YushanService: yushanService, YushanService: yushanService,
TianjuService: tianjuService, TianjuService: tianjuService,
ApiRequestService: apiRequestService, ApiRequestService: apiRequestService,
AsynqService: service.NewAsynqService(c),
VerificationService: service.NewVerificationService(c, westDexService, apiRequestService), VerificationService: service.NewVerificationService(c, westDexService, apiRequestService),
DictService: service.NewDictService(adminModels.AdminDictTypeModel, adminModels.AdminDictDataModel), DictService: service.NewDictService(adminModels.AdminDictTypeModel, adminModels.AdminDictDataModel),
AdminPromotionLinkStatsService: adminPromotionLinkStatsService, AdminPromotionLinkStatsService: adminPromotionLinkStatsService,
AsynqService: asynqService,
} }
} }