MilliSim/backend/MilliSim.Api/Services/IAuthorizationService.cs

23 lines
1.0 KiB
C#

using MilliSim.Common.Dtos;
using MilliSim.Common.Models;
namespace MilliSim.Services;
/// <summary>
/// 授权服务接口(客户级授权:对客户授权后,该客户能运行所有项目)
/// </summary>
public interface IAuthorizationService
{
Task<ApiResponse<PagedResult<AuthorizationDto>>> GetAuthorizationsAsync(AuthorizationQueryRequest request);
Task<ApiResponse<AuthorizationDto>> GetAuthorizationByIdAsync(long id);
Task<ApiResponse<AuthorizationDto>> CreateAuthorizationAsync(CreateAuthorizationRequest request);
Task<ApiResponse> BatchAuthorizeAsync(BatchAuthorizationRequest request);
Task<ApiResponse<AuthorizationDto>> RenewAuthorizationAsync(long id, int days);
Task<ApiResponse> CancelAuthorizationAsync(long id);
/// <summary>
/// 检查用户是否有任何有效授权(客户级授权,不检查项目)
/// </summary>
Task<ApiResponse<bool>> CheckAuthorizationAsync(long userId);
Task<ApiResponse<List<AuthorizationDto>>> GetMyAuthorizationsAsync();
}