using System; using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Logging; using MediatR; namespace @@@ { [Route("Admin/[Controller]/[Action]")] [ApiGroup(ApiGroupNames.Admin)] public class CMS_Tablename_Controller : BaseController { private readonly ILogger logger; private readonly IMediator mediator; public CMS_Tablename_Controller(ILogger logger, IMediator mediator) { this.logger = logger; this.mediator = mediator; } /// /// 获取分页列表 /// [HttpGet] public async Task GetList([FromQuery]_Tablename_GetListQuery query) { Result_Obj result = new Result_Obj(); try { var queryDTO = await this.mediator.Send(query); result.Code = 1; result.Result = queryDTO; } catch (MyException mce) { result.Message = mce.Message; } catch (Exception ce) { logger.LogError(ce.Message); result.Message = "系统错误,请稍后重新"; } return new JsonResult(result); } /// /// 获取单个实体 /// [HttpGet("{id}")] public async Task GetOne([FromRoute]_Tablename_GetOneQuery query) { Result_Obj result = new Result_Obj(); try { var queryDTO = await this.mediator.Send(query); result.Code = 1; result.Result = queryDTO; } catch (MyException mce) { result.Message = mce.Message; } catch (Exception ce) { logger.LogError(ce.Message); result.Message = "系统错误,请稍后重新"; } return new JsonResult(result); } /// /// 获取多个实体 /// [HttpGet] public async Task GetMany([FromQuery]_Tablename_GetManyQuery query) { Result_Obj result = new Result_Obj(); try { var queryDTOs = await this.mediator.Send(query); result.Code = 1; result.Result = queryDTOs; } catch (MyException mce) { result.Message = mce.Message; } catch (Exception ce) { logger.LogError(ce.Message); result.Message = "系统错误,请稍后重新"; } return new JsonResult(result); } /// /// 创建单个实体 /// [HttpPost] public async Task Create([FromBody]_Tablename_CreateQuery query) { Result_Obj result = new Result_Obj(); try { var queryDTO = await this.mediator.Send(query); result.Code = 1; result.Result = queryDTO; } catch (MyException mce) { result.Message = mce.Message; } catch (Exception ce) { logger.LogError(ce.Message); result.Message = "系统错误,请稍后重新"; } return new JsonResult(result); } /// /// 修改单个实体 /// [HttpPut("{id}")] public async Task Update([FromRoute]int id, [FromBody]_Tablename_UpdateQuery query) { Result_Obj result = new Result_Obj(); try { var queryDTO = await this.mediator.Send(query); result.Code = 1; result.Result = queryDTO; } catch (MyException mce) { result.Message = mce.Message; } catch (Exception ce) { logger.LogError(ce.Message); result.Message = "系统错误,请稍后重新"; } return new JsonResult(result); } /// /// 删除单个实体 /// [HttpDelete("{id}")] public async Task Delete([FromRoute]_Tablename_DeleteQuery query) { Result_Obj result = new Result_Obj(); try { var queryDTO = await this.mediator.Send(query); result.Code = 1; result.Result = queryDTO; } catch (MyException mce) { result.Message = mce.Message; } catch (Exception ce) { logger.LogError(ce.Message); result.Message = "系统错误,请稍后重新"; } return new JsonResult(result); } /// /// 删除多个实体 /// [HttpDelete] public async Task DeleteMany([FromBody]_Tablename_DeleteManyQuery query) { Result_Obj result = new Result_Obj(); try { var queryDTO = await this.mediator.Send(query); result.Code = 1; result.Result = queryDTO.ids; } catch (MyException mce) { result.Message = mce.Message; } catch (Exception ce) { logger.LogError(ce.Message); result.Message = "系统错误,请稍后重新"; } return new JsonResult(result); } /// /// 修改多个实体 - 重置排序 (只是一个例子) /// [HttpPut] public async Task ResetOrderNum([FromQuery]int[] ids, [FromBody]_Tablename_ResetOrderNumQuery query) { Result_Obj result = new Result_Obj(); try { query.ids = ids; var queryDTO = await this.mediator.Send(query); result.Code = 1; result.Result = queryDTO.ids; } catch (MyException mce) { result.Message = mce.Message; } catch (Exception ce) { logger.LogError(ce.Message); result.Message = "系统错误,请稍后重新"; } return new JsonResult(result); } } }