From c68004b804c5f03e17f3fd98e2750e7081a472e3 Mon Sep 17 00:00:00 2001
From: hang <872297557@qq.com>
Date: Mon, 7 Apr 2025 15:45:43 +0800
Subject: [PATCH] =?UTF-8?q?=E7=BB=B4=E6=8A=A4=E7=94=A8=E6=88=B7=E7=99=BB?=
=?UTF-8?q?=E5=BD=95=E5=8C=BA=E5=9F=9F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../IRaCIS.Core.Application.xml | 7 +++++++
.../Service/Management/UserService.cs | 2 +-
IRaCIS.Core.Application/TestService.cs | 16 +++++++++++++++-
3 files changed, 23 insertions(+), 2 deletions(-)
diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
index 0917362b4..c31bc7f07 100644
--- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
+++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
@@ -1449,6 +1449,13 @@
+
+
+ 复制文件或者文件夹
+
+
+
+
获取历史版本
diff --git a/IRaCIS.Core.Application/Service/Management/UserService.cs b/IRaCIS.Core.Application/Service/Management/UserService.cs
index 4aedcfe5e..913a1823f 100644
--- a/IRaCIS.Core.Application/Service/Management/UserService.cs
+++ b/IRaCIS.Core.Application/Service/Management/UserService.cs
@@ -1021,7 +1021,7 @@ namespace IRaCIS.Core.Application.Service
}
-
+ //登录成功的,才会算异地登录
if (loginUser.Status == 0)
{
await _userLogRepository.AddAsync(new UserLog() { IP = _userInfo.IP, ActionIdentityUserId = loginUser.IdentityUserId, ActionUserName = loginUser.UserName, OptType = UserOptType.LoginLockedAccount, IsLoginUncommonly = isLoginUncommonly }, true);
diff --git a/IRaCIS.Core.Application/TestService.cs b/IRaCIS.Core.Application/TestService.cs
index 9053cb529..a0909f0e2 100644
--- a/IRaCIS.Core.Application/TestService.cs
+++ b/IRaCIS.Core.Application/TestService.cs
@@ -97,7 +97,7 @@ namespace IRaCIS.Core.Application.Service
}
[AllowAnonymous]
- public async Task NewIP([FromServices] IRepository _userLogRepository)
+ public async Task NewIP([FromServices] IRepository _userLogRepository, [FromServices] IRepository _identityUserRepository)
{
var path = Path.Combine(AppContext.BaseDirectory, StaticData.Folder.Resources, "GeoLite2-City.mmdb");
@@ -112,6 +112,20 @@ namespace IRaCIS.Core.Application.Service
}
+
+ #region 用户表最后一次登录的ipRegion 需要维护
+
+ var userList = _identityUserRepository.Where(t => t.LastLoginIP != "").Select(t => new { t.Id, t.LastLoginIP, t.UpdateUserId }).ToList();
+
+ foreach (var user in userList)
+ {
+ var lastLoginRegion = _userLogRepository.Where(t => t.ActionIdentityUserId == user.Id && (t.OptType == UserOptType.Login || t.OptType == UserOptType.LoginLockedAccount)).OrderByDescending(t => t.CreateTime).Select(t => t.IPRegion).FirstOrDefault()??string.Empty;
+
+ await _identityUserRepository.BatchUpdateNoTrackingAsync(t => t.Id == user.Id, u => new Domain.Models.IdentityUser() { LastLoginIP = lastLoginRegion, UpdateUserId = user.UpdateUserId });
+ }
+
+ #endregion
+
return ResponseOutput.Ok();
}