2026-04-25 01:18:30 +08:00

29 lines
709 B
Go

package grpc
import (
"context"
walletv1 "hyapp/api/proto/wallet/v1"
)
// Server 提供首版 wallet-service 的最小 DebitGift 能力。
type Server struct {
walletv1.UnimplementedWalletServiceServer
}
// NewServer 创建 wallet gRPC server。
func NewServer() *Server {
return &Server{}
}
// DebitGift 按请求的礼物单价和数量计算总额,作为本地 stub 返回。
func (s *Server) DebitGift(_ context.Context, req *walletv1.DebitGiftRequest) (*walletv1.DebitGiftResponse, error) {
total := int64(req.GetGiftCount()) * req.GetGiftUnitValue()
return &walletv1.DebitGiftResponse{
BillingReceiptId: "wallet_stub_receipt",
TotalGiftValue: total,
BalanceAfter: 0,
}, nil
}