补齐历史DNS账户归属显示

将历史唯一系统 DNS 配置按初始化超级管理员显示归属,避免已配置账号显示为未分配。
This commit is contained in:
xuans 2026-09-26 12:41:07 +08:00
parent 8d7682ed59
commit 54af8b523f

View File

@ -43,15 +43,21 @@ func (s *Server) listDNSAccounts(c *gin.Context) {
VerificationState: cfg.DNS.VerificationState, CredentialState: "available",
}
var owner repository.User
if cfg.DNS.OwnerUserID == "primary-super-admin" {
owner = repository.User{ID: cfg.DNS.OwnerUserID, Username: cfg.Admin.Username, Role: repository.UserRoleSuperAdmin}
} else if cfg.DNS.OwnerUserID != "" {
ownerID := strings.TrimSpace(cfg.DNS.OwnerUserID)
if ownerID == "" {
// 旧版本只有一个系统 DNS 配置,没有单独的归属字段;迁移时归属初始化超级管理员。
ownerID = "primary-super-admin"
item.OwnerUserID = ownerID
}
if ownerID == "primary-super-admin" {
owner = repository.User{ID: ownerID, Username: cfg.Admin.Username, Role: repository.UserRoleSuperAdmin}
} else {
if s.users == nil {
s.writeError(c, http.StatusServiceUnavailable, "用户归属查询暂不可用", nil)
return
}
var err error
owner, err = s.users.GetUserByID(c.Request.Context(), cfg.DNS.OwnerUserID)
owner, err = s.users.GetUserByID(c.Request.Context(), ownerID)
if err != nil && !errors.Is(err, sql.ErrNoRows) {
s.writeError(c, http.StatusServiceUnavailable, "用户归属查询暂不可用", nil)
return