Files
order/controller/order.go
2025-12-10 13:51:09 +08:00

73 lines
1.9 KiB
Go

package controller
import (
"context"
"order/model/dto"
"order/service"
)
type order struct{}
// Order 订单控制器
var Order = new(order)
// Create 创建订单
func (c *order) Create(ctx context.Context, req *dto.CreateOrderReq) (res *dto.CreateOrderResp, err error) {
// 创建订单
res, err = service.Order.CreateOrder(ctx, req)
return
}
// Pay 支付订单
func (c *order) Pay(ctx context.Context, req *dto.PayOrderReq) (res *dto.PayOrderResp, err error) {
// 支付订单
res, err = service.Payment.PayOrder(ctx, req)
return
}
// Query 查询订单详情
func (c *order) Query(ctx context.Context, req *dto.QueryOrderReq) (res *dto.QueryOrderResp, err error) {
// 查询订单
res, err = service.Order.QueryOrder(ctx, req)
return
}
// Cancel 取消订单
func (c *order) Cancel(ctx context.Context, req *dto.CancelOrderReq) (res *dto.CancelOrderResp, err error) {
// 取消订单
res, err = service.Order.CancelOrder(ctx, req)
return
}
// Refund 退款
func (c *order) Refund(ctx context.Context, req *dto.RefundOrderReq) (res *dto.RefundOrderResp, err error) {
// 退款
res, err = service.Payment.RefundOrder(ctx, req)
return
}
// List 查询订单列表
func (c *order) List(ctx context.Context, req *dto.ListOrdersReq) (res *dto.ListOrdersResp, err error) {
// 查询订单列表
res, err = service.Order.ListOrders(ctx, req)
return
}
// PaymentNotify 支付回调
func (c *order) PaymentNotify(ctx context.Context, req *dto.PaymentNotifyReq) (res *dto.PaymentNotifyResp, err error) {
// 处理支付回调
err = service.Payment.HandlePaymentNotify(ctx, req)
return &dto.PaymentNotifyResp{
Success: err == nil,
}, err
}
// RefundNotify 退款回调
func (c *order) RefundNotify(ctx context.Context, req *dto.RefundNotifyReq) (res *dto.RefundNotifyResp, err error) {
// 处理退款回调
err = service.Payment.HandleRefundNotify(ctx, req)
return &dto.RefundNotifyResp{
Success: err == nil,
}, err
}