voucher/internal/service/cmb_mock.go

163 lines
3.0 KiB
Go

package service
import (
"encoding/json"
"github.com/go-kratos/kratos/v2/transport/http"
"io"
v1 "voucher/api/v1"
)
func (s *VoucherService) CmbOrderMock(ctx http.Context) error {
bodyBytes, err := io.ReadAll(ctx.Request().Body)
if err != nil {
return err
}
var req *v1.CmbOrderRequest
if err = json.Unmarshal(bodyBytes, &req); err != nil {
return err
}
bizJsonBytes, err := json.Marshal(req)
if err != nil {
return err
}
reply, err := s.CmbMixRepo.GetMockRequest(ctx, string(bizJsonBytes))
if err != nil {
return err
}
return ctx.JSON(200, reply)
}
func (s *VoucherService) CmbQueryMock(ctx http.Context) error {
bodyBytes, err := io.ReadAll(ctx.Request().Body)
if err != nil {
return err
}
var req *v1.CmbQueryRequest
if err = json.Unmarshal(bodyBytes, &req); err != nil {
return err
}
bizJsonBytes, err := json.Marshal(req)
if err != nil {
return err
}
reply, err := s.CmbMixRepo.GetMockRequest(ctx, string(bizJsonBytes))
if err != nil {
return err
}
return ctx.JSON(200, reply)
}
func (s *VoucherService) CmbProductQueryMock(ctx http.Context) error {
bodyBytes, err := io.ReadAll(ctx.Request().Body)
if err != nil {
return err
}
var req *v1.CmbQueryProductRequest
if err = json.Unmarshal(bodyBytes, &req); err != nil {
return err
}
bizJsonBytes, err := json.Marshal(req)
if err != nil {
return err
}
reply, err := s.CmbMixRepo.GetMockRequest(ctx, string(bizJsonBytes))
if err != nil {
return err
}
return ctx.JSON(200, reply)
}
func (s *VoucherService) DecryptBody(ctx http.Context) error {
bodyBytes, err := io.ReadAll(ctx.Request().Body)
if err != nil {
return err
}
var req *v1.EncryptBody
if err = json.Unmarshal(bodyBytes, &req); err != nil {
return err
}
decryptBody, err := s.CmbMixRepo.Decrypt(ctx, req.EncryptBody)
if err != nil {
return err
}
return ctx.JSON(200, &v1.DecryptBody{
DecryptBody: decryptBody,
})
}
func (s *VoucherService) QueryWechatVoucherNotifyUrl(ctx http.Context) error {
bodyBytes, err := io.ReadAll(ctx.Request().Body)
if err != nil {
return err
}
var req *v1.QueryWechatVoucherNotifyUrlRequest
if err = json.Unmarshal(bodyBytes, &req); err != nil {
return err
}
rep, err := s.VoucherBiz.WechatCpnRepo.QueryCallback(ctx)
if err != nil {
return err
}
return ctx.JSON(200, &v1.QueryWechatVoucherNotifyUrlReply{
Url: *rep.NotifyUrl,
})
}
func (s *VoucherService) SetWechatVoucherNotifyUrl(ctx http.Context) error {
//bodyBytes, err := io.ReadAll(ctx.Request().Body)
//if err != nil {
// return err
//}
//
//var req *v1.SetWechatVoucherNotifyUrlRequest
//if err = json.Unmarshal(bodyBytes, &req); err != nil {
// return err
//}
//
//rep, err := s.VoucherBiz.WechatCpnRepo.SetCallback(ctx, req.MchId, req.MchCertNo, req.Url)
//if err != nil {
// return err
//}
//
//return ctx.JSON(200, &v1.SetWechatVoucherNotifyUrlReply{
// MchId: req.MchId,
// Url: *rep.NotifyUrl,
//})
return nil
}
func (s *VoucherService) Test(ctx http.Context) error {
if err := s.VoucherBiz.ExecuteNotice(ctx); err != nil {
return err
}
return nil
}