61 lines
2.5 KiB
Go
61 lines
2.5 KiB
Go
package responses
|
||
|
||
import (
|
||
"time"
|
||
)
|
||
|
||
// UserSimpleResponse 用户简单信息响应
|
||
type UserSimpleResponse struct {
|
||
ID string `json:"id" comment:"用户ID"`
|
||
CompanyName string `json:"company_name" comment:"公司名称"`
|
||
Phone string `json:"phone" comment:"手机号"`
|
||
}
|
||
|
||
// SubscriptionInfoResponse 订阅详情响应
|
||
type SubscriptionInfoResponse struct {
|
||
ID string `json:"id" comment:"订阅ID"`
|
||
UserID string `json:"user_id" comment:"用户ID"`
|
||
ProductID string `json:"product_id" comment:"产品ID"`
|
||
Price float64 `json:"price" comment:"订阅价格"`
|
||
UIComponentPrice float64 `json:"ui_component_price" comment:"UI组件价格(组合包使用)"`
|
||
APIUsed int64 `json:"api_used" comment:"已使用API调用次数"`
|
||
|
||
// 关联信息
|
||
User *UserSimpleResponse `json:"user,omitempty" comment:"用户信息"`
|
||
Product *ProductSimpleResponse `json:"product,omitempty" comment:"产品信息"`
|
||
// 管理员端使用,包含成本价的产品信息
|
||
ProductAdmin *ProductSimpleAdminResponse `json:"product_admin,omitempty" comment:"产品信息(管理员端,包含成本价)"`
|
||
|
||
CreatedAt time.Time `json:"created_at" comment:"创建时间"`
|
||
UpdatedAt time.Time `json:"updated_at" comment:"更新时间"`
|
||
}
|
||
|
||
// SubscriptionListResponse 订阅列表响应
|
||
type SubscriptionListResponse struct {
|
||
Total int64 `json:"total" comment:"总数"`
|
||
Page int `json:"page" comment:"页码"`
|
||
Size int `json:"size" comment:"每页数量"`
|
||
Items []SubscriptionInfoResponse `json:"items" comment:"订阅列表"`
|
||
}
|
||
|
||
// SubscriptionSimpleResponse 订阅简单信息响应
|
||
type SubscriptionSimpleResponse struct {
|
||
ID string `json:"id" comment:"订阅ID"`
|
||
ProductID string `json:"product_id" comment:"产品ID"`
|
||
Price float64 `json:"price" comment:"订阅价格"`
|
||
APIUsed int64 `json:"api_used" comment:"已使用API调用次数"`
|
||
}
|
||
|
||
// SubscriptionUsageResponse 订阅使用情况响应
|
||
type SubscriptionUsageResponse struct {
|
||
ID string `json:"id" comment:"订阅ID"`
|
||
ProductID string `json:"product_id" comment:"产品ID"`
|
||
APIUsed int64 `json:"api_used" comment:"已使用API调用次数"`
|
||
}
|
||
|
||
// SubscriptionStatsResponse 订阅统计响应
|
||
type SubscriptionStatsResponse struct {
|
||
TotalSubscriptions int64 `json:"total_subscriptions" comment:"订阅总数"`
|
||
TotalRevenue float64 `json:"total_revenue" comment:"总收入"`
|
||
}
|