From 7ab6c5393fbec31d1b8e1a724567352cdeb8b1a0 Mon Sep 17 00:00:00 2001 From: wintel Date: Tue, 13 May 2025 21:20:11 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=95=B0=E6=8D=AE=E6=9D=83=E9=99=90?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E4=B8=BAsqlsugar?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DataPrivilege/DataPrivilegeRuleApp.cs | 32 +++++++++---------- OpenAuth.App/Resources/ResourceApp.cs | 5 +++ 2 files changed, 20 insertions(+), 17 deletions(-) diff --git a/OpenAuth.App/DataPrivilege/DataPrivilegeRuleApp.cs b/OpenAuth.App/DataPrivilege/DataPrivilegeRuleApp.cs index e23e9aa5..f347ea79 100644 --- a/OpenAuth.App/DataPrivilege/DataPrivilegeRuleApp.cs +++ b/OpenAuth.App/DataPrivilege/DataPrivilegeRuleApp.cs @@ -2,20 +2,16 @@ using System; using System.Linq; using System.Threading.Tasks; using Infrastructure; -using Microsoft.EntityFrameworkCore; using OpenAuth.App.Interface; using OpenAuth.App.Request; using OpenAuth.App.Response; -using OpenAuth.Repository; using OpenAuth.Repository.Domain; -using OpenAuth.Repository.Interface; - +using SqlSugar; namespace OpenAuth.App { - public class DataPrivilegeRuleApp : BaseStringApp + public class DataPrivilegeRuleApp : SqlSugarBaseApp { - private RevelanceManagerApp _revelanceApp; /// /// 加载列表 /// @@ -34,36 +30,40 @@ namespace OpenAuth.App } var result = new TableData(); - var objs = UnitWork.Find(null); + var objs = SugarClient.Queryable(); if (!string.IsNullOrEmpty(request.key)) { objs = objs.Where(u => u.Id.Contains(request.key) || u.SourceCode.Contains(request.key) || u.Description.Contains(request.key)); } + if (!string.IsNullOrEmpty(request.sqlWhere)) + { + objs = objs.Where(request.sqlWhere); + } var propertyStr = string.Join(',', columnFields.Select(u => u.ColumnName)); result.columnFields = columnFields; result.data = objs.OrderBy(u => u.Id) .Skip((request.page - 1) * request.limit) - .Take(request.limit).Select($"new ({propertyStr})"); + .Take(request.limit).Select($"{propertyStr}").ToList(); result.count = await objs.CountAsync(); return result; } public void Add(AddOrUpdateDataPriviReq req) { - if (Repository.Any(u => u.SourceCode == req.SourceCode)) + if (Repository.IsAny(u => u.SourceCode == req.SourceCode)) { throw new Exception($"已经存在{req.SourceCode}的数据规则,如果想调整规制请直接修改"); } var obj = req.MapTo(); obj.CreateUserId = _auth.GetCurrentUser().User.Id; obj.CreateTime = DateTime.Now; - Repository.Add(obj); + SugarClient.Insertable(obj).ExecuteCommand(); } public void Update(AddOrUpdateDataPriviReq obj) { - UnitWork.Update(u => u.Id == obj.Id, u => new DataPrivilegeRule + Repository.Update(u => new DataPrivilegeRule { SortNo = obj.SortNo, SourceCode = obj.SourceCode, @@ -73,24 +73,22 @@ namespace OpenAuth.App PrivilegeRules = obj.PrivilegeRules, Enable = obj.Enable //todo:要修改的字段赋值 - }); + },u => u.Id == obj.Id); } - public DataPrivilegeRuleApp(IUnitWork unitWork, IRepository repository, - RevelanceManagerApp app, IAuth auth) : base(unitWork, repository, auth) + public DataPrivilegeRuleApp(ISqlSugarClient client, IAuth auth) : base(client, auth) { - _revelanceApp = app; } public DataPrivilegeRule GetByModuleName(string moduleName) { - return Repository.FirstOrDefault(u=>u.SourceCode == moduleName); + return Repository.GetFirst(u=>u.SourceCode == moduleName); } public void Clear() { - Repository.Delete(u =>true); + SugarClient.Deleteable(u => true).ExecuteCommand(); } } } \ No newline at end of file diff --git a/OpenAuth.App/Resources/ResourceApp.cs b/OpenAuth.App/Resources/ResourceApp.cs index 7bfbd378..d13580be 100644 --- a/OpenAuth.App/Resources/ResourceApp.cs +++ b/OpenAuth.App/Resources/ResourceApp.cs @@ -96,6 +96,11 @@ namespace OpenAuth.App resources = resources.Where(u => u.AppId == request.appId); } + if (!string.IsNullOrEmpty(request.sqlWhere)) + { + resources = resources.Where(request.sqlWhere); + } + var columnnames = columnFields.Select(u => u.ColumnName); var propertyStr = string.Join(',', columnnames);