aboutsummaryrefslogtreecommitdiff
path: root/BackEnd/Timeline/Entities
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2022-03-09 21:21:15 +0800
committercrupest <crupest@outlook.com>2022-03-09 21:21:15 +0800
commit3d6c9fd916e18c99b3a5497b8313672680571b5e (patch)
treee67ae49937dcdb7f5c874a2ebfdca4fde72a059f /BackEnd/Timeline/Entities
parent3cd0140ff4425b37b6e8dd8e8f16a54b1338c352 (diff)
downloadtimeline-3d6c9fd916e18c99b3a5497b8313672680571b5e.tar.gz
timeline-3d6c9fd916e18c99b3a5497b8313672680571b5e.tar.bz2
timeline-3d6c9fd916e18c99b3a5497b8313672680571b5e.zip
Add user token entity in preparation for refactor of tokens.
Diffstat (limited to 'BackEnd/Timeline/Entities')
-rw-r--r--BackEnd/Timeline/Entities/DatabaseContext.cs2
-rw-r--r--BackEnd/Timeline/Entities/UserTokenEntity.cs28
2 files changed, 30 insertions, 0 deletions
diff --git a/BackEnd/Timeline/Entities/DatabaseContext.cs b/BackEnd/Timeline/Entities/DatabaseContext.cs
index 8ccdabb5..bb078b77 100644
--- a/BackEnd/Timeline/Entities/DatabaseContext.cs
+++ b/BackEnd/Timeline/Entities/DatabaseContext.cs
@@ -19,6 +19,7 @@ namespace Timeline.Entities
modelBuilder.Entity<UserEntity>().Property(e => e.LastModified).HasDefaultValueSql("datetime('now', 'utc')");
modelBuilder.Entity<DataEntity>().HasIndex(e => e.Tag).IsUnique();
modelBuilder.Entity<TimelineEntity>().Property(e => e.UniqueId).HasDefaultValueSql("lower(hex(randomblob(16)))");
+ modelBuilder.Entity<UserTokenEntity>().HasIndex(e => e.Token).IsUnique();
modelBuilder.ApplyUtcDateTimeConverter();
}
@@ -34,6 +35,7 @@ namespace Timeline.Entities
public DbSet<BookmarkTimelineEntity> BookmarkTimelines { get; set; } = default!;
public DbSet<JwtTokenEntity> JwtToken { get; set; } = default!;
+ public DbSet<UserTokenEntity> UserTokens { get; set; } = default!;
public DbSet<DataEntity> Data { get; set; } = default!;
public DbSet<MigrationEntity> Migrations { get; set; } = default!;
diff --git a/BackEnd/Timeline/Entities/UserTokenEntity.cs b/BackEnd/Timeline/Entities/UserTokenEntity.cs
new file mode 100644
index 00000000..0d8bce7d
--- /dev/null
+++ b/BackEnd/Timeline/Entities/UserTokenEntity.cs
@@ -0,0 +1,28 @@
+using System;
+using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.DataAnnotations.Schema;
+
+namespace Timeline.Entities
+{
+ [Table("user_token")]
+ public class UserTokenEntity
+ {
+ [Column("id"), Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
+ public long Id { get; set; }
+
+ [Column("user_id")]
+ public long UserId { get; set; }
+
+ [ForeignKey(nameof(UserId))]
+ public UserEntity User { get; set; } = default!;
+
+ [Column("token")]
+ public string Token { get; set; } = default!;
+
+ [Column("expire_at")]
+ public DateTime? ExpireAt { get; set; }
+
+ [Column("create_at")]
+ public DateTime? CreateAt { get; set; }
+ }
+}