diff --git a/internal/web/actions/default/dns/domainOptions.go b/internal/web/actions/default/dns/domainOptions.go index 4cae7ba8..a20d3ef9 100644 --- a/internal/web/actions/default/dns/domainOptions.go +++ b/internal/web/actions/default/dns/domainOptions.go @@ -6,7 +6,7 @@ import ( "github.com/iwind/TeaGo/maps" ) -// 域名列表选项 +// DomainOptionsAction 域名列表选项 type DomainOptionsAction struct { actionutils.ParentAction } @@ -23,8 +23,8 @@ func (this *DomainOptionsAction) RunPost(params struct { } domainMaps := []maps.Map{} for _, domain := range domainsResp.DnsDomains { - // 未开启的先跳过 - if !domain.IsOn { + // 未开启或者已删除的先跳过 + if !domain.IsOn || domain.IsDeleted { continue } diff --git a/internal/web/actions/default/dns/domains/recover.go b/internal/web/actions/default/dns/domains/recover.go new file mode 100644 index 00000000..f42c4bcb --- /dev/null +++ b/internal/web/actions/default/dns/domains/recover.go @@ -0,0 +1,27 @@ +package domains + +import ( + "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" + "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" +) + +type RecoverAction struct { + actionutils.ParentAction +} + +func (this *RecoverAction) RunPost(params struct { + DomainId int64 +}) { + // 记录日志 + defer this.CreateLog(oplogs.LevelInfo, "从DNS服务商中恢复域名 %d", params.DomainId) + + // 执行恢复 + _, err := this.RPC().DNSDomainRPC().RecoverDNSDomain(this.AdminContext(), &pb.RecoverDNSDomainRequest{DnsDomainId: params.DomainId}) + if err != nil { + this.ErrorPage(err) + return + } + + this.Success() +} diff --git a/internal/web/actions/default/dns/domains/updatePopup.go b/internal/web/actions/default/dns/domains/updatePopup.go index 48ec9a29..d21d3516 100644 --- a/internal/web/actions/default/dns/domains/updatePopup.go +++ b/internal/web/actions/default/dns/domains/updatePopup.go @@ -52,7 +52,7 @@ func (this *UpdatePopupAction) RunPost(params struct { // TODO 检查DomainId // 记录日志 - defer this.CreateLog(oplogs.LevelInfo, "修改管理域名到DNS服务商 %d", params.DomainId) + defer this.CreateLog(oplogs.LevelInfo, "修改DNS服务商域名 %d", params.DomainId) params.Must. Field("name", params.Name). diff --git a/internal/web/actions/default/dns/init.go b/internal/web/actions/default/dns/init.go index ef631d41..4efecb24 100644 --- a/internal/web/actions/default/dns/init.go +++ b/internal/web/actions/default/dns/init.go @@ -43,6 +43,7 @@ func init() { GetPost("/createPopup", new(domains.CreatePopupAction)). GetPost("/updatePopup", new(domains.UpdatePopupAction)). Post("/delete", new(domains.DeleteAction)). + Post("/recover", new(domains.RecoverAction)). Post("/sync", new(domains.SyncAction)). Get("/routesPopup", new(domains.RoutesPopupAction)). GetPost("/selectPopup", new(domains.SelectPopupAction)). diff --git a/internal/web/actions/default/dns/providers/provider.go b/internal/web/actions/default/dns/providers/provider.go index d455ca4f..07862f31 100644 --- a/internal/web/actions/default/dns/providers/provider.go +++ b/internal/web/actions/default/dns/providers/provider.go @@ -83,6 +83,7 @@ func (this *ProviderAction) RunGet(params struct { "name": domain.Name, "isOn": domain.IsOn, "isUp": domain.IsUp, + "isDeleted": domain.IsDeleted, "dataUpdatedTime": dataUpdatedTime, "countRoutes": len(domain.Routes), "countServerRecords": domain.CountServerRecords, diff --git a/web/views/@default/dns/domains/updatePopup.html b/web/views/@default/dns/domains/updatePopup.html index 95d82bb6..9ed03cca 100644 --- a/web/views/@default/dns/domains/updatePopup.html +++ b/web/views/@default/dns/domains/updatePopup.html @@ -1,6 +1,6 @@ {$layout "layout_popup"} -