fix 权限导入控制来源类型

This commit is contained in:
2024-06-24 16:57:06 +08:00
parent 6d773cb0e1
commit d1d2334a84
2 changed files with 16 additions and 31 deletions

View File

@@ -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<DevicePermissionEntity>()
.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);
}