// Code generated by goctl. DO NOT EDIT.
package types

type AgentApplyReq struct {
	Region    string `json:"region,optional"`
	Mobile    string `json:"mobile"`
	Code      string `json:"code"`
	Referrer  string `json:"referrer"`
	AgentCode int64  `json:"agent_code,optional"`
}

type AgentApplyResp struct {
	AccessToken  string `json:"accessToken"`
	AccessExpire int64  `json:"accessExpire"`
	RefreshAfter int64  `json:"refreshAfter"`
	AgentCode    int64  `json:"agent_code"`
}

type AgentDashboardResp struct {
	Statistics    DashboardStatistics `json:"statistics"`     // 统计数据
	PromotionLink string              `json:"promotion_link"` // 推广链接
	Product       DashboardProduct    `json:"product"`        // 产品信息
}

type AgentGeneratingLinkReq struct {
	ProductId  string  `json:"product_id"`           // 产品ID
	SetPrice   float64 `json:"set_price"`            // 设定价格
	TargetPath string  `json:"target_path,optional"` // 目标地址（可选，默认为推广报告页面）
}

type AgentGeneratingLinkResp struct {
	LinkIdentifier string `json:"link_identifier"` // 推广链接标识
	FullLink       string `json:"full_link"`       // 完整短链URL
}

type AgentInfoResp struct {
	AgentId   string `json:"agent_id"`
	Region    string `json:"region"`
	Mobile    string `json:"mobile"`
	WechatId  string `json:"wechat_id"`
	AgentCode int64  `json:"agent_code"`
}

type AgentProductConfigResp struct {
	List []ProductConfigItem `json:"list"`
}

type CreateWithdrawReq struct {
	WithdrawAmount float64 `json:"withdraw_amount"`      // 提现金额
	AccountName    string  `json:"account_name"`         // 收款人姓名
	BankCardNumber string  `json:"bank_card_number"`     // 银行卡号
	BankBranch     string  `json:"bank_branch,optional"` // 开户支行（可选）
}

type CreateWithdrawResp struct {
	WithdrawId string `json:"withdraw_id"` // 提现记录ID
}

type GetCommissionListReq struct {
	Page     int64 `form:"page"`      // 页码
	PageSize int64 `form:"page_size"` // 每页数量
}

type GetCommissionListResp struct {
	Total int64            `json:"total"` // 总数
	List  []CommissionItem `json:"list"`  // 列表
}

type GetLinkDataReq struct {
	LinkIdentifier string `form:"link_identifier"` // 推广链接标识
}

type GetLinkDataResp struct {
	AgentId         string    `json:"agent_id"`          // 代理ID
	ProductId       string    `json:"product_id"`        // 产品ID
	SetPrice        float64   `json:"set_price"`         // 代理设定价格
	ActualBasePrice float64   `json:"actual_base_price"` // 实际底价
	ProductName     string    `json:"product_name"`      // 产品名称
	ProductEn       string    `json:"product_en"`        // 产品英文标识
	SellPrice       float64   `json:"sell_price"`        // 销售价格（使用代理设定价格）
	Description     string    `json:"description"`       // 产品描述
	Features        []Feature `json:"features"`          // 产品功能列表
}

type GetPromotionQueryListReq struct {
	Page     int64 `form:"page"`      // 页码
	PageSize int64 `form:"page_size"` // 每页数量
}

type GetPromotionQueryListResp struct {
	Total int64                `json:"total"` // 总数
	List  []PromotionQueryItem `json:"list"`  // 列表
}

type GetRevenueInfoResp struct {
	Balance         float64 `json:"balance"`          // 可用余额
	TotalEarnings   float64 `json:"total_earnings"`   // 累计收益
	CommissionTotal float64 `json:"commission_total"` // 佣金累计总收益
	CommissionToday float64 `json:"commission_today"` // 佣金今日收益
	CommissionMonth float64 `json:"commission_month"` // 佣金本月收益
}

type GetWithdrawListReq struct {
	Page     int64 `form:"page"`      // 页码
	PageSize int64 `form:"page_size"` // 每页数量
}

type GetWithdrawListResp struct {
	Total int64          `json:"total"` // 总数
	List  []WithdrawItem `json:"list"`  // 列表
}

type ShortLinkRedirectResp struct {
}
