web

package
v0.1.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 23, 2024 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CreateOrderReq

type CreateOrderReq struct {
	RequestID    string        `json:"requestID"`    // 请求去重,防止订单重复提交
	SKUs         []SKU         `json:"skus"`         // 商品信息
	PaymentItems []PaymentItem `json:"paymentItems"` // 支付通道
}

CreateOrderReq 创建订单请求

type CreateOrderResp

type CreateOrderResp struct {
	SN            string `json:"sn"`
	WechatCodeURL string `json:"wechatCodeURL,omitempty"`
}

type Handler

type Handler struct {
	// contains filtered or unexported fields
}

func NewHandler

func NewHandler(svc service.Service, paymentSvc payment.Service, productSvc product.Service, creditSvc credit.Service, snGenerator *sequencenumber.Generator, cache ecache.Cache) *Handler

func (*Handler) CancelOrder

func (h *Handler) CancelOrder(ctx *ginx.Context, req OrderSNReq, sess session.Session) (ginx.Result, error)

CancelOrder 取消订单

func (*Handler) CreateOrder added in v0.1.0

func (h *Handler) CreateOrder(ctx *ginx.Context, req CreateOrderReq, sess session.Session) (ginx.Result, error)

CreateOrder 创建订单和支付

func (*Handler) ListOrders

func (h *Handler) ListOrders(ctx *ginx.Context, req ListOrdersReq, sess session.Session) (ginx.Result, error)

ListOrders 分页查询用户订单

func (*Handler) PreviewOrder added in v0.1.0

func (h *Handler) PreviewOrder(ctx *ginx.Context, req PreviewOrderReq, sess session.Session) (ginx.Result, error)

PreviewOrder 获取订单预览信息, 此时订单尚未创建

func (*Handler) PrivateRoutes

func (h *Handler) PrivateRoutes(server *gin.Engine)

func (*Handler) PublicRoutes added in v0.1.0

func (h *Handler) PublicRoutes(_ *gin.Engine)

func (*Handler) RepayOrder added in v0.1.0

func (h *Handler) RepayOrder(ctx *ginx.Context, req OrderSNReq, sess session.Session) (ginx.Result, error)

RepayOrder 继续支付订单

func (*Handler) RetrieveOrderDetail

func (h *Handler) RetrieveOrderDetail(ctx *ginx.Context, req OrderSNReq, sess session.Session) (ginx.Result, error)

RetrieveOrderDetail 查看订单详情

type ListOrdersReq

type ListOrdersReq struct {
	Offset int `json:"offset,omitempty"`
	Limit  int `json:"limit,omitempty"`
}

ListOrdersReq 分页查询用户所有订单

type ListOrdersResp

type ListOrdersResp struct {
	Total  int64   `json:"total,omitempty"`
	Orders []Order `json:"orders,omitempty"`
}

type Order

type Order struct {
	SN               string      `json:"sn"`
	Payment          Payment     `json:"payment"`
	OriginalTotalAmt int64       `json:"originalTotalAmt"`
	RealTotalAmt     int64       `json:"realTotalAmt"`
	Status           uint8       `json:"status"`
	Items            []OrderItem `json:"items"`
	Ctime            int64       `json:"ctime"`
	Utime            int64       `json:"utime"`
}

type OrderItem

type OrderItem struct {
	SKU SKU `json:"sku"`
	SPU SPU `json:"spu"`
}

type OrderSNReq added in v0.1.0

type OrderSNReq struct {
	SN string `json:"sn"`
}

OrderSNReq 继续支付订单、获取订单状态、获取订单详情、取消订单

type Payment

type Payment struct {
	SN    string        `json:"sn"`
	Items []PaymentItem `json:"items,omitempty"`
}

type PaymentItem added in v0.1.0

type PaymentItem struct {
	Type   int64 `json:"type"` // 1 积分, 2微信
	Amount int64 `json:"amount,omitempty"`
}

type PreviewOrderReq

type PreviewOrderReq struct {
	SKUs []SKU `json:"skus"` // 商品信息
}

PreviewOrderReq 预览订单请求

type PreviewOrderResp

type PreviewOrderResp struct {
	Order   Order  `json:"order"`   // 预览oder, 包含支持的渠道, 和要购买的SKU
	Credits uint64 `json:"credits"` // 积分总数
	Policy  string `json:"policy"`  // 政策信息
}

type RepayOrderResp added in v0.1.0

type RepayOrderResp struct {
	WechatCodeURL string `json:"wechatCodeURL,omitempty"`
}

RepayOrderResp 继续支付

type RetrieveOrderDetailResp

type RetrieveOrderDetailResp struct {
	Order Order `json:"order"`
}

type RetrieveOrderStatusResp

type RetrieveOrderStatusResp struct {
	Status uint8 `json:"status"`
}

RetrieveOrderStatusResp 获取订单状态

type SKU added in v0.1.0

type SKU struct {
	SN            string `json:"sn"`
	Image         string `json:"image"`
	Name          string `json:"name"`
	Desc          string `json:"desc"`
	OriginalPrice int64  `json:"originalPrice"`
	RealPrice     int64  `json:"realPrice"`
	Quantity      int64  `json:"quantity"`
}

type SPU added in v0.1.0

type SPU struct {
	Category string `json:"category"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL