fix 增加设备类型
This commit is contained in:
@@ -57,7 +57,7 @@ public abstract class BasePermissionAnalyzeService : IPermissionAnalyzeService
|
||||
var devicesToAdd = await DbContext.Queryable<DeviceEntity>().Where(x => codesToAdd.Contains(x.Code)).Distinct().ToListAsync();
|
||||
var devicesToDelete = await DbContext.Queryable<DeviceEntity>().Where(x => codesToDelete.Contains(x.Code)).Distinct().ToListAsync();
|
||||
|
||||
var gainfoNos = await GetGainfoNosAsync(request.GetActualAssignValue());
|
||||
var gainfoNos = await GetGainfoNosAsync(request.GetActualAssignValue(), request.Type);
|
||||
|
||||
var userTenantDeviceCodes = devicesToDelete.IsPresent() && request.AssignType != AssignTypeEnumType.Tenant
|
||||
? await _devicePermissionAnalyzeService.GetUserAssignDeviceCodesWithTypeInTenantAsync(gainfoNos, request.UniqueType, request.GetActualAssignValue(), request.AssignType)
|
||||
@@ -120,8 +120,9 @@ public abstract class BasePermissionAnalyzeService : IPermissionAnalyzeService
|
||||
/// 获取分配当前类型关联的用户
|
||||
/// </summary>
|
||||
/// <param name="assignValue"></param>
|
||||
/// <param name="deviceType"></param>
|
||||
/// <returns></returns>
|
||||
protected abstract Task<List<string>> GetGainfoNosAsync(string assignValue);
|
||||
protected abstract Task<List<string>> GetGainfoNosAsync(string assignValue, DeviceTypeEnumType deviceType);
|
||||
|
||||
|
||||
//************************************************************************************************************************
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using Dlhis.Entity.Basic.Entity;
|
||||
using Dlhis.Entity.Device.Enums;
|
||||
|
||||
namespace Dlhis.Basic.Device.Services.Implements.PermissionAnalyze;
|
||||
|
||||
@@ -11,7 +12,7 @@ public class DepartmentPermissionAnalyzeService : BasePermissionAnalyzeService
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override async Task<List<string>> GetGainfoNosAsync(string assignValue)
|
||||
protected override async Task<List<string>> GetGainfoNosAsync(string assignValue, DeviceTypeEnumType deviceType)
|
||||
{
|
||||
var data = assignValue.Split(":");
|
||||
var factory = data[0];
|
||||
|
||||
@@ -1,17 +1,19 @@
|
||||
using Dlhis.Entity.Basic.Entity;
|
||||
using Dlhis.Entity.Device.Enums;
|
||||
|
||||
namespace Dlhis.Basic.Device.Services.Implements.PermissionAnalyze;
|
||||
|
||||
[Service(PermissionAnalyzeConstants.Group)]
|
||||
public class GroupPermissionAnalyzeService : BasePermissionAnalyzeService
|
||||
{
|
||||
|
||||
/// <inheritdoc />
|
||||
public GroupPermissionAnalyzeService(IServiceProvider serviceProvider) : base(serviceProvider)
|
||||
{
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override async Task<List<string>> GetGainfoNosAsync(string assignValue)
|
||||
protected override async Task<List<string>> GetGainfoNosAsync(string assignValue, DeviceTypeEnumType deviceType)
|
||||
{
|
||||
var code = Guid.Parse(assignValue);
|
||||
|
||||
@@ -23,8 +25,10 @@ public class GroupPermissionAnalyzeService : BasePermissionAnalyzeService
|
||||
.Select(x => x.UserNo)
|
||||
.Distinct()
|
||||
.ToListAsync();
|
||||
|
||||
|
||||
return await DbContext.Queryable<GainfoEntity>().Where(x => gainfoUserNos.Contains(x.No)).Select(x => x.No).ToListAsync();
|
||||
|
||||
return await DbContext.Queryable<GainfoEntity>()
|
||||
.Where(x => gainfoUserNos.Contains(x.No))
|
||||
.Select(x => x.No)
|
||||
.ToListAsync();
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
using Dlhis.Basic.Organization.Services;
|
||||
using Dlhis.Entity.Basic.Entity;
|
||||
using Dlhis.Entity.Basic.Enums;
|
||||
using Dlhis.Entity.Device.Enums;
|
||||
using Dlhis.Entity.Sys.Entities;
|
||||
|
||||
namespace Dlhis.Basic.Device.Services.Implements.PermissionAnalyze;
|
||||
@@ -17,13 +18,14 @@ public class TenantPermissionAnalyzeService : BasePermissionAnalyzeService
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override async Task<List<string>> GetGainfoNosAsync(string assignValue)
|
||||
protected override async Task<List<string>> GetGainfoNosAsync(string assignValue, DeviceTypeEnumType deviceType)
|
||||
{
|
||||
var setting = await _serviceProvider.GetService<IFactorySettingService>().GetFactorySettingAsync(assignValue, false);
|
||||
|
||||
return await DbContext.Queryable<GainfoEntity>()
|
||||
.Where(x => x.Factory == assignValue)
|
||||
.Where(x => x.Type != GainfoUserTypeEnumType.External)
|
||||
.WhereIF(deviceType != DeviceTypeEnumType.Door, x => x.Type != GainfoUserTypeEnumType.Outsource)
|
||||
.WhereIF(setting.EnableOutsourceDown == false, x => x.Type != GainfoUserTypeEnumType.Outsource)
|
||||
.Select(x => x.No).ToListAsync();
|
||||
}
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
using Dlhis.Entity.Device.Enums;
|
||||
|
||||
namespace Dlhis.Basic.Device.Services.Implements.PermissionAnalyze;
|
||||
|
||||
[Service(PermissionAnalyzeConstants.User)]
|
||||
@@ -9,7 +11,7 @@ public class UserPermissionAnalyzeService : BasePermissionAnalyzeService
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override async Task<List<string>> GetGainfoNosAsync(string assignValue)
|
||||
protected override async Task<List<string>> GetGainfoNosAsync(string assignValue, DeviceTypeEnumType deviceType)
|
||||
{
|
||||
return await Task.FromResult(new List<string> { assignValue });
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user