fix: deps install

This commit is contained in:
engigu
2026-03-03 22:02:17 +08:00
parent 146177a8a7
commit f3b4d9a115
4 changed files with 57 additions and 115 deletions
+7 -3
View File
@@ -31,12 +31,16 @@ func (s *DependencyService) List(language, langVersion string) ([]models.Depende
// Create 创建依赖记录
func (s *DependencyService) Create(dep *models.Dependency) error {
// 检查是否已存在(名称、语言版本 必须完全匹配)
// 检查是否已存在(名称、版本、语言版本必须完全匹配)
var existing models.Dependency
err := database.DB.Where("name = ? AND language = ? AND lang_version = ?", dep.Name, dep.Language, dep.LangVersion).First(&existing).Error
err := database.DB.Where("name = ? AND version = ? AND language = ? AND lang_version = ?", dep.Name, dep.Version, dep.Language, dep.LangVersion).First(&existing).Error
if err == nil {
return errors.New("依赖已存在")
// 如果已存在,更新 ID 并执行更新
dep.ID = existing.ID
return database.DB.Model(&existing).Updates(dep).Error
}
// 不存在则新建
if dep.ID == "" {
dep.ID = utils.GenerateID()
}