From e8f85cd9f369f8290d55b0e041be35c9c0b50fb6 Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周二, 06 5月 2025 11:40:26 +0800 Subject: [PATCH] 222 --- Weben_CMS专用代码生成器/Code/Utility/StructStrHelper.cs | 290 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 290 insertions(+), 0 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 4522f16..d03814a 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" @@ -1921,6 +1921,134 @@ /// </summary> /// <param name="columnModelList"></param> /// <returns></returns> + public static string GetVueFormOptionsStrForPageAddFormAttributes_Query(List<ColumnModel> columnModelList, GenerateCodeParam param) + { + StringBuilder sb = new StringBuilder(); + try + { + /* + { + label: '鐗╂枡缂栫爜', + prop: 'materialCode', + el: 'input', + disabled: disabled, + placeholder: '璇疯緭鍏ョ墿鏂欑紪鐮�', + rules: [{ required: true, message: '鐗╂枡缂栫爜涓嶈兘涓虹┖', trigger: 'blur' }], + }, + */ + List<ColumnModel> newList = ListHelper.RemoveForPageAddFormAttributes(columnModelList); + foreach (var columnModel in newList) + { + DataTypeEnum enumDT = (DataTypeEnum)Enum.Parse(typeof(DataTypeEnum), "dt_" + columnModel.DataType.ToString()); + var elment = "input"; + switch (enumDT) + { + case DataTypeEnum.dt_datetime: + elment = "date-picker"; + break; + case DataTypeEnum.dt_bit: + case DataTypeEnum.dt_tinyint: + elment = "select"; + break; + default: + break; + } + sb.Append(" { \n"); + sb.Append(" label: '" + columnModel.Description + "', \n"); + sb.Append(" prop: '" + columnModel.ColumnName + "', \n"); + + //娣诲姞绫诲瀷 + switch (enumDT) + { + case DataTypeEnum.dt_datetime: + sb.Append(" type: 'datetimerange', \n"); + break; + default: + break; + } + + if (enumDT == DataTypeEnum.dt_decimal) + { + sb.Append(" el: (props: any, { attrs }: SetupContext) => { \n"); + sb.Append(" return h(inputNumber, { { \n"); + sb.Append(" ...props, { \n"); + sb.Append(" clearable: true, { \n"); + sb.Append(" ...attrs, { \n"); + sb.Append(" }) \n"); + sb.Append(" },\n"); + + //閰嶇疆绮惧害锛熻繖閲岄渶瑕佽幏鍙栨暟鎹簱涓殑绮惧害锛侊紒锛乀ODO锛� + sb.Append(" step: 0.01,\n"); + sb.Append(" precision: 2, \n"); + } + else if (enumDT == DataTypeEnum.dt_int) + { + //鍒ゆ柇鏄惁鏄笅鎷夌被鍨� + //澧炲姞瀵规灇涓剧被鍨嬬殑鏀寔 + if (param.EnumList?.Count > 0) + { + var findEnumObj = param.EnumList.Where(x => x.EnumAttrName == columnModel.ColumnName).FirstOrDefault(); + if (findEnumObj != null) + { + elment = "select"; + sb.Append(" el: '" + elment + "', \n"); + } + } + else + { + sb.Append(" el: (props: any, { attrs }: SetupContext) => { \n"); + sb.Append(" return h(inputNumber, { { \n"); + sb.Append(" ...props, { \n"); + sb.Append(" clearable: true, { \n"); + sb.Append(" ...attrs, { \n"); + sb.Append(" }) \n"); + sb.Append(" },\n"); + + //閰嶇疆绮惧害锛� + sb.Append(" step: 1,\n"); + sb.Append(" precision: 0, \n"); + } + } + else + { + sb.Append(" el: '" + elment + "', \n"); + } + + sb.Append(" disabled: disabled, \n"); + sb.Append(" placeholder: '璇疯緭鍏�" + columnModel.Description + "', \n"); + if (columnModel.IsNullable == false) + { + 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; + //} + sb.Append(" }, \n"); + } + //鍘绘帀鏈�鍚庝竴涓�, + var res = sb.ToString(); + res = res.Substring(0, res.Length - 1); + return res; + } + catch (Exception ex) + { + throw ex; + } + } + + + /// <summary> + /// 鑾峰彇VUE formOptions瀛楃涓�(楂樼骇鏌ヨ涓殑) + /// </summary> + /// <param name="columnModelList"></param> + /// <returns></returns> public static string GetVueFormOptionsStrForCommonQueryEnumForFrom(List<ColumnModel> columnModelList, GenerateCodeParam param) { StringBuilder sb = new StringBuilder(); @@ -1944,6 +2072,49 @@ sb.Append(" EnumName: '" + item.EnumType + "', \n"); sb.Append("}) \n"); sb.Append("updateFormItemOptions('" + _enumAttrName + "', " + instanceName + "Enum) \n"); + } + } + var res = sb.ToString(); + return res; + } + catch (Exception ex) + { + throw ex; + } + } + + + public static string GetVueFormOptionsStr_EntityNameClass_fetchEnumData(List<ColumnModel> columnModelList, GenerateCodeParam param) + { + StringBuilder sb = new StringBuilder(); + try + { + /* + + // 鑾峰彇鐗╂枡绫诲瀷鏋氫妇 + const materialTypeData = await getWmsEnumData({ + EnumName: 'MaterialTypeEnum', + }) + enumOptions.materialType = materialTypeData.map((item) => ({ + label: item.description, + value: item.value, + })) + + */ + if (param.EnumList?.Count > 0) + { + foreach (var item in param.EnumList) + { + //灞炴�у皬鍐� + var instanceName = CommonHelper.FirstLowercase(item.EnumType); + var _enumAttrName = CommonHelper.FirstLowercase(item.EnumAttrName); + sb.Append("const "+ instanceName + "Data = await getWmsEnumData({ \n"); + sb.Append(" EnumName: '" + item.EnumType + "', \n"); + sb.Append("}) \n"); + sb.Append("enumOptions."+ instanceName + " = "+ instanceName + "Data.map((item) => ({ \n"); + sb.Append(" label: item.description, \n"); + sb.Append(" value: item.value, \n"); + sb.Append("}) \n"); } } var res = sb.ToString(); @@ -1984,6 +2155,71 @@ } } + public static string GetVueFormOptionsStrForSave_PageAddFormAttributes_Query(List<ColumnModel> columnModelList, GenerateCodeParam param) + { + StringBuilder sb = new StringBuilder(); + try + { + /* + materialCode: formData.value.materialCode, + */ + List<ColumnModel> newList = ListHelper.RemoveForPageAddFormAttributes(columnModelList); + foreach (var columnModel in newList) + { + sb.Append($"{columnModel.ColumnName}: formData.value.{columnModel.ColumnName}, \n"); + } + //鍘绘帀鏈�鍚庝竴涓�, + var res = sb.ToString(); + res = res.Substring(0, res.Length - 1); + return res; + } + catch (Exception ex) + { + throw ex; + } + } + + + + public static string GetVueFormOptionsStr_EntityNameClass_Config_Attrs(List<ColumnModel> columnModelList, GenerateCodeParam param) + { + StringBuilder sb = new StringBuilder(); + try + { + /* + + { + field: 'materialCode', + title: '鐗╂枡缂栫爜', + }, + + */ + List<ColumnModel> newList = ListHelper.RemoveForPageTableListQueryAttributes(columnModelList); + foreach (var columnModel in newList) + { + sb.Append("{ \n"); + var findEnumObj = param.EnumList.Where(x => x.EnumAttrName == columnModel.ColumnName).FirstOrDefault(); + if (findEnumObj != null) + { + sb.Append(" field: '" + columnModel.ColumnName + "Desc', \n"); + } + else { + sb.Append(" field: '" + columnModel.ColumnName + "', \n"); + } + sb.Append(" field: '" + columnModel.Description + "', \n"); + sb.Append("} \n"); + } + //鍘绘帀鏈�鍚庝竴涓�, + var res = sb.ToString(); + res = res.Substring(0, res.Length - 1); + return res; + } + catch (Exception ex) + { + throw ex; + } + } + public static string GetVueFormOptionsStrForPageAddFormAttributesByOpen(List<ColumnModel> columnModelList, GenerateCodeParam param) { StringBuilder sb = new StringBuilder(); @@ -2008,6 +2244,60 @@ } } + public static string GetVueFormOptionsStrForPageAddFormAttributes_Query_Clear(List<ColumnModel> columnModelList, GenerateCodeParam param) + { + StringBuilder sb = new StringBuilder(); + try + { + /* + materialCode: res.materialCode, + */ + List<ColumnModel> newList = ListHelper.RemoveForPageAddFormAttributes(columnModelList); + foreach (var columnModel in newList) + { + sb.Append($"formData.value.{columnModel.ColumnName} = '' \n"); + } + //鍘绘帀鏈�鍚庝竴涓�, + var res = sb.ToString(); + res = res.Substring(0, res.Length - 1); + return res; + } + catch (Exception ex) + { + throw ex; + } + } + + public static string GetVueFormOptionsStrForPageAdd_EntityNameClass_enumOptions(List<ColumnModel> columnModelList, GenerateCodeParam param) + { + StringBuilder sb = new StringBuilder(); + try + { + /* + isMainBranch: [] as Array<{ label: string; value: any }>, + */ + if (param.EnumList?.Count > 0) + { + foreach (var item in param.EnumList) + { + //灞炴�у皬鍐� + var instanceName = CommonHelper.FirstLowercase(item.EnumType); + 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; + } + catch (Exception ex) + { + throw ex; + } + } + /// <summary> /// 鑾峰彇VUE 瀵煎嚭鏁扮粍瀛楃涓�-姹夊瓧+灞炴�� /// </summary> -- Gitblit v1.9.3