2021-11-11 15:56:02 +08:00
|
|
|
package router
|
2021-04-16 15:10:07 +08:00
|
|
|
|
|
|
|
|
import (
|
2022-09-09 18:26:08 +08:00
|
|
|
"mayfly-go/internal/machine/api"
|
2024-01-21 22:52:20 +08:00
|
|
|
"mayfly-go/pkg/biz"
|
|
|
|
|
"mayfly-go/pkg/ioc"
|
2023-01-14 16:29:52 +08:00
|
|
|
"mayfly-go/pkg/req"
|
2021-04-16 15:10:07 +08:00
|
|
|
|
|
|
|
|
"github.com/gin-gonic/gin"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
func InitMachineRouter(router *gin.RouterGroup) {
|
2024-01-21 22:52:20 +08:00
|
|
|
m := new(api.Machine)
|
|
|
|
|
biz.ErrIsNil(ioc.Inject(m))
|
2022-04-22 17:49:21 +08:00
|
|
|
|
2024-01-23 19:30:28 +08:00
|
|
|
dashbord := new(api.Dashbord)
|
|
|
|
|
biz.ErrIsNil(ioc.Inject(dashbord))
|
|
|
|
|
|
2021-11-11 15:56:02 +08:00
|
|
|
machines := router.Group("machines")
|
2021-04-16 15:10:07 +08:00
|
|
|
{
|
2023-01-14 16:29:52 +08:00
|
|
|
saveMachineP := req.NewPermission("machine:update")
|
2021-04-16 15:10:07 +08:00
|
|
|
|
2023-07-08 20:05:55 +08:00
|
|
|
reqs := [...]*req.Conf{
|
2024-01-23 19:30:28 +08:00
|
|
|
req.NewGet("dashbord", dashbord.Dashbord),
|
|
|
|
|
|
2023-07-08 20:05:55 +08:00
|
|
|
req.NewGet("", m.Machines),
|
|
|
|
|
|
|
|
|
|
req.NewGet(":machineId/stats", m.MachineStats),
|
|
|
|
|
|
|
|
|
|
req.NewGet(":machineId/process", m.GetProcess),
|
|
|
|
|
|
2024-05-21 12:34:26 +08:00
|
|
|
req.NewGet(":machineId/users", m.GetUsers),
|
|
|
|
|
|
|
|
|
|
req.NewGet(":machineId/groups", m.GetGroups),
|
|
|
|
|
|
2023-07-08 20:05:55 +08:00
|
|
|
req.NewDelete(":machineId/process", m.KillProcess).Log(req.NewLogSave("终止进程")).RequiredPermissionCode("machine:killprocess"),
|
|
|
|
|
|
|
|
|
|
req.NewPost("", m.SaveMachine).Log(req.NewLogSave("保存机器信息")).RequiredPermission(saveMachineP),
|
|
|
|
|
|
|
|
|
|
req.NewPost("test-conn", m.TestConn),
|
2022-08-29 21:43:24 +08:00
|
|
|
|
2023-07-08 20:05:55 +08:00
|
|
|
req.NewPut(":machineId/:status", m.ChangeStatus).Log(req.NewLogSave("调整机器状态")).RequiredPermission(saveMachineP),
|
|
|
|
|
|
|
|
|
|
req.NewDelete(":machineId", m.DeleteMachine).Log(req.NewLogSave("删除机器")),
|
|
|
|
|
|
2023-12-05 23:03:51 +08:00
|
|
|
// 获取机器终端回放记录列表,目前具有保存机器信息的权限标识才有权限查看终端回放
|
|
|
|
|
req.NewGet(":machineId/term-recs", m.MachineTermOpRecords).RequiredPermission(saveMachineP),
|
|
|
|
|
|
|
|
|
|
// 获取机器终端回放记录
|
|
|
|
|
req.NewGet(":machineId/term-recs/:recId", m.MachineTermOpRecord).RequiredPermission(saveMachineP),
|
2023-07-08 20:05:55 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
req.BatchSetGroup(machines, reqs[:])
|
|
|
|
|
|
|
|
|
|
// 终端连接
|
2024-04-09 12:55:51 +08:00
|
|
|
machines.GET("terminal/:ac", m.WsSSH)
|
2024-04-06 04:03:38 +00:00
|
|
|
|
|
|
|
|
// 终端连接
|
2024-04-09 12:55:51 +08:00
|
|
|
machines.GET("rdp/:ac", m.WsGuacamole)
|
2021-04-16 15:10:07 +08:00
|
|
|
}
|
|
|
|
|
}
|