112 lines
6.6 KiB
Go
112 lines
6.6 KiB
Go
package api
|
||
|
||
import (
|
||
"server/controllers"
|
||
|
||
beego "github.com/beego/beego/v2/server/web"
|
||
)
|
||
|
||
// Register 注册移动端 / 客户端开放 API(api)路由。
|
||
// 说明:/api 统一承载「所有移动端接口」(uniapp)与「登录器等客户端开放接口」,
|
||
// 与 /platform、/backend、/index、/auth 各端完全隔离,不复用其它端的功能接口。
|
||
//
|
||
// 注意:字面量路由必须注册在 :id 通配之前(beego 按注册顺序匹配)。
|
||
func Register() {
|
||
// ===== 客户端登录器 / 开放接口(无需登录)=====
|
||
// 客户端检查更新
|
||
beego.Router("/api/softwareupgrade/check", &controllers.ApiSoftwareUpgradeController{}, "get:Check")
|
||
|
||
// 登录器上报 Cursor 设备信息
|
||
beego.Router("/api/cursor/equipment/report", &controllers.ApiCursorEquipmentController{}, "post:Report")
|
||
// 登录器使用激活码激活/续期 Cursor 设备
|
||
beego.Router("/api/cursor/equipment/activateByCode", &controllers.ApiCursorEquipmentController{}, "post:ActivateByCode")
|
||
// 登录器心跳接口,用于更新在线状态
|
||
beego.Router("/api/cursor/equipment/heartbeat", &controllers.ApiCursorEquipmentController{}, "post:Heartbeat")
|
||
|
||
// Cursor Token 顺序读取/检测接口(peek 不改变号池状态)
|
||
// GET /api/cursor/token/peek?id=11&data_type=tk
|
||
beego.Router("/api/cursor/token/peek", &controllers.ApiCursorDetectController{}, "get:PeekToken")
|
||
// Cursor Token 可用状态标记接口
|
||
// POST /api/cursor/token/available?id=11
|
||
// POST /api/cursor/token/unavailable?id=11
|
||
beego.Router("/api/cursor/token/available", &controllers.ApiCursorDetectController{}, "post:MarkTokenAvailable")
|
||
beego.Router("/api/cursor/token/unavailable", &controllers.ApiCursorDetectController{}, "post:MarkTokenUnavailable")
|
||
|
||
// 对外提卡接口
|
||
// GET /api/getcard?type=xianyu&module=cursor&data_type=tk
|
||
beego.Router("/api/getcard", &controllers.ApiGetCardController{}, "get:GetCard")
|
||
|
||
// 日程提醒确认接口
|
||
beego.Router("/api/schedule/reminder/ack", &controllers.ApiReminderController{}, "get:AckReminder")
|
||
|
||
// ===== 移动端(uniapp)登录相关(AppAuthController)=====
|
||
beego.Router("/api/login", &controllers.AppAuthController{}, "post:LoginBackend")
|
||
beego.Router("/api/sendLoginCode", &controllers.AppAuthController{}, "post:SendLoginCode")
|
||
beego.Router("/api/loginBySms", &controllers.AppAuthController{}, "post:LoginBySms")
|
||
beego.Router("/api/logout", &controllers.AppAuthController{}, "post:Logout")
|
||
|
||
// 当前用户信息
|
||
beego.Router("/api/currentUser", &controllers.AppAuthController{}, "get:GetCurrentUser")
|
||
|
||
// 极验与登录验证配置
|
||
beego.Router("/api/login/getGeetest3Infos", &controllers.AppAuthController{}, "get:GetGeetest3Infos")
|
||
beego.Router("/api/login/getGeetest4Infos", &controllers.AppAuthController{}, "get:GetGeetest4Infos")
|
||
beego.Router("/api/login/getOpenVerify", &controllers.AppAuthController{}, "get:GetOpenVerify")
|
||
|
||
// 找回密码(三步流程)
|
||
beego.Router("/api/verifyAccount", &controllers.AppAuthController{}, "post:VerifyAccount")
|
||
beego.Router("/api/sendResetCode", &controllers.AppAuthController{}, "post:SendResetCode")
|
||
beego.Router("/api/resetPassword", &controllers.AppAuthController{}, "post:ResetPassword")
|
||
|
||
// 注册
|
||
beego.Router("/api/register", &controllers.AppAuthController{}, "post:Register")
|
||
beego.Router("/api/sendRegisterCode", &controllers.AppAuthController{}, "post:SendRegisterCode")
|
||
|
||
// 日程提醒
|
||
beego.Router("/api/schedule/list", &controllers.AppReminderController{}, "get:GetList")
|
||
beego.Router("/api/schedule", &controllers.AppReminderController{}, "post:Create")
|
||
beego.Router("/api/schedule/:id", &controllers.AppReminderController{}, "get:GetDetail;put:Update;delete:Delete")
|
||
beego.Router("/api/schedule/:id/toggle", &controllers.AppReminderController{}, "post:ToggleComplete")
|
||
|
||
// 记事本
|
||
beego.Router("/api/notebook/list", &controllers.AppNotebookController{}, "get:GetList")
|
||
beego.Router("/api/notebook", &controllers.AppNotebookController{}, "post:Create")
|
||
beego.Router("/api/notebook/:id", &controllers.AppNotebookController{}, "get:GetDetail;put:Update;delete:Delete")
|
||
beego.Router("/api/notebook/:id/togglePin", &controllers.AppNotebookController{}, "post:TogglePin")
|
||
|
||
// OA 协同办公(移动端只读:通知公告 / 文档库 / 薪酬工资单 / 员工档案)
|
||
beego.Router("/api/oa/notice/list", &controllers.AppOaController{}, "get:NoticeList")
|
||
beego.Router("/api/oa/notice/:id", &controllers.AppOaController{}, "get:NoticeDetail")
|
||
|
||
beego.Router("/api/oa/document/categories", &controllers.AppOaController{}, "get:DocCategories")
|
||
beego.Router("/api/oa/document/list", &controllers.AppOaController{}, "get:DocList")
|
||
beego.Router("/api/oa/document/download/:id", &controllers.AppOaController{}, "get:DocDownload")
|
||
beego.Router("/api/oa/document/:id/star", &controllers.AppOaController{}, "post:DocStar")
|
||
beego.Router("/api/oa/document/:id", &controllers.AppOaController{}, "get:DocDetail")
|
||
|
||
beego.Router("/api/oa/compensation/payrolls", &controllers.AppOaController{}, "get:PayrollList")
|
||
beego.Router("/api/oa/compensation/payrolls/:id", &controllers.AppOaController{}, "get:PayrollDetail")
|
||
|
||
beego.Router("/api/oa/employee-file", &controllers.AppOaController{}, "get:MyEmployeeFile")
|
||
// 员工档案 HR 视角:access 判定是否可看全公司档案,list 全公司档案列表,detail 档案详情
|
||
beego.Router("/api/oa/employee-file/access", &controllers.AppOaController{}, "get:EmployeeFileAccess")
|
||
beego.Router("/api/oa/employee-file/list", &controllers.AppOaController{}, "get:EmployeeFileList")
|
||
beego.Router("/api/oa/employee-file/detail/:id", &controllers.AppOaController{}, "get:EmployeeFileDetail")
|
||
|
||
// OA 工作台仪表盘(移动端首屏顶部聚合:待办/报销统计 + 通知公告 + 今日日程)
|
||
beego.Router("/api/oa/dashboard", &controllers.AppOaController{}, "get:Dashboard")
|
||
|
||
// 通讯录(移动端只读:列表 / 组织树 / 详情)
|
||
beego.Router("/api/oa/contact/list", &controllers.AppOaController{}, "get:ContactList")
|
||
beego.Router("/api/oa/contact/org-tree", &controllers.AppOaController{}, "get:ContactOrgTree")
|
||
beego.Router("/api/oa/contact/:id", &controllers.AppOaController{}, "get:ContactDetail")
|
||
|
||
// 活动日志
|
||
beego.Router("/api/activity/list", &controllers.AppActivityController{}, "get:GetList")
|
||
|
||
// 工作台聚合(ERP/OA/CRM/CMS 应用门户首屏数据)
|
||
beego.Router("/api/home", &controllers.AppAggregateController{}, "get:Home")
|
||
// 移动端用户自定义「常用功能」保存(读取随 /api/home 下发 quick_menu_ids)
|
||
beego.Router("/api/quick-menus", &controllers.AppAggregateController{}, "post:SaveQuickMenus")
|
||
}
|