Przeglądaj źródła

开发工具 库表管理 代码生成 添加 库名显示

Cyrus Zhou 11 miesięcy temu
rodzic
commit
0f46c1e917

+ 2 - 0
Admin.NET/Admin.NET.Application/Configuration/Database.json

@@ -9,6 +9,7 @@
       {
         //"ConfigId": "1300000000001", // 默认库标识-禁止修改
         "DbType": "Sqlite", // MySql、SqlServer、Sqlite、Oracle、PostgreSQL、Dm、Kdbndp、Oscar、MySqlConnector、Access、OpenGauss、QuestDB、HG、ClickHouse、GBase、Odbc、Custom
+        "DbNickName": "系统库",
         "ConnectionString": "DataSource=./Admin.NET.db", // Sqlite
         //"ConnectionString": "PORT=5432;DATABASE=xxx;HOST=localhost;PASSWORD=xxx;USER ID=xxx", // PostgreSQL
         //"ConnectionString": "Server=localhost;Database=xxx;Uid=xxx;Pwd=xxx;SslMode=None;AllowLoadLocalInfile=true;AllowUserVariables=true;", // MySql,
@@ -43,6 +44,7 @@
       //// 日志独立数据库配置
       //{
       //  "ConfigId": "1300000000002", // 日志库标识-禁止修改
+      //  "DbNickName": "日志库",
       //  "DbType": "Sqlite",
       //  "ConnectionString": "DataSource=./Admin.NET.Log.db", // 库连接字符串
       //  "DbSettings": {

+ 20 - 1
Admin.NET/Admin.NET.Core/Entity/SysCodeGen.cs

@@ -42,7 +42,25 @@ public partial class SysCodeGen : EntityBase
     [SugarColumn(ColumnDescription = "库定位器名", Length = 64)]
     [MaxLength(64)]
     public string? ConfigId { get; set; }
-
+    /// <summary>
+    /// 库名
+    /// </summary>
+    public string DbNickName
+    {
+        get
+        {
+            try
+            {
+                var dbOptions = App.GetConfig<DbConnectionOptions>("DbConnection", true);
+                var config = dbOptions.ConnectionConfigs.FirstOrDefault(m => m.ConfigId.ToString() == ConfigId);
+                return config.DbNickName;
+            }
+            catch (Exception)
+            {
+                return null;
+            }
+        }
+    }
     /// <summary>
     /// 数据库名(保留字段)
     /// </summary>
@@ -135,4 +153,5 @@ public partial class SysCodeGen : EntityBase
     /// </summary>
     [SugarColumn(IsIgnore = true)]
     public virtual List<TableUniqueConfigItem> TableUniqueList => string.IsNullOrWhiteSpace(TableUniqueConfig) ? null : JSON.Deserialize<List<TableUniqueConfigItem>>(TableUniqueConfig);
+
 }

+ 4 - 0
Admin.NET/Admin.NET.Core/Option/DbConnectionOptions.cs

@@ -41,6 +41,10 @@ public sealed class DbConnectionOptions : IConfigurableOptions<DbConnectionOptio
 /// </summary>
 public sealed class DbConnectionConfig : ConnectionConfig
 {
+    /// <summary>
+    /// 数据库名称
+    /// </summary>
+    public string DbNickName { get; set; }
     /// <summary>
     /// 数据库配置
     /// </summary>

+ 5 - 0
Admin.NET/Admin.NET.Core/Service/CodeGen/Dto/DatabaseOutput.cs

@@ -16,6 +16,11 @@ public class DatabaseOutput
     /// </summary>
     public string ConfigId { get; set; }
 
+    /// <summary>
+    /// 库名
+    /// </summary>
+    public string DbNickName { get; set; }
+
     /// <summary>
     /// 数据库类型
     /// </summary>

+ 1 - 1
Admin.NET/Admin.NET.Core/Service/CodeGen/SysCodeGenService.cs

@@ -51,7 +51,7 @@ public class SysCodeGenService : IDynamicApiController, ITransient
         return await _db.Queryable<SysCodeGen>()
             .WhereIF(!string.IsNullOrWhiteSpace(input.TableName), u => u.TableName.Contains(input.TableName.Trim()))
             .WhereIF(!string.IsNullOrWhiteSpace(input.BusName), u => u.BusName.Contains(input.BusName.Trim()))
-            .ToPagedListAsync(input.Page, input.PageSize);
+            .ToPagedListAsync(input.Page, input.PageSize); 
     }
 
     /// <summary>

