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
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
request, err := v.CmbMixRepo.GetRequest(ctx, &bo.CmbRequestBo{
|
request, err := v.CmbMixRepo.GetCmbRequest(ctx, &bo.CmbRequestBo{
|
||||||
FuncName: vo.CmbNotifyFuncName,
|
FuncName: vo.CmbNotifyFuncName,
|
||||||
BizContent: string(bizJsonBytes),
|
BizContent: string(bizJsonBytes),
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,7 @@ import (
|
||||||
type CmbMixRepo interface {
|
type CmbMixRepo interface {
|
||||||
OrderVerify(ctx context.Context, req *v1.CmbRequest, funcName vo.CmbFuncName) (*v1.CmbOrderRequest, error)
|
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)
|
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)
|
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
|
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)
|
encryptBody, err := cmb.Encrypt(s.bc.Cmb.Sm2Puk, reqBo.BizContent)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
@ -88,11 +88,7 @@ func (s *CmbMixRepoImpl) GetRequest(_ context.Context, reqBo *bo.CmbRequestBo) (
|
||||||
Sign: "",
|
Sign: "",
|
||||||
}
|
}
|
||||||
|
|
||||||
str := cmb.SortStructStr(req)
|
str := fmt.Sprintf("%s?%s", reqBo.FuncName, cmb.SortStructStr(req))
|
||||||
|
|
||||||
if len(reqBo.FuncName) > 0 {
|
|
||||||
str = fmt.Sprintf("%s?%s", reqBo.FuncName, str)
|
|
||||||
}
|
|
||||||
|
|
||||||
sing, err := cmb.Sign(s.bc.Cmb.CmbSm2Pik, str)
|
sing, err := cmb.Sign(s.bc.Cmb.CmbSm2Pik, str)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
@ -104,6 +100,36 @@ func (s *CmbMixRepoImpl) GetRequest(_ context.Context, reqBo *bo.CmbRequestBo) (
|
||||||
return req, nil
|
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) {
|
func (s *CmbMixRepoImpl) GetResponse(_ context.Context, reqBo *bo.CmbResponseBo) (*v1.CmbReply, error) {
|
||||||
|
|
||||||
reply := &v1.CmbReply{
|
reply := &v1.CmbReply{
|
||||||
|
|
|
||||||
|
|
@ -4,8 +4,6 @@ import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"github.com/go-kratos/kratos/v2/transport/http"
|
"github.com/go-kratos/kratos/v2/transport/http"
|
||||||
v1 "voucher/api/v1"
|
v1 "voucher/api/v1"
|
||||||
"voucher/internal/biz/bo"
|
|
||||||
"voucher/internal/biz/vo"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func (s *VoucherService) CmbOrderMock(ctx http.Context) error {
|
func (s *VoucherService) CmbOrderMock(ctx http.Context) error {
|
||||||
|
|
@ -20,10 +18,7 @@ func (s *VoucherService) CmbOrderMock(ctx http.Context) error {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
reply, err := s.CmbMixRepo.GetRequest(ctx, &bo.CmbRequestBo{
|
reply, err := s.CmbMixRepo.GetRequest(ctx, string(bizJsonBytes))
|
||||||
FuncName: vo.CmbOrderFuncName,
|
|
||||||
BizContent: string(bizJsonBytes),
|
|
||||||
})
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
@ -43,10 +38,10 @@ func (s *VoucherService) CmbProductQueryMock(ctx http.Context) error {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
reply, err := s.CmbMixRepo.GetRequest(ctx, &bo.CmbRequestBo{
|
reply, err := s.CmbMixRepo.GetRequest(ctx, string(bizJsonBytes))
|
||||||
FuncName: vo.CmbProductQueryFuncName,
|
if err != nil {
|
||||||
BizContent: string(bizJsonBytes),
|
return err
|
||||||
})
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue