增加交易单号

This commit is contained in:
2026-09-14 01:53:09 +08:00
parent b80e7495b9
commit 5d6109bb52
4 changed files with 20 additions and 14 deletions
+1 -1
View File
@@ -162,7 +162,7 @@ curl http://localhost:8081/ping
| 方法 | 路径 | 说明 |
| --- | --- | --- |
| GET | `/orders` | 订单列表(query:page/page_size/order_no/user_id/status) |
| GET | `/orders` | 订单列表(query:page/page_size/order_no/transaction_id/user_id/status) |
| GET | `/orders/:orderNo` | 订单详情 |
| GET | `/refunds` | 退款单列表(query:page/page_size/status/order_no) |
| POST | `/refunds/:refundNo/approve` | 审核通过(待处理→退款中) |
+4 -3
View File
@@ -3,9 +3,10 @@ package dto
// OrderListRequest 订单列表请求。
type OrderListRequest struct {
PageRequest
OrderNo string `form:"order_no"` // 订单号(精确)
UserID int64 `form:"user_id"` // 用户 ID
Status int8 `form:"status" binding:"omitempty,oneof=1 2 3 4 5"`
OrderNo string `form:"order_no"` // 订单号(精确)
TransactionID string `form:"transaction_id"` // 微信交易号(精确)
UserID int64 `form:"user_id"` // 用户 ID
Status int8 `form:"status" binding:"omitempty,oneof=1 2 3 4 5"`
}
// OrderItem 订单信息(金额单位:分)。
+9 -5
View File
@@ -20,11 +20,12 @@ func NewOrderDao() *OrderDao {
// OrderListParams 订单分页列表筛选参数。
type OrderListParams struct {
OrderNo string // 订单号(精确)
UserID int64 // 用户 ID,0 表示全部
Status int8 // 订单状态,0 表示全部
Page int
Size int
OrderNo string // 订单号(精确)
TransactionID string // 微信交易号(精确)
UserID int64 // 用户 ID,0 表示全部
Status int8 // 订单状态,0 表示全部
Page int
Size int
}
// OrderList 分页查询订单
@@ -38,6 +39,9 @@ func (d *OrderDao) OrderList(ctx context.Context, p OrderListParams) ([]mysqlmod
if p.OrderNo != "" {
q = q.Where("order_no = ?", p.OrderNo)
}
if p.TransactionID != "" {
q = q.Where("transaction_id = ?", p.TransactionID)
}
if p.UserID != 0 {
q = q.Where("user_id = ?", p.UserID)
}
+6 -5
View File
@@ -33,11 +33,12 @@ func (s *OrderService) List(ctx context.Context, request *dto.OrderListRequest)
page, pageSize := normalizePage(request.Page, request.PageSize)
list, total, err := s.orderDao.OrderList(ctx, mysqldao.OrderListParams{
OrderNo: strings.TrimSpace(request.OrderNo),
UserID: request.UserID,
Status: request.Status,
Page: page,
Size: pageSize,
OrderNo: strings.TrimSpace(request.OrderNo),
TransactionID: strings.TrimSpace(request.TransactionID),
UserID: request.UserID,
Status: request.Status,
Page: page,
Size: pageSize,
})
if err != nil {
return nil, errcode.DatabaseError