😎与老仓库代码合并
This commit is contained in:
parent
1d31cb5c6e
commit
d922b88d5e
@ -44,11 +44,11 @@
|
||||
<PackageReference Include="SixLabors.ImageSharp.Web" Version="3.1.3" />
|
||||
<PackageReference Include="SKIT.FlurlHttpClient.Wechat.Api" Version="3.7.0" />
|
||||
<PackageReference Include="SKIT.FlurlHttpClient.Wechat.TenpayV3" Version="3.10.0" />
|
||||
<PackageReference Include="SqlSugarCore" Version="5.1.4.176" />
|
||||
<PackageReference Include="SqlSugarCore" Version="5.1.4.177" />
|
||||
<PackageReference Include="SSH.NET" Version="2024.2.0" />
|
||||
<PackageReference Include="System.Linq.Dynamic.Core" Version="1.6.0.2" />
|
||||
<PackageReference Include="System.Net.Http" Version="4.3.4" />
|
||||
<PackageReference Include="TencentCloudSDK.Sms" Version="3.0.1179" />
|
||||
<PackageReference Include="TencentCloudSDK.Sms" Version="3.0.1180" />
|
||||
<PackageReference Include="UAParser" Version="3.1.47" />
|
||||
<PackageReference Include="Yitter.IdGenerator" Version="1.0.14" />
|
||||
</ItemGroup>
|
||||
|
||||
@ -48,6 +48,7 @@ public class OnlineUserHub : Hub<IOnlineUserHub>
|
||||
var realName = httpContext.User.FindFirst(ClaimConst.RealName)?.Value;
|
||||
var tenantId = (httpContext.User.FindFirst(ClaimConst.TenantId)?.Value).ToLong();
|
||||
var loginMode = (LoginModeEnum)(httpContext.User.FindFirst(ClaimConst.LoginMode)?.Value).ToInt();
|
||||
loginMode = loginMode == 0 ? LoginModeEnum.PC : loginMode; // 默认PC登录模式
|
||||
var device = httpContext.GetClientDeviceInfo().Trim();
|
||||
|
||||
if (userId < 0 || string.IsNullOrWhiteSpace(account)) return;
|
||||
@ -66,16 +67,7 @@ public class OnlineUserHub : Hub<IOnlineUserHub>
|
||||
Device = device
|
||||
};
|
||||
await _sysOnlineUerRep.InsertAsync(user);
|
||||
|
||||
// 是否开启单用户登录
|
||||
if (await _sysConfigService.GetConfigValueByCode<bool>(ConfigConst.SysSingleLogin))
|
||||
{
|
||||
_sysCacheService.HashAdd(CacheConst.KeyUserOnline, "" + user.UserId + loginMode, user);
|
||||
}
|
||||
else // 非单用户登录则绑定用户连接Id
|
||||
{
|
||||
_sysCacheService.HashAdd(CacheConst.KeyUserOnline, user.UserId + Context.ConnectionId, user);
|
||||
}
|
||||
_sysCacheService.HashAdd(CacheConst.KeyUserOnline, user.UserId + Context.ConnectionId + loginMode, user);
|
||||
|
||||
// 以租户Id进行分组
|
||||
var groupName = $"{GROUP_ONLINE}{user.TenantId}";
|
||||
@ -100,28 +92,14 @@ public class OnlineUserHub : Hub<IOnlineUserHub>
|
||||
{
|
||||
if (string.IsNullOrEmpty(Context.ConnectionId)) return;
|
||||
|
||||
//var httpContext = Context.GetHttpContext();
|
||||
|
||||
var user = await _sysOnlineUerRep.AsQueryable().Filter("", true).FirstAsync(u => u.ConnectionId == Context.ConnectionId);
|
||||
if (user == null) return;
|
||||
|
||||
await _sysOnlineUerRep.DeleteByIdAsync(user.Id);
|
||||
|
||||
// 是否开启单用户登录
|
||||
if (await _sysConfigService.GetConfigValueByCode<bool>(ConfigConst.SysSingleLogin))
|
||||
{
|
||||
_sysCacheService.HashDel<SysOnlineUser>(CacheConst.KeyUserOnline, "" + user.UserId + user.LoginMode);
|
||||
// _sysCacheService.Remove(CacheConst.KeyUserOnline + user.UserId);
|
||||
}
|
||||
else
|
||||
{
|
||||
_sysCacheService.HashDel<SysOnlineUser>(CacheConst.KeyUserOnline, user.UserId + Context.ConnectionId);
|
||||
// _sysCacheService.Remove(CacheConst.KeyUserOnline + user.UserId + Context.ConnectionId);
|
||||
}
|
||||
_sysCacheService.HashDel<SysOnlineUser>(CacheConst.KeyUserOnline, user.UserId + Context.ConnectionId + user.LoginMode);
|
||||
|
||||
// 通知当前组用户变动
|
||||
var userList = await _sysOnlineUerRep.AsQueryable().Filter("", true)
|
||||
.Where(u => u.TenantId == user.TenantId).Take(10).ToListAsync();
|
||||
var userList = await _sysOnlineUerRep.AsQueryable().Filter("", true).Where(u => u.TenantId == user.TenantId).Take(10).ToListAsync();
|
||||
await _onlineUserHubContext.Clients.Groups($"{GROUP_ONLINE}{user.TenantId}").OnlineUserList(new OnlineUserList
|
||||
{
|
||||
RealName = user.RealName,
|
||||
|
||||
Loading…
Reference in New Issue
Block a user