Dasboard und Workspace-Anlage

This commit is contained in:
2026-05-29 12:35:16 +02:00
parent 2d05a18a0d
commit 818377c0a8
9 changed files with 421 additions and 25 deletions
+16
View File
@@ -0,0 +1,16 @@
namespace ZahlenAnalyse.Web.Models;
public record AnalysisFakt: IOwnedEntity, IAuditableEntity
{
public string? Id { get; set; }
public string WorkspaceId { get; set; } = string.Empty;
public string OwnerId { get; set; } = string.Empty;
public string CreatedBy { get; set; } = string.Empty;
public DateTime CreatedAt { get; set; }
public DateTime Date { get; set; } = DateTime.UtcNow;
public decimal Amount { get; set; }
public Dictionary<string, string> Dimensions { get; set; } = new();
}
+12
View File
@@ -0,0 +1,12 @@
namespace ZahlenAnalyse.Web.Models;
public interface IOwnedEntity
{
string OwnerId { get; set; }
}
public interface IAuditableEntity
{
string CreatedBy { get; set; }
DateTime CreatedAt { get; set; }
}
+27
View File
@@ -0,0 +1,27 @@
namespace ZahlenAnalyse.Web.Models;
public record Workspace: IOwnedEntity, IAuditableEntity
{
public string? Id { get; set; }
public string Name { get; set; } = string.Empty;
public string OwnerId { get; set; } = string.Empty; // Deine Pocket-ID (Sub)
public string CreatedBy { get; set; } = string.Empty;
public DateTime CreatedAt { get; set; }
public List<DimensionDefinition> Dimensions { get; set; } = new();
}
public record DimensionDefinition
{
public string Name { get; set; } = string.Empty;
public List<DimensionNode> Nodes { get; set; } = new();
}
public record DimensionNode
{
public string Id { get; set; } = Guid.NewGuid().ToString();
public string Name { get; set; } = string.Empty;
public List<DimensionNode> Children { get; set; } = new();
}