+ 6 - 0
Admin.NET/Admin.NET.Core/Service/DataBase/Dto/DbTableVisual.cs

@@ -6,6 +6,12 @@
 
 namespace Admin.NET.Core.Service;
 
+public class VisualDb
+{
+    public string ConfigId { get; set; }
+    public string DbNickName { get; set; }
+
+}
 /// <summary>
 /// 库表可视化
 /// </summary>

+ 2 - 2
Admin.NET/Admin.NET.Core/Service/DataBase/SysDatabaseService.cs

@@ -32,9 +32,9 @@ public class SysDatabaseService : IDynamicApiController, ITransient
     /// </summary>
     /// <returns></returns>
     [DisplayName("获取库列表")]
-    public List<string> GetList()
+    public List<VisualDb> GetList()
     {
-        return App.GetOptions<DbConnectionOptions>().ConnectionConfigs.Select(u => u.ConfigId.ToString()).ToList();
+        return App.GetOptions<DbConnectionOptions>().ConnectionConfigs.Select(u => new VisualDb { ConfigId = u.ConfigId.ToString(), DbNickName = u.DbNickName }).ToList();
     }
 
     /// <summary>

+ 1 - 1
Web/src/views/approvalFlow/component/editFormDialog.vue

@@ -12,7 +12,7 @@
 					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
 						<el-form-item label="库定位器" prop="configId" :rules="[{ required: true, message: '库定位器不能为空', trigger: 'blur' }]">
 							<el-select v-model="state.ruleForm.configId" placeholder="库名" filterable @change="dbChanged()" class="w100">
-								<el-option v-for="item in state.dbData" :key="item.configId" :label="item.configId" :value="item.configId" />
+								<el-option v-for="item in state.dbData" :key="item.configId" :label="item.dbNickName" :value="item.configId" />
 							</el-select>
 						</el-form-item>
 					</el-col>

+ 1 - 1
Web/src/views/system/codeGen/component/editCodeGenDialog.vue

@@ -12,7 +12,7 @@
 					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
 						<el-form-item label="库定位器" prop="configId" :rules="[{ required: true, message: '请选择库定位器', trigger: 'blur' }]">
 							<el-select v-model="state.ruleForm.configId" placeholder="库名" filterable @change="dbChanged()" class="w100">
-								<el-option v-for="item in state.dbData" :key="item.configId" :label="item.configId" :value="item.configId" />
+								<el-option v-for="item in state.dbData" :key="item.configId" :label="item.dbNickName" :value="item.configId" />
 							</el-select>
 						</el-form-item>
 					</el-col>

+ 1 - 1
Web/src/views/system/codeGen/component/joinTableDialog.vue

@@ -12,7 +12,7 @@
 					<el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
 						<el-form-item label="库定位器" prop="fkConfigId" :rules="[{ required: true, message: '库不能为空', trigger: 'blur' }]">
 							<el-select v-model="state.ruleForm.fkConfigId" placeholder="库名" filterable clearable @change="DbChanged()" class="w100">
-								<el-option v-for="item in state.dbData" :key="item.configId" :label="item.configId" :value="item.configId" />
+								<el-option v-for="item in state.dbData" :key="item.configId" :label="item.dbNickName" :value="item.configId" />
 							</el-select>
 						</el-form-item>
 					</el-col>

+ 1 - 0
Web/src/views/system/codeGen/index.vue

@@ -24,6 +24,7 @@
 			<el-table :data="state.tableData" style="width: 100%" v-loading="state.loading" border>
 				<el-table-column type="index" label="序号" width="55" align="center" />
 				<el-table-column prop="configId" label="库定位器" align="center" show-overflow-tooltip />
+				<el-table-column prop="dbNickName" label="库名" align="center" show-overflow-tooltip />
 				<el-table-column prop="tableName" label="表名称" align="center" show-overflow-tooltip />
 				<el-table-column prop="busName" label="业务名" align="center" show-overflow-tooltip />
 				<el-table-column prop="nameSpace" label="命名空间" align="center" show-overflow-tooltip />

+ 1 - 1
Web/src/views/system/database/index.vue

@@ -4,7 +4,7 @@
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true" v-loading="state.loading">
 				<el-form-item label="库名">
 					<el-select v-model="state.configId" placeholder="库名" filterable @change="handleQueryTable">
-						<el-option v-for="item in state.dbData" :key="item" :label="item" :value="item" />
+						<el-option v-for="item in state.dbData" :key="item.configId" :label="item.dbNickName" :value="item.configId" />
 					</el-select>
 				</el-form-item>
 				<el-form-item label="表名">