From 3aedad63dd01f1fc5154cb520af32edab967d6e0 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周一, 12 5月 2025 09:15:26 +0800
Subject: [PATCH] Merge branch 'master' of http://222.71.245.114:9086/r/HIA24016N_PipeLineDemo

---
 Weben_CMS专用代码生成器/Code/Utility/StructStrHelper.cs |  117 ++++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 100 insertions(+), 17 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/Utility/StructStrHelper.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/Utility/StructStrHelper.cs"
index ec86934..ca814b3 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/Utility/StructStrHelper.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/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 = "? "; }
-                        attrStr += "        public bool" + str_NullFlag + attr + " { get; set; }\n";
-                        attrStr += "\n";//鏈�鍚庢槸鍔犱竴涓┖鏍�
+                        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 = "? "; }
-                        attrStr += "        public bool" + str_NullFlag + attr + " { get; set; }\n";
-                        attrStr += "\n";//鏈�鍚庢槸鍔犱竴涓┖鏍�
+
+                        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 = "? "; }
-                        attrStr += "        public bool" + str_NullFlag + attr + " { get; set; }\n";
-                        attrStr += "\n";//鏈�鍚庢槸鍔犱竴涓┖鏍�
+                        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:
-                        attrStr += "        public int" + str_NullFlag + emptyStr + attr + " { get; set; }\n";
-                        attrStr += "\n";//鏈�鍚庢槸鍔犱竴涓┖鏍�
+                        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:
-                        attrStr += "        public bool" + str_NullFlag + emptyStr + attr + " { get; set; }\n";
-                        attrStr += "\n";//鏈�鍚庢槸鍔犱竴涓┖鏍�
+                        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";
@@ -1916,6 +1962,7 @@
                             {
                                 elment = "select";
                                 sb.Append("                   el: '" + elment + "', \n");
+                                sb.Append("                   clearable:true, \n");
                                 sb.Append("                   options: [], \n");
                                 isWriteInt = false;
                             }
@@ -1951,7 +1998,24 @@
                     {
                         case DataTypeEnum.dt_bit:
                         case DataTypeEnum.dt_tinyint:
-                            sb.Append("                 options: [{label: '鏄�',value: true}, {label: '鍚�',value: false}] \n");
+                            //澧炲姞瀵规灇涓剧被鍨嬬殑鏀寔 
+                            if (param.EnumList?.Count > 0)
+                            {
+                                var findEnumObj = param.EnumList.Where(x => x.EnumAttrName == columnModel.ColumnName).FirstOrDefault();
+                                if (findEnumObj != null)
+                                {
+                                    sb.Append("                   clearable:true, \n");
+                                    sb.Append("                   option: [], \n");
+                                }
+                                else
+                                {
+                                    sb.Append("                 options: [{label: '鏄�',value: true}, {label: '鍚�',value: false}] \n");
+                                }
+                            }
+                            else
+                            {
+                                sb.Append("                 options: [{label: '鏄�',value: true}, {label: '鍚�',value: false}] \n");
+                            }
                             break;
                         default:
                             break;
@@ -2067,6 +2131,7 @@
                             {
                                 elment = "select";
                                 sb.Append("                   el: '" + elment + "', \n");
+                                sb.Append("                   clearable:true, \n");
                                 sb.Append("                   option: [], \n");
                                 isWriteInt = false;
                             }
@@ -2100,7 +2165,25 @@
                     {
                         case DataTypeEnum.dt_bit:
                         case DataTypeEnum.dt_tinyint:
-                            sb.Append("                 options: [{label: '鏄�',value: true}, {label: '鍚�',value: false}] \n");
+                            //澧炲姞瀵规灇涓剧被鍨嬬殑鏀寔 
+                            if (param.EnumList?.Count > 0)
+                            {
+                                var findEnumObj = param.EnumList.Where(x => x.EnumAttrName == columnModel.ColumnName).FirstOrDefault();
+                                if (findEnumObj != null)
+                                {
+                                    sb.Append("                   clearable:true, \n");
+                                    sb.Append("                   option: [], \n");
+                                }
+                                else
+                                {
+                                    sb.Append("                 options: [{label: '鏄�',value: true}, {label: '鍚�',value: false}] \n");
+                                }
+                            }
+                            else
+                            {
+                                sb.Append("                 options: [{label: '鏄�',value: true}, {label: '鍚�',value: false}] \n");
+                            }
+                            
                             break;
                         default:
                             break;

--
Gitblit v1.9.3