fix 用户组分配问题
This commit is contained in:
@@ -158,7 +158,7 @@ public class GainfoGroupService : IGainfoGroupService
|
||||
var devices = await _dbContext.Queryable<DeviceEntity>().Where(x => deviceCodes.Contains(x.Code)).ToListAsync();
|
||||
|
||||
var userTenantDeviceCodes = usersToDelete.IsPresent() && dps.Exists(x => x.AssignType != AssignTypeEnumType.Tenant)
|
||||
? await _devicePermissionAnalyzeService.GetUserAssignDeviceCodesWithTypeInTenantAsync(beforeUserNos.Union(presentUserNos).ToList(), null, groupCode.ToString(), AssignTypeEnumType.Group)
|
||||
? await _devicePermissionAnalyzeService.GetUserAssignDeviceCodesWithTypeInTenantAsync(beforeUserNos.Union(presentUserNos).ToList())
|
||||
: new Dictionary<string, IEnumerable<TenantAssignTypeDeviceCode>>();
|
||||
|
||||
var addTasks = new List<DeviceTaskEntity>();
|
||||
@@ -167,7 +167,13 @@ public class GainfoGroupService : IGainfoGroupService
|
||||
{
|
||||
foreach (var item in usersToDelete)
|
||||
{
|
||||
var myDeviceCodes = userTenantDeviceCodes[item].SelectMany(x => x.AssignTypes).SelectMany(x => x.Codes);
|
||||
var permissions = userTenantDeviceCodes[item].ToList();
|
||||
foreach (var permission in permissions)
|
||||
{
|
||||
permission.AssignTypes = permission.AssignTypes.Where(p => !gainfoGroupCodes.Contains(p.AssignValue)).ToList();
|
||||
}
|
||||
|
||||
var myDeviceCodes = permissions.SelectMany(x => x.AssignTypes).SelectMany(x => x.Codes);
|
||||
if (myDeviceCodes.Any(x => x == device.Code))
|
||||
{
|
||||
continue;
|
||||
|
||||
Reference in New Issue
Block a user