cmb
This commit is contained in:
parent
f04ad17edb
commit
1800084933
|
|
@ -119,7 +119,7 @@ func (v *Cmb) NotifyConsume(ctx context.Context, order *bo.OrderBo, orderOutRequ
|
|||
return err
|
||||
}
|
||||
|
||||
request, err := v.CmbMixRepo.GetRequest(ctx, &bo.CmbRequestBo{
|
||||
request, err := v.CmbMixRepo.GetCmbRequest(ctx, &bo.CmbRequestBo{
|
||||
FuncName: vo.CmbNotifyFuncName,
|
||||
BizContent: string(bizJsonBytes),
|
||||
})
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@ import (
|
|||
type CmbMixRepo interface {
|
||||
OrderVerify(ctx context.Context, req *v1.CmbRequest, funcName vo.CmbFuncName) (*v1.CmbOrderRequest, error)
|
||||
ProductQueryVerify(ctx context.Context, req *v1.CmbRequest, funcName vo.CmbFuncName) (*v1.CmbQueryProductRequest, error)
|
||||
GetRequest(ctx context.Context, reqBo *bo.CmbRequestBo) (*v1.CmbRequest, error)
|
||||
GetRequest(ctx context.Context, bizContent string) (*v1.CmbRequest, error)
|
||||
GetCmbRequest(_ context.Context, reqBo *bo.CmbRequestBo) (*v1.CmbRequest, error)
|
||||
GetResponse(ctx context.Context, reqBo *bo.CmbResponseBo) (*v1.CmbReply, error)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@ func (s *CmbMixRepoImpl) Verify(_ context.Context, req *v1.CmbRequest, funcName
|
|||
return bizStr, nil
|
||||
}
|
||||
|
||||
func (s *CmbMixRepoImpl) GetRequest(_ context.Context, reqBo *bo.CmbRequestBo) (*v1.CmbRequest, error) {
|
||||
func (s *CmbMixRepoImpl) GetCmbRequest(_ context.Context, reqBo *bo.CmbRequestBo) (*v1.CmbRequest, error) {
|
||||
|
||||
encryptBody, err := cmb.Encrypt(s.bc.Cmb.Sm2Puk, reqBo.BizContent)
|
||||
if err != nil {
|
||||
|
|
@ -88,11 +88,7 @@ func (s *CmbMixRepoImpl) GetRequest(_ context.Context, reqBo *bo.CmbRequestBo) (
|
|||
Sign: "",
|
||||
}
|
||||
|
||||
str := cmb.SortStructStr(req)
|
||||
|
||||
if len(reqBo.FuncName) > 0 {
|
||||
str = fmt.Sprintf("%s?%s", reqBo.FuncName, str)
|
||||
}
|
||||
str := fmt.Sprintf("%s?%s", reqBo.FuncName, cmb.SortStructStr(req))
|
||||
|
||||
sing, err := cmb.Sign(s.bc.Cmb.CmbSm2Pik, str)
|
||||
if err != nil {
|
||||
|
|
@ -104,6 +100,36 @@ func (s *CmbMixRepoImpl) GetRequest(_ context.Context, reqBo *bo.CmbRequestBo) (
|
|||
return req, nil
|
||||
}
|
||||
|
||||
func (s *CmbMixRepoImpl) GetRequest(_ context.Context, bizContent string) (*v1.CmbRequest, error) {
|
||||
|
||||
encryptBody, err := cmb.Encrypt(s.bc.Cmb.Sm2Puk, bizContent)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
req := &v1.CmbRequest{
|
||||
Mid: s.bc.Cmb.Mid,
|
||||
Aid: s.bc.Cmb.Aid,
|
||||
Date: time.Now().Format("20060102150405"),
|
||||
Random: string(cmb.RandomBytes(16)),
|
||||
KeyAlias: s.bc.Cmb.KeyAlias,
|
||||
CmbKeyAlias: s.bc.Cmb.CmbKeyAlias,
|
||||
EncryptBody: encryptBody,
|
||||
Sign: "",
|
||||
}
|
||||
|
||||
str := cmb.SortStructStr(req)
|
||||
|
||||
sign, err := cmb.Sign(s.bc.Cmb.CmbSm2Pik, str)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
req.Sign = sign
|
||||
|
||||
return req, nil
|
||||
}
|
||||
|
||||
func (s *CmbMixRepoImpl) GetResponse(_ context.Context, reqBo *bo.CmbResponseBo) (*v1.CmbReply, error) {
|
||||
|
||||
reply := &v1.CmbReply{
|
||||
|
|
|
|||
|
|
@ -4,8 +4,6 @@ import (
|
|||
"encoding/json"
|
||||
"github.com/go-kratos/kratos/v2/transport/http"
|
||||
v1 "voucher/api/v1"
|
||||
"voucher/internal/biz/bo"
|
||||
"voucher/internal/biz/vo"
|
||||
)
|
||||
|
||||
func (s *VoucherService) CmbOrderMock(ctx http.Context) error {
|
||||
|
|
@ -20,10 +18,7 @@ func (s *VoucherService) CmbOrderMock(ctx http.Context) error {
|
|||
return err
|
||||
}
|
||||
|
||||
reply, err := s.CmbMixRepo.GetRequest(ctx, &bo.CmbRequestBo{
|
||||
FuncName: vo.CmbOrderFuncName,
|
||||
BizContent: string(bizJsonBytes),
|
||||
})
|
||||
reply, err := s.CmbMixRepo.GetRequest(ctx, string(bizJsonBytes))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
|
@ -43,10 +38,10 @@ func (s *VoucherService) CmbProductQueryMock(ctx http.Context) error {
|
|||
return err
|
||||
}
|
||||
|
||||
reply, err := s.CmbMixRepo.GetRequest(ctx, &bo.CmbRequestBo{
|
||||
FuncName: vo.CmbProductQueryFuncName,
|
||||
BizContent: string(bizJsonBytes),
|
||||
})
|
||||
reply, err := s.CmbMixRepo.GetRequest(ctx, string(bizJsonBytes))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue