schangxiang@126.com
2025-05-11 f12cbfe9cba26c1a0e3abf1fe09a3c9cd9586a81
优化 代码生成器
已修改10个文件
103 ■■■■ 文件已修改
Weben_CMS专用代码生成器/Code/App.config 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Weben_CMS专用代码生成器/Code/File/GenerateCodeConfigParamFiles/出入库单据.txt 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Weben_CMS专用代码生成器/Code/File/GenerateCodeConfigParamFiles/出入库单据详情.txt 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Weben_CMS专用代码生成器/Code/Generate/Entity/InputQueryModel_Generate.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Weben_CMS专用代码生成器/Code/MainForm.Designer.cs 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Weben_CMS专用代码生成器/Code/MainForm.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Weben_CMS专用代码生成器/Code/Model/GenerateCodeParam.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Weben_CMS专用代码生成器/Code/Templete/Entity/InputQueryModel模板.txt 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Weben_CMS专用代码生成器/Code/Templete/Web/Controllers/EntityModeQueryDrawer模板.txt 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Weben_CMS专用代码生成器/Code/Utility/StructStrHelper.cs 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Weben_CMSרÓôúÂëÉú³ÉÆ÷/Code/App.config
@@ -1,9 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <connectionStrings>
    <add name="Shao_本地WmsMysql" connectionString="Server=localhost;Database=cms.plugin.pipelinelems;Uid=root;Pwd=123abc.com;" />
    <add name="本地_MySql_CMS" connectionString="Server=localhost;Database=07a6b2f4bbb04e8bb23a9f17a4a769c2_project;Uid=root;Pwd=123abc.com;" />
      <add name="ZS_本地WmsMysql" connectionString="Server=localhost;Database=cms.plugin.hiawms;Uid=root;Pwd=123abc.com;" />
    <add name="Shao_本地WmsMysql" connectionString="Server=localhost;Database=cms.plugin.pipelinelems;Uid=root;Pwd=123abc.com;" />
    <!--  <add name="LA22012_武汉牧野_生产库_伟本环境" connectionString="Data Source=10.10.40.166;Initial Catalog=WHMY_Prod_Test;Persist Security Info=True;User ID=sa;Password=123abc.com" /> 
    <add name="LA22012_武汉牧野_生产库_26测试环境" connectionString="Data Source=172.27.96.26;Initial Catalog=WHMY_Prod_Test;Persist Security Info=True;User ID=sa;Password=MJC!2022@wms" />
    <add name="LA22012_武汉牧野_备件库_伟本环境" connectionString="Data Source=10.10.40.166;Initial Catalog=WHMY_Admin.NET;Persist Security Info=True;User ID=sa;Password=123abc.com" />
Weben_CMSרÓôúÂëÉú³ÉÆ÷/Code/File/GenerateCodeConfigParamFiles/³öÈë¿âµ¥¾Ý.txt
@@ -9,6 +9,6 @@
[模糊查询字段]:'OrderNo', 'MaterialNo', 'MaterialBatch'
[模糊查询字段名]:请输入单据号/物料编号/批次
[项目命名空间]:HIAWms
[枚举类型字段集合]:OrderStatus|OrderStatusEnum|OrderStatusDesc,OrderType|OrderTypeEnum|OrderTypeDesc,StockType|StockTypeEnum|StockTypeDesc
[枚举类型字段集合]:OrderStatus,OrderStatusEnum&OrderType,OrderTypeEnum&StockType,StockTypeEnum
[前端根文件夹名称]:web
[排序]:CreationTime
Weben_CMSרÓôúÂëÉú³ÉÆ÷/Code/File/GenerateCodeConfigParamFiles/³öÈë¿âµ¥¾ÝÏêÇé.txt
@@ -9,6 +9,6 @@
[模糊查询字段]:'OrderNo', 'MaterialNo', 'MaterialId'
[模糊查询字段名]:请输入单据号/物料编号/物料ID
[项目命名空间]:HIAWms
[枚举类型字段集合]:OrderType|OrderTypeEnum|OrderTypeDesc
[枚举类型字段集合]:OrderType,OrderTypeEnum
[前端根文件夹名称]:web
[排序]:CreationTime
Weben_CMSרÓôúÂëÉú³ÉÆ÷/Code/Generate/Entity/InputQueryModel_Generate.cs
@@ -26,7 +26,7 @@
            List<ColumnModel> newColumnNameList = ListHelper.OnlyRemoveId(param.ColumnNameList);
            for (int i = 0; i < newColumnNameList.Count; ++i)
            {
                attrString += StructStrHelper.GenerateAttributeForQueryModel(newColumnNameList[i]);
                attrString += StructStrHelper.GenerateAttributeForQueryModel(newColumnNameList[i], param);
                attrString += StructStrHelper.GenerateAttributeForQueryModelMode(newColumnNameList[i]);
            }
            str = str.Replace("$QueryAttributes$", attrString);
