From c9d124603f10a64d60d2727c8fba94631c3441ae Mon Sep 17 00:00:00 2001 From: AnonymousDotNet <18776095145@163.com> Date: Mon, 6 Jan 2025 17:03:50 +0800 Subject: [PATCH] feat: Add verification code expiration time --- src/Infrastructure/BotSharp.Abstraction/Users/Models/User.cs | 1 + .../BotSharp.Plugin.MongoStorage/Collections/UserDocument.cs | 2 ++ .../Repository/MongoRepository.User.cs | 1 + 3 files changed, 4 insertions(+) diff --git a/src/Infrastructure/BotSharp.Abstraction/Users/Models/User.cs b/src/Infrastructure/BotSharp.Abstraction/Users/Models/User.cs index 8d136dc5..d336d3b7 100644 --- a/src/Infrastructure/BotSharp.Abstraction/Users/Models/User.cs +++ b/src/Infrastructure/BotSharp.Abstraction/Users/Models/User.cs @@ -20,6 +20,7 @@ public class User public string Type { get; set; } = UserType.Client; public string Role { get; set; } = UserRole.User; public string? VerificationCode { get; set; } + public DateTime? VerificationCodeExpireAt { get; set; } public bool Verified { get; set; } public string RegionCode { get; set; } = "CN"; public string? AffiliateId { get; set; } diff --git a/src/Plugins/BotSharp.Plugin.MongoStorage/Collections/UserDocument.cs b/src/Plugins/BotSharp.Plugin.MongoStorage/Collections/UserDocument.cs index 4c716959..4325d321 100644 --- a/src/Plugins/BotSharp.Plugin.MongoStorage/Collections/UserDocument.cs +++ b/src/Plugins/BotSharp.Plugin.MongoStorage/Collections/UserDocument.cs @@ -17,6 +17,7 @@ public class UserDocument : MongoBase public string Type { get; set; } = UserType.Client; public string Role { get; set; } = null!; public string? VerificationCode { get; set; } + public DateTime? VerificationCodeExpireAt { get; set; } public bool Verified { get; set; } public string? RegionCode { get; set; } public string? AffiliateId { get; set; } @@ -48,6 +49,7 @@ public class UserDocument : MongoBase EmployeeId = EmployeeId, IsDisabled = IsDisabled, VerificationCode = VerificationCode, + VerificationCodeExpireAt = VerificationCodeExpireAt, Verified = Verified, RegionCode = RegionCode, Permissions = Permissions, diff --git a/src/Plugins/BotSharp.Plugin.MongoStorage/Repository/MongoRepository.User.cs b/src/Plugins/BotSharp.Plugin.MongoStorage/Repository/MongoRepository.User.cs index 29bd36be..57ea76b9 100644 --- a/src/Plugins/BotSharp.Plugin.MongoStorage/Repository/MongoRepository.User.cs +++ b/src/Plugins/BotSharp.Plugin.MongoStorage/Repository/MongoRepository.User.cs @@ -132,6 +132,7 @@ public partial class MongoRepository { var filter = Builders.Filter.Eq(x => x.Id, userId); var update = Builders.Update.Set(x => x.VerificationCode, verficationCode) + .Set(x => x.VerificationCodeExpireAt, DateTime.UtcNow.AddMinutes(5)) .Set(x => x.UpdatedTime, DateTime.UtcNow); _dc.Users.UpdateOne(filter, update); }