初始化
Build docker and publish / prepare (push) Has been cancelled
Build docker and publish / build (map[dockerfile:deploy/Dockerfile.admin image_name:ppanel-admin name:admin]) (push) Has been cancelled
Build docker and publish / build (map[dockerfile:deploy/Dockerfile.api image_name:ppanel-api name:api]) (push) Has been cancelled
Build docker and publish / build (map[dockerfile:deploy/Dockerfile.node image_name:ppanel-node name:node]) (push) Has been cancelled
Build docker and publish / build (map[dockerfile:deploy/Dockerfile.queue image_name:ppanel-queue name:queue]) (push) Has been cancelled
Build docker and publish / build (map[dockerfile:deploy/Dockerfile.scheduler image_name:ppanel-scheduler name:scheduler]) (push) Has been cancelled
Build docker and publish / deploy (push) Has been cancelled
Build docker and publish / notify (push) Has been cancelled
Build docker and publish / prepare (push) Has been cancelled
Build docker and publish / build (map[dockerfile:deploy/Dockerfile.admin image_name:ppanel-admin name:admin]) (push) Has been cancelled
Build docker and publish / build (map[dockerfile:deploy/Dockerfile.api image_name:ppanel-api name:api]) (push) Has been cancelled
Build docker and publish / build (map[dockerfile:deploy/Dockerfile.node image_name:ppanel-node name:node]) (push) Has been cancelled
Build docker and publish / build (map[dockerfile:deploy/Dockerfile.queue image_name:ppanel-queue name:queue]) (push) Has been cancelled
Build docker and publish / build (map[dockerfile:deploy/Dockerfile.scheduler image_name:ppanel-scheduler name:scheduler]) (push) Has been cancelled
Build docker and publish / deploy (push) Has been cancelled
Build docker and publish / notify (push) Has been cancelled
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
syntax = "v1"
|
||||
|
||||
info (
|
||||
title: "公告管理"
|
||||
)
|
||||
|
||||
type (
|
||||
CreateAnnouncementReq {
|
||||
Title string `json:"title"`
|
||||
Content string `json:"content"`
|
||||
}
|
||||
|
||||
AdminAnnouncementResp {
|
||||
Id int64 `json:"id"`
|
||||
Title string `json:"title"`
|
||||
Content string `json:"content"`
|
||||
CreatedAt string `json:"created_at"`
|
||||
}
|
||||
|
||||
UpdateAnnouncementReq {
|
||||
Id int64 `path:"id"`
|
||||
Title string `json:"title"`
|
||||
Content string `json:"content"`
|
||||
}
|
||||
|
||||
DeleteAnnouncementReq {
|
||||
Id int64 `path:"id"`
|
||||
}
|
||||
)
|
||||
|
||||
@server (
|
||||
prefix: /api/v1/admin/announcement
|
||||
group: announcement
|
||||
jwt: JwtAuth
|
||||
)
|
||||
service ppaneladmin {
|
||||
@handler CreateAnnouncementHandler
|
||||
post /create (CreateAnnouncementReq) returns (AdminAnnouncementResp)
|
||||
|
||||
@handler UpdateAnnouncementHandler
|
||||
put /:id (UpdateAnnouncementReq)
|
||||
|
||||
@handler DeleteAnnouncementHandler
|
||||
delete /:id (DeleteAnnouncementReq)
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
syntax = "v1"
|
||||
|
||||
info (
|
||||
title: "管理后台公共接口"
|
||||
)
|
||||
|
||||
@server (
|
||||
prefix: /api/v1/admin
|
||||
group: common
|
||||
)
|
||||
service ppaneladmin {
|
||||
@handler HealthHandler
|
||||
get /health returns (HealthResp)
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
syntax = "v1"
|
||||
|
||||
info (
|
||||
title: "控制台"
|
||||
)
|
||||
|
||||
type (
|
||||
ConsoleStatsResp {
|
||||
TotalUsers int64 `json:"total_users"`
|
||||
TotalOrders int64 `json:"total_orders"`
|
||||
TotalRevenue int64 `json:"total_revenue"`
|
||||
TodayNewUsers int64 `json:"today_new_users"`
|
||||
TodayOrders int64 `json:"today_orders"`
|
||||
TodayRevenue int64 `json:"today_revenue"`
|
||||
OnlineNodes int64 `json:"online_nodes"`
|
||||
TotalNodes int64 `json:"total_nodes"`
|
||||
}
|
||||
)
|
||||
|
||||
@server (
|
||||
prefix: /api/v1/admin/console
|
||||
group: console
|
||||
jwt: JwtAuth
|
||||
)
|
||||
service ppaneladmin {
|
||||
@handler GetConsoleStatsHandler
|
||||
get /stats returns (ConsoleStatsResp)
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
syntax = "v1"
|
||||
|
||||
info (
|
||||
title: "订单管理"
|
||||
)
|
||||
|
||||
type (
|
||||
AdminOrderListReq {
|
||||
Page int `form:"page,default=1"`
|
||||
PageSize int `form:"page_size,default=20"`
|
||||
Status int `form:"status,optional"`
|
||||
}
|
||||
|
||||
AdminOrderResp {
|
||||
Id int64 `json:"id"`
|
||||
OrderNo string `json:"order_no"`
|
||||
UserId int64 `json:"user_id"`
|
||||
Amount int64 `json:"amount"`
|
||||
Status int `json:"status"`
|
||||
CreatedAt string `json:"created_at"`
|
||||
}
|
||||
|
||||
AdminOrderListResp {
|
||||
Total int64 `json:"total"`
|
||||
List []AdminOrderResp `json:"list"`
|
||||
}
|
||||
|
||||
UpdateOrderStatusReq {
|
||||
OrderNo string `path:"order_no"`
|
||||
Status int `json:"status"`
|
||||
}
|
||||
)
|
||||
|
||||
@server (
|
||||
prefix: /api/v1/admin/order
|
||||
group: order
|
||||
jwt: JwtAuth
|
||||
)
|
||||
service ppaneladmin {
|
||||
@handler GetOrderListHandler
|
||||
get /list (AdminOrderListReq) returns (AdminOrderListResp)
|
||||
|
||||
@handler UpdateOrderStatusHandler
|
||||
put /:order_no/status (UpdateOrderStatusReq)
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
syntax = "v1"
|
||||
|
||||
info (
|
||||
title: "服务器管理"
|
||||
)
|
||||
|
||||
type (
|
||||
ServerListReq {
|
||||
Page int `form:"page,default=1"`
|
||||
PageSize int `form:"page_size,default=20"`
|
||||
}
|
||||
|
||||
ServerResp {
|
||||
Id int64 `json:"id"`
|
||||
Name string `json:"name"`
|
||||
Address string `json:"address"`
|
||||
Port int `json:"port"`
|
||||
Protocol string `json:"protocol"`
|
||||
Enable bool `json:"enable"`
|
||||
}
|
||||
|
||||
ServerListResp {
|
||||
Total int64 `json:"total"`
|
||||
List []ServerResp `json:"list"`
|
||||
}
|
||||
|
||||
CreateServerReq {
|
||||
Name string `json:"name"`
|
||||
Address string `json:"address"`
|
||||
Port int `json:"port"`
|
||||
Protocol string `json:"protocol"`
|
||||
}
|
||||
|
||||
UpdateServerReq {
|
||||
Id int64 `path:"id"`
|
||||
Name string `json:"name"`
|
||||
Address string `json:"address"`
|
||||
Port int `json:"port"`
|
||||
Protocol string `json:"protocol"`
|
||||
}
|
||||
|
||||
DeleteServerReq {
|
||||
Id int64 `path:"id"`
|
||||
}
|
||||
)
|
||||
|
||||
@server (
|
||||
prefix: /api/v1/admin/server
|
||||
group: server
|
||||
jwt: JwtAuth
|
||||
)
|
||||
service ppaneladmin {
|
||||
@handler GetServerListHandler
|
||||
get /list (ServerListReq) returns (ServerListResp)
|
||||
|
||||
@handler CreateServerHandler
|
||||
post /create (CreateServerReq) returns (ServerResp)
|
||||
|
||||
@handler UpdateServerHandler
|
||||
put /:id (UpdateServerReq)
|
||||
|
||||
@handler DeleteServerHandler
|
||||
delete /:id (DeleteServerReq)
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
syntax = "v1"
|
||||
|
||||
info (
|
||||
title: "订阅管理"
|
||||
)
|
||||
|
||||
type (
|
||||
AdminSubscribeListReq {
|
||||
Page int `form:"page,default=1"`
|
||||
PageSize int `form:"page_size,default=20"`
|
||||
}
|
||||
|
||||
AdminSubscribeResp {
|
||||
Id int64 `json:"id"`
|
||||
Name string `json:"name"`
|
||||
Price int64 `json:"price"`
|
||||
Traffic int64 `json:"traffic"`
|
||||
Enable bool `json:"enable"`
|
||||
}
|
||||
|
||||
AdminSubscribeListResp {
|
||||
Total int64 `json:"total"`
|
||||
List []AdminSubscribeResp `json:"list"`
|
||||
}
|
||||
|
||||
CreateSubscribeReq {
|
||||
Name string `json:"name"`
|
||||
Price int64 `json:"price"`
|
||||
Traffic int64 `json:"traffic"`
|
||||
}
|
||||
|
||||
UpdateSubscribeReq {
|
||||
Id int64 `path:"id"`
|
||||
Name string `json:"name"`
|
||||
Price int64 `json:"price"`
|
||||
Traffic int64 `json:"traffic"`
|
||||
}
|
||||
|
||||
DeleteSubscribeReq {
|
||||
Id int64 `path:"id"`
|
||||
}
|
||||
)
|
||||
|
||||
@server (
|
||||
prefix: /api/v1/admin/subscribe
|
||||
group: subscribe
|
||||
jwt: JwtAuth
|
||||
)
|
||||
service ppaneladmin {
|
||||
@handler GetSubscribeListHandler
|
||||
get /list (AdminSubscribeListReq) returns (AdminSubscribeListResp)
|
||||
|
||||
@handler CreateSubscribeHandler
|
||||
post /create (CreateSubscribeReq) returns (AdminSubscribeResp)
|
||||
|
||||
@handler UpdateSubscribeHandler
|
||||
put /:id (UpdateSubscribeReq)
|
||||
|
||||
@handler DeleteSubscribeHandler
|
||||
delete /:id (DeleteSubscribeReq)
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
syntax = "v1"
|
||||
|
||||
info (
|
||||
title: "系统配置管理"
|
||||
)
|
||||
|
||||
type (
|
||||
SiteConfigResp {
|
||||
SiteName string `json:"site_name"`
|
||||
SiteDesc string `json:"site_desc"`
|
||||
SiteLogo string `json:"site_logo"`
|
||||
ForceHttps bool `json:"force_https"`
|
||||
}
|
||||
|
||||
UpdateSiteConfigReq {
|
||||
SiteName string `json:"site_name"`
|
||||
SiteDesc string `json:"site_desc"`
|
||||
SiteLogo string `json:"site_logo"`
|
||||
ForceHttps bool `json:"force_https"`
|
||||
}
|
||||
|
||||
RegisterConfigResp {
|
||||
StopRegister bool `json:"stop_register"`
|
||||
EmailVerify bool `json:"email_verify"`
|
||||
EmailWhitelist string `json:"email_whitelist"`
|
||||
InviteForce bool `json:"invite_force"`
|
||||
}
|
||||
|
||||
UpdateRegisterConfigReq {
|
||||
StopRegister bool `json:"stop_register"`
|
||||
EmailVerify bool `json:"email_verify"`
|
||||
EmailWhitelist string `json:"email_whitelist"`
|
||||
InviteForce bool `json:"invite_force"`
|
||||
}
|
||||
)
|
||||
|
||||
@server (
|
||||
prefix: /api/v1/admin/system
|
||||
group: system
|
||||
jwt: JwtAuth
|
||||
)
|
||||
service ppaneladmin {
|
||||
@handler GetSiteConfigHandler
|
||||
get /site returns (SiteConfigResp)
|
||||
|
||||
@handler UpdateSiteConfigHandler
|
||||
put /site (UpdateSiteConfigReq)
|
||||
|
||||
@handler GetRegisterConfigHandler
|
||||
get /register returns (RegisterConfigResp)
|
||||
|
||||
@handler UpdateRegisterConfigHandler
|
||||
put /register (UpdateRegisterConfigReq)
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
syntax = "v1"
|
||||
|
||||
info (
|
||||
title: "工单管理"
|
||||
)
|
||||
|
||||
type (
|
||||
AdminTicketListReq {
|
||||
Page int `form:"page,default=1"`
|
||||
PageSize int `form:"page_size,default=20"`
|
||||
Status int `form:"status,optional"`
|
||||
}
|
||||
|
||||
AdminTicketResp {
|
||||
Id int64 `json:"id"`
|
||||
UserId int64 `json:"user_id"`
|
||||
Title string `json:"title"`
|
||||
Status int `json:"status"`
|
||||
CreatedAt string `json:"created_at"`
|
||||
}
|
||||
|
||||
AdminTicketListResp {
|
||||
Total int64 `json:"total"`
|
||||
List []AdminTicketResp `json:"list"`
|
||||
}
|
||||
|
||||
AdminTicketDetailReq {
|
||||
Id int64 `path:"id"`
|
||||
}
|
||||
|
||||
AdminUpdateTicketStatusReq {
|
||||
Id int64 `path:"id"`
|
||||
Status int `json:"status"`
|
||||
}
|
||||
|
||||
AdminCreateTicketFollowReq {
|
||||
Id int64 `path:"id"`
|
||||
Content string `json:"content"`
|
||||
}
|
||||
)
|
||||
|
||||
@server (
|
||||
prefix: /api/v1/admin/ticket
|
||||
group: ticket
|
||||
jwt: JwtAuth
|
||||
)
|
||||
service ppaneladmin {
|
||||
@handler GetTicketListHandler
|
||||
get /list (AdminTicketListReq) returns (AdminTicketListResp)
|
||||
|
||||
@handler GetTicketDetailHandler
|
||||
get /:id (AdminTicketDetailReq) returns (AdminTicketResp)
|
||||
|
||||
@handler UpdateTicketStatusHandler
|
||||
put /:id/status (AdminUpdateTicketStatusReq)
|
||||
|
||||
@handler CreateTicketFollowHandler
|
||||
post /:id/follow (AdminCreateTicketFollowReq)
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
syntax = "v1"
|
||||
|
||||
info (
|
||||
title: "管理后台公共类型"
|
||||
)
|
||||
|
||||
type (
|
||||
HealthResp {
|
||||
Status string `json:"status"`
|
||||
}
|
||||
)
|
||||
@@ -0,0 +1,51 @@
|
||||
syntax = "v1"
|
||||
|
||||
info (
|
||||
title: "用户管理"
|
||||
)
|
||||
|
||||
type (
|
||||
AdminUserListReq {
|
||||
Page int `form:"page,default=1"`
|
||||
PageSize int `form:"page_size,default=20"`
|
||||
Search string `form:"search,optional"`
|
||||
}
|
||||
|
||||
AdminUserResp {
|
||||
Id int64 `json:"id"`
|
||||
Email string `json:"email"`
|
||||
Balance int64 `json:"balance"`
|
||||
IsAdmin bool `json:"is_admin"`
|
||||
Enable bool `json:"enable"`
|
||||
CreatedAt string `json:"created_at"`
|
||||
}
|
||||
|
||||
AdminUserListResp {
|
||||
Total int64 `json:"total"`
|
||||
List []AdminUserResp `json:"list"`
|
||||
}
|
||||
|
||||
AdminUserDetailReq {
|
||||
Id int64 `path:"id"`
|
||||
}
|
||||
|
||||
AdminDeleteUserReq {
|
||||
Id int64 `path:"id"`
|
||||
}
|
||||
)
|
||||
|
||||
@server (
|
||||
prefix: /api/v1/admin/user
|
||||
group: user
|
||||
jwt: JwtAuth
|
||||
)
|
||||
service ppaneladmin {
|
||||
@handler GetUserListHandler
|
||||
get /list (AdminUserListReq) returns (AdminUserListResp)
|
||||
|
||||
@handler GetUserDetailHandler
|
||||
get /:id (AdminUserDetailReq) returns (AdminUserResp)
|
||||
|
||||
@handler DeleteUserHandler
|
||||
delete /:id (AdminDeleteUserReq)
|
||||
}
|
||||
Reference in New Issue
Block a user