소스 검색

优化动态表单字典配置

zhouhao 7 년 전
부모
커밋
5c0a378799

+ 1 - 2
hsweb-system/hsweb-system-dynamic-form/hsweb-system-dynamic-form-dao/hsweb-system-dynamic-form-dao-mybatis/src/main/resources/org/hswebframework/web/dao/mybatis/mappers/form/DynamicFormColumnMapper.xml

@@ -16,8 +16,7 @@
         <result property="length" column="length" javaType="Integer" jdbcType="DECIMAL"/>
         <result property="precision" column="precision" javaType="Integer" jdbcType="DECIMAL"/>
         <result property="scale" column="scale" javaType="Integer" jdbcType="DECIMAL"/>
-        <result property="dictId" column="dict_id" javaType="String" jdbcType="VARCHAR"/>
-        <result property="dictParserId" column="dict_parser_id" javaType="String" jdbcType="VARCHAR"/>
+        <result property="dictConfig" column="dict_config" javaType="String" jdbcType="CLOB"/>
         <result property="properties" column="properties" javaType="java.util.Map" jdbcType="CLOB"/>
     </resultMap>
 

+ 13 - 0
hsweb-system/hsweb-system-dynamic-form/hsweb-system-dynamic-form-entity/src/main/java/org/hswebframework/web/entity/form/DynamicFormColumnEntity.java

@@ -58,6 +58,11 @@ public interface DynamicFormColumnEntity extends GenericEntity<String> {
      */
     String scale      = "scale";
 
+    /**
+     * 数据字典配置
+     */
+    String dictConfig = "dictConfig";
+
     /**
      * 字典ID
      */
@@ -188,11 +193,19 @@ public interface DynamicFormColumnEntity extends GenericEntity<String> {
      */
     void setScale(Integer scale);
 
+    @Deprecated
     String getDictId();
 
+    @Deprecated
     void setDictId(String dictId);
 
+    @Deprecated
     String getDictParserId();
 
+    @Deprecated
     void setDictParserId(String dictParserId);
+
+    void setDictConfig(String dictConfig);
+
+    String getDictConfig();
 }

+ 13 - 0
hsweb-system/hsweb-system-dynamic-form/hsweb-system-dynamic-form-entity/src/main/java/org/hswebframework/web/entity/form/SimpleDynamicFormColumnEntity.java

@@ -35,6 +35,9 @@ public class SimpleDynamicFormColumnEntity extends SimpleGenericEntity<String> i
     //字典解析器ID
     private String  dictParserId;
 
+    //数据字典配置
+    private String dictConfig;
+
     /**
      * @return 表单ID
      */
@@ -204,4 +207,14 @@ public class SimpleDynamicFormColumnEntity extends SimpleGenericEntity<String> i
     public void setDictParserId(String dictParserId) {
         this.dictParserId = dictParserId;
     }
+
+    @Override
+    public String getDictConfig() {
+        return dictConfig;
+    }
+
+    @Override
+    public void setDictConfig(String dictConfig) {
+        this.dictConfig = dictConfig;
+    }
 }

+ 2 - 2
hsweb-system/hsweb-system-dynamic-form/hsweb-system-dynamic-form-service/hsweb-system-dynamic-form-service-api/src/main/java/org/hswebframework/web/service/form/OptionalConvertBuilder.java

@@ -1,12 +1,12 @@
 package org.hswebframework.web.service.form;
 
 import org.hsweb.ezorm.core.OptionConverter;
+import org.hswebframework.web.entity.form.DynamicFormColumnEntity;
 
 /**
- * TODO 完成注释
  *
  * @author zhouhao
  */
 public interface OptionalConvertBuilder {
-    OptionConverter buildFromDict(String dictId, String dictParserId);
+    OptionConverter build(DynamicFormColumnEntity columnEntity);
 }

+ 4 - 5
hsweb-system/hsweb-system-dynamic-form/hsweb-system-dynamic-form-starter/src/main/resources/hsweb-starter.js

@@ -52,17 +52,16 @@ function install(context) {
         .addColumn().name("precision").alias("precision").comment("精度").jdbcType(java.sql.JDBCType.DECIMAL).length(4, 0).commit()
         .addColumn().name("scale").alias("scale").comment("小数点位数").jdbcType(java.sql.JDBCType.DECIMAL).length(4, 0).commit()
         .addColumn().name("properties").alias("properties").comment("其他配置").jdbcType(java.sql.JDBCType.CLOB).commit()
-        .addColumn().name("dict_id").alias("dictId").comment("字典ID").jdbcType(java.sql.JDBCType.VARCHAR).length(32).commit()
-        .addColumn().name("dict_parser_id").alias("dictParserId").comment("字典解析器ID").jdbcType(java.sql.JDBCType.VARCHAR).length(32).commit()
+        .addColumn().name("dict_config").alias("dictConfig").comment("字典配置").jdbcType(java.sql.JDBCType.CLOB).commit()
         .comment("动态表单列").commit();
 
     database.createOrAlter("s_dyn_form_log")
         .addColumn().name("u_id").alias("id").comment("ID").jdbcType(java.sql.JDBCType.VARCHAR).length(32).primaryKey().commit()
         .addColumn().name("form_id").alias("formId").comment("表单ID").jdbcType(java.sql.JDBCType.VARCHAR).length(32).commit()
-        .addColumn().name("version").alias("version").comment("发布的版本").jdbcType(java.sql.JDBCType.NUMERIC).length(32,0).commit()
-        .addColumn().name("deploy_time").alias("deployTime").comment("发布时间").jdbcType(java.sql.JDBCType.DECIMAL).length(32,0).commit()
+        .addColumn().name("version").alias("version").comment("发布的版本").jdbcType(java.sql.JDBCType.NUMERIC).length(32, 0).commit()
+        .addColumn().name("deploy_time").alias("deployTime").comment("发布时间").jdbcType(java.sql.JDBCType.DECIMAL).length(32, 0).commit()
         .addColumn().name("meta_data").alias("metaData").comment("部署的元数据").jdbcType(java.sql.JDBCType.CLOB).commit()
-        .addColumn().name("status").alias("status").comment("状态").jdbcType(java.sql.JDBCType.NUMERIC).length(4,0).commit()
+        .addColumn().name("status").alias("status").comment("状态").jdbcType(java.sql.JDBCType.NUMERIC).length(4, 0).commit()
         .comment("表单发布日志").commit();
 }
 //设置依赖