2024-10-15 00:23:07 +08:00
|
|
|
package topup
|
|
|
|
|
|
|
|
import (
|
|
|
|
"context"
|
|
|
|
"net/http"
|
|
|
|
"tianyuan-api/apps/sentinel/sentinel"
|
|
|
|
|
|
|
|
"github.com/zeromicro/go-zero/core/logx"
|
|
|
|
"tianyuan-api/apps/gateway/internal/svc"
|
|
|
|
)
|
|
|
|
|
|
|
|
type AliTopUpCallbackLogic struct {
|
|
|
|
logx.Logger
|
|
|
|
ctx context.Context
|
|
|
|
svcCtx *svc.ServiceContext
|
|
|
|
}
|
|
|
|
|
|
|
|
func NewAliTopUpCallbackLogic(ctx context.Context, svcCtx *svc.ServiceContext) *AliTopUpCallbackLogic {
|
|
|
|
return &AliTopUpCallbackLogic{
|
|
|
|
Logger: logx.WithContext(ctx),
|
|
|
|
ctx: ctx,
|
|
|
|
svcCtx: svcCtx,
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func (l *AliTopUpCallbackLogic) AliTopUpCallback(r *http.Request) error {
|
2024-10-15 17:19:23 +08:00
|
|
|
err := r.ParseForm()
|
|
|
|
if err != nil {
|
|
|
|
return err
|
|
|
|
}
|
|
|
|
_, err = l.svcCtx.TopUpRpc.AliTopUpNotify(l.ctx, &sentinel.AliTopUpNotifyRequest{
|
2024-10-15 00:23:07 +08:00
|
|
|
RawForm: r.Form.Encode(),
|
|
|
|
})
|
|
|
|
if err != nil {
|
|
|
|
return err
|
|
|
|
}
|
|
|
|
return nil
|
|
|
|
}
|