From 39dc4f13e48eb680c07900fbc737c1c76dbb9e59 Mon Sep 17 00:00:00 2001 From: akrike <1625167628@qq.com> Date: Sun, 6 Jul 2025 22:12:39 +0800 Subject: [PATCH] update --- internal/app/api/proc.go | 16 ++++++++++------ internal/app/logic/process_logic.go | 5 ++++- internal/app/model/file.go | 4 ++-- internal/app/model/permission.go | 2 +- internal/app/model/process.go | 2 +- internal/app/model/push_msg.go | 2 +- internal/app/model/task.go | 2 +- internal/app/model/user.go | 6 +++--- internal/app/repository/process.go | 26 ++++++++------------------ internal/app/repository/task.go | 9 --------- internal/app/repository/user.go | 14 ++++---------- 11 files changed, 35 insertions(+), 53 deletions(-) diff --git a/internal/app/api/proc.go b/internal/app/api/proc.go index 30bb750..1914c4e 100644 --- a/internal/app/api/proc.go +++ b/internal/app/api/proc.go @@ -47,9 +47,13 @@ func (p *procApi) KillProcess(ctx *gin.Context, req model.ProcessUuidReq) (err e func (p *procApi) StartProcess(ctx *gin.Context, req model.ProcessUuidReq) (err error) { prod, err := logic.ProcessCtlLogic.GetProcess(req.Uuid) if err != nil { // 进程不存在则创建 - proc, err1 := logic.ProcessCtlLogic.RunNewProcess(repository.ProcessRepository.GetProcessConfigById(req.Uuid)) - if err1 != nil { - return err1 + proConfig, err := repository.ProcessRepository.GetProcessConfigById(req.Uuid) + if err != nil { + return err + } + proc, err := logic.ProcessCtlLogic.RunNewProcess(proConfig) + if err != nil { + return err } logic.ProcessCtlLogic.AddProcess(req.Uuid, proc) return nil @@ -96,9 +100,9 @@ func (p *procApi) UpdateProcessConfig(ctx *gin.Context, req model.Process) (err } func (p *procApi) GetProcessConfig(ctx *gin.Context, req model.ProcessUuidReq) (err error) { - data := repository.ProcessRepository.GetProcessConfigById(req.Uuid) - if data.Uuid == 0 { - return errors.New("no information found") + data, err := repository.ProcessRepository.GetProcessConfigById(req.Uuid) + if err != nil { + return err } rOk(ctx, "success", data) return diff --git a/internal/app/logic/process_logic.go b/internal/app/logic/process_logic.go index f20e701..749f4e8 100644 --- a/internal/app/logic/process_logic.go +++ b/internal/app/logic/process_logic.go @@ -150,7 +150,10 @@ func (p *processCtlLogic) ProcessStartAll() { } func (p *processCtlLogic) RunPrcessById(id int) (*ProcessBase, error) { - config := repository.ProcessRepository.GetProcessConfigById(id) + config, err := repository.ProcessRepository.GetProcessConfigById(id) + if err != nil { + return nil, err + } proc, err := p.RunNewProcess(config) if err != nil { log.Logger.Warnw("初始化启动进程失败", config.Name, "name", "err", err) diff --git a/internal/app/model/file.go b/internal/app/model/file.go index 549fcfc..b0bdc64 100644 --- a/internal/app/model/file.go +++ b/internal/app/model/file.go @@ -6,9 +6,9 @@ type FileStruct struct { } type FilePathHandlerReq struct { - Path string `form:"path"` + Path string `form:"path" binding:"required"` } type FileReadHandlerReq struct { - FilePath string `form:"filePath"` + FilePath string `form:"filePath" binding:"required"` } diff --git a/internal/app/model/permission.go b/internal/app/model/permission.go index 4aaa209..8c982cb 100644 --- a/internal/app/model/permission.go +++ b/internal/app/model/permission.go @@ -31,5 +31,5 @@ type PermissionPo struct { } type GetPermissionListReq struct { - Account string `form:"account"` + Account string `form:"account" binding:"required"` } diff --git a/internal/app/model/process.go b/internal/app/model/process.go index 0609184..dc1ad5c 100644 --- a/internal/app/model/process.go +++ b/internal/app/model/process.go @@ -4,7 +4,7 @@ import "github.com/lzh-1625/go_process_manager/internal/app/constants" type Process struct { Uuid int `gorm:"primaryKey;autoIncrement;column:uuid" json:"uuid"` - Name string `gorm:"column:name;uniqueIndex;type:text" json:"name"` + Name string `gorm:"column:name;uniqueIndex;type:text" json:"name" binding:"required"` Cmd string `gorm:"column:args" json:"cmd"` Cwd string `gorm:"column:cwd" json:"cwd"` AutoRestart bool `gorm:"column:auto_restart" json:"autoRestart"` diff --git a/internal/app/model/push_msg.go b/internal/app/model/push_msg.go index 444d2b8..f6556a5 100644 --- a/internal/app/model/push_msg.go +++ b/internal/app/model/push_msg.go @@ -14,5 +14,5 @@ func (*Push) TableName() string { } type PushIdReq struct { - Id int `form:"id"` + Id int `form:"id" binding:"required"` } diff --git a/internal/app/model/task.go b/internal/app/model/task.go index 23b9a0c..022c6f9 100644 --- a/internal/app/model/task.go +++ b/internal/app/model/task.go @@ -47,5 +47,5 @@ type TaskVo struct { } type TaskIdReq struct { - Id int `form:"id"` + Id int `form:"id" binding:"required"` } diff --git a/internal/app/model/user.go b/internal/app/model/user.go index e8ea7d6..2213b22 100644 --- a/internal/app/model/user.go +++ b/internal/app/model/user.go @@ -19,10 +19,10 @@ func (*User) TableName() string { } type LoginHandlerReq struct { - Account string `form:"account"` - Password string `form:"password"` + Account string `form:"account" binding:"required"` + Password string `form:"password" binding:"required"` } type DeleteUserReq struct { - Account string `form:"account"` + Account string `form:"account" binding:"required"` } diff --git a/internal/app/repository/process.go b/internal/app/repository/process.go index 41a0d4c..b0cdd8d 100644 --- a/internal/app/repository/process.go +++ b/internal/app/repository/process.go @@ -12,7 +12,6 @@ var ProcessRepository = new(processRepository) func (p *processRepository) GetAllProcessConfig() []model.Process { result := []model.Process{} - tx := db.Find(&result) if tx.Error != nil { log.Logger.Error(tx.Error) @@ -35,17 +34,13 @@ func (p *processRepository) GetProcessConfigByUser(username string) []model.Proc } func (p *processRepository) UpdateProcessConfig(process model.Process) error { - tx := db.Save(&process) - return tx.Error + return db.Save(&process).Error } -func (p *processRepository) AddProcessConfig(process model.Process) (int, error) { - tx := db.Create(&process) - if tx.Error != nil { - log.Logger.Error(tx.Error) - return 0, tx.Error - } - return process.Uuid, nil +func (p *processRepository) AddProcessConfig(process model.Process) (id int, err error) { + err = db.Create(&process).Error + id = process.Uuid + return } func (p *processRepository) DeleteProcessConfig(uuid int) error { @@ -54,12 +49,7 @@ func (p *processRepository) DeleteProcessConfig(uuid int) error { }).Error } -func (p *processRepository) GetProcessConfigById(uuid int) model.Process { - result := model.Process{} - tx := db.Model(&model.Process{}).Where(&model.Process{Uuid: uuid}).First(&result) - if tx.Error != nil { - log.Logger.Error(tx.Error) - return model.Process{} - } - return result +func (p *processRepository) GetProcessConfigById(uuid int) (data model.Process, err error) { + err = db.Model(&model.Process{}).Where(&model.Process{Uuid: uuid}).First(&data).Error + return } diff --git a/internal/app/repository/task.go b/internal/app/repository/task.go index 85558b2..d54c859 100644 --- a/internal/app/repository/task.go +++ b/internal/app/repository/task.go @@ -1,13 +1,9 @@ package repository import ( - "errors" - "github.com/lzh-1625/go_process_manager/internal/app/constants" "github.com/lzh-1625/go_process_manager/internal/app/model" "github.com/lzh-1625/go_process_manager/internal/app/repository/query" - - "gorm.io/gorm" ) type taskRepository struct{} @@ -41,11 +37,6 @@ func (t *taskRepository) DeleteTask(id int) (err error) { } func (t *taskRepository) EditTask(data model.Task) (err error) { - err = db.Model(&model.Task{}).Where(&model.Task{Id: data.Id}).First(&model.Task{}).Error - if errors.Is(err, gorm.ErrRecordNotFound) { - return err - } - err = db.Model(&model.Task{}).Where(&model.Task{Id: data.Id}).Save(data).Error return } diff --git a/internal/app/repository/user.go b/internal/app/repository/user.go index cb569ee..90b888c 100644 --- a/internal/app/repository/user.go +++ b/internal/app/repository/user.go @@ -25,20 +25,14 @@ func (u *userRepository) CreateUser(user model.User) error { } func (u *userRepository) UpdatePassword(name string, password string) error { - tx := db.Model(&model.User{}).Where(&model.User{Account: name}).Updates(&model.User{Password: utils.Md5(password)}) - return tx.Error + return db.Model(&model.User{}).Where(&model.User{Account: name}).Updates(&model.User{Password: utils.Md5(password)}).Error } func (u *userRepository) DeleteUser(name string) error { - if err := db.Model(&model.User{}).Where(&model.User{Account: name}).First(&model.User{}).Error; err != nil { - return err - } - tx := db.Delete(&model.User{Account: name}) - return tx.Error + return db.Delete(&model.User{Account: name}).Error } -func (u *userRepository) GetUserList() []model.User { - result := []model.User{} +func (u *userRepository) GetUserList() (result []model.User) { db.Find(&result) - return result + return }