diff --git a/Src/Dlhis.Canteen/Order/Controllers/BalancesController.cs b/Src/Dlhis.Canteen/Order/Controllers/BalancesController.cs index deeae21e..1a78c69b 100644 --- a/Src/Dlhis.Canteen/Order/Controllers/BalancesController.cs +++ b/Src/Dlhis.Canteen/Order/Controllers/BalancesController.cs @@ -4,6 +4,7 @@ using Dlhis.Canteen.Order.Request; using Dlhis.Canteen.Order.Response; using Dlhis.Canteen.Order.Services; using Dlhis.Entity.Canteen.Entities; +using Kurisu.AspNetCore; using Kurisu.AspNetCore.DataAccess.Dto; using Kurisu.AspNetCore.DataAccess.SqlSugar.Aop; using Kurisu.AspNetCore.DataAccess.SqlSugar.Services; @@ -23,13 +24,11 @@ public class BalancesController : ControllerBase { private readonly IBalanceService _balanceService; private readonly IHainingBalanceService _hainingBalanceService; - private readonly IServiceProvider _serviceProvider; - public BalancesController(IBalanceService balanceService, IHainingBalanceService hainingBalanceService, IServiceProvider serviceProvider) + public BalancesController(IBalanceService balanceService, IHainingBalanceService hainingBalanceService) { _balanceService = balanceService; _hainingBalanceService = hainingBalanceService; - _serviceProvider = serviceProvider; } /// @@ -210,22 +209,20 @@ public class BalancesController : ControllerBase } [HttpPost("recalc1")] - [IgnoreTenant] [Transactional(IsolationLevel.ReadCommitted)] + [IgnoreTenant] public async Task ReC5() { - using (var scope = _serviceProvider.CreateScope()) - { - var db = scope.ServiceProvider.GetService(); - var middleService = scope.ServiceProvider.GetService(); - var others = await db.Queryable().AS("LocalBalanceRecordEntity") - .Where(x => SqlFunc.Subqueryable().Where(p => p.No == x.No).NotAny()) - .ToListAsync(); + var sp = App.GetServiceProvider(); + var db = sp.GetService(); + var middleService = sp.GetService(); + var others = await db.Queryable().AS("LocalBalanceRecordEntity") + .Where(x => SqlFunc.Subqueryable().Where(p => p.No == x.No).NotAny()) + .ToListAsync(); - foreach (var item in others) - { - await middleService.MiddleUploadAsync(item); - } + foreach (var item in others) + { + await middleService.MiddleUploadAsync(item); } } } \ No newline at end of file diff --git a/Src/Dlhis.Canteen/Order/Controllers/MiddleController.cs b/Src/Dlhis.Canteen/Order/Controllers/MiddleController.cs index 27092678..54ca86a1 100644 --- a/Src/Dlhis.Canteen/Order/Controllers/MiddleController.cs +++ b/Src/Dlhis.Canteen/Order/Controllers/MiddleController.cs @@ -1,3 +1,4 @@ +using System.Data; using Dlhis.Canteen.Order.Response; using Dlhis.Canteen.Order.Services; using Dlhis.Entity.Canteen.Entities; @@ -25,6 +26,7 @@ public class MiddleController : ControllerBase /// [IgnoreTenant] [HttpPost("upload")] + [Transactional(IsolationLevel.ReadCommitted)] public async Task MiddleUpload(BalanceRecordEntity entity) { return await _middleService.MiddleUploadAsync(entity);