Broadcast realm was deleted

This commit is contained in:
LittleSheep 2025-03-10 22:01:16 +08:00
parent dfc85c5913
commit e43b9c9341

View File

@ -1,12 +1,16 @@
package services package services
import ( import (
"context"
"errors" "errors"
"fmt" "fmt"
"strconv" "strconv"
"git.solsynth.dev/hypernet/nexus/pkg/nex"
"git.solsynth.dev/hypernet/nexus/pkg/proto"
"git.solsynth.dev/hypernet/passport/pkg/authkit/models" "git.solsynth.dev/hypernet/passport/pkg/authkit/models"
"git.solsynth.dev/hypernet/passport/pkg/internal/database" "git.solsynth.dev/hypernet/passport/pkg/internal/database"
"git.solsynth.dev/hypernet/passport/pkg/internal/gap"
"github.com/samber/lo" "github.com/samber/lo"
"gorm.io/gorm" "gorm.io/gorm"
) )
@ -187,5 +191,17 @@ func DeleteRealm(realm models.Realm) error {
tx.Rollback() tx.Rollback()
return err return err
} }
return tx.Commit().Error if err := tx.Commit().Error; err != nil {
return err
} else {
conn := gap.Nx.GetNexusGrpcConn()
_, _ = proto.NewDirectoryServiceClient(conn).BroadcastEvent(context.Background(), &proto.EventInfo{
Event: "deletion",
Data: nex.EncodeMap(map[string]any{
"type": "realm",
"id": realm.ID,
}),
})
}
return nil
} }