This commit is contained in:
李子铭 2025-03-08 14:37:04 +08:00
parent 9b607a61ed
commit fcea60ddee
3 changed files with 14 additions and 3 deletions

View File

@ -5,6 +5,7 @@ import (
"encoding/json" "encoding/json"
"errors" "errors"
"fmt" "fmt"
"github.com/go-kratos/kratos/v2/log"
"github.com/redis/go-redis/v9" "github.com/redis/go-redis/v9"
"gorm.io/gorm" "gorm.io/gorm"
"time" "time"
@ -250,6 +251,7 @@ func (v *Cmb) NotifyConsume(ctx context.Context, order *bo.OrderBo, orderOutRequ
bizStr, err := v.CmbMixRepo.VerifyResponse(ctx, x) bizStr, err := v.CmbMixRepo.VerifyResponse(ctx, x)
if err != nil { if err != nil {
log.Errorf("NotifyConsume CmbMixRepo.VerifyResponse error:%s", err.Error())
return v.OrderNotifyRepo.Fail(ctx, orderNotify.ID, err.Error()) return v.OrderNotifyRepo.Fail(ctx, orderNotify.ID, err.Error())
} }

View File

@ -7,13 +7,22 @@ import (
) )
type CmbMixRepo interface { type CmbMixRepo interface {
VerifyResponse(ctx context.Context, req *v1.CmbReply) (string, error) // OrderVerify cmb 券订单参数验证
OrderVerify(ctx context.Context, req *v1.CmbRequest) (*v1.CmbOrderRequest, error) OrderVerify(ctx context.Context, req *v1.CmbRequest) (*v1.CmbOrderRequest, error)
// QueryVerify cmb 券订单参数验证
QueryVerify(ctx context.Context, req *v1.CmbRequest) (*v1.CmbQueryRequest, error) QueryVerify(ctx context.Context, req *v1.CmbRequest) (*v1.CmbQueryRequest, error)
// ProductQueryVerify cmb 券产品查询参数验证
ProductQueryVerify(ctx context.Context, req *v1.CmbRequest) (*v1.CmbQueryProductRequest, error) ProductQueryVerify(ctx context.Context, req *v1.CmbRequest) (*v1.CmbQueryProductRequest, error)
// GetMockRequest cmb 券参数mock构建
GetMockRequest(ctx context.Context, bizContent string) (*v1.CmbRequest, error) GetMockRequest(ctx context.Context, bizContent string) (*v1.CmbRequest, error)
// GetRequest 我们请求cmb参数构建处理
GetRequest(_ context.Context, reqBo *bo.CmbRequestBo) (*v1.CmbRequest, error) GetRequest(_ context.Context, reqBo *bo.CmbRequestBo) (*v1.CmbRequest, error)
// GetResponse cmb 请求我们响应返回结果处理
GetResponse(ctx context.Context, reqBo *bo.CmbResponseBo) (*v1.CmbReply, error) GetResponse(ctx context.Context, reqBo *bo.CmbResponseBo) (*v1.CmbReply, error)
// VerifyResponse cmb 请求响应返回结果验证
VerifyResponse(ctx context.Context, req *v1.CmbReply) (string, error)
// Request cmb 请求
Request(ctx context.Context, req *v1.CmbRequest, uri string) (*v1.CmbReply, error) Request(ctx context.Context, req *v1.CmbRequest, uri string) (*v1.CmbReply, error)
// Decrypt cmb 业务参数 解密
Decrypt(_ context.Context, encryptBody string) (string, error) Decrypt(_ context.Context, encryptBody string) (string, error)
} }

View File

@ -89,7 +89,7 @@ func (s *CmbMixRepoImpl) Verify(_ context.Context, req *v1.CmbRequest) (string,
func (s *CmbMixRepoImpl) GetRequest(_ context.Context, reqBo *bo.CmbRequestBo) (*v1.CmbRequest, error) { func (s *CmbMixRepoImpl) GetRequest(_ context.Context, reqBo *bo.CmbRequestBo) (*v1.CmbRequest, error) {
encryptBody, err := cmb.Encrypt(s.bc.Cmb.Sm2Puk, reqBo.BizContent) encryptBody, err := cmb.Encrypt(s.bc.Cmb.CmbSm2Puk, reqBo.BizContent)
if err != nil { if err != nil {
return nil, err return nil, err
} }
@ -107,7 +107,7 @@ func (s *CmbMixRepoImpl) GetRequest(_ context.Context, reqBo *bo.CmbRequestBo) (
str := fmt.Sprintf("%s?%s", reqBo.FuncName, cmb.SortStructStr(req)) str := fmt.Sprintf("%s?%s", reqBo.FuncName, cmb.SortStructStr(req))
sing, err := cmb.Sign(s.bc.Cmb.CmbSm2Pik, str) sing, err := cmb.Sign(s.bc.Cmb.Sm2Prk, str)
if err != nil { if err != nil {
return nil, err return nil, err
} }