diff options
| author | ivar <i@oiee.no> | 2025-12-03 21:49:20 +0100 |
|---|---|---|
| committer | ivar <i@oiee.no> | 2025-12-03 21:49:20 +0100 |
| commit | cd70f54266d708867a1eb35870bc755bc5b2df32 (patch) | |
| tree | f0a8ec571ef3f345ac74293b4cb11918878b3ed5 /api/WhatApi/Database/Tables/User.cs | |
| parent | 5bd9ad8bd1740dcff179d66718532086304ca4c4 (diff) | |
| download | what-cd70f54266d708867a1eb35870bc755bc5b2df32.tar.xz what-cd70f54266d708867a1eb35870bc755bc5b2df32.zip | |
Refactor db
Diffstat (limited to 'api/WhatApi/Database/Tables/User.cs')
| -rw-r--r-- | api/WhatApi/Database/Tables/User.cs | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/api/WhatApi/Database/Tables/User.cs b/api/WhatApi/Database/Tables/User.cs new file mode 100644 index 0000000..bfcdb50 --- /dev/null +++ b/api/WhatApi/Database/Tables/User.cs @@ -0,0 +1,27 @@ +namespace WhatApi.Database.Tables; + +public class User : BaseAuditableEntity +{ + public Guid Id { get; set; } + public required string Name { get; set; } + public required string Email { get; set; } + public required string PasswordHash { get; set; } + public DateTimeOffset? LastSeen { get; set; } + public IEnumerable<Place> Places { get; set; } = null!; + + public void SetLastSeen() { + LastSeen = DateTimeOffset.UtcNow; + } +} + +public class UserConfiguration : IEntityTypeConfiguration<User> +{ + public void Configure(EntityTypeBuilder<User> builder) { + builder.HasKey(x => x.Id); + builder.Property(x => x.Name).HasMaxLength(50); + builder.Property(x => x.Email).HasMaxLength(100); + builder.Property(x => x.PasswordHash).HasMaxLength(100); + builder.HasMany(x => x.Places); + builder.ToTable("user"); + } +}
\ No newline at end of file |
