diff --git a/internal/web/actions/default/api/delete.go b/internal/web/actions/default/api/delete.go new file mode 100644 index 00000000..e1a8a54c --- /dev/null +++ b/internal/web/actions/default/api/delete.go @@ -0,0 +1,22 @@ +package api + +import ( + "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" +) + +type DeleteAction struct { + actionutils.ParentAction +} + +func (this *DeleteAction) RunPost(params struct { + NodeId int64 +}) { + _, err := this.RPC().APINodeRPC().DeleteAPINode(this.AdminContext(), &pb.DeleteAPINodeRequest{NodeId: params.NodeId}) + if err != nil { + this.ErrorPage(err) + return + } + + this.Success() +} diff --git a/internal/web/actions/default/api/init.go b/internal/web/actions/default/api/init.go index 8e7720de..ec7fa9fc 100644 --- a/internal/web/actions/default/api/init.go +++ b/internal/web/actions/default/api/init.go @@ -16,6 +16,7 @@ func init() { Prefix("/api"). Get("", new(IndexAction)). GetPost("/node/createPopup", new(node.CreatePopupAction)). + Post("/delete", new(DeleteAction)). EndAll() }) } diff --git a/internal/web/actions/default/api/node/createAddrPopup.go b/internal/web/actions/default/api/node/createAddrPopup.go index 69d53d3d..c546fd8a 100644 --- a/internal/web/actions/default/api/node/createAddrPopup.go +++ b/internal/web/actions/default/api/node/createAddrPopup.go @@ -29,6 +29,7 @@ func (this *CreateAddrPopupAction) RunPost(params struct { params.Must. Field("addr", params.Addr). Require("请输入访问地址") + host, port, err := net.SplitHostPort(params.Addr) if err != nil { this.FailField("addr", "错误的访问地址") diff --git a/web/views/@default/api/index.html b/web/views/@default/api/index.html index 6f0b7cd6..f14d049a 100644 --- a/web/views/@default/api/index.html +++ b/web/views/@default/api/index.html @@ -26,7 +26,8 @@ - 设置 + 设置   + 删除 diff --git a/web/views/@default/api/index.js b/web/views/@default/api/index.js index 9f379509..02b7df8e 100644 --- a/web/views/@default/api/index.js +++ b/web/views/@default/api/index.js @@ -1,4 +1,5 @@ Tea.context(function () { + // 创建节点 this.createNode = function () { teaweb.popup("/api/node/createPopup", { width: "50em", @@ -10,4 +11,16 @@ Tea.context(function () { } }) } + + // 删除节点 + this.deleteNode = function (nodeId) { + let that = this + teaweb.confirm("确定要删除此节点吗?", function () { + that.$post("/api/delete") + .params({ + nodeId: nodeId + }) + .refresh() + }) + } }) \ No newline at end of file