using Vo; using Microsoft.AspNetCore.Mvc; using Model; using Services; using Model.Base; using Vo.Admin; using Mapster; using Infrastructure; using Dto.Admin; using Util; namespace Controllers.Admin { /// /// DatabaseInfo)Controller /// // [ApiExplorerSettings(GroupName = "DatabaseInfo")] public class DatabaseInfoController : BaseController { private readonly IDatabaseInfoService _DatabaseInfoService; private readonly IDatabaseTableService _DatabaseTableService; private readonly IDatabaseFieldService _DatabaseFieldService; public DatabaseInfoController(IDatabaseInfoService DatabaseInfoService, IDatabaseTableService DatabaseTableService, IDatabaseFieldService DatabaseFieldService) { _DatabaseInfoService = DatabaseInfoService; _DatabaseTableService = DatabaseTableService; _DatabaseFieldService = DatabaseFieldService; } /// 分页参数 /// /// 列表 /// /// 分页对象 /// 参数请求体 /// 列表 [HttpGet] [Route("/v1/omega_source/DatabaseInfo/getDatabaseInfoList")] public IActionResult getDatabaseInfoList([FromQuery] PagerInfo page, [FromQuery] DatabaseInfo param) { var response = _DatabaseInfoService.getDatabaseInfoList(page, param); return SUCCESS(response); } /// /// 详情 /// /// 参数请求体 /// 详情 [HttpGet] [Route("/v1/omega_source/DatabaseInfo/getDatabaseInfoQuery")] public IActionResult getDatabaseInfoQuery([FromQuery] DatabaseInfo param) { var response = _DatabaseInfoService.GetFirst(m => m.id == param.id).Adapt(); return SUCCESS(response); } /// /// 添加 /// /// 参数请求体 /// 添加 [HttpPost] [Route("/v1/omega_source/DatabaseInfo/addDatabaseInfo")] public IActionResult addDatabaseInfo([FromBody] DatabaseInfo param) { var modal = param.Adapt().ToCreate(HttpContext); var response = _DatabaseInfoService.InsertReturnIdentity(modal); return SUCCESS(response); } /// /// 修改 /// /// 参数请求体 /// 修改 [HttpPut] [Route("/v1/omega_source/DatabaseInfo/updateDatabaseInfo")] public IActionResult updateDatabaseInfo([FromBody] DatabaseInfo param) { var modal = param.Adapt().ToCreate(HttpContext); var response = _DatabaseInfoService.Update(modal, true); return SUCCESS(response); } /// /// 删除 /// /// ID /// 删除 [HttpDelete] [Route("/v1/omega_source/DatabaseInfo/deleteDatabaseInfo/{id}")] public IActionResult deleteDatabaseInfo(int id) { var response = _DatabaseInfoService.Delete(id); return SUCCESS(response); } /// /// 生成 /// /// 参数请求体 /// 生成 [HttpPut] [Route("/v1/omega_source/DatabaseInfo/makeDatabaseInfo")] public IActionResult makeDatabaseInfo([FromBody] MakeDatabaseInfoDto param) { TokenModel loginUser = JwtUtil.GetLoginUser(HttpContext); var tables = _DatabaseTableService.GetList(m => m.databaseId == param.id); var fields = _DatabaseFieldService.GetList(m => m.databaseId == param.id); _DatabaseInfoService.makeDatabaseInfo(param, tables, fields, loginUser); return SUCCESS("ok"); } /// /// 克隆已有库 /// /// 参数请求体 /// 克隆已有库 [HttpPost] [Route("/v1/omega_source/DatabaseInfo/copyDatabaseInfo")] public IActionResult copyDatabaseInfo([FromBody] CopyDatabaseInfoDto param) { return SUCCESS("ok"); } } }