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);
}