76 lines
2.1 KiB
C#
76 lines
2.1 KiB
C#
using LFlow.Base.Interfaces;
|
|
using LFlow.Base.Utils;
|
|
using LFlow.Permission.Model;
|
|
using LFlow.Permission.Service;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using Serilog;
|
|
|
|
namespace LFlow.Permission.Controller
|
|
{
|
|
/// <summary>
|
|
/// 权限控制
|
|
/// </summary>
|
|
public class PermissionController : BaseController
|
|
{
|
|
/// <summary>
|
|
/// 权限服务
|
|
/// </summary>
|
|
private IPermissionService service;
|
|
/// <summary>
|
|
/// 日志
|
|
/// </summary>
|
|
private ILogger logger;
|
|
|
|
/// <summary>
|
|
/// 构造函数
|
|
/// </summary>
|
|
/// <param name="service"></param>
|
|
/// <param name="logger"></param>
|
|
public PermissionController(IPermissionService service, ILogger logger)
|
|
|
|
{
|
|
this.service = service;
|
|
this.logger = logger;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 查询权限
|
|
/// </summary>
|
|
/// <param name="pageSize"></param>
|
|
/// <param name="pageIndex"></param>
|
|
/// <returns></returns>
|
|
[HttpGet]
|
|
public async Task<PagedApiResult<List<PermissionDto>>> GetAll(int pageSize, int pageIndex)
|
|
{
|
|
var total = 0;
|
|
var list = await service.GetPermissionListAsync(pageIndex, pageSize, ref total);
|
|
return new PagedApiResult<List<PermissionDto>>
|
|
{
|
|
Data = list,
|
|
TotalCount = total
|
|
};
|
|
}
|
|
/// <summary>
|
|
/// 添加程序权限
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
[HttpGet]
|
|
public async Task<ApiResult<List<PermissionDto>>> GetProgPermissions()
|
|
{
|
|
var result = await service.GetPermissions();
|
|
return Success(result);
|
|
}
|
|
/// <summary>
|
|
/// Test method to throw an exception
|
|
/// </summary>
|
|
/// <returns>ApiResult with an error message</returns>
|
|
[HttpGet]
|
|
public Task<ApiResult<object>> TestException()
|
|
{
|
|
// var a = 0 / 1;
|
|
throw new Exception("Test exception");
|
|
// return Task.FromResult(Success((object)"Success"));
|
|
}
|
|
}
|
|
}
|