From 9d260f6be552da50c846c7abf97f804c13f512e0 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周一, 12 5月 2025 13:55:02 +0800
Subject: [PATCH] 22
---
Weben_CMS专用代码生成器/Code/Utility/StructStrHelper.cs | 197 ++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 176 insertions(+), 21 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 903e112..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;
@@ -2214,8 +2297,7 @@
/*
materialCode: formData.value.materialCode,
*/
- List<ColumnModel> newList = ListHelper.RemoveForPageAddFormAttributes(columnModelList);
- foreach (var columnModel in newList)
+ foreach (var columnModel in columnModelList)
{
//棣栧瓧姣嶅皬鍐�
var low_prop_ColumnName = CommonHelper.FirstLowercase(columnModel.ColumnName);
@@ -2261,6 +2343,80 @@
}
}
+
+ public static string Get_LikeQueryAttrs(List<ColumnModel> columnModelList, GenerateCodeParam param)
+ {
+ StringBuilder sb = new StringBuilder();
+ try
+ {
+ /*
+ [妯$硦鏌ヨ瀛楁]:'TaskCode','MaterialMode', 'ProductCode'
+ */
+ List<ColumnModel> newList = ListHelper.RemoveForPageTableListQueryAttributes(columnModelList);
+ foreach (var columnModel in newList)
+ {
+ //鑾峰彇鏁版嵁绫诲瀷
+ DataTypeEnum enumDT = (DataTypeEnum)Enum.Parse(typeof(DataTypeEnum), "dt_" + columnModel.DataType.ToString());
+ switch (enumDT)
+ {
+ case DataTypeEnum.dt_nvarchar:
+ case DataTypeEnum.dt_varchar:
+ case DataTypeEnum.dt_longtext:
+ sb.Append($"'{columnModel.ColumnName}',");
+ break;
+ default:
+ break;
+ }
+ }
+ //鍘绘帀鏈�鍚庝竴涓�,
+ var res = sb.ToString();
+ if (res.Length > 1)
+ {
+ res = res.Substring(0, res.Length - 1);
+ }
+ return res;
+ }
+ catch (Exception ex)
+ {
+ throw ex;
+ }
+ }
+
+ public static string Get_LikeQueryAttrsName(List<ColumnModel> columnModelList, GenerateCodeParam param)
+ {
+ StringBuilder sb = new StringBuilder();
+ try
+ {
+ /*
+ [妯$硦鏌ヨ瀛楁鍚峕:璇疯緭鍏ヤ换鍔$紪鐮�/鍘熸枡鍨嬪彿/浜у搧浠g爜
+ */
+ List<ColumnModel> newList = ListHelper.RemoveForPageTableListQueryAttributes(columnModelList);
+ sb.Append("璇疯緭鍏�");
+ foreach (var columnModel in newList)
+ {
+ //鑾峰彇鏁版嵁绫诲瀷
+ DataTypeEnum enumDT = (DataTypeEnum)Enum.Parse(typeof(DataTypeEnum), "dt_" + columnModel.DataType.ToString());
+ switch (enumDT)
+ {
+ case DataTypeEnum.dt_nvarchar:
+ case DataTypeEnum.dt_varchar:
+ case DataTypeEnum.dt_longtext:
+ sb.Append($"{columnModel.Description}/");
+ break;
+ default:
+ break;
+ }
+ }
+ //鍘绘帀鏈�鍚庝竴涓�,
+ var res = sb.ToString();
+ res = res.Substring(0, res.Length - 1);
+ return res;
+ }
+ catch (Exception ex)
+ {
+ throw ex;
+ }
+ }
/// <summary>
/// 椤甸潰琛ㄦ牸鍒楁樉绀�
@@ -2334,8 +2490,7 @@
/*
materialCode: res.materialCode,
*/
- List<ColumnModel> newList = ListHelper.RemoveForPageAddFormAttributes(columnModelList);
- foreach (var columnModel in newList)
+ foreach (var columnModel in columnModelList)
{
//棣栧瓧姣嶅皬鍐�
var low_prop_ColumnName = CommonHelper.FirstLowercase(columnModel.ColumnName);
--
Gitblit v1.9.3