From 7690be43e84bea722fc458aac26aa70d9e22de00 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期五, 26 一月 2024 14:06:42 +0800 Subject: [PATCH] 修改代码生成逻辑~ --- JavaCode/FrmEtown.cs | 57 +++++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 45 insertions(+), 12 deletions(-) diff --git a/JavaCode/FrmEtown.cs b/JavaCode/FrmEtown.cs index aa966e7..2b5a8f7 100644 --- a/JavaCode/FrmEtown.cs +++ b/JavaCode/FrmEtown.cs @@ -26,12 +26,12 @@ public FrmEtown() { InitializeComponent(); - this.Load += new System.EventHandler(this.FrmMyBatisPlus_Load); + this.Load += new System.EventHandler(this.FrmEtown_Load); } - private void FrmMyBatisPlus_Load(object sender, EventArgs e) + private void FrmEtown_Load(object sender, EventArgs e) { - _dbHelper = new PostgreHelper(DbEnum.langfang); + _dbHelper = new PostgreHelper(DbEnum.etown); } #endregion @@ -113,7 +113,7 @@ { try { - string path = Path.Combine(baseDir, "EtownTemplate\\Mapper"); + string path = Path.Combine(baseDir, "Result\\Mapper"); List<string> names = GetTabList(); foreach (string name in names) @@ -134,7 +134,7 @@ { try { - string path = Path.Combine(baseDir, "EtownTemplate\\Entity"); + string path = Path.Combine(baseDir, "Result\\Entity"); List<string> names = GetTabList(); foreach (string name in names) @@ -167,7 +167,11 @@ string entityName = shortName + "Entity"; string ns = this.txtTabPrefix.Text.Trim(); - string bak = string.IsNullOrWhiteSpace(tabs[0].desc) ? shortName : tabs[0].desc.Replace("琛�", ""); + string bak = shortName; + if (!string.IsNullOrEmpty(tabs[0].desc)) bak = tabs[0].desc.Replace("琛�", ""); + + List<SysDict> dicts = SelectSysDicts(tabName); + if (dicts != null) bak = dicts[0].descr; string javaFile = "Mapper.java"; string xml = File.ReadAllText(Path.Combine(baseDir, "EtownTemplate\\" + javaFile)); @@ -198,8 +202,12 @@ string entityName = shortName + "Entity"; string ns = this.txtTabPrefix.Text.Trim(); - string bak = string.IsNullOrWhiteSpace(tabs[0].desc) ? shortName : tabs[0].desc.Replace("琛�", ""); long uid = (long)Math.Floor((new Random()).NextDouble() * 1000000000000000000D); + + string bak = shortName; + if (!string.IsNullOrEmpty(tabs[0].desc)) bak = tabs[0].desc.Replace("琛�", ""); + List<SysDict> dicts = SelectSysDicts(tabName); + if (dicts != null) bak = dicts[0].descr; string javaFile = "Entity.java"; string xml = File.ReadAllText(Path.Combine(baseDir, "EtownTemplate\\" + javaFile)); @@ -213,6 +221,7 @@ .Replace("{date}", DateTime.Now.ToString("yyyy-MM-dd")); StringBuilder sb = new StringBuilder(); + sb.Append("\r\n public " + entityName + "() {\r\n }\r\n"); foreach (TabInfo ti in tabs) { string type = GetJavaType(ti); @@ -225,10 +234,15 @@ sb.Append("\r\n"); string colName = NameConvert(ti.col, false); - if ("references" == colName) sb.Append(" @TableField(value = \"\\\"references\\\"\")").Append("\r\n"); + //if ("references" == colName) sb.Append(" @TableField(value = \"\\\"references\\\"\")").Append("\r\n"); + + SysDict dict = FindSysDict(dicts, ti.col); + if (null != dict && !string.IsNullOrEmpty(dict.alias)) + { + sb.Append(" @ApiModelProperty(value = \"" + dict.alias.Trim() + "\")\r\n"); + } sb.Append(" private " + type + " " + colName + ";\r\n"); } - sb.Append("\r\n public " + entityName + "() {\r\n }\r\n"); foreach (TabInfo ti in tabs) { @@ -254,8 +268,8 @@ { try { - string mapperPath = Path.Combine(baseDir, "EtownTemplate\\Mapper"); - string entityPath = Path.Combine(baseDir, "EtownTemplate\\Entity"); + string mapperPath = Path.Combine(baseDir, "Result\\Mapper"); + string entityPath = Path.Combine(baseDir, "Result\\Entity"); List<string> names = GetTabList(); foreach (string name in names) @@ -265,7 +279,7 @@ GenerateEntity(entityPath, name, tabs); } - string path = Path.Combine(baseDir, "EtownTemplate"); + string path = Path.Combine(baseDir, "Result"); OpenFolder(path); } catch (Exception ex) @@ -293,6 +307,25 @@ #endregion #region 鍏叡鏂规硶 + private List<SysDict> SelectSysDicts(string table) + { + string[] strs = table.Split(new char[] { '.' }); + string sql = string.Format("select id,ns||'.'||tab table, descr, field, alias, type from se.sys_dict where ns='{0}' and tab='{1}' order by orderid", strs[0], strs[1]); + + DataTable dt = _dbHelper.GetDataTable(sql, null); + + List<SysDict> list = ModelHandler.FillModel<SysDict>(dt); + + return null == list || list.Count == 0 ? null : list; + } + + private SysDict FindSysDict(List<SysDict> list, string field) + { + IEnumerable<SysDict> rs = from sd in list where sd.field == field select sd; + + return rs.FirstOrDefault(); + } + private List<string> GetTabList() { List<string> list = new List<string>(); -- Gitblit v1.9.3