// 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"`
	InviteCode string `json:"invite_code,optional"`
	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 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"`
	Level        int64  `json:"level"`
	LevelName    string `json:"level_name"`
	Region       string `json:"region"`
	Mobile       string `json:"mobile"`
	WechatId     string `json:"wechat_id"`
	TeamLeaderId string `json:"team_leader_id"`
	IsRealName   bool   `json:"is_real_name"`
	AgentCode    int64  `json:"agent_code"`
}

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

type ApplyUpgradeReq struct {
	ToLevel int64 `json:"to_level"` // 目标等级：2=黄金，3=钻石
}

type ApplyUpgradeResp struct {
	UpgradeId string `json:"upgrade_id"` // 升级记录ID
	OrderNo   string `json:"order_no"`   // 支付订单号
}

type ApplyWithdrawalReq struct {
	Amount       float64 `json:"amount"`        // 提现金额
	PayeeAccount string  `json:"payee_account"` // 收款账户
	PayeeName    string  `json:"payee_name"`    // 收款人姓名
}

type ApplyWithdrawalResp struct {
	WithdrawalId string `json:"withdrawal_id"` // 提现记录ID
	WithdrawalNo string `json:"withdrawal_no"` // 提现单号
}

type ConversionRateResp struct {
	MyConversionRate          ConversionRateData `json:"my_conversion_rate"`          // 我的转化率
	SubordinateConversionRate ConversionRateData `json:"subordinate_conversion_rate"` // 我的下级转化率
}

type DeleteInviteCodeReq struct {
	Id string `json:"id"` // 邀请码ID
}

type DeleteInviteCodeResp struct {
}

type GenerateInviteCodeReq struct {
	Count      int64  `json:"count"`                // 生成数量
	ExpireDays int64  `json:"expire_days,optional"` // 过期天数（可选，0表示不过期）
	Remark     string `json:"remark,optional"`      // 备注（可选）
}

type GenerateInviteCodeResp struct {
	Codes []string `json:"codes"` // 生成的邀请码列表
}

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

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

type GetInviteCodeListReq struct {
	Page     int64 `form:"page"`            // 页码
	PageSize int64 `form:"page_size"`       // 每页数量
	Status   int64 `form:"status,optional"` // 状态（可选）
}

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

type GetInviteLinkReq struct {
	InviteCode string `form:"invite_code"`          // 邀请码
	TargetPath string `form:"target_path,optional"` // 目标地址（可选，默认为注册页面）
}

type GetInviteLinkResp struct {
	InviteLink string `json:"invite_link"` // 邀请链接
}

type GetLevelPrivilegeResp struct {
	Levels                 []LevelPrivilegeItem `json:"levels"`
	UpgradeToGoldFee       float64              `json:"upgrade_to_gold_fee"`
	UpgradeToDiamondFee    float64              `json:"upgrade_to_diamond_fee"`
	UpgradeToGoldRebate    float64              `json:"upgrade_to_gold_rebate"`
	UpgradeToDiamondRebate float64              `json:"upgrade_to_diamond_rebate"`
}

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 GetRebateListReq struct {
	Page       int64  `form:"page"`                 // 页码
	PageSize   int64  `form:"page_size"`            // 每页数量
	RebateType *int64 `form:"rebate_type,optional"` // 返佣类型（可选）：1=直接上级返佣，2=钻石上级返佣，3=黄金上级返佣
}

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

type GetRevenueInfoResp struct {
	Balance         float64 `json:"balance"`          // 可用余额
	FrozenBalance   float64 `json:"frozen_balance"`   // 冻结余额
	TotalEarnings   float64 `json:"total_earnings"`   // 累计收益（钱包总收益）
	WithdrawnAmount float64 `json:"withdrawn_amount"` // 累计提现
	CommissionTotal float64 `json:"commission_total"` // 佣金累计总收益（推广订单获得的佣金）
	CommissionToday float64 `json:"commission_today"` // 佣金今日收益
	CommissionMonth float64 `json:"commission_month"` // 佣金本月收益
	RebateTotal     float64 `json:"rebate_total"`     // 返佣累计总收益（包括推广返佣和升级返佣）
	RebateToday     float64 `json:"rebate_today"`     // 返佣今日收益
	RebateMonth     float64 `json:"rebate_month"`     // 返佣本月收益
}

