zs
2025-05-13 0cd95d98fdf7ed22d53398242feb2a3ca185cf09
Weben_CMSרÓôúÂëÉú³ÉÆ÷/Code/Utility/StructStrHelper.cs
@@ -681,7 +681,7 @@
                    case DataTypeEnum.dt_datetimeoffset:
                        attrStr += "        //表示是 é«˜çº§æŸ¥è¯¢èŒƒå›´æŸ¥è¯¢ç‰¹æ€§\n";
                        attrStr += "        [HighSearchRangeAttribute]\n";
                        attrStr += "        public List<string>" + emptyStr + attr + " { get; set; }\n";
                        attrStr += "        public string" + emptyStr + attr + " { get; set; }\n";
                        attrStr += "\n";//最后是加一个空格
                        break;
                    case DataTypeEnum.dt_bigint:
@@ -1842,7 +1842,8 @@
                    {
                        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");
                            sb.Append("                 options: BOOLEAN_OPTIONS_AddEdit \n");
                            break;
                        default:
                            break;
@@ -1862,7 +1863,7 @@
        /// <summary>
        /// èŽ·å–VUE formOptions字符串(高级查询中的)
        /// èŽ·å–VUE formOptions字符串(添加、修改弹出页面的)
        /// </summary>
        /// <param name="columnModelList"></param>
        /// <returns></returns>
@@ -1962,6 +1963,7 @@
                            {
                                elment = "select";
                                sb.Append("                   el: '" + elment + "', \n");
                                sb.Append("                   clearable:true, \n");
                                sb.Append("                   options: [], \n");
                                isWriteInt = false;
                            }
@@ -1997,7 +1999,26 @@
                    {
                        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");
                                    sb.Append("                 options: BOOLEAN_OPTIONS_AddEdit \n");
                                }
                            }
                            else
                            {
                                //sb.Append("                 options: [{label: '是',value: true}, {label: '否',value: false}] \n");
                                sb.Append("                 options: BOOLEAN_OPTIONS_AddEdit \n");
                            }
                            break;
                        default:
                            break;
@@ -2016,7 +2037,7 @@
        }
        /// <summary>
        /// èŽ·å–VUE formOptions字符串(高级查询中的)
        /// æž„建 é«˜çº§æŸ¥è¯¢ä¸­çš„form字段
        /// </summary>
        /// <param name="columnModelList"></param>
        /// <returns></returns>
@@ -2032,6 +2053,12 @@
      el: 'input',
      disabled: disabled,
      placeholder: '请输入物料编码',
                 highSelectAttrs:{
                     prop: 'materialCode_FilterMode',
                     el: 'select',
                     placeholder: '请选择',
                     options:FILTER_MODE_OPTIONS_STRING,
                   }
    },
                 */
                //List<ColumnModel> newList = ListHelper.RemoveForPageAddFormAttributes(columnModelList);
@@ -2147,11 +2174,93 @@
                    {
                        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("                   clearable:true, \n");
                                    sb.Append("                 options: BOOLEAN_OPTIONS, \n");
                                }
                            }
                            else
                            {
                                sb.Append("                   clearable:true, \n");
                                sb.Append("                 options: BOOLEAN_OPTIONS, \n");
                            }
                            break;
                        default:
                            break;
                    }
                    //处理高级select查询
                    MyDataTypeCategorizeEnum myDataTypeCategorizeEnum = CommonHelper.GetMyDataTypeCategorizeEnum(enumDT);
                    switch (myDataTypeCategorizeEnum)
                    {
                        case MyDataTypeCategorizeEnum.布尔类:
                            sb.Append("                   highSelectAttrs:{ \n");
                            sb.Append($"                     prop: '{low_prop_ColumnName}_FilterMode', \n");
                            sb.Append("                     el: 'select',  \n");
                            sb.Append("                     placeholder: '请选择',  \n");
                            sb.Append("                     options:FILTER_MODE_OPTIONS_BOOL \n");//bool查询
                            sb.Append("                   } \n");
                            break;
                        case MyDataTypeCategorizeEnum.数字类:
                            if (param.EnumList?.Count > 0)
                            {
                                var findEnumObj = param.EnumList.Where(x => x.EnumAttrName == columnModel.ColumnName).FirstOrDefault();
                                if (findEnumObj != null)
                                {
                                    sb.Append("                   highSelectAttrs:{ \n");
                                    sb.Append($"                     prop: '{low_prop_ColumnName}_FilterMode', \n");
                                    sb.Append("                     el: 'select',  \n");
                                    sb.Append("                     placeholder: '请选择',  \n");
                                    sb.Append("                     options:FILTER_MODE_OPTIONS_BOOL \n");//bool查询
                                    sb.Append("                   } \n");
                                }
                                else
                                {
                                    sb.Append("                   highSelectAttrs:{ \n");
                                    sb.Append($"                     prop: '{low_prop_ColumnName}_FilterMode', \n");
                                    sb.Append("                     el: 'select',  \n");
                                    sb.Append("                     placeholder: '请选择',  \n");
                                    sb.Append("                     options:FILTER_MODE_OPTIONS_NUM \n");//数字类查询
                                    sb.Append("                   } \n");
                                }
                            }
                            else
                            {
                                sb.Append("                   highSelectAttrs:{ \n");
                                sb.Append($"                     prop: '{low_prop_ColumnName}_FilterMode', \n");
                                sb.Append("                     el: 'select',  \n");
                                sb.Append("                     placeholder: '请选择',  \n");
                                sb.Append("                     options:FILTER_MODE_OPTIONS_NUM \n");//数字类查询
                                sb.Append("                   } \n");
                            }
                            break;
                        case MyDataTypeCategorizeEnum.日期类:
                            //日期类 é«˜çº§ select查询没有
                            sb.Append("                   isDateControl: true, // æ˜¾å¼æ ‡è®°ä¸ºæ—¥æœŸæŽ§ä»¶ \n");
                            break;
                        default://剩余的一律认为是 å­—符串
                            sb.Append("                   highSelectAttrs:{ \n");
                            sb.Append($"                     prop: '{low_prop_ColumnName}_FilterMode', \n");
                            sb.Append("                     el: 'select',  \n");
                            sb.Append("                     placeholder: '请选择',  \n");
                            sb.Append("                     options:FILTER_MODE_OPTIONS_STRING \n");//字符串类查询
                            sb.Append("                   } \n");
                            break;
                    }
                    sb.Append("                }, \n");
                }
                //去掉最后一个,