Weben_CMSרÓôúÂëÉú³ÉÆ÷/Code/MainForm.Designer.cs
@@ -60,6 +60,7 @@
            this.lbl_DataSource = new System.Windows.Forms.Label();
            this.cmb_DataSource = new System.Windows.Forms.ComboBox();
            this.groupBox2 = new System.Windows.Forms.GroupBox();
            this.label1 = new System.Windows.Forms.Label();
            this.tb_DeleteAlertAttr = new System.Windows.Forms.TextBox();
            this.label25 = new System.Windows.Forms.Label();
            this.tb_ValidateRepeatName = new System.Windows.Forms.TextBox();
@@ -78,7 +79,6 @@
            this.tb_FilePath = new System.Windows.Forms.TextBox();
            this.btn_SelectFile = new System.Windows.Forms.Button();
            this.button1 = new System.Windows.Forms.Button();
            this.label1 = new System.Windows.Forms.Label();
            this.groupBox1.SuspendLayout();
            this.groupBox2.SuspendLayout();
            this.SuspendLayout();
@@ -402,6 +402,16 @@
            this.groupBox2.TabStop = false;
            this.groupBox2.Text = "自定义配置";
            // 
            // label1
            //
            this.label1.AutoSize = true;
            this.label1.ForeColor = System.Drawing.Color.Red;
            this.label1.Location = new System.Drawing.Point(976, 185);
            this.label1.Name = "label1";
            this.label1.Size = new System.Drawing.Size(245, 12);
            this.label1.TabIndex = 66;
            this.label1.Text = "如果为空,系统默认所有字符串的展示列查询";
            //
            // tb_DeleteAlertAttr
            // 
            this.tb_DeleteAlertAttr.Location = new System.Drawing.Point(552, 246);
@@ -503,10 +513,10 @@
            this.label19.AutoSize = true;
            this.label19.Location = new System.Drawing.Point(318, 346);
            this.label19.Name = "label19";
            this.label19.Size = new System.Drawing.Size(563, 12);
            this.label19.Size = new System.Drawing.Size(485, 12);
            this.label19.TabIndex = 53;
            this.label19.Text = "PurchaseType|PurchaseTypeEnum|PurchaseTypeDesc,MaterialType|MaterialTypeEnum|Mate" +
    "rialTypeDesc";
            this.label19.Text = "PurchaseType,PurchaseTypeEnum&MaterialType,MaterialTypeEnum&IsMainBranch,YesNoEnu" +
    "m";
            // 
            // label18
            // 
@@ -553,16 +563,6 @@
            this.button1.Text = "清空导入路径!!";
            this.button1.UseVisualStyleBackColor = true;
            this.button1.Click += new System.EventHandler(this.button1_Click_1);
            //
            // label1
            //
            this.label1.AutoSize = true;
            this.label1.ForeColor = System.Drawing.Color.Red;
            this.label1.Location = new System.Drawing.Point(976, 185);
            this.label1.Name = "label1";
            this.label1.Size = new System.Drawing.Size(245, 12);
            this.label1.TabIndex = 66;
            this.label1.Text = "如果为空,系统默认所有字符串的展示列查询";
            // 
            // MainForm
            // 
Weben_CMSרÓôúÂëÉú³ÉÆ÷/Code/MainForm.cs
@@ -43,7 +43,7 @@
            this.tb_LikeQueryAttrsName.Text = "请输入物料编码/物料名称/备注";
            //this.tb_EntityProName.Text = "wmsMaterial";//实体类对象名
            this.tb_EnumList.Text = "PurchaseType|PurchaseTypeEnum|PurchaseTypeDesc,MaterialType|MaterialTypeEnum|MaterialTypeDesc,IsMainBranch|YesNoEnum|IsMainBranchDesc";
            this.tb_EnumList.Text = "PurchaseType,PurchaseTypeEnum&MaterialType,MaterialTypeEnum&IsMainBranch,YesNoEnum";
            this.cmb_DataSource.DropDownStyle = ComboBoxStyle.DropDownList;
            List<ListItem> itemList = CommonHelper.GetDataSources();
