columnModelList, GenerateCodeParam param)
{
StringBuilder sb = new StringBuilder();
try
{
/*
isRead: ({ row }: any) => {
return (
{row.isRead != null ? (row.isRead ? '是' : '否') : '-'}
)
},
creationTime: ({ row }: any) => {
return (
{row.creationTime != null
? dayjs(row.creationTime).format('YYYY-MM-DD HH:mm:ss')
: '-'}
)
},
*/
foreach (var columnModel in columnModelList)
{
//属性小写
var instanceColumnName = CommonHelper.FirstLowercase(columnModel.ColumnName);
//获取数据类型
DataTypeEnum enumDT = (DataTypeEnum)Enum.Parse(typeof(DataTypeEnum), "dt_" + columnModel.DataType.ToString());
switch (enumDT)
{
case DataTypeEnum.dt_datetime:
sb.Append(instanceColumnName + ": ({ row }: any) => { \n");
sb.Append(" return ( \n");
sb.Append(" \n");
sb.Append(" {row." + instanceColumnName + " != null \n");
sb.Append(" ? dayjs(row." + instanceColumnName + ").format('YYYY-MM-DD HH:mm:ss') \n");
sb.Append(" : '-'} \n");
sb.Append("
\n");
sb.Append(" ) \n");
sb.Append("},\n");
break;
case DataTypeEnum.dt_bit:
case DataTypeEnum.dt_tinyint:
sb.Append(instanceColumnName + ": ({ row }: any) => { \n");
sb.Append(" return ( \n");
sb.Append(" \n");
sb.Append(" {row." + instanceColumnName + " != null ? (row." + instanceColumnName + " ? '是' : '否') : '-'} \n");
sb.Append("
\n");
sb.Append(" ) \n");
sb.Append("},\n");
break;
}
}
//去掉最后一个,
var res = sb.ToString();
res = res.Substring(0, res.Length - 1);
return res;
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 获取VUE 导出数组字符串-汉字+属性
///
///
///
public static string GetVueExportTHeaderArrayStr(List columnModelList)
{
StringBuilder sb = new StringBuilder();
try
{
List newList = ListHelper.RemoveIdOperationRemarkCreateIdModifyId(columnModelList);
foreach (var columnModel in newList)
{
if (columnModel.IsPrimaryKey == false)
{
sb.Append("'" + columnModel.ColumnName + "':'" + columnModel.Description + "',");
}
}
//去掉最后一个,
var res = sb.ToString();
res = res.Substring(0, res.Length - 1);
return res;
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 获取VUE 搜索框输入的提示文本
///
///
///
public static string GetVueSearchFormInputPlaceholderStr(List columnModelList, ref string names)
{
StringBuilder sb = new StringBuilder();
try
{
List newList = ListHelper.OnlyStringProValue(columnModelList);
foreach (var columnModel in newList)
{
if (columnModel.IsPrimaryKey == false)
{
sb.Append("" + columnModel.Description + "/");
names += "'" + columnModel.ColumnName + "',";
}
}
//去掉最后一个,
var res = sb.ToString();
res = res.Substring(0, res.Length - 1);
names = names.Substring(0, names.Length - 1);
return res;
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 获取VUE el-form-item 查询用
///
///
///
public static string GetElFormItemForSearchStr(List columnModelList)
{
StringBuilder sb = new StringBuilder();
try
{
List newList = ListHelper.RemoveIdCreatorModifier(columnModelList);
foreach (var columnModel in newList)
{
sb.Append(" \n");
//获取数据类型
DataTypeEnum enumDT = (DataTypeEnum)Enum.Parse(typeof(DataTypeEnum), "dt_" + columnModel.DataType.ToString());
switch (enumDT)
{
case DataTypeEnum.dt_char:
case DataTypeEnum.dt_varchar:
case DataTypeEnum.dt_Varchar_Desc:
case DataTypeEnum.dt_uniqueidentifier:
case DataTypeEnum.dt_Varchar_Ext_Link:
case DataTypeEnum.dt_nvarchar:
sb.Append(" \n");
break;
case DataTypeEnum.dt_bit:
case DataTypeEnum.dt_tinyint:
sb.Append("\n");
sb.Append(" \n");
sb.Append(" \n");
sb.Append(" \n");
break;
default:
break;
}
sb.Append(" \n");
}
return sb.ToString();
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region Controller
///
/// 获取分页筛选字符串
///
///
///
public static string GetPageFilterStrForController(List columnModelList)
{
StringBuilder sb = new StringBuilder();
try
{
string mohuFilter = "&& (";//模糊查询
string filter = "";//非模糊查询
List newList = ListHelper.RemoveIdCreatorModifier(columnModelList);
foreach (var columnModel in newList)
{
DataTypeEnum enumDT = (DataTypeEnum)Enum.Parse(typeof(DataTypeEnum), "dt_" + columnModel.DataType.ToString());
switch (enumDT)
{
case DataTypeEnum.dt_bit:
case DataTypeEnum.dt_tinyint:
case DataTypeEnum.dt_datetime:
case DataTypeEnum.dt_datetime2:
case DataTypeEnum.dt_datetimeoffset:
case DataTypeEnum.dt_int:
case DataTypeEnum.dt_decimal:
case DataTypeEnum.dt_float:
break;
default:
if (columnModel.IsPrimaryKey == false)
{
mohuFilter += "(a." + columnModel.ColumnName + " != null && a." + columnModel.ColumnName + ".Contains(param.searchVal))";
mohuFilter += " ||";
filter += "&& (string.IsNullOrEmpty(param." + columnModel.ColumnName + ") || param." + columnModel.ColumnName + " == a." + columnModel.ColumnName + ") \n";
}
else
{
}
break;
}
}
mohuFilter += "1==1)";
filter += ";";
return mohuFilter + filter;
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
///
/// 生成Where查询条件的字符串
///
///
///
public static string GetStrForWhereQuery(List columnModelList)
{
StringBuilder sb = new StringBuilder();
try
{
List newList = ListHelper.RemoveIdCreatorModifier(columnModelList);
foreach (var columnModel in newList)
{
string attr = columnModel.ColumnName;
//获取数据类型
DataTypeEnum enumDT = (DataTypeEnum)Enum.Parse(typeof(DataTypeEnum), "dt_" + columnModel.DataType.ToString());
switch (enumDT)
{
case DataTypeEnum.dt_char:
case DataTypeEnum.dt_varchar:
case DataTypeEnum.dt_Varchar_Desc:
case DataTypeEnum.dt_uniqueidentifier:
case DataTypeEnum.dt_Varchar_Ext_Link:
case DataTypeEnum.dt_nvarchar:
sb.Append(" if (!string.IsNullOrEmpty(queryModel." + columnModel.ColumnName + ")) \n");
sb.Append(" { \n");
sb.Append(" strWhere += \" AND $TableAlias$." + columnModel.ColumnName + " LIKE '%\" + queryModel." + columnModel.ColumnName + " + \"%'\"; \n");
sb.Append(" } \n");
break;
case DataTypeEnum.dt_bit:
case DataTypeEnum.dt_tinyint:
sb.Append(" if (!string.IsNullOrEmpty(queryModel." + columnModel.ColumnName + ")) \n");
sb.Append(" { \n");
sb.Append(" strWhere += \" AND $TableAlias$." + columnModel.ColumnName + " = '\" + queryModel." + columnModel.ColumnName + " + \"'\"; \n");
sb.Append(" } \n");
break;
case DataTypeEnum.dt_int:
case DataTypeEnum.dt_bigint:
sb.Append(" if (queryModel." + columnModel.ColumnName + " !=0) \n");
sb.Append(" { \n");
sb.Append(" strWhere += \" AND $TableAlias$." + columnModel.ColumnName + " = \" + queryModel." + columnModel.ColumnName + " + \"\"; \n");
sb.Append(" } \n");
break;
default:
break;
}
}
return sb.ToString();
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 通过列名查找列对象
///
///
///
///
public static ColumnModel GetColumnModelByName(string columnName, List columnModelList)
{
foreach (var item in columnModelList)
{
if (item.ColumnName.ToUpper() == columnName.ToUpper())
{
return item;
}
}
return null;
}
}
}