package paygrpc import ( "context" "time" commonpb "gitea.haiyihy.com/hy/chatappcommon/proto" ) // Client 封装支付服务 gRPC client,并统一超时控制。 type Client struct { timeout time.Duration client commonpb.ChatAppPayServiceClient } // New 根据底层 gRPC client 构造支付服务调用器。 func New(client commonpb.ChatAppPayServiceClient, timeout time.Duration) *Client { return &Client{ timeout: timeout, client: client, } } // Pay 调用支付服务最小支付接口。 func (c *Client) Pay(ctx context.Context, request *commonpb.PayRequest) (*commonpb.PayResponse, error) { callCtx, cancel := context.WithTimeout(ctx, c.timeout) defer cancel() return c.client.Pay(callCtx, request) }