From 13f8c1efe9aaf7b7d1e4e77107de61a56d6f9646 Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周五, 09 5月 2025 08:42:20 +0800 Subject: [PATCH] 222 --- Weben_CMS专用代码生成器/Code/Utility/StructStrHelper.cs | 242 ++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 193 insertions(+), 49 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 6b8983f..c1a638d 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" @@ -1796,7 +1796,7 @@ { case DataTypeEnum.dt_bit: case DataTypeEnum.dt_tinyint: - sb.Append(" options: [{label: '鏄�',value: 'true'}, {label: '鍚�',value: 'false'}] \n"); + sb.Append(" options: [{label: '鏄�',value: true}, {label: '鍚�',value: false}] \n"); break; default: break; @@ -1820,7 +1820,7 @@ /// </summary> /// <param name="columnModelList"></param> /// <returns></returns> - public static string GetVueFormOptionsStrForPageAddFormAttributes(List<ColumnModel> columnModelList, GenerateCodeParam param) + public static string GetVueFormOptionsStrForPageAddFormAttributes_formItems(List<ColumnModel> columnModelList, GenerateCodeParam param) { StringBuilder sb = new StringBuilder(); try @@ -1845,9 +1845,9 @@ var elment = "input"; switch (enumDT) { - case DataTypeEnum.dt_datetime: - elment = "date-picker"; - break; + //case DataTypeEnum.dt_datetime: + // elment = "date-picker"; + // break; case DataTypeEnum.dt_bit: case DataTypeEnum.dt_tinyint: elment = "select"; @@ -1860,16 +1860,36 @@ sb.Append(" prop: '" + low_prop_ColumnName + "', \n"); //娣诲姞绫诲瀷 - switch (enumDT) + //switch (enumDT) + //{ + // case DataTypeEnum.dt_datetime: + // sb.Append(" el: (props: any, { attrs }: SetupContext) => { \n"); + // sb.Append(" return h(datePicker, { \n"); + // sb.Append(" ...props, \n"); + // sb.Append(" clearable: true, \n"); + // sb.Append(" ...attrs, \n"); + // sb.Append(" }) \n"); + // sb.Append(" },\n"); + + // sb.Append(" width: '100%',\n"); + // break; + // default: + // break; + //} + if (enumDT == DataTypeEnum.dt_datetime) { - case DataTypeEnum.dt_datetime: - sb.Append(" type: 'datetimerange', \n"); - break; - default: - break; + sb.Append(" el: (props: any, { attrs }: SetupContext) => { \n"); + sb.Append(" return h(datePicker, { \n"); + sb.Append(" ...props, \n"); + sb.Append(" clearable: true, \n"); + sb.Append(" ...attrs, \n"); + sb.Append(" }) \n"); + sb.Append(" },\n"); + + sb.Append(" width: '100%',\n"); } - if (enumDT == DataTypeEnum.dt_decimal) + else if (enumDT == DataTypeEnum.dt_decimal) { sb.Append(" el: (props: any, { attrs }: SetupContext) => { \n"); sb.Append(" return h(inputNumber, { \n"); @@ -1879,12 +1899,14 @@ sb.Append(" }) \n"); sb.Append(" },\n"); + sb.Append(" width: '100%',\n"); //閰嶇疆绮惧害锛熻繖閲岄渶瑕佽幏鍙栨暟鎹簱涓殑绮惧害锛侊紒锛乀ODO锛� sb.Append(" step: 0.01,\n"); sb.Append(" precision: 2, \n"); } else if (enumDT == DataTypeEnum.dt_int) { + bool isWriteInt = true; //鍒ゆ柇鏄惁鏄笅鎷夌被鍨� //澧炲姞瀵规灇涓剧被鍨嬬殑鏀寔 if (param.EnumList?.Count > 0) @@ -1894,9 +1916,11 @@ { elment = "select"; sb.Append(" el: '" + elment + "', \n"); + sb.Append(" options: [], \n"); + isWriteInt = false; } } - else + if (isWriteInt) { sb.Append(" el: (props: any, { attrs }: SetupContext) => { \n"); sb.Append(" return h(inputNumber, { \n"); @@ -1905,7 +1929,7 @@ sb.Append(" ...attrs, \n"); sb.Append(" }) \n"); sb.Append(" },\n"); - + sb.Append(" width: '100%',\n"); //閰嶇疆绮惧害锛� sb.Append(" step: 1,\n"); sb.Append(" precision: 0, \n"); @@ -1923,15 +1947,15 @@ sb.Append(" rules: [{required: true, message: '" + columnModel.Description + "涓嶈兘涓虹┖', trigger: 'blur' }], \n"); } //娣诲姞绫诲瀷 - //switch (enumDT) - //{ - // case DataTypeEnum.dt_bit: - // case DataTypeEnum.dt_tinyint: - // sb.Append(" options: [{label: '鏄�',value: 'true'}, {label: '鍚�',value: 'false'}] \n"); - // break; - // default: - // break; - //} + switch (enumDT) + { + case DataTypeEnum.dt_bit: + case DataTypeEnum.dt_tinyint: + sb.Append(" options: [{label: '鏄�',value: true}, {label: '鍚�',value: false}] \n"); + break; + default: + break; + } sb.Append(" }, \n"); } //鍘绘帀鏈�鍚庝竴涓�, @@ -1964,8 +1988,8 @@ placeholder: '璇疯緭鍏ョ墿鏂欑紪鐮�', }, */ - List<ColumnModel> newList = ListHelper.RemoveForPageAddFormAttributes(columnModelList); - foreach (var columnModel in newList) + //List<ColumnModel> newList = ListHelper.RemoveForPageAddFormAttributes(columnModelList); + foreach (var columnModel in columnModelList) { //棣栧瓧姣嶅皬鍐� var low_prop_ColumnName = CommonHelper.FirstLowercase(columnModel.ColumnName); @@ -1973,9 +1997,9 @@ var elment = "input"; switch (enumDT) { - case DataTypeEnum.dt_datetime: - elment = "date-picker"; - break; + //case DataTypeEnum.dt_datetime: + // elment = "date-picker"; + // break; case DataTypeEnum.dt_bit: case DataTypeEnum.dt_tinyint: elment = "select"; @@ -1988,16 +2012,35 @@ sb.Append(" prop: '" + low_prop_ColumnName + "', \n"); //娣诲姞绫诲瀷 - switch (enumDT) - { - case DataTypeEnum.dt_datetime: - sb.Append(" type: 'datetimerange', \n"); - break; - default: - break; - } + //switch (enumDT) + //{ + // case DataTypeEnum.dt_datetime: + // sb.Append(" el: (props: any, { attrs }: SetupContext) => { \n"); + // sb.Append(" return h(dateTimePickerRange, { \n"); + // sb.Append(" ...props,\n"); + // sb.Append(" clearable: true, \n"); + // sb.Append(" ...attrs, \n"); + // sb.Append(" }) \n"); + // sb.Append(" },\n"); - if (enumDT == DataTypeEnum.dt_decimal) + // sb.Append(" width: '100%',\n"); + // break; + // default: + // break; + //} + if (enumDT == DataTypeEnum.dt_datetime) + { + sb.Append(" el: (props: any, { attrs }: SetupContext) => { \n"); + sb.Append(" return h(dateTimePickerRange, { \n"); + sb.Append(" ...props,\n"); + sb.Append(" clearable: true, \n"); + sb.Append(" ...attrs, \n"); + sb.Append(" }) \n"); + sb.Append(" },\n"); + + sb.Append(" width: '100%',\n"); + } + else if (enumDT == DataTypeEnum.dt_decimal) { sb.Append(" el: (props: any, { attrs }: SetupContext) => { \n"); sb.Append(" return h(inputNumber, { \n"); @@ -2007,12 +2050,14 @@ sb.Append(" }) \n"); sb.Append(" },\n"); + sb.Append(" width: '100%',\n"); //閰嶇疆绮惧害锛熻繖閲岄渶瑕佽幏鍙栨暟鎹簱涓殑绮惧害锛侊紒锛乀ODO锛� sb.Append(" step: 0.01,\n"); sb.Append(" precision: 2, \n"); } else if (enumDT == DataTypeEnum.dt_int) { + bool isWriteInt = true; //鍒ゆ柇鏄惁鏄笅鎷夌被鍨� //澧炲姞瀵规灇涓剧被鍨嬬殑鏀寔 if (param.EnumList?.Count > 0) @@ -2022,9 +2067,11 @@ { elment = "select"; sb.Append(" el: '" + elment + "', \n"); + sb.Append(" option: [], \n"); + isWriteInt = false; } } - else + if (isWriteInt) { sb.Append(" el: (props: any, { attrs }: SetupContext) => { \n"); sb.Append(" return h(inputNumber, { \n"); @@ -2034,6 +2081,7 @@ sb.Append(" }) \n"); sb.Append(" },\n"); + sb.Append(" width: '100%',\n"); //閰嶇疆绮惧害锛� sb.Append(" step: 1,\n"); sb.Append(" precision: 0, \n"); @@ -2048,15 +2096,15 @@ sb.Append(" placeholder: '璇疯緭鍏�" + columnModel.Description + "', \n"); //娣诲姞绫诲瀷 - //switch (enumDT) - //{ - // case DataTypeEnum.dt_bit: - // case DataTypeEnum.dt_tinyint: - // sb.Append(" options: [{label: '鏄�',value: 'true'}, {label: '鍚�',value: 'false'}] \n"); - // break; - // default: - // break; - //} + switch (enumDT) + { + case DataTypeEnum.dt_bit: + case DataTypeEnum.dt_tinyint: + sb.Append(" options: [{label: '鏄�',value: true}, {label: '鍚�',value: false}] \n"); + break; + default: + break; + } sb.Append(" }, \n"); } //鍘绘帀鏈�鍚庝竴涓�, @@ -2192,10 +2240,15 @@ /* materialCode: formData.value.materialCode, */ - List<ColumnModel> newList = ListHelper.RemoveForPageAddFormAttributes(columnModelList); + List<ColumnModel> newList = ListHelper.RemoveAttrForQueryMode(columnModelList); foreach (var columnModel in newList) { - sb.Append($"{columnModel.ColumnName}: formData.value.{columnModel.ColumnName}, \n"); + + //棣栧瓧姣嶅皬鍐� + var low_prop_ColumnName = CommonHelper.FirstLowercase(columnModel.ColumnName); + sb.Append($"{low_prop_ColumnName}: formData.value.{low_prop_ColumnName} || '', \n"); + + } //鍘绘帀鏈�鍚庝竴涓�, var res = sb.ToString(); @@ -2239,6 +2292,22 @@ sb.Append(" field: '" + lowerCaseColumnName + "', \n"); } sb.Append(" title: '" + columnModel.Description + "', \n"); + //鑾峰彇鏁版嵁绫诲瀷 + //璁剧疆瀹藉害 + DataTypeEnum enumDT = (DataTypeEnum)Enum.Parse(typeof(DataTypeEnum), "dt_" + columnModel.DataType.ToString()); + switch (enumDT) + { + case DataTypeEnum.dt_datetime: + sb.Append(" width:180, \n"); + break; + case DataTypeEnum.dt_bit: + case DataTypeEnum.dt_tinyint: + sb.Append(" width:80, \n"); + break; + default: + sb.Append(" width:160, \n"); + break; + } sb.Append("}, \n"); } //鍘绘帀鏈�鍚庝竴涓�, @@ -2319,6 +2388,81 @@ var _enumAttrName = CommonHelper.FirstLowercase(item.EnumAttrName); sb.Append(_enumAttrName + ": [] as Array<{label: string; value: any }>, \n"); } + //鍘绘帀鏈�鍚庝竴涓�, + var res = sb.ToString(); + res = res.Substring(0, res.Length - 1); + return res; + } + else + { + return ""; + } + } + catch (Exception ex) + { + throw ex; + } + } + + public static string GetVueFormOptionsStrForPageAdd_QueryTableListForBool(List<ColumnModel> columnModelList, GenerateCodeParam param) + { + StringBuilder sb = new StringBuilder(); + try + { + /* + + isRead: ({ row }: any) => { + return ( + <div> + {row.isRead != null ? (row.isRead ? '鏄�' : '鍚�') : '-'} + </div> + ) + }, + + creationTime: ({ row }: any) => { + return ( + <div> + {row.creationTime != null + ? dayjs(row.creationTime).format('YYYY-MM-DD HH:mm:ss') + : '-'} + </div> + ) + }, + + */ + + 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(" <div> \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(" </div> \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(" <div> \n"); + sb.Append(" {row." + instanceColumnName + " != null ? (row." + instanceColumnName + " ? '鏄�' : '鍚�') : '-'} \n"); + sb.Append(" </div> \n"); + sb.Append(" ) \n"); + sb.Append("},\n"); + break; + } + } //鍘绘帀鏈�鍚庝竴涓�, -- Gitblit v1.9.3