修改: bug
All checks were successful
构建并部署前端到测试环境 / build-and-deploy (push) Successful in 4m47s

This commit is contained in:
sexygoat
2026-02-27 17:40:02 +08:00
parent f1cb1e53c8
commit 4470a4ef04
17 changed files with 908 additions and 544 deletions

View File

@@ -22,19 +22,10 @@ export interface PaginationParams {
// 分页响应数据
export interface PaginationData<T> {
items: T[] // 后端实际返回的是 items不是 records
total: number
size: number
page: number // 后端返回的是 page不是 current
pages?: number
}
// 新版分页响应数据(使用 list 字段)
export interface PaginationDataV2<T> {
list: T[] // 新版API使用 list 字段
total: number
page_size: number
page: number
items: T[] // 数据列表
total: number // 总数
page_size: number // 每页数量
page: number // 当前页
total_pages: number // 总页数
}
@@ -43,11 +34,6 @@ export interface PaginationResponse<T = any> extends BaseResponse {
data: PaginationData<T>
}
// 新版分页响应(使用 list 字段)
export interface PaginationResponseV2<T = any> extends BaseResponse {
data: PaginationDataV2<T>
}
// 列表响应
export interface ListResponse<T = any> extends BaseResponse {
data: T[]

View File

@@ -86,6 +86,15 @@ export interface UpdatePackageSeriesStatusRequest {
// ==================== 套餐管理 ====================
/**
* 返佣档位信息
*/
export interface CommissionTierInfo {
current_rate?: string // 当前返佣比例
next_rate?: string // 下一档位返佣比例
next_threshold?: number | null // 下一档位阈值
}
/**
* 套餐响应
*/
@@ -93,22 +102,28 @@ export interface PackageResponse {
id: number
package_code: string
package_name: string
series_id: number
series_name?: string
package_type: string // 'formal':正式套餐, 'addon':加油包
data_type: string // 'real':真实流量, 'virtual':虚拟流量
real_data_mb: number // 真流量额度MB
virtual_data_mb: number // 虚流量额度MB
duration_months: number // 有效期(月)
price: number // 价格(分
cost_price: number // 成本价(分
suggested_retail_price: number // 建议零售价(分)
enable_virtual_data: boolean // 是否启用虚流量
shelf_status: number // 上架状态 (1:上架, 2:下架)
status: number // 状态 (1:启用, 2:禁用)
series_id: number | null
series_name?: string | null
package_type: string // 'formal':正式套餐, 'addon':附加套餐
calendar_type?: string // 套餐周期类型 (natural_month:自然月, by_day:按天)
duration_days?: number | null // 套餐天数(calendar_type=by_day时有值)
duration_months?: number // 套餐时长(月数)
data_reset_cycle?: string // 流量重置周期 (daily:每日, monthly:每月, yearly:每年, none:不重置)
real_data_mb?: number // 真流量额度MB
virtual_data_mb?: number // 虚流量额度MB
enable_virtual_data?: boolean // 是否启用虚流量
enable_realname_activation?: boolean // 是否启用实名激活 (true:需实名后激活, false:立即激活)
cost_price?: number // 成本价(分)
suggested_retail_price?: number // 建议零售价(分)
current_commission_rate?: string // 当前返佣比例(仅代理用户可见)
one_time_commission_amount?: number | null // 一次性佣金金额(分,代理视角)
profit_margin?: number | null // 利润空间(分,仅代理用户可见)
tier_info?: CommissionTierInfo // 返佣档位信息
shelf_status?: number // 上架状态 (1:上架, 2:下架)
status?: number // 状态 (1:启用, 2:禁用)
description?: string
created_at: string
updated_at: string
created_at?: string
updated_at?: string
}
/**
@@ -129,30 +144,37 @@ export interface PackageQueryParams extends PaginationParams {
export interface CreatePackageRequest {
package_code: string // 套餐编码,必填
package_name: string // 套餐名称,必填
series_id: number // 所属系列ID必填
package_type: string // 套餐类型,必填
data_type: string // 流量类型,必填
real_data_mb: number // 真流量额度MB必填
virtual_data_mb: number // 虚流量额度MB,必填
duration_months: number // 有效期(月),必填
price: number // 价格(分),必填
description?: string // 描述,可选
series_id?: number | null // 所属系列ID可选
package_type: string // 套餐类型,必填 (formal:正式套餐, addon:附加套餐)
calendar_type?: string | null // 套餐周期类型 (natural_month:自然月, by_day:按天),可选
duration_days?: number | null // 套餐天数(calendar_type=by_day时必填),可选
duration_months: number // 套餐时长(月数),必填
data_reset_cycle?: string | null // 流量重置周期 (daily:每日, monthly:每月, yearly:每年, none:不重置),可选
real_data_mb?: number | null // 真流量额度MB可选
virtual_data_mb?: number | null // 虚流量额度MB,可选
enable_virtual_data?: boolean // 是否启用虚流量,可选
enable_realname_activation?: boolean | null // 是否启用实名激活 (true:需实名后激活, false:立即激活),可选
cost_price: number // 成本价(分),必填
suggested_retail_price?: number | null // 建议零售价(分),可选
}
/**
* 更新套餐请求
*/
export interface UpdatePackageRequest {
package_code?: string
package_name?: string
series_id?: number
package_type?: string
data_type?: string
real_data_mb?: number
virtual_data_mb?: number
duration_months?: number
price?: number
description?: string
package_name?: string | null // 套餐名称,可选
series_id?: number | null // 所属系列ID可选
package_type?: string | null // 套餐类型,可选 (formal:正式套餐, addon:附加套餐)
calendar_type?: string | null // 套餐周期类型 (natural_month:自然月, by_day:按天),可选
duration_days?: number | null // 套餐天数(calendar_type=by_day时必填),可选
duration_months?: number | null // 套餐时长(月数),可选
data_reset_cycle?: string | null // 流量重置周期 (daily:每日, monthly:每月, yearly:每年, none:不重置),可选
real_data_mb?: number | null // 真流量额度MB可选
virtual_data_mb?: number | null // 虚流量额度MB可选
enable_virtual_data?: boolean | null // 是否启用虚流量,可选
enable_realname_activation?: boolean | null // 是否启用实名激活,可选
cost_price?: number | null // 成本价(分),可选
suggested_retail_price?: number | null // 建议零售价(分),可选
}
/**