DBFirst生成优化

master
xiaochanghai 1 year ago
parent ec5ab6ee28
commit a50ccd0a7d
  1. 6
      Tiobon.Core.Api/Controllers/DbFirst/DbFirstController.cs
  2. 49
      Tiobon.Core.Api/Controllers/Ghra_GradeController.cs
  3. 3
      Tiobon.Core.Api/GlobalUsings.cs
  4. 44
      Tiobon.Core.Api/Tiobon.Core.xml
  5. 1
      Tiobon.Core.Api/appsettings.json
  6. 56
      Tiobon.Core.Common/Seed/FrameSeed.cs

@ -144,11 +144,13 @@ namespace Tiobon.Core.Controllers
/// DbFrist 根据数据库表名 生成整体框架,包含Model层(一般可用第一次生成) /// DbFrist 根据数据库表名 生成整体框架,包含Model层(一般可用第一次生成)
/// </summary> /// </summary>
/// <param name="ConnID">数据库链接名称</param> /// <param name="ConnID">数据库链接名称</param>
/// <param name="tableNames">需要生成的表名</param> /// <param name="tableName">需要生成的表名</param>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public MessageModel<string> GetAllFrameFilesByTableNames([FromBody]string[] tableNames, [FromQuery]string ConnID = null) public MessageModel<string> GetAllFrameFilesByTableNames([FromQuery] string tableName, [FromQuery] string ConnID = null)
{ {
string[] tableNames = new string[1];
tableNames[0] = tableName;
ConnID = ConnID == null ? MainDb.CurrentDbConnId.ToLower() : ConnID; ConnID = ConnID == null ? MainDb.CurrentDbConnId.ToLower() : ConnID;
var isMuti = BaseDBConfig.IsMulti; var isMuti = BaseDBConfig.IsMulti;

@ -1,11 +1,11 @@
using Microsoft.EntityFrameworkCore; namespace Tiobon.Core.Api.Controllers
using Tiobon.Core.DataAccess;
namespace Tiobon.Core.Api.Controllers
{ {
/// <summary>
/// Ghra_Grade
/// </summary>
[Route("api/[controller]/[action]")] [Route("api/[controller]/[action]")]
[ApiController] [ApiController]
[Authorize(Permissions.Name)] [Authorize(Permissions.Name), ApiExplorerSettings(GroupName = Grouping.GroupName_Ghra)]
public class Ghra_GradeController : ControllerBase public class Ghra_GradeController : ControllerBase
{ {
#region 初始化 #region 初始化
@ -23,21 +23,23 @@ namespace Tiobon.Core.Api.Controllers
#region 基础接口 #region 基础接口
#region 查询 #region 查询
/// <summary>
/// Ghra_Grade -- 根据条件查询数据
/// </summary>
/// <param name="filter">条件</param>
/// <returns></returns>
[HttpGet] [HttpGet]
public async Task<MessageModel<PageModel<Ghra_Grade>>> Get([FromFilter] QueryFilter filter) public async Task<MessageModel<PageModel<Ghra_Grade>>> Get([FromFilter] QueryFilter filter)
{ {
var response = await _ghra_GradeServices.QueryFilterPage(filter);
using var _context = ContextFactory.CreateContext(); return new MessageModel<PageModel<Ghra_Grade>>() { msg = "获取成功", success = true, response = response };
var list = await _context.Ghra_Grade.ToListAsync();
return new MessageModel<PageModel<Ghra_Grade>>()
{
msg = "获取成功",
success = true,
response = await _ghra_GradeServices.QueryFilterPage(filter)
};
} }
/// <summary>
/// Ghra_Grade -- 根据Id查询数据
/// </summary>
/// <param name="id">主键ID</param>
/// <returns></returns>
[HttpGet("{id}")] [HttpGet("{id}")]
public async Task<MessageModel<Ghra_Grade>> Get(string id) public async Task<MessageModel<Ghra_Grade>> Get(string id)
{ {
@ -51,6 +53,11 @@ namespace Tiobon.Core.Api.Controllers
#endregion #endregion
#region 新增 #region 新增
/// <summary>
/// Ghra_Grade -- 新增数据
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[HttpPost] [HttpPost]
public async Task<MessageModel<string>> Post([FromBody] Ghra_Grade request) public async Task<MessageModel<string>> Post([FromBody] Ghra_Grade request)
{ {
@ -68,7 +75,12 @@ namespace Tiobon.Core.Api.Controllers
} }
#endregion #endregion
#region 新增 #region 更新
/// <summary>
/// Ghra_Grade -- 更新数据
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[HttpPut] [HttpPut]
public async Task<MessageModel<string>> Put([FromBody] Ghra_Grade request) public async Task<MessageModel<string>> Put([FromBody] Ghra_Grade request)
{ {
@ -85,6 +97,11 @@ namespace Tiobon.Core.Api.Controllers
#endregion #endregion
#region 删除 #region 删除
/// <summary>
/// Ghra_Grade -- 删除数据
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[HttpDelete] [HttpDelete]
public async Task<MessageModel<string>> Delete(int id) public async Task<MessageModel<string>> Delete(int id)
{ {

@ -15,4 +15,5 @@ global using Tiobon.Core.Model;
global using Tiobon.Core.Model.Models; global using Tiobon.Core.Model.Models;
global using Tiobon.Core.Model.ViewModels; global using Tiobon.Core.Model.ViewModels;
global using Tiobon.Core.Repository.UnitOfWorks; global using Tiobon.Core.Repository.UnitOfWorks;
global using Microsoft.AspNetCore.Mvc; global using Tiobon.Core.SwaggerHelper;
global using static Tiobon.Core.Extensions.SwaggerSetup;

@ -116,12 +116,12 @@
<param name="tableNames">需要生成的表名</param> <param name="tableNames">需要生成的表名</param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Tiobon.Core.Controllers.DbFirstController.GetAllFrameFilesByTableNames(System.String[],System.String)"> <member name="M:Tiobon.Core.Controllers.DbFirstController.GetAllFrameFilesByTableNames(System.String,System.String)">
<summary> <summary>
DbFrist 根据数据库表名 生成整体框架,包含Model层(一般可用第一次生成) DbFrist 根据数据库表名 生成整体框架,包含Model层(一般可用第一次生成)
</summary> </summary>
<param name="ConnID">数据库链接名称</param> <param name="ConnID">数据库链接名称</param>
<param name="tableNames">需要生成的表名</param> <param name="tableName">需要生成的表名</param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Tiobon.Core.Controllers.MigrateController.DataMigrateFromOld2New"> <member name="M:Tiobon.Core.Controllers.MigrateController.DataMigrateFromOld2New">
@ -1216,11 +1216,51 @@
<param name="pid"></param> <param name="pid"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="T:Tiobon.Core.Api.Controllers.Ghra_GradeController">
<summary>
Ghra_Grade
</summary>
</member>
<member name="F:Tiobon.Core.Api.Controllers.Ghra_GradeController._ghra_GradeServices"> <member name="F:Tiobon.Core.Api.Controllers.Ghra_GradeController._ghra_GradeServices">
<summary> <summary>
服务器接口,因为是模板生成,所以首字母是大写的,自己可以重构下 服务器接口,因为是模板生成,所以首字母是大写的,自己可以重构下
</summary> </summary>
</member> </member>
<member name="M:Tiobon.Core.Api.Controllers.Ghra_GradeController.Get(Tiobon.Core.Common.QueryFilter)">
<summary>
Ghra_Grade -- 根据条件查询数据
</summary>
<param name="filter">条件</param>
<returns></returns>
</member>
<member name="M:Tiobon.Core.Api.Controllers.Ghra_GradeController.Get(System.String)">
<summary>
Ghra_Grade -- 根据Id查询数据
</summary>
<param name="id">主键ID</param>
<returns></returns>
</member>
<member name="M:Tiobon.Core.Api.Controllers.Ghra_GradeController.Post(Tiobon.Core.Model.Models.Ghra_Grade)">
<summary>
Ghra_Grade -- 新增数据
</summary>
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Tiobon.Core.Api.Controllers.Ghra_GradeController.Put(Tiobon.Core.Model.Models.Ghra_Grade)">
<summary>
Ghra_Grade -- 更新数据
</summary>
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Tiobon.Core.Api.Controllers.Ghra_GradeController.Delete(System.Int32)">
<summary>
Ghra_Grade -- 删除数据
</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="T:Tiobon.Core.Api.Controllers.NacosController"> <member name="T:Tiobon.Core.Api.Controllers.NacosController">
<summary> <summary>
服务管理 服务管理

@ -209,7 +209,6 @@
"AppConfigAlert": { "AppConfigAlert": {
"Enabled": true "Enabled": true
}, },
"ApiName": "Tiobon.Core",
"IdentityServer4": { "IdentityServer4": {
"Enabled": false, // false使jwttrue使Ids4 "Enabled": false, // false使jwttrue使Ids4
"AuthorizationUrl": "http://localhost:5004", // "AuthorizationUrl": "http://localhost:5004", //

@ -105,7 +105,6 @@ namespace Tiobon.Core.Common.Seed
/// <summary> /// <summary>
/// 功能描述:根据数据库表生产Controller层 /// 功能描述:根据数据库表生产Controller层
/// 作  者:Tiobon.Core
/// </summary> /// </summary>
/// <param name="sqlSugarClient"></param> /// <param name="sqlSugarClient"></param>
/// <param name="ConnId">数据库链接ID</param> /// <param name="ConnId">数据库链接ID</param>
@ -130,14 +129,20 @@ namespace Tiobon.Core.Common.Seed
{ {
IDbFirst = IDbFirst.Where(lstTableNames); IDbFirst = IDbFirst.Where(lstTableNames);
} }
var tableName = lstTableNames[0];
var groupName = tableName.Split('_')[0];
var ls = IDbFirst.IsCreateDefaultValue().IsCreateAttribute() var ls = IDbFirst.IsCreateDefaultValue().IsCreateAttribute()
.SettingClassTemplate(p => p = .SettingClassTemplate(p => p =
@"namespace " + strNameSpace + @" @"namespace " + strNameSpace + @"
{ {
/// <summary>
/// {ClassName}
/// </summary>
[Route(""api/[controller]/[action]"")] [Route(""api/[controller]/[action]"")]
[ApiController] [ApiController]
[Authorize(Permissions.Name)] [Authorize(Permissions.Name), ApiExplorerSettings(GroupName = Grouping.GroupName_" + groupName + @")]
public class {ClassName}Controller : ControllerBase public class {ClassName}Controller : ControllerBase
{ {
#region 初始化 #region 初始化
@ -155,22 +160,23 @@ namespace Tiobon.Core.Common.Seed
#region 基础接口 #region 基础接口
#region 查询 #region 查询
/// <summary>
/// {ClassName} -- 根据条件查询数据
/// </summary>
/// <param name=""filter"">条件</param>
/// <returns></returns>
[HttpGet] [HttpGet]
public async Task<MessageModel<PageModel<{ClassName}>>> Get(int page = 1, string key = """",int pageSize = 50) public async Task<MessageModel<PageModel<{ClassName}>>> Get([FromFilter] QueryFilter filter)
{ {
if (string.IsNullOrEmpty(key) || string.IsNullOrWhiteSpace(key)) var response = await _{ClassName}Services.QueryFilterPage(filter);
key = """"; return new MessageModel<PageModel<{ClassName}>>() { msg = """", success = true, response = response };
Expression<Func<{ClassName}, bool>> whereExpression = a => true;
return new MessageModel<PageModel<{ClassName}>>()
{
msg = """",
success = true,
response = await _{ClassName}Services.QueryPage(whereExpression, page, pageSize)
};
} }
/// <summary>
/// {ClassName} -- 根据Id查询数据
/// </summary>
/// <param name=""id"">主键ID</param>
/// <returns></returns>
[HttpGet(""{id}"")] [HttpGet(""{id}"")]
public async Task<MessageModel<{ClassName}>> Get(string id) public async Task<MessageModel<{ClassName}>> Get(string id)
{ {
@ -184,6 +190,11 @@ namespace Tiobon.Core.Common.Seed
#endregion #endregion
#region 新增 #region 新增
/// <summary>
/// {ClassName} -- 新增数据
/// </summary>
/// <param name=""request""></param>
/// <returns></returns>
[HttpPost] [HttpPost]
public async Task<MessageModel<string>> Post([FromBody] {ClassName} request) public async Task<MessageModel<string>> Post([FromBody] {ClassName} request)
{ {
@ -201,7 +212,12 @@ namespace Tiobon.Core.Common.Seed
} }
#endregion #endregion
#region 新增 #region 更新
/// <summary>
/// {ClassName} -- 更新数据
/// </summary>
/// <param name=""request""></param>
/// <returns></returns>
[HttpPut] [HttpPut]
public async Task<MessageModel<string>> Put([FromBody] {ClassName} request) public async Task<MessageModel<string>> Put([FromBody] {ClassName} request)
{ {
@ -218,6 +234,11 @@ namespace Tiobon.Core.Common.Seed
#endregion #endregion
#region 删除 #region 删除
/// <summary>
/// {ClassName} -- 删除数据
/// </summary>
/// <param name=""id""></param>
/// <returns></returns>
[HttpDelete] [HttpDelete]
public async Task<MessageModel<string>> Delete(int id) public async Task<MessageModel<string>> Delete(int id)
{ {
@ -258,7 +279,6 @@ namespace Tiobon.Core.Common.Seed
/// <summary> /// <summary>
/// 功能描述:根据数据库表生产Model层 /// 功能描述:根据数据库表生产Model层
/// 作  者:Tiobon.Core
/// </summary> /// </summary>
/// <param name="sqlSugarClient"></param> /// <param name="sqlSugarClient"></param>
/// <param name="ConnId">数据库链接ID</param> /// <param name="ConnId">数据库链接ID</param>
@ -324,7 +344,6 @@ namespace " + strNameSpace + @"
/// <summary> /// <summary>
/// 功能描述:根据数据库表生产IRepository层 /// 功能描述:根据数据库表生产IRepository层
/// 作  者:Tiobon.Core
/// </summary> /// </summary>
/// <param name="sqlSugarClient"></param> /// <param name="sqlSugarClient"></param>
/// <param name="ConnId">数据库链接ID</param> /// <param name="ConnId">数据库链接ID</param>
@ -381,7 +400,6 @@ namespace " + strNameSpace + @"
/// <summary> /// <summary>
/// 功能描述:根据数据库表生产IServices层 /// 功能描述:根据数据库表生产IServices层
/// 作  者:Tiobon.Core
/// </summary> /// </summary>
/// <param name="sqlSugarClient"></param> /// <param name="sqlSugarClient"></param>
/// <param name="ConnId">数据库链接ID</param> /// <param name="ConnId">数据库链接ID</param>
@ -438,7 +456,6 @@ namespace " + strNameSpace + @"
/// <summary> /// <summary>
/// 功能描述:根据数据库表生产 Repository 层 /// 功能描述:根据数据库表生产 Repository 层
/// 作  者:Tiobon.Core
/// </summary> /// </summary>
/// <param name="sqlSugarClient"></param> /// <param name="sqlSugarClient"></param>
/// <param name="ConnId">数据库链接ID</param> /// <param name="ConnId">数据库链接ID</param>
@ -500,7 +517,6 @@ namespace " + strNameSpace + @"
/// <summary> /// <summary>
/// 功能描述:根据数据库表生产 Services 层 /// 功能描述:根据数据库表生产 Services 层
/// 作  者:Tiobon.Core
/// </summary> /// </summary>
/// <param name="sqlSugarClient"></param> /// <param name="sqlSugarClient"></param>
/// <param name="ConnId">数据库链接ID</param> /// <param name="ConnId">数据库链接ID</param>

Loading…
Cancel
Save