😎修复库表结构可视化驼峰转下划线

This commit is contained in:
zuohuaijun 2024-11-06 10:48:13 +08:00
parent ca75a8c05a
commit 2d61649a55

View File

@ -49,6 +49,7 @@ public class SysDatabaseService : IDynamicApiController, ITransient
var visualTableList = new List<VisualTable>(); var visualTableList = new List<VisualTable>();
var visualColumnList = new List<VisualColumn>(); var visualColumnList = new List<VisualColumn>();
var columnRelationList = new List<ColumnRelation>(); var columnRelationList = new List<ColumnRelation>();
var dbOptions = App.GetOptions<DbConnectionOptions>().ConnectionConfigs.First(u => u.ConfigId.ToString() == SqlSugarConst.MainConfigId);
// 遍历所有实体获取所有库表结构 // 遍历所有实体获取所有库表结构
var random = new Random(); var random = new Random();
@ -71,7 +72,7 @@ public class SysDatabaseService : IDynamicApiController, ITransient
var visualColumn = new VisualColumn var visualColumn = new VisualColumn
{ {
TableName = columnInfo.DbTableName, TableName = columnInfo.DbTableName,
ColumnName = columnInfo.DbColumnName, ColumnName = dbOptions.DbSettings.EnableUnderLine ? UtilMethods.ToUnderLine(columnInfo.DbColumnName) : columnInfo.DbColumnName,
DataType = columnInfo.PropertyInfo.PropertyType.Name, DataType = columnInfo.PropertyInfo.PropertyType.Name,
DataLength = columnInfo.Length.ToString(), DataLength = columnInfo.Length.ToString(),
ColumnDescription = columnInfo.ColumnDescription, ColumnDescription = columnInfo.ColumnDescription,
@ -83,13 +84,14 @@ public class SysDatabaseService : IDynamicApiController, ITransient
{ {
var name1 = columnInfo.Navigat.GetName(); var name1 = columnInfo.Navigat.GetName();
var name2 = columnInfo.Navigat.GetName2(); var name2 = columnInfo.Navigat.GetName2();
var targetColumnName = string.IsNullOrEmpty(name2) ? "Id" : name2;
var relation = new ColumnRelation var relation = new ColumnRelation
{ {
SourceTableName = columnInfo.DbTableName, SourceTableName = columnInfo.DbTableName,
SourceColumnName = name1, SourceColumnName = dbOptions.DbSettings.EnableUnderLine ? UtilMethods.ToUnderLine(name1) : name1,
Type = columnInfo.Navigat.GetNavigateType() == NavigateType.OneToOne ? "ONE_TO_ONE" : "ONE_TO_MANY", Type = columnInfo.Navigat.GetNavigateType() == NavigateType.OneToOne ? "ONE_TO_ONE" : "ONE_TO_MANY",
TargetTableName = columnInfo.DbColumnName, TargetTableName = dbOptions.DbSettings.EnableUnderLine ? UtilMethods.ToUnderLine(columnInfo.DbColumnName) : columnInfo.DbColumnName,
TargetColumnName = string.IsNullOrEmpty(name2) ? "Id" : name2 TargetColumnName = dbOptions.DbSettings.EnableUnderLine ? UtilMethods.ToUnderLine(targetColumnName) : targetColumnName
}; };
columnRelationList.Add(relation); columnRelationList.Add(relation);
} }