Weben_CMSרÓôúÂëÉú³ÉÆ÷/Code/Model/GenerateCodeParam.cs
@@ -90,6 +90,10 @@
        /// æžšä¸¾å±žæ€§å
        /// </summary>
        public string EnumAttrName { get; set; }
        /// <summary>
        /// æžšä¸¾ç±»åž‹
        /// </summary>
        public string EnumType { get; set; }
        public string EnumTypeDesc { get; set; }
Weben_CMSרÓôúÂëÉú³ÉÆ÷/Code/Templete/Entity/InputQueryModelÄ£°å.txt
@@ -1,3 +1,4 @@
using CMS.Plugin.$NameSpacePath$.Domain.Shared.Enums;
using CmsQueryExtensions.Extension;
using Volo.Abp.Application.Dtos;
Weben_CMSרÓôúÂëÉú³ÉÆ÷/Code/Templete/Web/Controllers/EntityModeQueryDrawerÄ£°å.txt
@@ -75,7 +75,7 @@
    },
  })
  /**
   * æ·»åŠ çš„form字段
   * é«˜çº§æŸ¥è¯¢çš„form字段
   */
  const formItems = reactive([
    $PageAddFormAttributes_Query$
Weben_CMSרÓôúÂëÉú³ÉÆ÷/Code/Utility/StructStrHelper.cs
@@ -237,6 +237,7 @@
                attrStr += "        /// " + columnModel.Description + "\n";
                attrStr += "        /// </summary>\n";
                var findEnumObj = param.EnumList.Where(x => x.EnumAttrName == attr).FirstOrDefault();
                DataTypeEnum myDataType = (DataTypeEnum)Enum.Parse(typeof(DataTypeEnum), "dt_" + columnModel.DataType);
                switch (myDataType)
                {
@@ -259,12 +260,21 @@
                    case DataTypeEnum.dt_tinyint:
                    case DataTypeEnum.dt_bit:
                        if (columnModel.IsNullable) { str_NullFlag = "? "; }
                        if (findEnumObj != null)
                        {
                            attrStr += $"        public {findEnumObj.EnumType}" + str_NullFlag + attr + " { get; set; }\n";
                            attrStr += "\n";//最后是加一个空格
                        }
                        else
                        {
                        attrStr += "        public bool" + str_NullFlag + attr + " { get; set; }\n";
                        attrStr += "\n";//最后是加一个空格
                        }
                        break;
                    case DataTypeEnum.dt_int:
                        if (columnModel.IsNullable) { str_NullFlag = "? "; }
                        var findEnumObj = param.EnumList.Where(x => x.EnumAttrName == attr).FirstOrDefault();
                        if (findEnumObj != null)
                        {
                            attrStr += $"        public {findEnumObj.EnumType}" + str_NullFlag + attr + " { get; set; }\n";
@@ -454,6 +464,7 @@
                attrStr += "        /// " + columnModel.Description + "\n";
                attrStr += "        /// </summary>\n";
                var findEnumObj = param.EnumList.Where(x => x.EnumAttrName == attr).FirstOrDefault();
                DataTypeEnum myDataType = (DataTypeEnum)Enum.Parse(typeof(DataTypeEnum), "dt_" + columnModel.DataType);
                switch (myDataType)
                {
@@ -476,12 +487,21 @@
                    case DataTypeEnum.dt_tinyint:
                    case DataTypeEnum.dt_bit:
                        if (columnModel.IsNullable) { str_NullFlag = "? "; }
                        if (findEnumObj != null)
                        {
                            attrStr += $"        public {findEnumObj.EnumType}" + str_NullFlag + attr + " { get; set; }\n";
                            attrStr += "\n";//最后是加一个空格
                        }
                        else
                        {
                        attrStr += "        public bool" + str_NullFlag + attr + " { get; set; }\n";
                        attrStr += "\n";//最后是加一个空格
                        }
                        break;
                    case DataTypeEnum.dt_int:
                        if (columnModel.IsNullable) { str_NullFlag = "? "; }
                        var findEnumObj = param.EnumList.Where(x => x.EnumAttrName == attr).FirstOrDefault();
                        if (findEnumObj != null)
                        {
                            attrStr += $"        public {findEnumObj.EnumType}" + str_NullFlag + attr + " { get; set; }\n";
@@ -511,7 +531,6 @@
                //增加对枚举类型的支持 
                if (param.EnumList?.Count > 0)
                {
                    var findEnumObj = param.EnumList.Where(x => x.EnumAttrName == attr).FirstOrDefault();
                    if (findEnumObj != null)
                    {
                        attrStr += "        /// <summary>\n";
@@ -558,6 +577,7 @@
                attrStr += "        /// </summary>\n";
                attrStr += $"        [ExcelColumn(Name = \"{columnModel.Description}\", Width = 25)]\n";
                var findEnumObj = param.EnumList.Where(x => x.EnumAttrName == attr).FirstOrDefault();
                DataTypeEnum myDataType = (DataTypeEnum)Enum.Parse(typeof(DataTypeEnum), "dt_" + columnModel.DataType);
                switch (myDataType)
                {
@@ -580,12 +600,21 @@
                    case DataTypeEnum.dt_tinyint:
                    case DataTypeEnum.dt_bit:
                        if (columnModel.IsNullable) { str_NullFlag = "? "; }
                        if (findEnumObj != null)
                        {
                            attrStr += $"        public {findEnumObj.EnumType}" + str_NullFlag + attr + " { get; set; }\n";
                            attrStr += "\n";//最后是加一个空格
                        }
                        else
                        {
                        attrStr += "        public bool" + str_NullFlag + attr + " { get; set; }\n";
                        attrStr += "\n";//最后是加一个空格
                        }
                        break;
                    case DataTypeEnum.dt_int:
                        if (columnModel.IsNullable) { str_NullFlag = "? "; }
                        var findEnumObj = param.EnumList.Where(x => x.EnumAttrName == attr).FirstOrDefault();
                        if (findEnumObj != null)
                        {
                            attrStr += $"        public {findEnumObj.EnumType}" + str_NullFlag + attr + " { get; set; }\n";
@@ -620,7 +649,7 @@
        /// </summary>
        /// <param name="columnModel"></param>
        /// <returns></returns>
        public static string GenerateAttributeForQueryModel(ColumnModel columnModel)
        public static string GenerateAttributeForQueryModel(ColumnModel columnModel, GenerateCodeParam param)
        {
            try
            {
@@ -643,6 +672,7 @@
                attrStr += "        /// " + columnModel.Description + "\n";
                attrStr += "        /// </summary>\n";
                var findEnumObj = param.EnumList.Where(x => x.EnumAttrName == attr).FirstOrDefault();
                DataTypeEnum myDataType = (DataTypeEnum)Enum.Parse(typeof(DataTypeEnum), "dt_" + columnModel.DataType);
                switch (myDataType)
                {
@@ -663,13 +693,29 @@
                        attrStr += "\n";//最后是加一个空格
                        break;
                    case DataTypeEnum.dt_int:
                        if (findEnumObj != null)
                        {
                            attrStr += $"        public {findEnumObj.EnumType}" + str_NullFlag + emptyStr + attr + " { get; set; }\n";
                            attrStr += "\n";//最后是加一个空格
                        }
                        else
                        {
                        attrStr += "        public int" + str_NullFlag + emptyStr + attr + " { get; set; }\n";
                        attrStr += "\n";//最后是加一个空格
                        }
                        break;
                    case DataTypeEnum.dt_bit:
                    case DataTypeEnum.dt_tinyint:
                        if (findEnumObj != null)
                        {
                            attrStr += $"        public {findEnumObj.EnumType}" + str_NullFlag + emptyStr + attr + " { get; set; }\n";
                            attrStr += "\n";//最后是加一个空格
                        }
                        else
                        {
                        attrStr += "        public bool" + str_NullFlag + emptyStr + attr + " { get; set; }\n";
                        attrStr += "\n";//最后是加一个空格
                        }
                        break;
                    default:
                        attrStr += "        public string" + emptyStr + attr + " { get; set; }\n";
@@ -2067,6 +2113,7 @@
                            {
                                elment = "select";
                                sb.Append("                   el: '" + elment + "', \n");
                                sb.Append("                   clearable:true, \n");
                                sb.Append("                   option: [], \n");
                                isWriteInt = false;
                            }