30 lines
1.1 KiB
C#
30 lines
1.1 KiB
C#
using Dlhis.Basic.Organization.Services;
|
|
using Dlhis.Entity.Basic.Entity;
|
|
using Dlhis.Entity.Basic.Enums;
|
|
using Dlhis.Entity.Sys.Entities;
|
|
|
|
namespace Dlhis.Basic.Device.Services.Implements.PermissionAnalyze;
|
|
|
|
[Service(PermissionAnalyzeConstants.Tenant)]
|
|
public class TenantPermissionAnalyzeService : BasePermissionAnalyzeService
|
|
{
|
|
private readonly IServiceProvider _serviceProvider;
|
|
|
|
/// <inheritdoc />
|
|
public TenantPermissionAnalyzeService(IServiceProvider serviceProvider) : base(serviceProvider)
|
|
{
|
|
_serviceProvider = serviceProvider;
|
|
}
|
|
|
|
/// <inheritdoc />
|
|
protected override async Task<List<string>> GetGainfoNosAsync(string assignValue)
|
|
{
|
|
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(setting.EnableOutsourceDown == false, x => x.Type != GainfoUserTypeEnumType.Outsource)
|
|
.Select(x => x.No).ToListAsync();
|
|
}
|
|
} |