222
schangxiang@126.com
2025-05-04 7ecca2a5e7a9c9ae811b68dc98e05c689b18aca6
Weben_CMSרÓôúÂëÉú³ÉÆ÷/Code/Utility/StructStrHelper.cs
@@ -1,8 +1,10 @@
using System;
using GenerateCode_WeiBen_WMS.Model;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
namespace GenerateCode_GEBrilliantFactory
@@ -216,7 +218,7 @@
        /// </summary>
        /// <param name="columnModel"></param>
        /// <returns></returns>
        public static string GenerateAttributeForAddModel(ColumnModel columnModel)
        public static string GenerateAttributeForAddModel(ColumnModel columnModel,GenerateCodeParam param)
        {
            try
            {
@@ -248,8 +250,17 @@
                        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";
                            attrStr += "\n";//最后是加一个空格
                        }
                        else
                        {
                        attrStr += "        public int" + str_NullFlag + attr + " { get; set; }\n";
                        attrStr += "\n";//最后是加一个空格
                        }
                        break;
                    default:
                        attrStr += "        public string" + str_NullFlag + attr + " { get; set; }\n";
@@ -267,6 +278,90 @@
        }
        /// <summary>
        /// ç”Ÿæˆå±žæ€§å­—符串ForAddModel-Dto实体专用
        /// </summary>
        /// <param name="columnModel"></param>
        /// <returns></returns>
        public static string GenerateAttributeForDto(ColumnModel columnModel, GenerateCodeParam param)
        {
            try
            {
                string attr = columnModel.ColumnName;
                //if (attr.ToUpper() == "DBId".ToUpper())
                //{
                //    var bb = "";
                //}
                string str_NullFlag = " ";
                string attrStr = "";
                attrStr += "        /// <summary>\n";
                attrStr += "        /// " + columnModel.Description + "\n";
                attrStr += "        /// </summary>\n";
                DataTypeEnum myDataType = (DataTypeEnum)Enum.Parse(typeof(DataTypeEnum), "dt_" + columnModel.DataType);
                switch (myDataType)
                {
                    case DataTypeEnum.dt_datetime:
                    case DataTypeEnum.dt_datetime2:
                    case DataTypeEnum.dt_datetimeoffset:
                        attrStr += "        public datetime" + str_NullFlag + attr + " { get; set; }\n";
                        attrStr += "\n";//最后是加一个空格
                        break;
                    case DataTypeEnum.dt_bigint:
                        if (columnModel.IsNullable) { str_NullFlag = "? "; }
                        attrStr += "        public long" + 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";
                            attrStr += "\n";//最后是加一个空格
                        }
                        else
                        {
                            attrStr += "        public int" + str_NullFlag + attr + " { get; set; }\n";
                            attrStr += "\n";//最后是加一个空格
                        }
                        break;
                    default:
                        attrStr += "        public string" + str_NullFlag + attr + " { get; set; }\n";
                        attrStr += "\n";//最后是加一个空格
                        break;
                }
                //增加对枚举类型的支持
                if (param.EnumList?.Count > 0)
                {
                    var findEnumObj = param.EnumList.Where(x => x.EnumAttrName == attr).FirstOrDefault();
                    if (findEnumObj != null)
                    {
                        attrStr += "        /// <summary>\n";
                        attrStr += "        /// " + columnModel.Description + "\n";
                        attrStr += "        /// </summary>\n";
                        attrStr += "        public string" + str_NullFlag + findEnumObj.EnumTypeDesc + " { get; set; }\n";
                        attrStr += "        { \n";
                        attrStr += "            get \n";
                        attrStr += "            { \n";
                        attrStr += $"                return GetEnumDescriptionUtil.GetEnumDescription({findEnumObj.EnumAttrName}); \n";
                        attrStr += "            } \n";
                        attrStr += "        } \n";
                    }
                }
                return attrStr;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        /// <summary>
        /// ç”Ÿæˆå±žæ€§å­—符串ForQueryModel- æŸ¥è¯¢å®žä½“专用
        /// </summary>
        /// <param name="columnModel"></param>