@@ -2286,15 +2395,27 @@
                /*
                  materialCode: formData.value.materialCode,
                 */
                List<ColumnModel> newList = ListHelper.RemoveForPageTableListQueryAttributes(columnModelList);
                foreach (var columnModel in newList)
                foreach (var columnModel in columnModelList)
                {
                    //首字母小写
                    var low_prop_ColumnName = CommonHelper.FirstLowercase(columnModel.ColumnName);
                    sb.Append($"{low_prop_ColumnName}: formData.value.{low_prop_ColumnName} || '', \n");
                    //添加select高级查询
                    DataTypeEnum enumDT = (DataTypeEnum)Enum.Parse(typeof(DataTypeEnum), "dt_" + columnModel.DataType.ToString());
                    MyDataTypeCategorizeEnum myDataTypeCategorizeEnum = CommonHelper.GetMyDataTypeCategorizeEnum(enumDT);
                    switch (myDataTypeCategorizeEnum)
                    {
                        case MyDataTypeCategorizeEnum.布尔类:
                        case MyDataTypeCategorizeEnum.数字类:
                        default://剩余的一律认为是 å­—符串
                            sb.Append($"{low_prop_ColumnName}_FilterMode: formData.value.{low_prop_ColumnName}_FilterMode || '', \n");
                            break;
                        case MyDataTypeCategorizeEnum.日期类:
                            //日期类 é«˜çº§ select查询没有
                            break;
                    }
                }
                //去掉最后一个,
                var res = sb.ToString();
@@ -2479,8 +2600,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);
@@ -2497,6 +2617,46 @@
            }
        }
        public static string GetVueFormOptionsStrForPageAddFormAttributes_Query_Clear_HighSelect(List<ColumnModel> columnModelList, GenerateCodeParam param)
        {
            StringBuilder sb = new StringBuilder();
            try
            {
                /*
                  formData.value.materialCode_FilterMode = 1
                 */
                foreach (var columnModel in columnModelList)
                {
                    //首字母小写
                    var low_prop_ColumnName = CommonHelper.FirstLowercase(columnModel.ColumnName);
                    //添加select高级查询
                    DataTypeEnum enumDT = (DataTypeEnum)Enum.Parse(typeof(DataTypeEnum), "dt_" + columnModel.DataType.ToString());
                    MyDataTypeCategorizeEnum myDataTypeCategorizeEnum = CommonHelper.GetMyDataTypeCategorizeEnum(enumDT);
                    switch (myDataTypeCategorizeEnum)
                    {
                        case MyDataTypeCategorizeEnum.布尔类:
                        case MyDataTypeCategorizeEnum.数字类:
                            sb.Append($"formData.value.{low_prop_ColumnName}_FilterMode = 2 \n");//精准查询
                            break;
                        default://剩余的一律认为是 å­—符串
                            sb.Append($"formData.value.{low_prop_ColumnName}_FilterMode = 1 \n");//模糊查询
                            break;
                        case MyDataTypeCategorizeEnum.日期类:
                            //日期类 é«˜çº§ select查询没有
                            break;
                    }
                }
                //去掉最后一个,
                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();