Compare commits
No commits in common. "df9fbe55c4aae2faf9e72d890f05d4c893ba82d2" and "ea382b1aa111714e612843f59b52741773a3610b" have entirely different histories.
df9fbe55c4
...
ea382b1aa1
|
|
@ -115,11 +115,11 @@
|
|||
"DockerConfig": {
|
||||
"Prot": "5192:5192",
|
||||
"AspNetCoreEnv": "",
|
||||
"LastEnvName": "29dev",
|
||||
"LastEnvName": "marking001",
|
||||
"RemoveDaysFromPublished": "10",
|
||||
"WorkDir": "",
|
||||
"Volume": "",
|
||||
"Other": "--name wgshare-api -e ASPNETCORE_ENVIRONMENT=Development -e TZ=Asia/Shanghai",
|
||||
"Other": "--name wgshare-api -e ASPNETCORE_ENVIRONMENT=Production -e TZ=Asia/Shanghai",
|
||||
"EnvPairList": [
|
||||
{
|
||||
"EnvName": "29dev",
|
||||
|
|
|
|||
|
|
@ -94,7 +94,6 @@ namespace WGShare.API.Controllers
|
|||
btnAutn.Add(new Claim("ssid", user.ScreenShareId));
|
||||
btnAutn.Add(new Claim("year", user.Year.ToString()));
|
||||
btnAutn.Add(new Claim("subject", ((int)user.Subject).ToString()));
|
||||
btnAutn.Add(new Claim("anonymous", user.IsAnonymous ? "1" : "0"));
|
||||
|
||||
// 获取已登录的token
|
||||
var tokens = RedisHelper.Instance.Get<AccessAndRefreshToken>(RedisKeyConstant.Data.GetAccessTokenKey(user.Id));
|
||||
|
|
@ -170,7 +169,6 @@ namespace WGShare.API.Controllers
|
|||
btnAutn.Add(new Claim("ssid", user.ScreenShareId));
|
||||
btnAutn.Add(new Claim("year", user.Year.ToString()));
|
||||
btnAutn.Add(new Claim("subject", ((int)user.Subject).ToString()));
|
||||
btnAutn.Add(new Claim("anonymous", user.IsAnonymous ? "1" : "0"));
|
||||
|
||||
var accessToken = _jwtHelper.CreateToken(user.Id, btnAutn);
|
||||
var refreshTokenNew = Guid.NewGuid().ToString();
|
||||
|
|
@ -253,10 +251,10 @@ namespace WGShare.API.Controllers
|
|||
}
|
||||
|
||||
// 修改用户名
|
||||
await _sqlSugar.Updateable<User>()
|
||||
.SetColumns(x => x.UserName == loginDTO.NickName)
|
||||
.Where(x => x.Id == user.Id)
|
||||
.ExecuteCommandHasChangeAsync();
|
||||
await _sqlSugar.Updateable<User>()
|
||||
.SetColumns(x => x.UserName == loginDTO.NickName)
|
||||
.Where(x => x.Id == user.Id)
|
||||
.ExecuteCommandHasChangeAsync();
|
||||
}
|
||||
|
||||
var btnAutn = new List<Claim>();
|
||||
|
|
@ -266,7 +264,6 @@ namespace WGShare.API.Controllers
|
|||
btnAutn.Add(new Claim("account", user.Account));
|
||||
btnAutn.Add(new Claim("uname", loginDTO.NickName));
|
||||
btnAutn.Add(new Claim("ssid", user.ScreenShareId));
|
||||
btnAutn.Add(new Claim("anonymous", user.IsAnonymous ? "1" : "0"));
|
||||
|
||||
var accessToken = _jwtHelper.CreateToken(user.Id, btnAutn);
|
||||
return Ok(new
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ namespace WGShare.API.Controllers.Basic
|
|||
{
|
||||
get
|
||||
{
|
||||
var roleId = HttpContext.User.Claims.FirstOrDefault(x => x.Type == "roleid")?.Value;
|
||||
var roleId = HttpContext.User.Claims.FirstOrDefault(x => x.Type == "roleid").Value;
|
||||
if (string.IsNullOrWhiteSpace(roleId) || !int.TryParse(roleId, out int role) || role == 0)
|
||||
{
|
||||
throw Oops.Oh("用户信息有误,请重新登录");
|
||||
|
|
@ -72,7 +72,7 @@ namespace WGShare.API.Controllers.Basic
|
|||
{
|
||||
get
|
||||
{
|
||||
var tenant = HttpContext.User.Claims.FirstOrDefault(x => x.Type == "tenant")?.Value;
|
||||
var tenant = HttpContext.User.Claims.FirstOrDefault(x => x.Type == "tenant").Value;
|
||||
if (string.IsNullOrWhiteSpace(tenant))
|
||||
{
|
||||
throw Oops.Oh("用户信息有误,请重新登录");
|
||||
|
|
@ -85,7 +85,7 @@ namespace WGShare.API.Controllers.Basic
|
|||
{
|
||||
get
|
||||
{
|
||||
var ssId = HttpContext.User.Claims.FirstOrDefault(x => x.Type == "ssid")?.Value;
|
||||
var ssId = HttpContext.User.Claims.FirstOrDefault(x => x.Type == "ssid").Value;
|
||||
if (string.IsNullOrWhiteSpace(ssId))
|
||||
{
|
||||
throw Oops.Oh("用户信息有误,请重新登录");
|
||||
|
|
@ -121,7 +121,7 @@ namespace WGShare.API.Controllers.Basic
|
|||
return year;
|
||||
}
|
||||
|
||||
var year_str = HttpContext.User.Claims.FirstOrDefault(x => x.Type == "year")?.Value;
|
||||
var year_str = HttpContext.User.Claims.FirstOrDefault(x => x.Type == "year").Value;
|
||||
if (string.IsNullOrWhiteSpace(year_str) || !int.TryParse(year_str, out year))
|
||||
{
|
||||
throw Oops.Oh("用户信息有误,请重新登录");
|
||||
|
|
@ -140,7 +140,7 @@ namespace WGShare.API.Controllers.Basic
|
|||
return (SubjectType)subject;
|
||||
}
|
||||
|
||||
var subject_str = HttpContext.User.Claims.FirstOrDefault(x => x.Type == "subject")?.Value;
|
||||
var subject_str = HttpContext.User.Claims.FirstOrDefault(x => x.Type == "subject").Value;
|
||||
if (string.IsNullOrWhiteSpace(subject_str) || !int.TryParse(subject_str, out subject))
|
||||
{
|
||||
throw Oops.Oh("用户信息有误,请重新登录");
|
||||
|
|
@ -149,25 +149,5 @@ namespace WGShare.API.Controllers.Basic
|
|||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 匿名用户
|
||||
/// </summary>
|
||||
public bool IsAnonymous
|
||||
{
|
||||
get
|
||||
{
|
||||
if (!HttpContext.User.Identity.IsAuthenticated)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
var anonymous_str = HttpContext.User.Claims.FirstOrDefault(x => x.Type == "anonymous")?.Value;
|
||||
if (string.IsNullOrWhiteSpace(anonymous_str) || !int.TryParse(anonymous_str, out int anonymous))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
return anonymous == 1;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -109,9 +109,7 @@ namespace WGShare.API.Controllers.Frontend
|
|||
entity.Id = YitIdHelper.NextId().ToString();
|
||||
entity.TenantId = TenantId;
|
||||
|
||||
|
||||
var room = await _sqlSugar.Queryable<Room>().FirstAsync(x => x.RoomNum == inputDTO.RoomNum);
|
||||
if (room != null)
|
||||
if (await _sqlSugar.Queryable<Room>().AnyAsync(x => x.RoomNum == inputDTO.RoomNum))
|
||||
{
|
||||
throw Oops.Oh("无效会议号,请重新输入");
|
||||
}
|
||||
|
|
@ -129,7 +127,7 @@ namespace WGShare.API.Controllers.Frontend
|
|||
{
|
||||
var entity = inputDTO.Adapt<Room>();
|
||||
return await _sqlSugar.Updateable(entity)
|
||||
.UpdateColumns(x => new { x.Year, x.Subject, x.RoomName, x.AllowAnonymous })
|
||||
.UpdateColumns(x => new { x.Year, x.Subject })
|
||||
.ExecuteCommandHasChangeAsync();
|
||||
}
|
||||
|
||||
|
|
@ -339,7 +337,7 @@ namespace WGShare.API.Controllers.Frontend
|
|||
var imgStr = Convert.ToBase64String(imageArr);
|
||||
|
||||
imgStr = QrCodeOptimizerHelper.CompressImage(imgStr, 50);
|
||||
RedisHelper.Instance.Set(RedisKeyConstant.WxMiniProgram.GetRoomQrCode(roomNum, env), imgStr, TimeSpan.FromDays(1));
|
||||
RedisHelper.Instance.Set(RedisKeyConstant.WxMiniProgram.GetRoomQrCode(roomNum, env), imgStr, TimeSpan.FromDays(1));
|
||||
return imgStr;
|
||||
}
|
||||
else if (contentType != null && contentType.Contains("json"))
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@ using Hangfire.MemoryStorage.Database;
|
|||
using Mapster;
|
||||
using Masuit.Tools;
|
||||
using Microsoft.AspNetCore.Authorization;
|
||||
using Microsoft.AspNetCore.Components.Forms;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using Microsoft.AspNetCore.SignalR;
|
||||
using Microsoft.IdentityModel.Tokens;
|
||||
|
|
@ -64,9 +63,9 @@ namespace WGShare.API.Controllers.Frontend
|
|||
public async Task SetRoomManager([FromBody] RoomManagerInputDTO inputDTO)
|
||||
{
|
||||
var users = RedisHelper.Instance.HVals<ChannelUserInfo>(RedisKeyConstant.SessionManage.GetChannelUserKey(TenantId, inputDTO.RoomNum));
|
||||
if (users.Count(x => x.IsRoomManager || x.RoleId == ((int)RoleEnums.Admin).ToString() || x.RoleId == ((int)RoleEnums.RoomManager).ToString()) >= 32)
|
||||
if (users.Count(x => x.IsRoomManager || x.RoleId == ((int)RoleEnums.Admin).ToString() || x.RoleId == ((int)RoleEnums.RoomManager).ToString()) >= 12)
|
||||
{
|
||||
throw Oops.Oh("房间已达到32个发言人限制。请移除一位发言人");
|
||||
throw Oops.Oh("房间已达到12个发言人限制。请移除一位发言人");
|
||||
}
|
||||
var user = users.FirstOrDefault(x => x.UID == inputDTO.UserId);
|
||||
if (user == null)
|
||||
|
|
@ -193,34 +192,7 @@ namespace WGShare.API.Controllers.Frontend
|
|||
[HttpGet("checkout"), AllowAnonymous]
|
||||
public async Task<bool> ExistsRoom([FromQuery] string roomNum)
|
||||
{
|
||||
if (IsAnonymous)
|
||||
{
|
||||
// 匿名用户
|
||||
var room = await _sqlSugar.Queryable<Room>().FirstAsync(x => x.RoomNum == roomNum && x.IsDelete == false);
|
||||
if (room == null)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
if (!room.AllowAnonymous)
|
||||
{
|
||||
throw Oops.Oh("房间不允许匿名用户进入");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
// 非匿名用户
|
||||
var room = await _sqlSugar.Queryable<Room>()
|
||||
.WhereIF(Year > 0 && RoleId == RoleEnums.User, x => x.Year == Year || x.Year == 0)
|
||||
.WhereIF(Subject > 0 && RoleId == RoleEnums.User, x => x.Subject == Subject || x.Subject == 0)
|
||||
.FirstAsync(x => x.RoomNum == roomNum && x.IsDelete == false);
|
||||
if (room == null)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
return await _sqlSugar.Queryable<Room>().AnyAsync(x => x.RoomNum == roomNum && x.IsDelete == false);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
@ -716,21 +688,5 @@ namespace WGShare.API.Controllers.Frontend
|
|||
|
||||
await _sqlSugar.Insertable(entitys).ExecuteCommandAsync();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 修改昵称
|
||||
/// </summary>
|
||||
/// <param name="dto"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPut("alter-uname")]
|
||||
public async Task ModifyNickName([FromBody] UserModifyNickNameDto dto)
|
||||
{
|
||||
var user = RedisHelper.Instance.HGet<ChannelUserInfo>(RedisKeyConstant.SessionManage.GetChannelUserKey(TenantId, dto.RoomNum), dto.UId.ToString());
|
||||
user.UserName = dto.NickName;
|
||||
|
||||
RedisHelper.Instance.HSet(RedisKeyConstant.SessionManage.GetChannelUserKey(TenantId, dto.RoomNum), dto.UId.ToString(), user);
|
||||
|
||||
await _hubContext.Clients.Group(dto.RoomNum).ModifyNickName(dto.UId, dto.NickName);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -144,13 +144,5 @@ namespace WGShare.API.Hubs
|
|||
/// <param name="driversJsonString"></param>
|
||||
/// <returns></returns>
|
||||
Task ShowDriverList(string driversJsonString);
|
||||
|
||||
/// <summary>
|
||||
/// 修改昵称
|
||||
/// </summary>
|
||||
/// <param name="UId"></param>
|
||||
/// <param name="NickName"></param>
|
||||
/// <returns></returns>
|
||||
Task ModifyNickName(long UId, string NickName);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -68,11 +68,6 @@
|
|||
<param name="file"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="P:WGShare.API.Controllers.Basic.BasicController.IsAnonymous">
|
||||
<summary>
|
||||
匿名用户
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:WGShare.API.Controllers.Frontend.AgoraCallbackController">
|
||||
<summary>
|
||||
Agora接口
|
||||
|
|
@ -328,13 +323,6 @@
|
|||
<param name="list"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:WGShare.API.Controllers.Frontend.RoomController.ModifyNickName(WGShare.Domain.DTOs.User.UserModifyNickNameDto)">
|
||||
<summary>
|
||||
修改昵称
|
||||
</summary>
|
||||
<param name="dto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:WGShare.API.Controllers.Frontend.UserController.GetUserList(System.String,System.Nullable{System.Boolean},WGShare.Domain.GeneralModel.PagedBaseDto)">
|
||||
<summary>
|
||||
获取用户列表
|
||||
|
|
@ -688,14 +676,6 @@
|
|||
<param name="driversJsonString"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:WGShare.API.Hubs.IMessageClient.ModifyNickName(System.Int64,System.String)">
|
||||
<summary>
|
||||
修改昵称
|
||||
</summary>
|
||||
<param name="UId"></param>
|
||||
<param name="NickName"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:WGShare.API.Hubs.SessionManageHub.JoinChannel(System.String,System.Boolean,System.Boolean,System.Boolean)">
|
||||
<summary>
|
||||
加入频道
|
||||
|
|
|
|||
|
|
@ -28,7 +28,6 @@ namespace WGShare.Domain.DTOs.Room
|
|||
/// 科目
|
||||
///</summary>
|
||||
public SubjectType Subject { get; set; }
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -48,10 +47,5 @@ namespace WGShare.Domain.DTOs.Room
|
|||
/// 会议室名称
|
||||
/// </summary>
|
||||
public string RoomName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否允许匿名
|
||||
/// </summary>
|
||||
public bool AllowAnonymous { get; set; } = true;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -34,7 +34,5 @@ namespace WGShare.Domain.DTOs.Room
|
|||
/// 科目
|
||||
///</summary>
|
||||
public SubjectType Subject { get; set; }
|
||||
|
||||
public bool AllowAnonymous { get; set; }
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,15 +0,0 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace WGShare.Domain.DTOs.User
|
||||
{
|
||||
public class UserModifyNickNameDto
|
||||
{
|
||||
public string RoomNum { get; set; }
|
||||
public string NickName { get; set; }
|
||||
public long UId { get; set; }
|
||||
}
|
||||
}
|
||||
|
|
@ -62,11 +62,5 @@ namespace WGShare.Domain.Entities
|
|||
///</summary>
|
||||
[SugarColumn(ColumnName = "subject")]
|
||||
public SubjectType Subject { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否允许匿名
|
||||
///</summary>
|
||||
[SugarColumn(ColumnName = "allow_anonymous")]
|
||||
public bool AllowAnonymous { get; set; } = true;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue