Преглед изворни кода

😁依赖包升级及细节优化

zuohuaijun пре 3 година
родитељ
комит
5736f30681

+ 4 - 4
Admin.NET/Admin.NET.Core/Admin.NET.Core.csproj

@@ -21,9 +21,9 @@
     <PackageReference Include="DotNetCore.Compile.Environment" Version="3.2.0" />
     <PackageReference Include="DotNetCore.Natasha.CSharp" Version="5.1.0" />
     <PackageReference Include="FluentEmail.Smtp" Version="3.0.2" />
-    <PackageReference Include="Furion.Extras.Authentication.JwtBearer" Version="4.8.7.29" />
-    <PackageReference Include="Furion.Extras.ObjectMapper.Mapster" Version="4.8.7.29" />
-    <PackageReference Include="Furion.Pure" Version="4.8.7.29" />
+    <PackageReference Include="Furion.Extras.Authentication.JwtBearer" Version="4.8.7.31" />
+    <PackageReference Include="Furion.Extras.ObjectMapper.Mapster" Version="4.8.7.31" />
+    <PackageReference Include="Furion.Pure" Version="4.8.7.31" />
     <PackageReference Include="IPTools.China" Version="1.6.0" />
     <PackageReference Include="Lazy.Captcha.Core" Version="2.0.3" />
     <PackageReference Include="Magicodes.IE.Excel" Version="2.7.4.3" />
@@ -35,7 +35,7 @@
     <PackageReference Include="SKIT.FlurlHttpClient.Wechat.Api" Version="2.26.0" />
     <PackageReference Include="SKIT.FlurlHttpClient.Wechat.TenpayV3" Version="2.16.0" />
     <PackageReference Include="SqlSugarCore" Version="5.1.4.63" />
-    <PackageReference Include="System.Linq.Dynamic.Core" Version="1.3.1" />
+    <PackageReference Include="System.Linq.Dynamic.Core" Version="1.3.2" />
     <PackageReference Include="UAParser" Version="3.1.47" />
     <PackageReference Include="Yitter.IdGenerator" Version="1.0.14" />
   </ItemGroup>

+ 17 - 15
Admin.NET/Admin.NET.Core/Service/Job/DbJobPersistence.cs

@@ -19,13 +19,14 @@ public class DbJobPersistence : IJobPersistence
     public IEnumerable<SchedulerBuilder> Preload()
     {
         using var scope = _serviceScopeFactory.CreateScope();
-        var jobRepository = scope.ServiceProvider.GetRequiredService<SqlSugarRepository<SysJobDetail>>();
-        var triggerRepository = scope.ServiceProvider.GetRequiredService<SqlSugarRepository<SysJobTrigger>>();
+        var jobDetailRep = scope.ServiceProvider.GetRequiredService<SqlSugarRepository<SysJobDetail>>();
+        var jobTriggerRep = scope.ServiceProvider.GetRequiredService<SqlSugarRepository<SysJobTrigger>>();
         var dynamicJobCompiler = scope.ServiceProvider.GetRequiredService<DynamicJobCompiler>();
+
         // 获取所有定义的作业
         var allJobs = App.EffectiveTypes.ScanToBuilders().ToList();
         // 若数据库不存在任何作业,则直接返回
-        if (!jobRepository.IsAny(u => true)) return allJobs;
+        if (!jobDetailRep.IsAny(u => true)) return allJobs;
 
         // 遍历所有定义的作业
         foreach (var schedulerBuilder in allJobs)
@@ -34,14 +35,14 @@ public class DbJobPersistence : IJobPersistence
             var jobBuilder = schedulerBuilder.GetJobBuilder();
 
             // 加载数据库数据
-            var dbDetail = jobRepository.GetFirst(u => u.JobId == jobBuilder.JobId);
+            var dbDetail = jobDetailRep.GetFirst(u => u.JobId == jobBuilder.JobId);
             if (dbDetail == null) continue;
 
             // 同步数据库数据
             jobBuilder.LoadFrom(dbDetail);
 
             // 获取作业的所有数据库的触发器
-            var dbTriggers = triggerRepository.GetList(u => u.JobId == jobBuilder.JobId).ToArray();
+            var dbTriggers = jobTriggerRep.GetList(u => u.JobId == jobBuilder.JobId).ToArray();
             // 遍历所有作业触发器
             foreach (var (_, triggerBuilder) in schedulerBuilder.GetEnumerable())
             {
@@ -65,7 +66,7 @@ public class DbJobPersistence : IJobPersistence
         }
 
         // 获取数据库所有通过脚本创建的作业
-        var allDbScriptJobs = jobRepository.GetList(u => u.CreateType != JobCreateTypeEnum.BuiltIn);
+        var allDbScriptJobs = jobDetailRep.GetList(u => u.CreateType != JobCreateTypeEnum.BuiltIn);
         foreach (var dbDetail in allDbScriptJobs)
         {
             // 动态创建作业
@@ -90,7 +91,7 @@ public class DbJobPersistence : IJobPersistence
             jobBuilder.SetIncludeAnnotations(false);
 
             // 获取作业的所有数据库的触发器加入到作业中
-            var dbTriggers = triggerRepository.GetList(u => u.JobId == jobBuilder.JobId).ToArray();
+            var dbTriggers = jobTriggerRep.GetList(u => u.JobId == jobBuilder.JobId).ToArray();
             var triggerBuilders = dbTriggers.Select(u => TriggerBuilder.Create(u.TriggerId).LoadFrom(u).Updated());
             var schedulerBuilder = SchedulerBuilder.Create(jobBuilder, triggerBuilders.ToArray());
 
@@ -120,21 +121,21 @@ public class DbJobPersistence : IJobPersistence
     public void OnChanged(PersistenceContext context)
     {
         using var scope = _serviceScopeFactory.CreateScope();
-        var jobRepository = scope.ServiceProvider.GetRequiredService<SqlSugarRepository<SysJobDetail>>();
+        var jobDetailRep = scope.ServiceProvider.GetRequiredService<SqlSugarRepository<SysJobDetail>>();
 
         var jobDetail = context.JobDetail.Adapt<SysJobDetail>();
         switch (context.Behavior)
         {
             case PersistenceBehavior.Appended:
-                jobRepository.AsInsertable(jobDetail).ExecuteCommand();
+                jobDetailRep.AsInsertable(jobDetail).ExecuteCommand();
                 break;
 
             case PersistenceBehavior.Updated:
-                jobRepository.AsUpdateable(jobDetail).WhereColumns(u => new { u.JobId }).IgnoreColumns(u => new { u.Id, u.CreateType, u.ScriptCode }).ExecuteCommand();
+                jobDetailRep.AsUpdateable(jobDetail).WhereColumns(u => new { u.JobId }).IgnoreColumns(u => new { u.Id, u.CreateType, u.ScriptCode }).ExecuteCommand();
                 break;
 
             case PersistenceBehavior.Removed:
-                jobRepository.AsDeleteable().Where(u => u.JobId == jobDetail.JobId).ExecuteCommand();
+                jobDetailRep.AsDeleteable().Where(u => u.JobId == jobDetail.JobId).ExecuteCommand();
                 break;
 
             default:
@@ -149,20 +150,21 @@ public class DbJobPersistence : IJobPersistence
     public void OnTriggerChanged(PersistenceTriggerContext context)
     {
         using var scope = _serviceScopeFactory.CreateScope();
-        var triggerRepository = scope.ServiceProvider.GetRequiredService<SqlSugarRepository<SysJobTrigger>>();
+        var jobTriggerRep = scope.ServiceProvider.GetRequiredService<SqlSugarRepository<SysJobTrigger>>();
+
         var jobTrigger = context.Trigger.Adapt<SysJobTrigger>();
         switch (context.Behavior)
         {
             case PersistenceBehavior.Appended:
-                triggerRepository.AsInsertable(jobTrigger).ExecuteCommand();
+                jobTriggerRep.AsInsertable(jobTrigger).ExecuteCommand();
                 break;
 
             case PersistenceBehavior.Updated:
-                triggerRepository.AsUpdateable(jobTrigger).WhereColumns(u => new { u.TriggerId, u.JobId }).IgnoreColumns(u => new { u.Id }).ExecuteCommand();
+                jobTriggerRep.AsUpdateable(jobTrigger).WhereColumns(u => new { u.TriggerId, u.JobId }).IgnoreColumns(u => new { u.Id }).ExecuteCommand();
                 break;
 
             case PersistenceBehavior.Removed:
-                triggerRepository.AsDeleteable().Where(u => u.TriggerId == jobTrigger.TriggerId && u.JobId == jobTrigger.JobId).ExecuteCommand();
+                jobTriggerRep.AsDeleteable().Where(u => u.TriggerId == jobTrigger.TriggerId && u.JobId == jobTrigger.JobId).ExecuteCommand();
                 break;
 
             default:

+ 2 - 3
Admin.NET/Admin.NET.Core/Service/Org/SysOrgService.cs

@@ -112,8 +112,7 @@ public class SysOrgService : IDynamicApiController, ITransient
         if (input.Id == input.Pid)
             throw Oops.Oh(ErrorCodeEnum.D2001);
 
-        var sysOrg = await _sysOrgRep.GetFirstAsync(u => u.Id == input.Id);
-        var isExist = await _sysOrgRep.IsAnyAsync(u => u.Name == input.Name && u.Code == input.Code && u.Id != sysOrg.Id);
+        var isExist = await _sysOrgRep.IsAnyAsync(u => u.Name == input.Name && u.Code == input.Code && u.Id != input.Id);
         if (isExist)
             throw Oops.Oh(ErrorCodeEnum.D2002);
 
@@ -124,7 +123,7 @@ public class SysOrgService : IDynamicApiController, ITransient
 
         // 是否有权限操作此机构
         var dataScopes = await GetUserOrgIdList();
-        if (!_userManager.SuperAdmin && (dataScopes.Count < 1 || !dataScopes.Contains(sysOrg.Id)))
+        if (!_userManager.SuperAdmin && (dataScopes.Count < 1 || !dataScopes.Contains(input.Id)))
             throw Oops.Oh(ErrorCodeEnum.D2003);
 
         await _sysOrgRep.AsUpdateable(input.Adapt<SysOrg>()).IgnoreColumns(true).ExecuteCommandAsync();

+ 1 - 1
Admin.NET/Admin.NET.Core/Util/ComputerUtil.cs

@@ -52,7 +52,7 @@ public static class ComputerUtil
             var driv = DriveInfo.GetDrives().Where(u => u.IsReady);
             foreach (var item in driv)
             {
-                if (item.DriveType==DriveType.CDRom) continue;
+                if (item.DriveType == DriveType.CDRom) continue;
                 var obj = new DiskInfo()
                 {
                     DiskName = item.Name,