224 lines
8.3 KiB
Go
224 lines
8.3 KiB
Go
package dto
|
||
|
||
import (
|
||
"quyun/v2/app/requests"
|
||
"quyun/v2/pkg/consts"
|
||
)
|
||
|
||
// SuperCouponListFilter 超管优惠券列表过滤条件。
|
||
type SuperCouponListFilter struct {
|
||
requests.Pagination
|
||
// ID 优惠券ID,精确匹配。
|
||
ID *int64 `query:"id"`
|
||
// TenantID 租户ID,精确匹配。
|
||
TenantID *int64 `query:"tenant_id"`
|
||
// TenantCode 租户编码,模糊匹配。
|
||
TenantCode *string `query:"tenant_code"`
|
||
// TenantName 租户名称,模糊匹配。
|
||
TenantName *string `query:"tenant_name"`
|
||
// Keyword 标题或描述关键词,模糊匹配。
|
||
Keyword *string `query:"keyword"`
|
||
// Type 优惠券类型过滤(fix_amount/discount)。
|
||
Type *string `query:"type"`
|
||
// Status 状态过滤(active/expired/upcoming)。
|
||
Status *string `query:"status"`
|
||
// CreatedAtFrom 创建时间起始(RFC3339)。
|
||
CreatedAtFrom *string `query:"created_at_from"`
|
||
// CreatedAtTo 创建时间结束(RFC3339)。
|
||
CreatedAtTo *string `query:"created_at_to"`
|
||
// Asc 升序字段(id/created_at/start_at/end_at)。
|
||
Asc *string `query:"asc"`
|
||
// Desc 降序字段(id/created_at/start_at/end_at)。
|
||
Desc *string `query:"desc"`
|
||
}
|
||
|
||
// SuperCouponItem 超管优惠券列表项。
|
||
type SuperCouponItem struct {
|
||
// ID 优惠券ID。
|
||
ID int64 `json:"id"`
|
||
// TenantID 租户ID。
|
||
TenantID int64 `json:"tenant_id"`
|
||
// TenantCode 租户编码。
|
||
TenantCode string `json:"tenant_code"`
|
||
// TenantName 租户名称。
|
||
TenantName string `json:"tenant_name"`
|
||
// Title 优惠券标题。
|
||
Title string `json:"title"`
|
||
// Description 优惠券描述。
|
||
Description string `json:"description"`
|
||
// Type 优惠券类型。
|
||
Type consts.CouponType `json:"type"`
|
||
// TypeDescription 类型描述(用于展示)。
|
||
TypeDescription string `json:"type_description"`
|
||
// Value 优惠券面额/折扣值。
|
||
Value int64 `json:"value"`
|
||
// MinOrderAmount 最低订单金额门槛。
|
||
MinOrderAmount int64 `json:"min_order_amount"`
|
||
// MaxDiscount 最大折扣金额(折扣券)。
|
||
MaxDiscount int64 `json:"max_discount"`
|
||
// TotalQuantity 总发行数量(0 表示不限量)。
|
||
TotalQuantity int32 `json:"total_quantity"`
|
||
// UsedQuantity 已使用数量。
|
||
UsedQuantity int32 `json:"used_quantity"`
|
||
// Status 状态(active/expired/upcoming)。
|
||
Status string `json:"status"`
|
||
// StatusDescription 状态描述(用于展示)。
|
||
StatusDescription string `json:"status_description"`
|
||
// StartAt 生效时间(RFC3339)。
|
||
StartAt string `json:"start_at"`
|
||
// EndAt 结束时间(RFC3339)。
|
||
EndAt string `json:"end_at"`
|
||
// CreatedAt 创建时间(RFC3339)。
|
||
CreatedAt string `json:"created_at"`
|
||
// UpdatedAt 更新时间(RFC3339)。
|
||
UpdatedAt string `json:"updated_at"`
|
||
}
|
||
|
||
// SuperCouponGrantResponse 超管优惠券发放结果。
|
||
type SuperCouponGrantResponse struct {
|
||
// Granted 实际发放数量。
|
||
Granted int `json:"granted"`
|
||
}
|
||
|
||
// SuperCouponStatusUpdateForm 超管优惠券状态更新表单。
|
||
type SuperCouponStatusUpdateForm struct {
|
||
// Status 目标状态(frozen)。
|
||
Status string `json:"status" validate:"required,oneof=frozen"`
|
||
}
|
||
|
||
// SuperCouponGrantListFilter 超管优惠券发放记录过滤条件。
|
||
type SuperCouponGrantListFilter struct {
|
||
requests.Pagination
|
||
// CouponID 优惠券ID过滤(精确匹配)。
|
||
CouponID *int64 `query:"coupon_id"`
|
||
// TenantID 租户ID过滤(精确匹配)。
|
||
TenantID *int64 `query:"tenant_id"`
|
||
// TenantCode 租户编码过滤(模糊匹配)。
|
||
TenantCode *string `query:"tenant_code"`
|
||
// TenantName 租户名称过滤(模糊匹配)。
|
||
TenantName *string `query:"tenant_name"`
|
||
// UserID 用户ID过滤(精确匹配)。
|
||
UserID *int64 `query:"user_id"`
|
||
// Username 用户名过滤(模糊匹配)。
|
||
Username *string `query:"username"`
|
||
// Status 用户券状态过滤(unused/used/expired)。
|
||
Status *consts.UserCouponStatus `query:"status"`
|
||
// CreatedAtFrom 领取时间起始(RFC3339)。
|
||
CreatedAtFrom *string `query:"created_at_from"`
|
||
// CreatedAtTo 领取时间结束(RFC3339)。
|
||
CreatedAtTo *string `query:"created_at_to"`
|
||
// UsedAtFrom 使用时间起始(RFC3339)。
|
||
UsedAtFrom *string `query:"used_at_from"`
|
||
// UsedAtTo 使用时间结束(RFC3339)。
|
||
UsedAtTo *string `query:"used_at_to"`
|
||
}
|
||
|
||
// SuperCouponGrantItem 超管优惠券发放记录项。
|
||
type SuperCouponGrantItem struct {
|
||
// ID 用户券ID。
|
||
ID int64 `json:"id"`
|
||
// CouponID 优惠券ID。
|
||
CouponID int64 `json:"coupon_id"`
|
||
// CouponTitle 优惠券标题。
|
||
CouponTitle string `json:"coupon_title"`
|
||
// TenantID 租户ID。
|
||
TenantID int64 `json:"tenant_id"`
|
||
// TenantCode 租户编码。
|
||
TenantCode string `json:"tenant_code"`
|
||
// TenantName 租户名称。
|
||
TenantName string `json:"tenant_name"`
|
||
// UserID 用户ID。
|
||
UserID int64 `json:"user_id"`
|
||
// Username 用户名。
|
||
Username string `json:"username"`
|
||
// Status 用户券状态。
|
||
Status consts.UserCouponStatus `json:"status"`
|
||
// StatusDescription 状态描述(用于展示)。
|
||
StatusDescription string `json:"status_description"`
|
||
// OrderID 使用订单ID。
|
||
OrderID int64 `json:"order_id"`
|
||
// UsedAt 使用时间(RFC3339)。
|
||
UsedAt string `json:"used_at"`
|
||
// CreatedAt 领取时间(RFC3339)。
|
||
CreatedAt string `json:"created_at"`
|
||
}
|
||
|
||
// SuperCouponRiskListFilter 超管优惠券异常核查过滤条件。
|
||
type SuperCouponRiskListFilter struct {
|
||
requests.Pagination
|
||
// RiskType 异常类型过滤(used_without_order/order_status_mismatch/used_outside_window/unused_has_order_or_used_at/duplicate_grant)。
|
||
RiskType *string `query:"risk_type"`
|
||
// CouponID 优惠券ID过滤(精确匹配)。
|
||
CouponID *int64 `query:"coupon_id"`
|
||
// TenantID 租户ID过滤(精确匹配)。
|
||
TenantID *int64 `query:"tenant_id"`
|
||
// TenantCode 租户编码过滤(模糊匹配)。
|
||
TenantCode *string `query:"tenant_code"`
|
||
// TenantName 租户名称过滤(模糊匹配)。
|
||
TenantName *string `query:"tenant_name"`
|
||
// Keyword 优惠券标题/描述关键词(模糊匹配)。
|
||
Keyword *string `query:"keyword"`
|
||
// UserID 用户ID过滤(精确匹配)。
|
||
UserID *int64 `query:"user_id"`
|
||
// Username 用户名过滤(模糊匹配)。
|
||
Username *string `query:"username"`
|
||
// Status 用户券状态过滤(unused/used/expired)。
|
||
Status *consts.UserCouponStatus `query:"status"`
|
||
// OrderStatus 订单状态过滤。
|
||
OrderStatus *consts.OrderStatus `query:"order_status"`
|
||
// CreatedAtFrom 领取时间起始(RFC3339)。
|
||
CreatedAtFrom *string `query:"created_at_from"`
|
||
// CreatedAtTo 领取时间结束(RFC3339)。
|
||
CreatedAtTo *string `query:"created_at_to"`
|
||
// UsedAtFrom 使用时间起始(RFC3339)。
|
||
UsedAtFrom *string `query:"used_at_from"`
|
||
// UsedAtTo 使用时间结束(RFC3339)。
|
||
UsedAtTo *string `query:"used_at_to"`
|
||
// Asc 升序字段(id/created_at/used_at)。
|
||
Asc *string `query:"asc"`
|
||
// Desc 降序字段(id/created_at/used_at)。
|
||
Desc *string `query:"desc"`
|
||
}
|
||
|
||
// SuperCouponRiskItem 超管优惠券异常核查记录。
|
||
type SuperCouponRiskItem struct {
|
||
// ID 用户券ID。
|
||
ID int64 `json:"id"`
|
||
// RiskType 异常类型。
|
||
RiskType string `json:"risk_type"`
|
||
// RiskReason 异常说明。
|
||
RiskReason string `json:"risk_reason"`
|
||
// CouponID 优惠券ID。
|
||
CouponID int64 `json:"coupon_id"`
|
||
// CouponTitle 优惠券标题。
|
||
CouponTitle string `json:"coupon_title"`
|
||
// TenantID 租户ID。
|
||
TenantID int64 `json:"tenant_id"`
|
||
// TenantCode 租户编码。
|
||
TenantCode string `json:"tenant_code"`
|
||
// TenantName 租户名称。
|
||
TenantName string `json:"tenant_name"`
|
||
// UserID 用户ID。
|
||
UserID int64 `json:"user_id"`
|
||
// Username 用户名。
|
||
Username string `json:"username"`
|
||
// Status 用户券状态。
|
||
Status consts.UserCouponStatus `json:"status"`
|
||
// StatusDescription 状态描述(用于展示)。
|
||
StatusDescription string `json:"status_description"`
|
||
// OrderID 使用订单ID。
|
||
OrderID int64 `json:"order_id"`
|
||
// OrderStatus 订单状态。
|
||
OrderStatus consts.OrderStatus `json:"order_status"`
|
||
// OrderStatusDescription 订单状态描述(用于展示)。
|
||
OrderStatusDescription string `json:"order_status_description"`
|
||
// OrderAmountPaid 订单实付金额(分)。
|
||
OrderAmountPaid int64 `json:"order_amount_paid"`
|
||
// PaidAt 订单支付时间(RFC3339)。
|
||
PaidAt string `json:"paid_at"`
|
||
// UsedAt 使用时间(RFC3339)。
|
||
UsedAt string `json:"used_at"`
|
||
// CreatedAt 领取时间(RFC3339)。
|
||
CreatedAt string `json:"created_at"`
|
||
}
|