From d1d2334a841c395c884afa7ece41c80372a7e2cf Mon Sep 17 00:00:00 2001 From: liguoyang Date: Mon, 24 Jun 2024 16:57:06 +0800 Subject: [PATCH] =?UTF-8?q?fix=20=E6=9D=83=E9=99=90=E5=AF=BC=E5=85=A5?= =?UTF-8?q?=E6=8E=A7=E5=88=B6=E6=9D=A5=E6=BA=90=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DevicePermissionsAssignToDeviceRequest.cs | 16 ++-------- .../Implements/DevicePermissionService.cs | 31 +++++++++---------- 2 files changed, 16 insertions(+), 31 deletions(-) diff --git a/Src/Dlhis.Basic/Device/Request/DevicePermissionsAssignToDeviceRequest.cs b/Src/Dlhis.Basic/Device/Request/DevicePermissionsAssignToDeviceRequest.cs index 790d94ce..fa17d4ce 100644 --- a/Src/Dlhis.Basic/Device/Request/DevicePermissionsAssignToDeviceRequest.cs +++ b/Src/Dlhis.Basic/Device/Request/DevicePermissionsAssignToDeviceRequest.cs @@ -31,23 +31,11 @@ public class DevicePermissionsAssignToDeviceRequest : IValidatableObject /// public bool IsDelete { get; set; } - /// - /// AssignType == AssignTypeEnumType.Department 需要传入 - /// - public string TenantId { get; set; } - public IEnumerable Validate(ValidationContext validationContext) { - if (AssignType == AssignTypeEnumType.Department) + if (AssignType != AssignTypeEnumType.User) { - if (TenantId.IsEmpty()) - { - yield return new ValidationResult("请明确具体的厂区", new[] { nameof(TenantId) }); - } - } - else if (AssignType == AssignTypeEnumType.Role) - { - yield return new ValidationResult("暂不支持角色分配", new[] { nameof(AssignType) }); + yield return new ValidationResult("仅支持导入档案人员", new[] { nameof(AssignType) }); } } } \ No newline at end of file diff --git a/Src/Dlhis.Basic/Device/Services/Implements/DevicePermissionService.cs b/Src/Dlhis.Basic/Device/Services/Implements/DevicePermissionService.cs index 72934e09..a9378d4f 100644 --- a/Src/Dlhis.Basic/Device/Services/Implements/DevicePermissionService.cs +++ b/Src/Dlhis.Basic/Device/Services/Implements/DevicePermissionService.cs @@ -92,38 +92,35 @@ public class DevicePermissionService : IDevicePermissionService public async Task AssignToUniqueAsync(DevicePermissionsAssignToDeviceRequest request) { - var tenantId = request.AssignType == AssignTypeEnumType.Department ? request.TenantId : _currentUser.GetStringTenantId(); - await GenerateDeviceTasksAsync(async () => { + var tenantId = _currentUser.GetStringTenantId(); + //删除当前匹配的基地权限 var p = await _dbContext.Queryable() .Where(x => x.UniqueType == request.UniqueType) .Where(x => x.UniqueValue == request.UniqueValue) .Where(x => x.AssignType == request.AssignType) - .Where(x => request.Values.Contains(x.AssignValue)) .Where(x => x.TenantId == tenantId) .ToListAsync(); - await _dbContext.DeleteReallyAsync(p); + await _dbContext.DeleteAsync(p); - if (!request.IsDelete) + //保存配置的权限 + if (request.Values.IsPresent()) { - //保存配置的权限 - if (request.Values.IsPresent()) + var devicePermissions = request.Values.Select(v => new DevicePermissionEntity { - var devicePermissions = request.Values.Select(v => new DevicePermissionEntity - { - AssignType = request.AssignType, - AssignValue = v, - UniqueType = request.UniqueType, - UniqueValue = request.UniqueValue, - TenantId = tenantId - }).ToList(); + UniqueType = request.UniqueType, + UniqueValue = request.UniqueValue, + AssignType = request.AssignType, + AssignValue = v, + TenantId = tenantId + }).ToList(); - await _dbContext.InsertAsync(devicePermissions); - } + await _dbContext.InsertAsync(devicePermissions); } + }, null); }