| | |
| | | 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_EntityProName.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"; |
| | | |
| | | this.cmb_DataSource.DropDownStyle = ComboBoxStyle.DropDownList; |
| | |
| | | //ä¸é®çææææä»¶ |
| | | private void btn_CreateFile_Click(object sender, EventArgs e) |
| | | { |
| | | var genCodeRootPath = ""; |
| | | try |
| | | { |
| | | projectNamePrefix = this.tb_ProjectNamePrefix.Text; |
| | |
| | | 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();//å®ä½ç±»å¯¹è±¡å/表å«å |
| | |
| | | |
| | | 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], |
| | |
| | | //çæ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"; |
| | | #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 = InputModel_Generate.CreateQueryModelLText(param); |
| | | str_generate = InputQueryModel_Generate.CreateQueryModelLText(param); |
| | | tf = TextHelper.Export2File_V2(entityFilePath, $"Get{param.EntityName}Input.cs", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); |
| | | |
| | | //2ãçæ CreateDto æä»¶ |
| | |
| | | #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); |
| | | |
| | | |
| | | #endregion |
| | | |
| | | #region Contorller |
| | | |
| | | //10ãçæ Contorller æä»¶ |
| | | 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); |
| | | |
| | | |
| | | #endregion |
| | | |
| | | #region Domain |
| | | |
| | | //11ãçæ IRepository æä»¶ |
| | | 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); |
| | | |
| | | |
| | | #endregion |
| | | |
| | | #region EntityFrameworkCore |
| | | |
| | | //12ãçæ EfCoreRepository æä»¶ |
| | | 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); |
| | | |
| | | |
| | | |
| | | ////çæ OutputModel æä»¶ |
| | |
| | | } |
| | | //MessageBox.Show("çææä»¶æåï¼"); |
| | | //æåä¹åæå¼æä»¶å¤¹ |
| | | using (System.Diagnostics.Process.Start(this.tbPath.Text)) |
| | | using (System.Diagnostics.Process.Start(genCodeRootPath)) |
| | | { |
| | | |
| | | } |
| | |
| | | { |
| | | 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); |
| | | } |
| | | } |
| | | } |
| | |
| | | |
| | | private void MainForm_Load(object sender, EventArgs e) |
| | | { |
| | | tb_EntityProName.Enabled = false; |
| | | //tb_EntityProName.Enabled = false; |
| | | tb_FileName.Enabled = false; |
| | | tb_Modulelogo.Enabled = false; |
| | | tb_WCF_NameSpacePath.Enabled = true; |