This commit is contained in:
youngq 2024-08-20 13:48:23 +08:00
parent 561bc1ff95
commit 9fcab57b4b
6 changed files with 44 additions and 20 deletions

View File

@ -180,7 +180,7 @@ namespace WGShare.API.Controllers.Backend
memoryStream.Seek(0, SeekOrigin.Begin);
var fileName = $@"excel/{Regex.Replace(file.FileName, @"\.(xlsx|xls)$", "", RegexOptions.IgnoreCase)}_验证不通过_{DateTime.UtcNow.Ticks}.xlsx";
_ossHelper.UploadWithExpireTime(fileName, memoryStream, 1);
_ossHelper.UploadWithExpireTime(fileName, memoryStream, 10);
var fileUrl = _ossHelper.GetAccessFileUrl(fileName, 1);
return Ok((isSuccess: false, url: fileUrl));

View File

@ -57,6 +57,7 @@ namespace WGShare.API.Controllers.Frontend
var list = await _sqlSugar.Queryable<Room>()
.Where(x => x.TenantId == TenantId && x.IsDelete == false)
.OrderBy(x => x.Id, OrderByType.Desc)
.ToPageListAsync(dto.PageIndex, dto.PageSize, total);
var result = list.Adapt<List<RoomOutputDTO>>();

View File

@ -69,18 +69,18 @@ namespace WGShare.API.Controllers.Frontend
throw Oops.Oh("用户已不在房间内!");
}
var entities = new RoomManager
{
RoomId = inputDTO.RoomId,
UserId = inputDTO.UserId
};
//var entities = new RoomManager
//{
// RoomId = inputDTO.RoomId,
// UserId = inputDTO.UserId
//};
user.IsRoomManager = true;
await _sqlSugar.Storageable(entities)
.SplitInsert(x => !x.Any())
.ToStorage().AsInsertable.ExecuteCommandAsync();
//await _sqlSugar.Storageable(entities)
// .SplitInsert(x => !x.Any())
// .ToStorage().AsInsertable.ExecuteCommandAsync();
RedisHelper.Instance.HSet(RedisKeyConstant.SessionManage.GetChannelUserKey(TenantId, inputDTO.RoomNum), inputDTO.UserId, user);
@ -101,9 +101,9 @@ namespace WGShare.API.Controllers.Frontend
throw Oops.Oh("用户已不在房间内!");
}
await _sqlSugar.Deleteable<RoomManager>()
.Where(x => x.RoomId == inputDTO.RoomId && x.UserId == inputDTO.UserId)
.ExecuteCommandAsync();
//await _sqlSugar.Deleteable<RoomManager>()
// .Where(x => x.RoomId == inputDTO.RoomId && x.UserId == inputDTO.UserId)
// .ExecuteCommandAsync();
user.IsRoomManager = false;
RedisHelper.Instance.HSet(RedisKeyConstant.SessionManage.GetChannelUserKey(TenantId, inputDTO.RoomNum), inputDTO.UserId, user);
@ -161,6 +161,22 @@ namespace WGShare.API.Controllers.Frontend
#endregion
}
/// <summary>
/// 查询房间中的单个用户信息
/// </summary>
/// <returns></returns>
[HttpGet("user/{uid}")]
public async Task<ChannelUserInfo> GetUser([FromQuery] string roomNum, [FromRoute] string uid)
{
var channelUser = RedisHelper.Instance.HGet<ChannelUserInfo>(RedisKeyConstant.SessionManage.GetChannelUserKey(TenantId, roomNum), uid);
if (channelUser == null)
{
throw Oops.Oh("用户不在房间内!");
}
return channelUser;
}
/// <summary>
/// 检验房间是否存在
/// </summary>
@ -367,10 +383,10 @@ namespace WGShare.API.Controllers.Frontend
[HttpGet("join")]
public async Task JoinChannel([FromQuery] string roomNum, [FromQuery] bool enableMicr = false, [FromQuery] bool enableCamera = false)
{
var isRoomManager = await _sqlSugar.Queryable<RoomManager>()
.InnerJoin<Room>((rm, r) => r.Id == rm.RoomId)
.Where((rm, r) => r.RoomNum == roomNum && rm.UserId == UId)
.AnyAsync();
//var isRoomManager = await _sqlSugar.Queryable<RoomManager>()
// .InnerJoin<Room>((rm, r) => r.Id == rm.RoomId)
// .Where((rm, r) => r.RoomNum == roomNum && rm.UserId == UId)
// .AnyAsync();
var userInfo = new ChannelUserInfo
{
@ -383,7 +399,7 @@ namespace WGShare.API.Controllers.Frontend
ScreenShareId = ScreenShareId,
RoleId = RoleId,
RoleName = ((RoleEnums)RoleId.ToInt32()).GetDescription(),
IsRoomManager = isRoomManager
IsRoomManager = false
};
using (var pipe = RedisHelper.Instance.StartPipe())
{

View File

@ -33,10 +33,10 @@ namespace WGShare.API.Controllers
/// 角色列表下拉框
/// </summary>
/// <returns></returns>
[HttpGet("role-dp-list")]
[HttpGet("role-dp-list"), AllowAnonymous]
public async Task<List<Role>> GetDropDownList()
{
return await _sqlSugar.Queryable<Role>().Where(x => x.IsDelete == false).ToListAsync();
}
}
}
}

View File

@ -14,7 +14,8 @@ namespace WGShare.API.ServiceConfigs
public void OnAuthorization(AuthorizationFilterContext context)
{
if (context.HttpContext.User.Identity.IsAuthenticated
&& !context.HttpContext.GetEndpoint().Metadata.Any(x => x is Microsoft.AspNetCore.Authorization.AllowAnonymousAttribute))
&& !context.HttpContext.GetEndpoint().Metadata.Any(x => x is Microsoft.AspNetCore.Authorization.AllowAnonymousAttribute)
&& context.HttpContext.Request.Path.StartsWithSegments("/be/"))
{
var uid = context.HttpContext.User.Claims.FirstOrDefault(x => x.Type == ClaimTypes.NameIdentifier)?.Value;
if (string.IsNullOrWhiteSpace(uid))

View File

@ -115,6 +115,12 @@
</summary>
<returns></returns>
</member>
<member name="M:WGShare.API.Controllers.Frontend.RoomController.GetUser(System.String,System.String)">
<summary>
查询房间中所有用户信息
</summary>
<returns></returns>
</member>
<member name="M:WGShare.API.Controllers.Frontend.RoomController.ExistsRoom(System.String)">
<summary>
检验房间是否存在