From 15dd345744c56e880ab9b01e45e73da2ff0d1a04 Mon Sep 17 00:00:00 2001 From: sunquan <287962685@qq.com> Date: Mon, 6 Jul 2026 17:48:08 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E8=A1=A5=E5=9C=A8=E7=BA=BF=E8=A1=A8?= =?UTF-8?q?=E5=8D=95=E6=8E=A7=E4=BB=B6=E5=92=8C=E6=95=B0=E6=8D=AE=E5=BA=93?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/online/util/WidgetFieldTypeMapping.java | 87 ++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 common/common-online/src/main/java/apelet/common/online/util/WidgetFieldTypeMapping.java diff --git a/common/common-online/src/main/java/apelet/common/online/util/WidgetFieldTypeMapping.java b/common/common-online/src/main/java/apelet/common/online/util/WidgetFieldTypeMapping.java new file mode 100644 index 0000000..50d6801 --- /dev/null +++ b/common/common-online/src/main/java/apelet/common/online/util/WidgetFieldTypeMapping.java @@ -0,0 +1,87 @@ +package apelet.common.online.util; + +import java.util.HashMap; +import java.util.Map; + +public class WidgetFieldTypeMapping { + + private WidgetFieldTypeMapping() { + } + + private static final Map WIDGET_TO_FIELD_TYPE = new HashMap<>(); + private static final Map DEFAULT_LENGTH = new HashMap<>(); + + static { + // 文本输入框 → varchar + WIDGET_TO_FIELD_TYPE.put(1, "0"); + DEFAULT_LENGTH.put(1, 255); + // 数字输入框 → int + WIDGET_TO_FIELD_TYPE.put(3, "1"); + // 开关组件 → int + WIDGET_TO_FIELD_TYPE.put(5, "1"); + // 滑块组件 → decimal + WIDGET_TO_FIELD_TYPE.put(6, "4"); + // 单选组件 → varchar + WIDGET_TO_FIELD_TYPE.put(7, "0"); + DEFAULT_LENGTH.put(7, 255); + // 复选框 → varchar + WIDGET_TO_FIELD_TYPE.put(8, "0"); + DEFAULT_LENGTH.put(8, 255); + // 下拉选择框 → varchar + WIDGET_TO_FIELD_TYPE.put(10, "0"); + DEFAULT_LENGTH.put(10, 255); + // 级联选择框 → varchar + WIDGET_TO_FIELD_TYPE.put(12, "0"); + DEFAULT_LENGTH.put(12, 255); + // 树形选择 → varchar + WIDGET_TO_FIELD_TYPE.put(13, "0"); + DEFAULT_LENGTH.put(13, 255); + // 评分组件 → int + WIDGET_TO_FIELD_TYPE.put(14, "1"); + DEFAULT_LENGTH.put(14, 5); + // 日期选择框 → datetime + WIDGET_TO_FIELD_TYPE.put(20, "3"); + // 颜色选择 → varchar + WIDGET_TO_FIELD_TYPE.put(30, "0"); + DEFAULT_LENGTH.put(30, 50); + // 附件上传 → varchar + WIDGET_TO_FIELD_TYPE.put(31, "0"); + DEFAULT_LENGTH.put(31, 255); + // 图片上传 → varchar + WIDGET_TO_FIELD_TYPE.put(653, "0"); + DEFAULT_LENGTH.put(653, 255); + // 富文本编辑 → varchar(2000) + WIDGET_TO_FIELD_TYPE.put(32, "0"); + DEFAULT_LENGTH.put(32, 2000); + // MD编辑器 → varchar(2000) + WIDGET_TO_FIELD_TYPE.put(760, "0"); + DEFAULT_LENGTH.put(760, 2000); + // 用户选择 → bigint + WIDGET_TO_FIELD_TYPE.put(400, "2"); + // 部门选择 → bigint + WIDGET_TO_FIELD_TYPE.put(401, "2"); + // 关联选择 → bigint + WIDGET_TO_FIELD_TYPE.put(402, "2"); + // 时间选择器 → datetime + WIDGET_TO_FIELD_TYPE.put(652, "3"); + // 文件上传 → varchar + WIDGET_TO_FIELD_TYPE.put(750, "0"); + DEFAULT_LENGTH.put(750, 255); + } + + public static String getFieldTypeId(Integer widgetType) { + String type = WIDGET_TO_FIELD_TYPE.get(widgetType); + if (type == null) { + throw new IllegalArgumentException("不支持的控件类型: " + widgetType); + } + return type; + } + + public static Integer getDefaultLength(Integer widgetType) { + return DEFAULT_LENGTH.get(widgetType); + } + + public static boolean isDataWidget(Integer widgetType) { + return WIDGET_TO_FIELD_TYPE.containsKey(widgetType); + } +}