tianyuan-api-server/apps/admin/internal/logic/user/rechargelogic.go

40 lines
859 B
Go
Raw Normal View History

package user
import (
"context"
"tianyuan-api/apps/admin/internal/svc"
"tianyuan-api/apps/admin/internal/types"
"tianyuan-api/apps/user/user"
"tianyuan-api/pkg/generate"
"github.com/zeromicro/go-zero/core/logx"
)
type RechargeLogic struct {
logx.Logger
ctx context.Context
svcCtx *svc.ServiceContext
}
func NewRechargeLogic(ctx context.Context, svcCtx *svc.ServiceContext) *RechargeLogic {
return &RechargeLogic{
Logger: logx.WithContext(ctx),
ctx: ctx,
svcCtx: svcCtx,
}
}
func (l *RechargeLogic) Recharge(req *types.RechargeRequest) error {
outTradeNo := generate.GenerateTransactionID()
_, err := l.svcCtx.WalletsRpc.RechargeWallet(l.ctx, &user.RechargeWalletRequest{
UserId: req.UserId,
OutTradeNo: outTradeNo,
Amount: req.Amount,
PaymentMethod: 2,
})
if err != nil {
return err
}
return nil
}