fixes and tweaks

This commit is contained in:
moarten
2026-04-29 20:36:08 +02:00
parent b71f45e76c
commit 385119bb27
58 changed files with 1512 additions and 350 deletions
+3 -1
View File
@@ -4,9 +4,11 @@ public abstract class BaseEntity
{
public Guid Id { get; set; }
public DateTime CreatedAt { get; set; }
public DateTime CreatedAt { get; set; }
public DateTime ModifiedAt { get; set; }
public DateTime? DeletedAt { get; set; }
public bool IsDeleted => DeletedAt.HasValue;
}
@@ -16,4 +16,6 @@ public class Beoordeling : BaseEntity
public string? Tekst { get; set; }
public required Guid VerspakketId { get; set; }
public virtual Verspakket Verspakket { get; set; } = null!;
}
+19 -1
View File
@@ -5,6 +5,7 @@ namespace Lutra.Domain.Entities;
public class Verspakket : BaseEntity
{
private readonly List<Beoordeling> _beoordelingen = [];
private readonly List<VerspakketFoto> _fotos = [];
[MaxLength(50)]
public required string Naam { get; set; }
@@ -13,7 +14,7 @@ public class Verspakket : BaseEntity
public int? PrijsInCenten { get; set; }
[Range(1, 10)]
public int AantalPersonen { get; set; }
public required int AantalPersonen { get; set; }
public required Guid SupermarktId { get; set; }
@@ -21,11 +22,18 @@ public class Verspakket : BaseEntity
public IReadOnlyCollection<Beoordeling> Beoordelingen => _beoordelingen.AsReadOnly();
public IReadOnlyCollection<VerspakketFoto> Fotos => _fotos.AsReadOnly();
public void AddBeoordeling(Beoordeling beoordeling)
{
_beoordelingen.Add(beoordeling);
}
public void AddFoto(VerspakketFoto foto)
{
_fotos.Add(foto);
}
public bool RemoveBeoordeling(Guid id)
{
var beoordeling = _beoordelingen.Find(b => b.Id == id);
@@ -35,4 +43,14 @@ public class Verspakket : BaseEntity
_beoordelingen.Remove(beoordeling);
return true;
}
public bool RemoveFoto(Guid id)
{
var foto = _fotos.Find(f => f.Id == id);
if (foto is null)
return false;
_fotos.Remove(foto);
return true;
}
}
@@ -0,0 +1,12 @@
namespace Lutra.Domain.Entities;
public class VerspakketFoto : BaseEntity
{
public required byte[] Data { get; set; }
public required bool IsMainImage { get; set; }
public required Guid VerspakketId { get; set; }
public virtual Verspakket Verspakket { get; set; } = null!;
}