From 01b99769af32e7de2d5f3ded5ce2f2bd3df526a5 Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周五, 09 5月 2025 08:16:39 +0800 Subject: [PATCH] 前端文件夹名称可配置 --- Weben_CMS专用代码生成器/Code/MainForm.cs | 361 +++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 345 insertions(+), 16 deletions(-) diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/MainForm.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/MainForm.cs" index 6ba8aff..a5b72b7 100644 --- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/MainForm.cs" +++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/MainForm.cs" @@ -8,6 +8,8 @@ using GenerateCode_WeiBen_WMS.DataBaseFactory; using GenerateCode_WeiBen_WMS.Const; using GenerateCode_WeiBen_WMS.Model; +using GenerateCode_WeiBen_WMS.Utility; +using System.Xml; namespace GenerateCode_GEBrilliantFactory { @@ -31,8 +33,14 @@ this.tb_WCF_NameSpacePath.Text = "HIAWms";//WCF椤圭洰鍛藉悕绌洪棿 this.tb_FileName.Text = "Xiangzi";//鏂囦欢鍓嶇紑鍚� this.tb_ChinaComment.Text = "鐗╂枡鍩虹淇℃伅琛�";//涓枃娉ㄩ噴 + this.tb_MenuName.Text = "鐗╂枡淇℃伅";//涓枃娉ㄩ噴 + this.tb_PageMenuInstanceName.Text = "wmsMaterial"; this.tb_CreatePerson.Text = "shaocx";//鍒涘缓浜� this.tb_EntityName.Text = "WmsMaterial";//瀹炰綋绫诲悕 + + this.tb_LikeQueryAttrs.Text = "'MaterialCode', 'MaterialName', 'Remark'"; + this.tb_LikeQueryAttrsName.Text = "璇疯緭鍏ョ墿鏂欑紪鐮�/鐗╂枡鍚嶇О/澶囨敞"; + //this.tb_EntityProName.Text = "wmsMaterial";//瀹炰綋绫诲璞″悕 this.tb_EnumList.Text = "PurchaseType|PurchaseTypeEnum|PurchaseTypeDesc,MaterialType|MaterialTypeEnum|MaterialTypeDesc,IsMainBranch|YesNoEnum|IsMainBranchDesc"; @@ -75,6 +83,7 @@ //涓�閿敓鎴愭墍鏈夋枃浠� private void btn_CreateFile_Click(object sender, EventArgs e) { + var genCodeRootPath = ""; try { projectNamePrefix = this.tb_ProjectNamePrefix.Text; @@ -97,12 +106,66 @@ string wcf_NameSpacePath = this.tb_WCF_NameSpacePath.Text.Trim();//WCF椤圭洰鍛藉悕绌洪棿 string filePrefixName = this.tb_FileName.Text.Trim();//鏂囦欢鍓嶇紑鍚� string modulelogo = this.tb_Modulelogo.Text.Trim();//妯″潡绠�鍐� + + + string _tb_DeleteAlertAttr = this.tb_DeleteAlertAttr.Text.Trim();//涓枃娉ㄩ噴 + if (_tb_DeleteAlertAttr == "") + { + MessageBox.Show("璇疯緭鍏� 鍒犻櫎鎻愮ず瀛楁锛�"); + this.tb_DeleteAlertAttr.Focus(); + return; + } + + string _tb_ValidateRepeatName = this.tb_ValidateRepeatName.Text.Trim();//涓枃娉ㄩ噴 + if (_tb_ValidateRepeatName == "") + { + MessageBox.Show("璇疯緭鍏� 閲嶅鎬ф牎楠屽瓧娈碉紒"); + this.tb_ValidateRepeatName.Focus(); + return; + } + + string _tb_LikeQueryAttrsName = this.tb_LikeQueryAttrsName.Text.Trim();//涓枃娉ㄩ噴 + if (_tb_LikeQueryAttrsName == "") + { + MessageBox.Show("璇疯緭鍏� 妯$硦鏌ヨ瀛楁鍚嶏紒"); + this.tb_LikeQueryAttrsName.Focus(); + return; + } + + string _tb_LikeQueryAttrs = this.tb_LikeQueryAttrs.Text.Trim();//涓枃娉ㄩ噴 + if (_tb_LikeQueryAttrs == "") + { + MessageBox.Show("璇疯緭鍏� 妯$硦鏌ヨ瀛楁锛�"); + this.tb_LikeQueryAttrs.Focus(); + return; + } + string chinaComment = this.tb_ChinaComment.Text.Trim();//涓枃娉ㄩ噴 + if (chinaComment == "") + { + MessageBox.Show("璇疯緭鍏� 琛ㄧ殑涓枃娉ㄨВ锛�"); + this.tb_ChinaComment.Focus(); + return; + } + string menuName = this.tb_MenuName.Text.Trim();//涓枃娉ㄩ噴 + if (menuName == "") + { + MessageBox.Show("璇疯緭鍏� 椤甸潰鑿滃崟鍚嶏紒"); + this.tb_MenuName.Focus(); + return; + } + string _tb_PageMenuInstanceName = this.tb_PageMenuInstanceName.Text.Trim();//涓枃娉ㄩ噴 + if (_tb_PageMenuInstanceName == "") + { + MessageBox.Show("璇疯緭鍏� 椤甸潰鑿滃崟瀵硅薄缂╁啓锛�"); + this.tb_PageMenuInstanceName.Focus(); + return; + } string createPerson = this.tb_CreatePerson.Text.Trim();//鍒涘缓浜� string entityName = this.tb_EntityName.Text.Trim();//瀹炰綋绫诲悕 string tableAlias = this.tb_EntityProName.Text.Trim();//瀹炰綋绫诲璞″悕/琛ㄥ埆鍚� string orderByName = this.tb_OrderBy.Text.Trim();//鎺掑簭瀛楁鍚嶇О - string routePrefix = this.tb_RoutePrefix.Text.Trim();//WCF璺敱鍓嶇紑 + string _tb_VueRootFolerName = this.tb_VueRootFolerName.Text.Trim();//WCF璺敱鍓嶇紑 string connStr = this.lbl_DataSource.Text.Trim();//鏁版嵁搴撹繛鎺ュ瓧绗︿覆 if (connStr == "") { @@ -122,10 +185,10 @@ this.tb_Primary.Focus(); return; } - if (routePrefix == "") + if (_tb_VueRootFolerName == "") { - MessageBox.Show("璇疯緭鍏CF璺敱鍓嶇紑锛�"); - this.tb_RoutePrefix.Focus(); + MessageBox.Show("璇疯緭鍏� 鍓嶇鏍规枃浠跺す鍚嶇О锛�"); + this.tb_VueRootFolerName.Focus(); return; } if (wcf_NameSpacePath == "") @@ -158,22 +221,44 @@ GenerateCodeParam param = new GenerateCodeParam() { + DeleteAlertAttr = CommonHelper.FirstLowercase(_tb_DeleteAlertAttr), Modulelogo = modulelogo, ChinaComment = chinaComment, + PageMenuName = menuName, + PageMenuInstanceName = _tb_PageMenuInstanceName, NameSpacePath = wcf_NameSpacePath, ColumnNameList = columnList, EntityName = entityName, - EntityInstanceName = tableAlias + EntityInstanceName = tableAlias, + LikeQueryAttrs = _tb_LikeQueryAttrs, + LikeQueryAttrsName = _tb_LikeQueryAttrsName, + ValidateRepeatName = this.tb_ValidateRepeatName.Text }; //澶勭悊鏋氫妇绫诲瀷 List<EnumModel> enumList = new List<EnumModel>(); var str_enumList = this.tb_EnumList.Text.Trim(); if (str_enumList.IndexOf(',') > -1) { + str_enumList = str_enumList.Replace("\n", ""); + str_enumList = str_enumList.Replace("\t", ""); + str_enumList = str_enumList.Replace("\r", ""); var arr_enumList = str_enumList.Split(','); foreach (var item in arr_enumList) { var arr_single = item.Split('|'); + enumList.Add(new EnumModel() + { + EnumAttrName = arr_single[0], + EnumType = arr_single[1], + EnumTypeDesc = arr_single[2] + }); + } + } + else + { + if (!string.IsNullOrEmpty(str_enumList)) + { + var arr_single = str_enumList.Split('|'); enumList.Add(new EnumModel() { EnumAttrName = arr_single[0], @@ -187,9 +272,11 @@ //鐢熸垚Model //CreateModelFile(columnList, tableName, filePrefixName, wcf_NameSpacePath, createPerson, chinaComment, entityName, modulelogo); //CreateModelParamFile(columnList, tableName, filePrefixName, wcf_NameSpacePath, createPerson, chinaComment, entityName, modulelogo); - + genCodeRootPath = tbPath.Text + @"\" + tb_WCF_NameSpacePath.Text.Trim(); + //var webFolerPath = (tb_WCF_NameSpacePath.Text.Trim() + "_Web").ToLower(); + var webFolerPath = _tb_VueRootFolerName; #region 瀹炰綋绫� - var entityFilePath = tbPath.Text + @"\server\src\CMS.Plugin." + tb_WCF_NameSpacePath.Text.Trim() + @".Application.Contracts\Dtos\" + tb_EntityName.Text.Trim(); + var entityFilePath = genCodeRootPath + @"\server\src\CMS.Plugin." + tb_WCF_NameSpacePath.Text.Trim() + @".Application.Contracts\Dtos\" + tb_EntityName.Text.Trim(); //1銆佺敓鎴� 鍒嗛〉鏌ヨ瀹炰綋 鏂囦欢 str_generate = InputQueryModel_Generate.CreateQueryModelLText(param); tf = TextHelper.Export2File_V2(entityFilePath, $"Get{param.EntityName}Input.cs", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); @@ -223,12 +310,12 @@ #region AppSerivice //8銆佺敓鎴� IAppService 鏂囦欢 - var appServiceFilePath = tbPath.Text + @"\server\src\CMS.Plugin." + tb_WCF_NameSpacePath.Text.Trim() + @".Application.Contracts\Services"; + var appServiceFilePath = genCodeRootPath + @"\server\src\CMS.Plugin." + tb_WCF_NameSpacePath.Text.Trim() + @".Application.Contracts\Services"; str_generate = IAppService_Generate.CreateText(param); tf = TextHelper.Export2File_V2(appServiceFilePath, $"I{param.EntityName}AppService.cs", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); //9銆佺敓鎴� AppService 鏂囦欢 - appServiceFilePath = tbPath.Text + @"\server\src\CMS.Plugin." + tb_WCF_NameSpacePath.Text.Trim() + @".Application\Implements"; + appServiceFilePath = genCodeRootPath + @"\server\src\CMS.Plugin." + tb_WCF_NameSpacePath.Text.Trim() + @".Application\Implements"; str_generate = AppService_Generate.CreateText(param); tf = TextHelper.Export2File_V2(appServiceFilePath, $"{param.EntityName}AppService.cs", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); @@ -238,7 +325,7 @@ #region Contorller //10銆佺敓鎴� Contorller 鏂囦欢 - var continerlllePath = tbPath.Text + @"\server\src\CMS.Plugin." + tb_WCF_NameSpacePath.Text.Trim() + @"\Controller"; + var continerlllePath = genCodeRootPath + @"\server\src\CMS.Plugin." + tb_WCF_NameSpacePath.Text.Trim() + @"\Controller"; str_generate = Controller_Generate.CreateText(param); tf = TextHelper.Export2File_V2(continerlllePath, $"{param.EntityName}Controller.cs", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); @@ -248,7 +335,7 @@ #region Domain //11銆佺敓鎴� IRepository 鏂囦欢 - var iRepositoryPath = tbPath.Text + @"\server\src\CMS.Plugin." + tb_WCF_NameSpacePath.Text.Trim() + @".Domain\" + tb_EntityName.Text.Trim(); ; + var iRepositoryPath = genCodeRootPath + @"\server\src\CMS.Plugin." + tb_WCF_NameSpacePath.Text.Trim() + @".Domain\" + tb_EntityName.Text.Trim(); ; str_generate = IRepository_Generate.CreateText(param); tf = TextHelper.Export2File_V2(iRepositoryPath, $"I{param.EntityName}Repository.cs", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); @@ -258,13 +345,128 @@ #region EntityFrameworkCore //12銆佺敓鎴� EfCoreRepository 鏂囦欢 - var efCoreRepositoryPath = tbPath.Text + @"\server\src\CMS.Plugin." + tb_WCF_NameSpacePath.Text.Trim() + @".EntityFrameworkCore\Repositories"; + var efCoreRepositoryPath = genCodeRootPath + @"\server\src\CMS.Plugin." + tb_WCF_NameSpacePath.Text.Trim() + @".EntityFrameworkCore\Repositories"; str_generate = EfCoreRepository_Generate.CreateText(param); tf = TextHelper.Export2File_V2(efCoreRepositoryPath, $"EfCore{param.EntityName}Repository.cs", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); #endregion + #region Web + var webRootPath = genCodeRootPath + @"\" + webFolerPath + @"\src\widgets\" + tb_EntityName.Text.Trim(); + + //13銆佺敓鎴� Index 鏂囦欢 + str_generate = Index_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath, $"index.ts", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + //14銆佺敓鎴� enum 鏂囦欢 + str_generate = enum_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath, $"enum.ts", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + + //15銆佺敓鎴� Controllers\File 鏂囦欢 + str_generate = File_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\Controllers", $"File.ts", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + //16銆佺敓鎴� Controllers\EntityMode 鏂囦欢 + str_generate = EntityMode_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\Controllers", $"{tb_EntityName.Text.Trim()}.ts", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + + //17銆佺敓鎴� Controllers\EntityModeDrawer 鏂囦欢 + str_generate = EntityModeDrawer_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\Controllers", $"{tb_EntityName.Text.Trim()}Drawer.tsx", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + //18銆佺敓鎴� Controllers\EntityModeQueryDrawer 鏂囦欢 + str_generate = EntityModeQueryDrawer_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\Controllers", $"{tb_EntityName.Text.Trim()}QueryDrawer.tsx", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + + //19銆佺敓鎴� type\type 鏂囦欢 + str_generate = type_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\type", $"type.d.ts", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + + //20銆佺敓鎴� Views\NameSpacePath 鏂囦欢 + str_generate = NameSpacePath_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\Views", $"{param.EntityName}.tsx", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + //21銆佺敓鎴� Views\NameSpacePath_module 鏂囦欢 + str_generate = NameSpacePath_module_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\Views", $"{param.EntityName}.module.scss", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + //22銆佺敓鎴� Views\NameSpacePath_Config 鏂囦欢 + str_generate = EntityNameClass_json_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\Views\config", $"{param.EntityName}.json", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + + //23銆佺敓鎴� Views\NameSpacePath_Config 鏂囦欢 + str_generate = EntityNameClass_module_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\Views\Pages\" + param.EntityName, $"{param.EntityName}.module.scss", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + //24銆佺敓鎴� Views\EntityNameClass妯℃澘 鏂囦欢 + str_generate = EntityNameClass_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\Views\Pages\" + param.EntityName, $"{param.EntityName}.tsx", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + //25銆佺敓鎴� Views\EntityNameClass_Config妯℃澘 鏂囦欢 + str_generate = EntityNameClass_Config_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\Views\Pages\" + param.EntityName, $"Config.ts", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + + //26銆佺敓鎴� Views\EntityNameClassDrawer_module_Generate 鏂囦欢 + str_generate = EntityNameClassDrawer_module_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\Views\Pages\Dialog\" + param.EntityName + "Drawer", param.EntityName + "Drawer" + $".module.scss", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + //27銆佺敓鎴� Views\EntityNameClassDrawer_Generate 鏂囦欢 + str_generate = EntityNameClassDrawer_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\Views\Pages\Dialog\" + param.EntityName + "Drawer", param.EntityName + "Drawer" + $".tsx", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + //28銆佺敓鎴� Views\EntityNameClassDrawer_module_Generate 鏂囦欢 + str_generate = EntityNameClassQueryDrawer_module_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\Views\Pages\Dialog\" + param.EntityName + "QueryDrawer", param.EntityName + "QueryDrawer" + $".module.scss", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + //29銆佺敓鎴� Views\EntityNameClassDrawer_Generate 鏂囦欢 + str_generate = EntityNameClassQueryDrawer_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\Views\Pages\Dialog\" + param.EntityName + "QueryDrawer", param.EntityName + "QueryDrawer" + $".tsx", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + + //30銆佺敓鎴� Views\EntityNameClassDrawer_Generate 鏂囦欢 + str_generate = Models_EntityNameClassQueryDrawer_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\Models", param.EntityName + "QueryDrawer" + $".ts", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + //31銆佺敓鎴� Views\EntityNameClassDrawer_Generate 鏂囦欢 + str_generate = Models_EntityNameClassDrawer_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\Models", param.EntityName + "Drawer" + $".ts", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + //32銆佺敓鎴� Views\EntityNameClassDrawer_Generate 鏂囦欢 + str_generate = Models_EntityNameClass_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\Models", param.EntityName + $".ts", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + + //33銆佺敓鎴� Views\EntityNameClassDrawer_Generate 鏂囦欢 + str_generate = Models_Service_EntityNameClassQueryDrawer_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\Models\Service", param.EntityName + "QueryDrawer" + $".ts", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + //34銆佺敓鎴� Views\EntityNameClassDrawer_Generate 鏂囦欢 + str_generate = Models_Service_EntityNameClassDrawer_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\Models\Service", param.EntityName + "Drawer" + $".ts", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + //35銆佺敓鎴� Views\EntityNameClassDrawer_Generate 鏂囦欢 + str_generate = Models_Service_EntityNameClass_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(webRootPath + @"\Models\Service", param.EntityName + $".ts", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + + #endregion + + + //36銆佺敓鎴� AutoMapperProfile 鏂囦欢 + var autoMapFilePath = genCodeRootPath + @"\server\src\CMS.Plugin." + tb_WCF_NameSpacePath.Text.Trim() + @".Application\MapperProfiles"; + str_generate = AutoMapperProfile_Generate.CreateText(param); + tf = TextHelper.Export2File_V2(autoMapFilePath, param.EntityName + $"AutoMapperProfile.cs", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); + + //37銆佺敓鎴� 瀵煎嚭妯℃澘Excel鏂囦欢 + List<ColumnModel> newColumnNameList = ListHelper.RemoveForPageTableListQueryAttributes(param.ColumnNameList); + ImportTemplteHelper.CreateImportTemplte(param, newColumnNameList, genCodeRootPath); ////鐢熸垚 OutputModel 鏂囦欢 @@ -330,7 +532,7 @@ } //MessageBox.Show("鐢熸垚鏂囦欢鎴愬姛锛�"); //鎴愬姛涔嬪悗鎵撳紑鏂囦欢澶� - using (System.Diagnostics.Process.Start(this.tbPath.Text)) + using (System.Diagnostics.Process.Start(genCodeRootPath)) { } @@ -381,12 +583,12 @@ { var moule_str = tableName.Substring(index + 1, tableName.Length - index - 1); this.tb_Modulelogo.Text = moule_str; - this.tb_EntityProName.Text = CommonHelper.TitleToLower(moule_str); + tb_PageMenuInstanceName.Text = this.tb_EntityProName.Text = CommonHelper.TitleToLower(moule_str); } else { this.tb_Modulelogo.Text = tableName; - this.tb_EntityProName.Text = CommonHelper.TitleToLower(tableName); + tb_PageMenuInstanceName.Text = this.tb_EntityProName.Text = CommonHelper.TitleToLower(tableName); } } } @@ -435,7 +637,7 @@ tb_FileName.Enabled = false; tb_Modulelogo.Enabled = false; tb_WCF_NameSpacePath.Enabled = true; - tb_RoutePrefix.Enabled = false; + tb_VueRootFolerName.Enabled = false; } private void cmb_DataSource_SelectedIndexChanged(object sender, EventArgs e) @@ -485,5 +687,132 @@ dataBaseEnum = (DataBaseEnum)Enum.Parse(typeof(DataBaseEnum), name); } + + private void btn_SelectFile_Click(object sender, EventArgs e) + { + OpenFileDialog fileDialog = new OpenFileDialog(); + fileDialog.Multiselect = true; + fileDialog.Title = "璇烽�夋嫨鏂囦欢"; + fileDialog.Filter = "鎵�鏈夋枃浠�(*txt*)|*.txt*"; //璁剧疆瑕侀�夋嫨鐨勬枃浠剁殑绫诲瀷 + if (fileDialog.ShowDialog() == DialogResult.OK) + { + string file = fileDialog.FileName;//杩斿洖鏂囦欢鐨勫畬鏁磋矾寰� + this.tb_FilePath.Text = file; + } + } + + private void tb_FilePath_TextChanged(object sender, EventArgs e) + { + try + { + string filePath = this.tb_FilePath.Text; + + string[] lines = File.ReadAllLines(filePath); + + // 鍒涘缓瀹炰綋绫诲璞� + GenerateCodeConfigParam entity = new GenerateCodeConfigParam(); + + // 瑙f瀽姣忎竴琛屽唴瀹瑰苟璧嬪�肩粰瀹炰綋绫诲睘鎬� + foreach (string line in lines) + { + if (line.Contains(":")) + { + string[] parts = line.Split(':'); + string propertyName = parts[0].Trim('[', ']'); + string propertyValue = parts[1].Trim(); + + // 鏍规嵁灞炴�у悕璧嬪�� + switch (propertyName) + { + case "琛ㄥ悕": + entity.琛ㄥ悕 = propertyValue; + break; + case "瀹炰綋绫诲悕": + entity.瀹炰綋绫诲悕 = propertyValue; + break; + case "瀹炰綋绫诲璞″悕": + entity.瀹炰綋绫诲璞″悕 = propertyValue; + break; + case "椤甸潰鑿滃崟鍚�": + entity.椤甸潰鑿滃崟鍚� = propertyValue; + break; + case "椤甸潰鑿滃崟瀵硅薄缂╁啓": + entity.椤甸潰鑿滃崟瀵硅薄缂╁啓 = propertyValue; + break; + case "琛ㄧ殑涓枃娉ㄨВ": + entity.琛ㄧ殑涓枃娉ㄨВ = propertyValue; + break; + case "閲嶅鎬ф牎楠屽瓧娈�": + entity.閲嶅鎬ф牎楠屽瓧娈� = propertyValue; + break; + case "鍒犻櫎鎻愮ず瀛楁": + entity.鍒犻櫎鎻愮ず瀛楁 = propertyValue; + break; + case "妯$硦鏌ヨ瀛楁": + entity.妯$硦鏌ヨ瀛楁 = propertyValue; + break; + case "妯$硦鏌ヨ瀛楁鍚�": + entity.妯$硦鏌ヨ瀛楁鍚� = propertyValue; + break; + case "椤圭洰鍛藉悕绌洪棿": + entity.椤圭洰鍛藉悕绌洪棿 = propertyValue; + break; + case "鏋氫妇绫诲瀷瀛楁闆嗗悎": + entity.鏋氫妇绫诲瀷瀛楁闆嗗悎 = propertyValue; + break; + case "鍓嶇鏍规枃浠跺す鍚嶇О": + entity.鍓嶇鏍规枃浠跺す鍚嶇О = propertyValue; + break; + } + } + } + + //缁欑晫闈㈣祴鍊� + this.tb_TableName.Text = "";//琛ㄥ悕 + this.tb_WCF_NameSpacePath.Text = "";//琛ㄥ悕 + this.tb_ChinaComment.Text = "";//琛ㄥ悕 + this.tb_MenuName.Text = "";//琛ㄥ悕 + this.tb_PageMenuInstanceName.Text = "";//琛ㄥ悕 + this.tb_EntityName.Text = "";//琛ㄥ悕 + + this.tb_LikeQueryAttrs.Text = "";//琛ㄥ悕 + this.tb_LikeQueryAttrsName.Text = "";//琛ㄥ悕 + + this.tb_EntityProName.Text = "";//琛ㄥ悕 + this.tb_EnumList.Text = "";//琛ㄥ悕 + this.tb_ValidateRepeatName.Text = "";//琛ㄥ悕 + this.tb_DeleteAlertAttr.Text = "";//琛ㄥ悕 + + this.tb_TableName.Text = entity.琛ㄥ悕;//琛ㄥ悕 + this.tb_WCF_NameSpacePath.Text = entity.椤圭洰鍛藉悕绌洪棿;//WCF椤圭洰鍛藉悕绌洪棿 + this.tb_ChinaComment.Text = entity.琛ㄧ殑涓枃娉ㄨВ;//涓枃娉ㄩ噴 + this.tb_MenuName.Text = entity.椤甸潰鑿滃崟鍚�; + this.tb_PageMenuInstanceName.Text = entity.椤甸潰鑿滃崟瀵硅薄缂╁啓; + this.tb_EntityName.Text = entity.瀹炰綋绫诲悕;//瀹炰綋绫诲悕 + + this.tb_LikeQueryAttrs.Text = entity.妯$硦鏌ヨ瀛楁; + this.tb_LikeQueryAttrsName.Text = entity.妯$硦鏌ヨ瀛楁鍚�; + + this.tb_EntityProName.Text = entity.瀹炰綋绫诲璞″悕;//瀹炰綋绫诲璞″悕 + this.tb_EnumList.Text = entity.鏋氫妇绫诲瀷瀛楁闆嗗悎; + this.tb_ValidateRepeatName.Text = entity.閲嶅鎬ф牎楠屽瓧娈�; + this.tb_DeleteAlertAttr.Text = entity.鍒犻櫎鎻愮ず瀛楁; + this.tb_VueRootFolerName.Text = entity.鍓嶇鏍规枃浠跺す鍚嶇О; + + } + catch (FileNotFoundException) + { + Console.WriteLine("閿欒: 鏂囦欢鏈壘鍒�!"); + } + catch (Exception ex) + { + Console.WriteLine($"閿欒: 鍙戠敓浜嗕竴涓湭鐭ラ敊璇�: {ex.Message}"); + } + } + + private void button1_Click_1(object sender, EventArgs e) + { + this.tb_FilePath.Text = ""; + } } } -- Gitblit v1.9.3