fix: 端启停改为仅由 identity 执行

This commit is contained in:
Nixevol
2026-09-30 16:22:48 +08:00
parent 1a4bf6f185
commit ac08b6c071
3 changed files with 161 additions and 1 deletions
+6 -1
View File
@@ -350,8 +350,13 @@ func (h *Handler) handleEndpointPatch(w http.ResponseWriter, r *http.Request) {
hasMeta := req.Name != nil || req.Remark != nil || req.DefaultDelaySeconds != nil
var wasEnabled bool
var err error
// 注入 Identity 时启停只走 identity,避免先写 enabled 再级联失败造成半生效。
patchEnabled := req.Enabled
if h.identity != nil {
patchEnabled = nil
}
if hasMeta || (req.Enabled != nil && h.identity == nil) {
wasEnabled, err = h.patchEndpoint(r.Context(), id, req.Name, req.Remark, req.DefaultDelaySeconds, req.Enabled)
wasEnabled, err = h.patchEndpoint(r.Context(), id, req.Name, req.Remark, req.DefaultDelaySeconds, patchEnabled)
if err != nil {
if errors.Is(err, sql.ErrNoRows) {
h.audit(actorString(p), "endpoint_patch", id, "not_found", ip)