using Dlhis.Sys.Identity.Request; using Dlhis.Sys.Identity.Response; using Dlhis.Sys.Identity.Services; using Kurisu.AspNetCore.DataAccess.Dto; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; namespace Dlhis.Sys.Identity.Controllers; /// /// 租户 /// [Authorize] [Route("api/[controller]")] [ApiController] public class TenantsController : ControllerBase { private readonly ITenantService _tenantService; public TenantsController(ITenantService tenantService) { _tenantService = tenantService; } /// /// 获取租户分页 /// /// /// [HttpGet("page")] public async Task> GetPageAsync([FromQuery] TenantPageRequest request) { return await _tenantService.GetPageAsync(request); } /// /// 获取所有租户 /// /// [HttpGet("list")] public async Task> GetListAsync() { var tenants = await _tenantService.GetListAsync(); return tenants; } /// /// 内部使用接口 /// /// [AllowAnonymous] [HttpGet("list-internal")] public async Task> GetListInternalAsync() { return await _tenantService.GetListAsync(); } /// /// 租户树 /// /// [HttpGet("tree")] public async Task> GetTreeAsync() { return await _tenantService.GetTreeAsync(); } /// /// 获取租户 /// /// [HttpGet("single")] public async Task GetTenantByCode(string code) { return await _tenantService.GetTenantByCode(code); } /// /// 保存租户 /// /// /// [HttpPost("save")] public async Task SaveTenantAsync(TenantSaveRequest request) { await _tenantService.SaveTenantAsync(request); } /// /// 获取我管理的租户 /// /// [HttpGet("my")] public async Task> GetMyTenants() { return await _tenantService.GetMyTenantsAsync(); } }