using Tiobon.Core.Controllers;
using Tiobon.Core.IServices;
using Tiobon.Core.Model;
using Tiobon.Core.Model.Models;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
namespace Tiobon.Core.Api.Controllers.Tenant;
///
/// 租户管理
///
[Produces("application/json")]
[Route("api/TenantManager")]
[Authorize]
public class TenantManagerController : BaseApiController
{
private readonly ITenantService _services;
public TenantManagerController(ITenantService services)
{
_services = services;
}
///
/// 获取全部租户
///
///
[HttpGet]
public async Task>> GetAll()
{
var data = await _services.Query();
return Success(data);
}
///
/// 获取租户信息
///
///
[HttpGet("{id}")]
public async Task> GetInfo(long id)
{
var data = await _services.QueryById(id);
return Success(data);
}
///
/// 新增租户信息
/// 此处只做演示,具体要以实际业务为准
///
///
[HttpPost]
public async Task Post(SysTenant tenant)
{
await _services.SaveTenant(tenant);
return Success();
}
///
/// 修改租户信息
/// 此处只做演示,具体要以实际业务为准
///
///
[HttpPut]
public async Task Put(SysTenant tenant)
{
await _services.SaveTenant(tenant);
return Success();
}
///
/// 删除租户
/// 此处只做演示,具体要以实际业务为准
///
///
[HttpDelete]
public async Task Delete(long id)
{
//是否删除租户库?
//要根据实际情况而定
//例如直接删除租户库、备份租户库到xx
await _services.DeleteById(id);
return Success();
}
}