using New_College.IServices; using New_College.Model; using New_College.Model.Models; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using System; using System.Linq.Expressions; using System.Threading.Tasks; namespace New_College.Api.Controllers { [Route("api/[controller]/[action]")] [ApiController] [Authorize(Permissions.Name)] public class Sys_TenantController : ControllerBase { /// /// 服务器接口,因为是模板生成,所以首字母是大写的,自己可以重构下 /// private readonly ISys_TenantServices _sys_TenantServices; public Sys_TenantController(ISys_TenantServices Sys_TenantServices) { _sys_TenantServices = Sys_TenantServices; } [HttpGet] public async Task>> Get(int page = 1, string key = "", int intPageSize = 50) { if (string.IsNullOrEmpty(key) || string.IsNullOrWhiteSpace(key)) { key = ""; } Expression> whereExpression = a => a.Id > 0; return new MessageModel>() { msg = "获取成功", success = true, response = await _sys_TenantServices.QueryPage(whereExpression, page, intPageSize) }; } [HttpGet("{id}")] public async Task> Get(int id = 0) { return new MessageModel() { msg = "获取成功", success = true, response = await _sys_TenantServices.QueryById(id) }; } [HttpPost] public async Task> Post([FromBody] Sys_Tenant request) { var data = new MessageModel(); var id = await _sys_TenantServices.Add(request); data.success = id > 0; if (data.success) { data.response = id.ObjToString(); data.msg = "添加成功"; } return data; } [HttpPut] public async Task> Put([FromBody] Sys_Tenant request) { var data = new MessageModel(); if (request.Id > 0) { data.success = await _sys_TenantServices.Update(request); if (data.success) { data.msg = "更新成功"; data.response = request?.Id.ObjToString(); } } return data; } [HttpDelete("{id}")] public async Task> Delete(int id = 0) { var data = new MessageModel(); if (id > 0) { var detail = await _sys_TenantServices.QueryById(id); detail.IsDelete = true; if (detail != null) { data.success = await _sys_TenantServices.Update(detail); if (data.success) { data.msg = "删除成功"; data.response = id.ObjToString(); } } } return data; } } }