Revert "Admin logs (#5419)"

This reverts commit 319aec109d.
This commit is contained in:
DrSmugleaf
2021-11-22 18:55:17 +01:00
parent edeccabb36
commit c18d07538a
65 changed files with 236 additions and 7021 deletions

View File

@@ -3,8 +3,6 @@ using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Net;
using System.Text.Json;
using Content.Shared.Administration.Logs;
using Microsoft.EntityFrameworkCore;
namespace Content.Server.Database
@@ -33,9 +31,6 @@ namespace Content.Server.Database
public DbSet<Player> Player { get; set; } = default!;
public DbSet<Admin> Admin { get; set; } = null!;
public DbSet<AdminRank> AdminRank { get; set; } = null!;
public DbSet<Round> Round { get; set; } = null!;
public DbSet<AdminLog> AdminLog { get; set; } = null!;
public DbSet<AdminLogPlayer> AdminLogPlayer { get; set; } = null!;
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
@@ -84,22 +79,6 @@ namespace Content.Server.Database
modelBuilder.Entity<AdminRankFlag>()
.HasIndex(f => new {f.Flag, f.AdminRankId})
.IsUnique();
modelBuilder.Entity<AdminLog>()
.HasKey(log => new {log.Id, log.RoundId});
modelBuilder.Entity<AdminLog>()
.Property(log => log.Id)
.ValueGeneratedOnAdd();
modelBuilder.Entity<AdminLogPlayer>()
.HasOne(player => player.Player)
.WithMany(player => player.AdminLogs)
.HasForeignKey(player => player.PlayerUserId)
.HasPrincipalKey(player => player.UserId);
modelBuilder.Entity<AdminLogPlayer>()
.HasKey(logPlayer => new {logPlayer.PlayerUserId, logPlayer.LogId, logPlayer.RoundId});
}
}
@@ -199,10 +178,6 @@ namespace Content.Server.Database
public DateTime LastSeenTime { get; set; }
public IPAddress LastSeenAddress { get; set; } = null!;
public byte[]? LastSeenHWId { get; set; }
// Data that changes with each round
public List<Round> Rounds { get; set; } = null!;
public List<AdminLogPlayer> AdminLogs { get; set; } = null!;
}
public class Admin
@@ -242,54 +217,4 @@ namespace Content.Server.Database
public int AdminRankId { get; set; }
public AdminRank Rank { get; set; } = default!;
}
public class Round
{
[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
public List<Player> Players { get; set; } = default!;
public List<AdminLog> AdminLogs { get; set; } = default!;
}
[Index(nameof(Type))]
public class AdminLog
{
[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
[Key, ForeignKey("Round")] public int RoundId { get; set; }
public Round Round { get; set; } = default!;
[Required] public LogType Type { get; set; }
[Required] public LogImpact Impact { get; set; }
[Required] public DateTime Date { get; set; }
[Required] public string Message { get; set; } = default!;
[Required, Column(TypeName = "jsonb")] public JsonDocument Json { get; set; } = default!;
public List<AdminLogPlayer> Players { get; set; } = default!;
public List<AdminLogEntity> Entities { get; set; } = default!;
}
public class AdminLogPlayer
{
[Required, Key, ForeignKey("Player")] public Guid PlayerUserId { get; set; }
public Player Player { get; set; } = default!;
[Required, Key] public int LogId { get; set; }
[Required, Key] public int RoundId { get; set; }
[ForeignKey("LogId,RoundId")] public AdminLog Log { get; set; } = default!;
}
public class AdminLogEntity
{
[Required, Key] public int Uid { get; set; }
public string? Name { get; set; } = default!;
}
}