diff options
Diffstat (limited to 'BackEnd/Timeline/Entities')
-rw-r--r-- | BackEnd/Timeline/Entities/DatabaseContext.cs | 2 | ||||
-rw-r--r-- | BackEnd/Timeline/Entities/UserTokenEntity.cs | 28 |
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; } + } +} |