Files
jnc-server/app/main/api/desc/front/agent.api

274 lines
9.4 KiB
Plaintext
Raw Normal View History

2025-12-27 18:12:05 +08:00
syntax = "v1"
info (
title: "代理服务(简化版)"
desc: "新代理系统接口 - 系统简化后移除团队、返佣、升级、提现、实名、邀请码功能"
version: "v1"
)
// ============================================
// 公开接口(无需认证)
// ============================================
@server (
prefix: api/v1/agent
group: agent
)
service main {
// 获取推广链接数据
@handler GetLinkData
get /link (GetLinkDataReq) returns (GetLinkDataResp)
}
@server (
prefix: api/v1/agent
group: agent
middleware: AuthInterceptor
)
service main {
// 申请成为代理(系统简化:无需邀请码)
@handler ApplyForAgent
post /apply (AgentApplyReq) returns (AgentApplyResp)
}
// ============================================
// 需要登录的接口
// ============================================
@server (
prefix: api/v1/agent
group: agent
jwt: JwtAuth
middleware: UserAuthInterceptor
)
service main {
// 查看代理信息(简化版)
@handler GetAgentInfo
get /info returns (AgentInfoResp)
// 获取代理仪表板数据(简化版)
@handler GetAgentDashboard
get /dashboard returns (AgentDashboardResp)
// 生成推广链接
@handler GeneratingLink
post /generating_link (AgentGeneratingLinkReq) returns (AgentGeneratingLinkResp)
// 获取产品配置
@handler GetAgentProductConfig
get /product_config returns (AgentProductConfigResp)
// 获取收益信息(简化版)
@handler GetRevenueInfo
get /revenue returns (GetRevenueInfoResp)
// 获取佣金记录
@handler GetCommissionList
get /commission/list (GetCommissionListReq) returns (GetCommissionListResp)
// 获取推广查询报告列表
@handler GetPromotionQueryList
get /promotion/query/list (GetPromotionQueryListReq) returns (GetPromotionQueryListResp)
// 创建提现申请
@handler CreateWithdraw
post /withdraw/create (CreateWithdrawReq) returns (CreateWithdrawResp)
// 获取提现记录列表
@handler GetWithdrawList
get /withdraw/list (GetWithdrawListReq) returns (GetWithdrawListResp)
}
// ============================================
// 短链重定向接口公开访问不需要认证和api前缀
// ============================================
@server (
group: agent
)
service main {
// 短链重定向
@handler ShortLinkRedirect
get /s/:shortCode returns (ShortLinkRedirectResp)
}
// ============================================
// 类型定义
// ============================================
type (
// 获取推广链接数据
GetLinkDataReq {
LinkIdentifier string `form:"link_identifier"` // 推广链接标识
}
GetLinkDataResp {
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"` // 产品功能列表
}
// 申请成为代理
AgentApplyReq {
Region string `json:"region,optional"`
Mobile string `json:"mobile"`
Code string `json:"code"`
Referrer string `json:"referrer"`
AgentCode int64 `json:"agent_code,optional"`
}
AgentApplyResp {
AccessToken string `json:"accessToken"`
AccessExpire int64 `json:"accessExpire"`
RefreshAfter int64 `json:"refreshAfter"`
AgentCode int64 `json:"agent_code"`
}
// 代理信息(简化版)
AgentInfoResp {
AgentId string `json:"agent_id"`
Region string `json:"region"`
Mobile string `json:"mobile"`
WechatId string `json:"wechat_id"`
AgentCode int64 `json:"agent_code"`
}
// 代理仪表板数据(简化版)
AgentDashboardResp {
Statistics DashboardStatistics `json:"statistics"` // 统计数据
PromotionLink string `json:"promotion_link"` // 推广链接
Product DashboardProduct `json:"product"` // 产品信息
}
DashboardStatistics {
TodayOrders int64 `json:"today_orders"` // 今日订单数
TodayEarnings string `json:"today_earnings"` // 今日佣金
MonthEarnings string `json:"month_earnings"` // 本月佣金
TotalOrders int64 `json:"total_orders"` // 总订单数
TotalEarnings string `json:"total_earnings"` // 总佣金
CommissionRate string `json:"commission_rate"` // 佣金率
CurrentBalance string `json:"current_balance"` // 当前余额
FrozenBalance string `json:"frozen_balance"` // 冻结余额
}
DashboardProduct {
Name string `json:"name"` // 产品名称
Price string `json:"price"` // 价格
Description string `json:"description"` // 描述
}
// 生成推广链接
AgentGeneratingLinkReq {
ProductId string `json:"product_id"` // 产品ID
SetPrice float64 `json:"set_price"` // 设定价格
TargetPath string `json:"target_path,optional"` // 目标地址(可选,默认为推广报告页面)
}
AgentGeneratingLinkResp {
LinkIdentifier string `json:"link_identifier"` // 推广链接标识
FullLink string `json:"full_link"` // 完整短链URL
}
// 产品配置
AgentProductConfigResp {
List []ProductConfigItem `json:"list"`
}
ProductConfigItem {
ProductId string `json:"product_id"` // 产品ID
ProductName string `json:"product_name"` // 产品名称
ProductEn string `json:"product_en"` // 产品英文标识
ActualBasePrice float64 `json:"actual_base_price"` // 实际底价
PriceRangeMin float64 `json:"price_range_min"` // 最低价格
PriceRangeMax float64 `json:"price_range_max"` // 最高价格
PriceThreshold float64 `json:"price_threshold"` // 提价标准阈值
PriceFeeRate float64 `json:"price_fee_rate"` // 提价手续费比例
}
// 收益信息(简化版)
GetRevenueInfoResp {
Balance float64 `json:"balance"` // 可用余额
TotalEarnings float64 `json:"total_earnings"` // 累计收益
CommissionTotal float64 `json:"commission_total"` // 佣金累计总收益
CommissionToday float64 `json:"commission_today"` // 佣金今日收益
CommissionMonth float64 `json:"commission_month"` // 佣金本月收益
}
// 佣金记录
GetCommissionListReq {
Page int64 `form:"page"` // 页码
PageSize int64 `form:"page_size"` // 每页数量
}
GetCommissionListResp {
Total int64 `json:"total"` // 总数
List []CommissionItem `json:"list"` // 列表
}
CommissionItem {
Id string `json:"id"` // 记录ID
OrderId string `json:"order_id"` // 订单ID
OrderNo string `json:"order_no"` // 订单号
ProductName string `json:"product_name"` // 产品名称
Amount float64 `json:"amount"` // 佣金金额
Status int64 `json:"status"` // 状态1=已发放2=已冻结3=已取消
CreateTime string `json:"create_time"` // 创建时间
}
// 推广查询列表
GetPromotionQueryListReq {
Page int64 `form:"page"` // 页码
PageSize int64 `form:"page_size"` // 每页数量
}
GetPromotionQueryListResp {
Total int64 `json:"total"` // 总数
List []PromotionQueryItem `json:"list"` // 列表
}
PromotionQueryItem {
Id string `json:"id"` // 查询ID
OrderId string `json:"order_id"` // 订单ID
OrderNo string `json:"order_no"` // 订单号
ProductName string `json:"product_name"` // 产品名称
OrderAmount float64 `json:"order_amount"` // 订单金额
Amount float64 `json:"amount"` // 推广收益
QueryName string `json:"query_name"` // 查询人姓名
QueryMobile string `json:"query_mobile"` // 查询人手机号
CreateTime string `json:"create_time"` // 创建时间
QueryState string `json:"query_state"` // 查询状态
}
// 短链重定向
ShortLinkRedirectResp {}
// ============================================
// 提现相关
// ============================================
// 创建提现申请
CreateWithdrawReq {
WithdrawAmount float64 `json:"withdraw_amount"` // 提现金额
AccountName string `json:"account_name"` // 收款人姓名
BankCardNumber string `json:"bank_card_number"` // 银行卡号
BankBranch string `json:"bank_branch,optional"` // 开户支行(可选)
}
CreateWithdrawResp {
WithdrawId string `json:"withdraw_id"` // 提现记录ID
}
// 获取提现记录列表
GetWithdrawListReq {
Page int64 `form:"page"` // 页码
PageSize int64 `form:"page_size"` // 每页数量
}
GetWithdrawListResp {
Total int64 `json:"total"` // 总数
List []WithdrawItem `json:"list"` // 列表
}
WithdrawItem {
Id string `json:"id"` // 记录ID
WithdrawAmount string `json:"withdraw_amount"` // 提现金额
TaxAmount string `json:"tax_amount"` // 税费金额
ActualAmount string `json:"actual_amount"` // 实际到账金额
AccountName string `json:"account_name"` // 收款人姓名
BankCardNumber string `json:"bank_card_number"` // 银行卡号(脱敏)
Status int64 `json:"status"` // 状态0=待审核1=已通过2=已拒绝
AuditRemark string `json:"audit_remark"` // 审核备注
CreateTime string `json:"create_time"` // 创建时间
AuditTime string `json:"audit_time"` // 审核时间
}
)