Files
mayfly-go/server/internal/db/router/db_data_sync.go
meilin.huang 99a746085b feat: i18n
2024-11-20 22:43:53 +08:00

46 lines
1.2 KiB
Go

package router
import (
"mayfly-go/internal/db/api"
"mayfly-go/internal/db/imsg"
"mayfly-go/pkg/biz"
"mayfly-go/pkg/ioc"
"mayfly-go/pkg/req"
"github.com/gin-gonic/gin"
)
func InitDbDataSyncRouter(router *gin.RouterGroup) {
instances := router.Group("/datasync/tasks")
d := new(api.DataSyncTask)
biz.ErrIsNil(ioc.Inject(d))
reqs := [...]*req.Conf{
// 获取任务列表 /datasync
req.NewGet("", d.Tasks),
req.NewGet(":taskId/logs", d.Logs).RequiredPermissionCode("db:sync:log"),
// 保存任务 /datasync/save
req.NewPost("save", d.SaveTask).Log(req.NewLogSaveI(imsg.LogDataSyncSave)).RequiredPermissionCode("db:sync:save"),
// 获取单个详情 /datasync/:taskId
req.NewGet(":taskId", d.GetTask),
// 删除任务 /datasync/:taskId/del
req.NewDelete(":taskId/del", d.DeleteTask).Log(req.NewLogSaveI(imsg.LogDataSyncDelete)).RequiredPermissionCode("db:sync:del"),
// 启停用任务 /datasync/status
req.NewPost(":taskId/status", d.ChangeStatus).Log(req.NewLogSaveI(imsg.LogDataSyncChangeStatus)).RequiredPermissionCode("db:sync:status"),
// 立即执行任务 /datasync/run
req.NewPost(":taskId/run", d.Run),
// 停止正在执行中的任务
req.NewPost(":taskId/stop", d.Stop),
}
req.BatchSetGroup(instances, reqs[:])
}