feat 获取设备权限人员接口
This commit is contained in:
@@ -70,6 +70,18 @@ public class DevicePermissionsController : ControllerBase
|
||||
{
|
||||
return await _devicePermissionService.GetAssignmentsAsync(request.UniqueType, request.AssignType, request.AssignValue);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 当前类型的权限分配
|
||||
/// </summary>
|
||||
/// <param name="request"></param>
|
||||
/// <returns></returns>
|
||||
[DataPermission]
|
||||
[HttpGet("assignments-unique")]
|
||||
public async Task<List<GainfoDto>> GetAssignmentUniqueAsync([FromQuery] DeviceGetAssignmentUniquesRequest request)
|
||||
{
|
||||
return await _devicePermissionService.GetAssignmentUniqueAsync(request);
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -27,4 +27,18 @@ public class DeviceGetAssignmentsRequest
|
||||
/// 设备类型
|
||||
/// </summary>
|
||||
public DeviceTypeEnumType Type { get; set; }
|
||||
}
|
||||
|
||||
public class DeviceGetAssignmentUniquesRequest
|
||||
{
|
||||
/// <summary>
|
||||
/// 权限分配类型 DeviceAssignmentTypeEnumType
|
||||
/// </summary>
|
||||
[EnumDataType(typeof(DeviceAssignmentTypeEnumType))]
|
||||
public DeviceAssignmentTypeEnumType UniqueType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public Guid UniqueValue { get; set; }
|
||||
}
|
||||
@@ -34,6 +34,8 @@ public interface IDevicePermissionService : IScopeDependency
|
||||
/// <returns></returns>
|
||||
Task<List<Guid>> GetAssignmentsAsync(DeviceAssignmentTypeEnumType uniqueType, AssignTypeEnumType assignType, string assignValue);
|
||||
|
||||
Task<List<GainfoDto>> GetAssignmentUniqueAsync(DeviceGetAssignmentUniquesRequest request);
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 生成下发任务
|
||||
|
||||
@@ -180,6 +180,26 @@ public class DevicePermissionService : IDevicePermissionService
|
||||
return result.FirstOrDefault(x => x.Tenant == _currentUser.GetStringTenantId())?.Codes;
|
||||
}
|
||||
|
||||
|
||||
public async Task<List<GainfoDto>> GetAssignmentUniqueAsync(DeviceGetAssignmentUniquesRequest request)
|
||||
{
|
||||
var nos = await _dbContext.Queryable<DevicePermissionEntity>()
|
||||
.Where(x => x.UniqueType == request.UniqueType)
|
||||
.Where(x => x.UniqueValue == request.UniqueValue)
|
||||
.Where(x => x.AssignType == AssignTypeEnumType.User)
|
||||
.Select(x => x.AssignValue)
|
||||
.ToListAsync();
|
||||
|
||||
return await _dbContext.Queryable<GainfoEntity>().Where(x => nos.Contains(x.No)).Select(x => new GainfoDto
|
||||
{
|
||||
Id = x.Id,
|
||||
Code = x.Code,
|
||||
Name = x.Name,
|
||||
Workplace = x.Workplace,
|
||||
Factory = x.Factory
|
||||
}).ToListAsync();
|
||||
}
|
||||
|
||||
public async Task GenerateDeviceTasksAsync(Func<Task> func, List<string> userNos)
|
||||
{
|
||||
var tenantId = _currentUser.GetStringTenantId();
|
||||
|
||||
Reference in New Issue
Block a user