diff --git a/internal/db/models/server_dao.go b/internal/db/models/server_dao.go index 2973d497..a288fc44 100644 --- a/internal/db/models/server_dao.go +++ b/internal/db/models/server_dao.go @@ -212,8 +212,14 @@ func (this *ServerDAO) UpdateServerConfig(serverId int64, configJSON []byte, upd return false, err } + globalConfig, err := SharedSysSettingDAO.ReadSetting(SettingCodeServerGlobalConfig) + if err != nil { + return false, err + } + m := md5.New() - _, _ = m.Write(configJSON) + _, _ = m.Write(configJSON) // 当前服务配置 + _, _ = m.Write(globalConfig) // 全局配置 h := m.Sum(nil) newConfigMd5 := fmt.Sprintf("%x", h) diff --git a/internal/rpc/services/service_server.go b/internal/rpc/services/service_server.go index f9f05147..78112dc4 100644 --- a/internal/rpc/services/service_server.go +++ b/internal/rpc/services/service_server.go @@ -801,3 +801,19 @@ func (this *ServerService) CountAllEnabledServersWithGroupId(ctx context.Context Count: count, }, nil } + +// 通知更新 +func (this *ServerService) NotifyServersChange(ctx context.Context, req *pb.NotifyServersChangeRequest) (*pb.NotifyServersChangeResponse, error) { + // 校验请求 + _, _, err := rpcutils.ValidateRequest(ctx, rpcutils.UserTypeAdmin) + if err != nil { + return nil, err + } + + err = models.SharedSysEventDAO.CreateEvent(models.NewServerChangeEvent()) + if err != nil { + return nil, err + } + + return &pb.NotifyServersChangeResponse{}, nil +} diff --git a/internal/rpc/services/service_sys_setting.go b/internal/rpc/services/service_sys_setting.go index 9b5354e4..7d5b15f7 100644 --- a/internal/rpc/services/service_sys_setting.go +++ b/internal/rpc/services/service_sys_setting.go @@ -22,7 +22,7 @@ func (this *SysSettingService) UpdateSysSetting(ctx context.Context, req *pb.Upd if err != nil { return nil, err } - + return rpcutils.RPCUpdateSuccess() } diff --git a/internal/tasks/event_looper.go b/internal/tasks/event_looper.go index 90707d77..900ed473 100644 --- a/internal/tasks/event_looper.go +++ b/internal/tasks/event_looper.go @@ -14,6 +14,7 @@ func init() { }) } +// 事件相关处理程序 type EventLooper struct { }