Files
go_process_manager/internal/app/api/task.go
2025-02-10 17:23:02 +08:00

71 lines
2.1 KiB
Go

package api
import (
"github.com/lzh-1625/go_process_manager/internal/app/logic"
"github.com/lzh-1625/go_process_manager/internal/app/model"
"github.com/lzh-1625/go_process_manager/internal/app/repository"
"github.com/gin-gonic/gin"
)
type taskApi struct{}
var TaskApi = new(taskApi)
func (t *taskApi) CreateTask(ctx *gin.Context, req model.Task) {
err := logic.TaskLogic.CreateTask(req)
errCheck(ctx, err != nil, err)
rOk(ctx, "Operation successful!", nil)
}
func (t *taskApi) GetTaskById(ctx *gin.Context) {
result, err := repository.TaskRepository.GetTaskById(getQueryInt(ctx, "id"))
errCheck(ctx, err != nil, "Query failed!")
rOk(ctx, "Operation successful!", result)
}
func (t *taskApi) GetTaskList(ctx *gin.Context) {
result := logic.TaskLogic.GetAllTaskJob()
rOk(ctx, "Operation successful!", result)
}
func (t *taskApi) DeleteTaskById(ctx *gin.Context) {
err := logic.TaskLogic.DeleteTask(getQueryInt(ctx, "id"))
errCheck(ctx, err != nil, err)
rOk(ctx, "Operation successful!", nil)
}
func (t *taskApi) StartTask(ctx *gin.Context) {
go logic.TaskLogic.RunTaskById(getQueryInt(ctx, "id"))
rOk(ctx, "Operation successful!", nil)
}
func (t *taskApi) StopTask(ctx *gin.Context) {
errCheck(ctx, logic.TaskLogic.StopTaskJob(getQueryInt(ctx, "id")) != nil, "Operation failed!")
rOk(ctx, "Operation successful!", nil)
}
func (t *taskApi) EditTask(ctx *gin.Context, req model.Task) {
err := logic.TaskLogic.EditTask(req)
errCheck(ctx, err != nil, err)
rOk(ctx, "Operation successful!", nil)
}
func (t *taskApi) EditTaskEnable(ctx *gin.Context, req model.Task) {
err := logic.TaskLogic.EditTaskEnable(req.Id, req.Enable)
errCheck(ctx, err != nil, err)
rOk(ctx, "Operation successful!", nil)
}
func (t *taskApi) RunTaskByKey(ctx *gin.Context) {
err := logic.TaskLogic.RunTaskByKey(ctx.Param("key"))
errCheck(ctx, err != nil, err)
rOk(ctx, "Operation successful!", nil)
}
func (t *taskApi) CreateTaskApiKey(ctx *gin.Context) {
err := logic.TaskLogic.CreateApiKey(getQueryInt(ctx, "id"))
errCheck(ctx, err != nil, err)
rOk(ctx, "Operation successful!", nil)
}