refactor(internal): 优化部署文件模型和删除逻辑

- 在 SysDeployFile 模型中添加 File 字段,用于接收上传的文件
- 修改删除逻辑,使用 Domain 字段替代 ProjectName 字段来删除部署文件夹
This commit is contained in:
zhangtao 2025-08-04 13:49:59 +08:00
parent d94ced13b0
commit 288526c5f9
2 changed files with 23 additions and 21 deletions

View File

@ -1,15 +1,17 @@
package model package model
import ( import (
"mime/multipart"
"time" "time"
) )
// SysDeployFile 部署文件记录表 // SysDeployFile 部署文件记录表
type SysDeployFile struct { type SysDeployFile struct {
DeployId string `gorm:"column:deploy_id;type:varchar(64);primary_key;comment:部署ID" json:"deployId"` DeployId string `gorm:"column:deploy_id;type:varchar(64);primary_key;comment:部署ID" json:"deployId"`
FileName string `gorm:"column:file_name;type:varchar(255);not null;comment:原始文件名" json:"fileName" binding:"required"` FileName string `gorm:"column:file_name;type:varchar(255);not null;comment:原始文件名" json:"fileName"`
ProjectName string `gorm:"column:project_name;type:varchar(100);not null;comment:项目名称" json:"projectName" binding:"required"` ProjectName string `gorm:"column:project_name;type:varchar(100);not null;comment:项目名称" json:"projectName" binding:"required"`
Domain string `gorm:"column:domain;type:varchar(255);not null;comment:访问域名" json:"domain" binding:"required"` Domain string `gorm:"column:domain;type:varchar(255);not null;comment:访问域名" json:"domain" binding:"required"`
File *multipart.FileHeader `gorm:"-" json:"file" binding:"required"`
DeployPath string `gorm:"column:deploy_path;type:varchar(500);not null;comment:部署路径" json:"deployPath"` DeployPath string `gorm:"column:deploy_path;type:varchar(500);not null;comment:部署路径" json:"deployPath"`
FileSize int64 `gorm:"column:file_size;type:bigint;comment:文件大小(字节)" json:"fileSize"` FileSize int64 `gorm:"column:file_size;type:bigint;comment:文件大小(字节)" json:"fileSize"`
FileHash string `gorm:"column:file_hash;type:varchar(64);comment:文件哈希值" json:"fileHash"` FileHash string `gorm:"column:file_hash;type:varchar(64);comment:文件哈希值" json:"fileHash"`

View File

@ -162,7 +162,7 @@ func (s *SysDeployFileService) DeleteByID(c *gin.Context) serializer.Response {
} }
// 删除 /home/:projectName // 删除 /home/:projectName
err := os.RemoveAll(filepath.Join("/home", deployFile.ProjectName)) err := os.RemoveAll(filepath.Join("/home", deployFile.Domain))
if err != nil { if err != nil {
logger.Error(c, "删除部署文件夹失败!") logger.Error(c, "删除部署文件夹失败!")
return serializer.DBErr("删除部署文件夹失败!", err) return serializer.DBErr("删除部署文件夹失败!", err)