68 lines
2.2 KiB
C#
68 lines
2.2 KiB
C#
using Dlhis.Basic.Device.Dtos;
|
|
using Dlhis.Basic.Device.Request;
|
|
using Dlhis.Basic.Device.Response;
|
|
using Dlhis.Basic.Organization.Dto;
|
|
using Dlhis.Entity.Device.Enums;
|
|
using Kurisu.AspNetCore.DataAccess.Dto;
|
|
|
|
namespace Dlhis.Basic.Device.Services;
|
|
|
|
public interface IDevicePermissionService : IScopeDependency
|
|
{
|
|
/// <summary>
|
|
/// 保存设备权限
|
|
/// </summary>
|
|
/// <param name="request"></param>
|
|
/// <returns></returns>
|
|
Task<DevicePermissionAssignResponse> AssignAsync(DevicePermissionSaveRequest request);
|
|
|
|
/// <summary>
|
|
/// 分配到设备
|
|
/// </summary>
|
|
/// <param name="request"></param>
|
|
/// <returns></returns>
|
|
Task AssignToUniqueAsync(DevicePermissionsAssignToDeviceRequest request);
|
|
|
|
/// <summary>
|
|
/// 获取分配的权限
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
Task<List<Guid>> GetAssignmentsAsync(DeviceGetAssignmentsRequest request);
|
|
|
|
|
|
Task<List<GainfoDto>> GetAssignmentUniqueAsync(DeviceGetAssignmentUniquesRequest request);
|
|
|
|
Task<Dictionary<string, List<UserTenantDeviceCodeDto>>> GetUserDevicePermissionsAsync(string code);
|
|
|
|
|
|
/// <summary>
|
|
/// 生成下发任务
|
|
/// </summary>
|
|
/// <param name="func"></param>
|
|
/// <param name="userNos"></param>
|
|
/// <returns></returns>
|
|
Task<DevicePermissionAssignResponse> GenerateDeviceTasksAsync(Func<Task> func, List<string> userNos);
|
|
|
|
|
|
/// <summary>
|
|
/// 生成下发任务(主动生成)
|
|
/// </summary>
|
|
/// <param name="userNo"></param>
|
|
/// <param name="taskType"></param>
|
|
/// <param name="source"></param>
|
|
/// <returns></returns>
|
|
Task GenerateDeviceTasksAsync(string userNo, DeviceTaskEnumType taskType, DeviceTaskSourceEnumType source);
|
|
|
|
/// <summary>
|
|
/// 获取用户所有设备权限
|
|
/// </summary>
|
|
/// <param name="userNo"></param>
|
|
/// <returns></returns>
|
|
Task<List<Guid>> GetAssignDeviceCodesAsync(string userNo);
|
|
|
|
Task<PermissionUsersInfoDto> GetPermissionUsersInfoAsync(List<string> userNos);
|
|
|
|
Task<int> ReGeneratePermissionUsersInfoAsync(PermissionUsersInfoDto beforeDto);
|
|
|
|
Task<Pagination<DeviceGainfoResponse>> GetGainfoPageByDeviceAsync(DeviceWithGainfoRequest request);
|
|
} |