🔄refactor: 调整为SqlSugar

This commit is contained in:
yubaolee
2026-05-24 23:34:27 +08:00
parent 237fc49f2f
commit d2c8f783e1
10 changed files with 130 additions and 166 deletions

View File

@@ -6,17 +6,15 @@ using Infrastructure.Helpers;
using Microsoft.Extensions.Logging;
using OpenAuth.App.Interface;
using OpenAuth.App.Request;
using OpenAuth.Repository;
using OpenAuth.Repository.Domain;
using OpenAuth.Repository.Interface;
using SqlSugar;
namespace OpenAuth.App
{
public class RevelanceManagerApp : BaseStringApp<Relevance,OpenAuthDBContext>
public class RevelanceManagerApp : SqlSugarBaseApp<Relevance>
{
private readonly ILogger<RevelanceManagerApp> _logger;
public RevelanceManagerApp(IUnitWork<OpenAuthDBContext> unitWork, IRepository<Relevance,OpenAuthDBContext> repository, IAuth auth, ILogger<RevelanceManagerApp> logger) : base(unitWork,
repository, auth)
public RevelanceManagerApp(ISqlSugarClient client, IAuth auth, ILogger<RevelanceManagerApp> logger) : base(client, auth)
{
_logger = logger;
}
@@ -38,7 +36,7 @@ namespace OpenAuth.App
/// <param name="idMaps"></param>
public void Assign(string key, ILookup<string, string> idMaps)
{
UnitWork.BatchAdd((from sameVals in idMaps
SugarClient.Insertable((from sameVals in idMaps
from value in sameVals
select new Relevance
{
@@ -46,8 +44,7 @@ namespace OpenAuth.App
FirstId = sameVals.Key,
SecondId = value,
OperateTime = TimeHelper.Now
}).ToArray());
UnitWork.Save();
}).ToArray()).ExecuteCommand();
}
/// <summary>
@@ -82,7 +79,7 @@ namespace OpenAuth.App
_logger.LogInformation($"start=> delete {key} {sameVals.Key} {value}");
try
{
UnitWork.Delete<Relevance>(u => u.RelKey == key && u.FirstId == sameVals.Key && u.SecondId == value);
SugarClient.Deleteable<Relevance>().Where(u => u.RelKey == key && u.FirstId == sameVals.Key && u.SecondId == value).ExecuteCommand();
}
catch (Exception e)
{
@@ -95,7 +92,7 @@ namespace OpenAuth.App
public void DeleteBy(string key, params string[] firstIds)
{
UnitWork.Delete<Relevance>(u => firstIds.Contains(u.FirstId) && u.RelKey == key);
SugarClient.Deleteable<Relevance>().Where(u => firstIds.Contains(u.FirstId) && u.RelKey == key).ExecuteCommand();
}
@@ -110,12 +107,12 @@ namespace OpenAuth.App
{
if (returnSecondIds)
{
return Repository.Find(u => u.RelKey == key
return SugarClient.Queryable<Relevance>().Where(u => u.RelKey == key
&& ids.Contains(u.FirstId)).Select(u => u.SecondId).ToList();
}
else
{
return Repository.Find(u => u.RelKey == key
return SugarClient.Queryable<Relevance>().Where(u => u.RelKey == key
&& ids.Contains(u.SecondId)).Select(u => u.FirstId).ToList();
}
}
@@ -129,7 +126,7 @@ namespace OpenAuth.App
/// <returns></returns>
public List<string> Get(string key, string firstId, string secondId)
{
return Repository.Find(u => u.RelKey == key && u.FirstId == firstId && u.SecondId == secondId)
return SugarClient.Queryable<Relevance>().Where(u => u.RelKey == key && u.FirstId == firstId && u.SecondId == secondId)
.Select(u => u.ThirdId).ToList();
}
@@ -157,8 +154,7 @@ namespace OpenAuth.App
});
}
UnitWork.BatchAdd(relevances.ToArray());
UnitWork.Save();
SugarClient.Insertable(relevances).ExecuteCommand();
}
/// <summary>
@@ -182,10 +178,10 @@ namespace OpenAuth.App
{
foreach (var property in request.Properties)
{
UnitWork.Delete<Relevance>(u => u.RelKey == Define.ROLEDATAPROPERTY
SugarClient.Deleteable<Relevance>().Where(u => u.RelKey == Define.ROLEDATAPROPERTY
&& u.FirstId == request.RoleId
&& u.SecondId == request.ModuleCode
&& u.ThirdId == property);
&& u.ThirdId == property).ExecuteCommand();
}
}
}
@@ -196,21 +192,19 @@ namespace OpenAuth.App
/// <param name="request"></param>
public void AssignRoleUsers(AssignRoleUsers request)
{
UnitWork.ExecuteWithTransaction(() =>
{
//删除以前的所有用户
UnitWork.Delete<Relevance>(u => u.SecondId == request.RoleId && u.RelKey == Define.USERROLE);
//批量分配用户角色
UnitWork.BatchAdd((from firstId in request.UserIds
SugarClient.Ado.BeginTran();
//删除以前的所有用户
SugarClient.Deleteable<Relevance>().Where(u => u.SecondId == request.RoleId && u.RelKey == Define.USERROLE).ExecuteCommand();
//批量分配用户角色
SugarClient.Insertable((from firstId in request.UserIds
select new Relevance
{
RelKey = Define.USERROLE,
FirstId = firstId,
SecondId = request.RoleId,
OperateTime = TimeHelper.Now
}).ToArray());
UnitWork.Save();
});
}).ToArray()).ExecuteCommand();
SugarClient.Ado.CommitTran();
}
/// <summary>
@@ -219,21 +213,19 @@ namespace OpenAuth.App
/// <param name="request"></param>
public void AssignOrgUsers(AssignOrgUsers request)
{
UnitWork.ExecuteWithTransaction(() =>
{
//删除以前的所有用户
UnitWork.Delete<Relevance>(u => u.SecondId == request.OrgId && u.RelKey == Define.USERORG);
//批量分配用户角色
UnitWork.BatchAdd((from firstId in request.UserIds
SugarClient.Ado.BeginTran();
//删除以前的所有用户
SugarClient.Deleteable<Relevance>().Where(u => u.SecondId == request.OrgId && u.RelKey == Define.USERORG).ExecuteCommand();
//批量分配用户角色
SugarClient.Insertable((from firstId in request.UserIds
select new Relevance
{
RelKey = Define.USERORG,
FirstId = firstId,
SecondId = request.OrgId,
OperateTime = TimeHelper.Now
}).ToArray());
UnitWork.Save();
});
}).ToArray()).ExecuteCommand();
SugarClient.Ado.CommitTran();
}
/// <summary>
@@ -242,21 +234,19 @@ namespace OpenAuth.App
/// <param name="request"></param>
public void AssignRoleResources(AssignRoleResources request)
{
UnitWork.ExecuteWithTransaction(() =>
{
//删除以前的所有资源
UnitWork.Delete<Relevance>(u => u.FirstId == request.RoleId && u.RelKey == Define.ROLERESOURCE);
//批量分配角色资源
UnitWork.BatchAdd((from firstId in request.ResourceIds
SugarClient.Ado.BeginTran();
//删除以前的所有资源
SugarClient.Deleteable<Relevance>().Where(u => u.FirstId == request.RoleId && u.RelKey == Define.ROLERESOURCE).ExecuteCommand();
//批量分配角色资源
SugarClient.Insertable((from firstId in request.ResourceIds
select new Relevance
{
RelKey = Define.ROLERESOURCE,
FirstId = request.RoleId,
SecondId = firstId,
OperateTime = TimeHelper.Now
}).ToArray());
UnitWork.Save();
});
}).ToArray()).ExecuteCommand();
SugarClient.Ado.CommitTran();
}
}
}