fix server deletion api, add issue templates (#526)

* add issue templates

* fix: server deletion api
This commit is contained in:
UUBulb
2024-12-01 23:45:26 +08:00
committed by GitHub
parent 7f33f8239e
commit b128a0a5ed
4 changed files with 116 additions and 1 deletions

View File

@@ -5,6 +5,7 @@ import (
"github.com/gin-gonic/gin"
"github.com/jinzhu/copier"
"gorm.io/gorm"
"github.com/nezhahq/nezha/model"
"github.com/nezhahq/nezha/pkg/utils"
@@ -103,7 +104,17 @@ func batchDeleteServer(c *gin.Context) (any, error) {
return nil, err
}
if err := singleton.DB.Unscoped().Delete(&model.Server{}, "id in (?)", servers).Error; err != nil {
err := singleton.DB.Transaction(func(tx *gorm.DB) error {
if err := tx.Unscoped().Delete(&model.Server{}, "id in (?)", servers).Error; err != nil {
return err
}
if err := tx.Unscoped().Delete(&model.ServerGroupServer{}, "server_id in (?)", servers).Error; err != nil {
return err
}
return nil
})
if err != nil {
return nil, newGormError("%v", err)
}