type GetSubordinateContributionDetailReq struct {
	SubordinateId string `form:"subordinate_id"`    // 下级代理ID
	Page          int64  `form:"page"`              // 页码
	PageSize      int64  `form:"page_size"`         // 每页数量
	TabType       string `form:"tab_type,optional"` // 标签页类型：order=订单列表，invite=邀请列表
}

type GetSubordinateContributionDetailResp struct {
	Mobile          string           `json:"mobile"`            // 手机号
	LevelName       string           `json:"level_name"`        // 等级名称
	CreateTime      string           `json:"create_time"`       // 创建时间
	OrderStats      OrderStatistics  `json:"order_stats"`       // 订单统计（仅统计有返佣的订单）
	RebateStats     RebateStatistics `json:"rebate_stats"`      // 返佣统计
	InviteStats     InviteStatistics `json:"invite_stats"`      // 邀请统计
	OrderList       []OrderItem      `json:"order_list"`        // 订单列表（仅有贡献的订单）
	InviteList      []InviteItem     `json:"invite_list"`       // 邀请列表
	OrderListTotal  int64            `json:"order_list_total"`  // 订单列表总数
	InviteListTotal int64            `json:"invite_list_total"` // 邀请列表总数
}

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

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

type GetTeamListReq struct {
	Page     int64  `form:"page"`            // 页码
	PageSize int64  `form:"page_size"`       // 每页数量
	Mobile   string `form:"mobile,optional"` // 手机号（可选，用于搜索）
}

type GetTeamListResp struct {
	Statistics TeamStatistics   `json:"statistics"` // 统计数据
	Total      int64            `json:"total"`      // 总数
	List       []TeamMemberItem `json:"list"`       // 列表
}

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

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

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

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

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

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

type RealNameAuthReq struct {
	Name   string `json:"name"`    // 姓名
	IdCard string `json:"id_card"` // 身份证号
	Mobile string `json:"mobile"`  // 手机号
	Code   string `json:"code"`    // 验证码
}

type RealNameAuthResp struct {
	Status string `json:"status"` // 状态：pending=待审核，approved=已通过，rejected=已拒绝
}

type RegisterByInviteCodeReq struct {
	Referrer   string `json:"referrer"`
	InviteCode string `json:"invite_code,optional"`
	AgentCode  int64  `json:"agent_code,optional"`
	Mobile     string `json:"mobile"`
	Code       string `json:"code"`
	Region     string `json:"region,optional"`
	WechatId   string `json:"wechat_id,optional"`
}

type RegisterByInviteCodeResp struct {
	AccessToken  string `json:"accessToken"`
	AccessExpire int64  `json:"accessExpire"`
	RefreshAfter int64  `json:"refreshAfter"`
	AgentId      string `json:"agent_id"`   // 代理ID
	Level        int64  `json:"level"`      // 代理等级
	LevelName    string `json:"level_name"` // 等级名称
	AgentCode    int64  `json:"agent_code"`
}

type ShortLinkRedirectResp struct {
}

type TeamStatisticsResp struct {
	TotalCount      int64 `json:"total_count"`       // 团队总人数（不包括自己）
	DirectCount     int64 `json:"direct_count"`      // 直接下级数量
	IndirectCount   int64 `json:"indirect_count"`    // 间接下级数量
	GoldCount       int64 `json:"gold_count"`        // 黄金代理数量
	NormalCount     int64 `json:"normal_count"`      // 白银代理数量
	TodayNewMembers int64 `json:"today_new_members"` // 今日新增成员
	MonthNewMembers int64 `json:"month_new_members"` // 本月新增成员
}

type UpgradeSubordinateReq struct {
	SubordinateId string `json:"subordinate_id"` // 下级代理ID
	ToLevel       int64  `json:"to_level"`       // 目标等级（只能是2=黄金）
}

type UpgradeSubordinateResp struct {
	Success bool `json:"success"`
}
