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