diff --git a/plugins/wechat_redpack/internal/wechat_redpack.go b/plugins/wechat_redpack/internal/wechat_redpack.go index 5be0b86..1a02e0a 100644 --- a/plugins/wechat_redpack/internal/wechat_redpack.go +++ b/plugins/wechat_redpack/internal/wechat_redpack.go @@ -19,7 +19,14 @@ const ( // WeChatRedPackService @link https://pay.weixin.qq.com/docs/merchant/apis/batch-transfer-to-balance/transfer-batch/initiate-batch-transfer.html type WeChatRedPackService struct{} -func (p *WeChatRedPackService) Order(ctx context.Context, request *proto.OrderRequest) (*proto.OrderResponse, error) { +func (p *WeChatRedPackService) Order(ctx context.Context, request *proto.OrderRequest) (resp2 *proto.OrderResponse, respErr error) { + + defer func() { + if err := recover(); err != nil { + respErr = fmt.Errorf("panic: %v", err) + } + }() + config, err := transConfig(request.Config) if err != nil { return nil, err @@ -45,7 +52,14 @@ func (p *WeChatRedPackService) Order(ctx context.Context, request *proto.OrderRe return orderResp(request.GetOrder(), *resp.BatchId), nil } -func (p *WeChatRedPackService) Query(ctx context.Context, request *proto.QueryRequest) (*proto.QueryResponse, error) { +func (p *WeChatRedPackService) Query(ctx context.Context, request *proto.QueryRequest) (resp2 *proto.QueryResponse, respErr error) { + + defer func() { + if err := recover(); err != nil { + respErr = fmt.Errorf("panic: %v", err) + } + }() + config, err := transConfig(request.Config) if err != nil { return nil, err diff --git a/plugins/zltx_v1/internal/transform.go b/plugins/zltx_v1/internal/transform.go index 97cfdf3..7648447 100644 --- a/plugins/zltx_v1/internal/transform.go +++ b/plugins/zltx_v1/internal/transform.go @@ -33,7 +33,7 @@ func transConfig(config []byte) (*Config, error) { var c Config if err := json.Unmarshal(config, &c); err != nil { - return nil, proto.ErrorSignFail(fmt.Sprintf("配置参数解析失败: %v,参数:%s", err, string(config))) + return nil, proto.ErrorConfigFail(fmt.Sprintf("配置参数解析失败: %v,参数:%s", err, string(config))) } if err := c.validate(); err != nil {