diff --git a/Src/Dlhis.Basic/WorkGrids/Controllers/WorkGridsController.cs b/Src/Dlhis.Basic/WorkGrids/Controllers/WorkGridsController.cs index c97f7c86..17cd70db 100644 --- a/Src/Dlhis.Basic/WorkGrids/Controllers/WorkGridsController.cs +++ b/Src/Dlhis.Basic/WorkGrids/Controllers/WorkGridsController.cs @@ -114,6 +114,7 @@ public class WorkGridsController : ControllerBase /// /// [HttpPost("user/remove")] + [Transactional] public async Task RemoveUsersFromWorkGridAsync(WorkGridUserRemoveRequest request) { await _workGridService.RemoveAsync(request); diff --git a/Src/Dlhis.Basic/WorkGrids/Services/Implements/WorkGridService.cs b/Src/Dlhis.Basic/WorkGrids/Services/Implements/WorkGridService.cs index d41b1856..c01d8c73 100644 --- a/Src/Dlhis.Basic/WorkGrids/Services/Implements/WorkGridService.cs +++ b/Src/Dlhis.Basic/WorkGrids/Services/Implements/WorkGridService.cs @@ -171,6 +171,11 @@ public class WorkGridService : IWorkGridService .Where(x => request.UserCodes.Contains(x.UserCode)) .ToListAsync(); + var workGridSchedules = await _dbContext.Queryable().Where(x => x.WorkGridCode == myWorkGrid.Code) + .Where(x => request.UserCodes.Contains(x.UserCode)) + .ToListAsync(); + await _dbContext.DeleteReallyAsync(workGridUsers); + await _dbContext.DeleteReallyAsync(workGridSchedules); } } \ No newline at end of file