From e4adb35413061acb6ba51790d08e1b9a1d2a4d69 Mon Sep 17 00:00:00 2001 From: "wei.peng" Date: Tue, 26 Mar 2019 21:50:11 +0800 Subject: [PATCH] =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E8=A1=A8=E5=8D=95?= =?UTF-8?q?=20=E6=95=B0=E6=8D=AE=E5=AF=B9=E8=B1=A1=20=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../i3plus/pojo/base/dynamic/DynamicBean.java | 4 +- .../i3plus/pojo/base/dynamic/DynamicEntity.java | 24 +++++++++- .../pojo/base/enumutil/BlockFormEnumUtil.java | 53 ++++++++++++++++------ .../estsh/i3plus/pojo/form/bean/BfDataObject.java | 1 + .../pojo/form/bean/BfDataObjectProperty.java | 4 ++ .../pojo/form/bean/BfElementPropertyVirtual.java | 2 +- .../i3plus/pojo/model/form/SqlColumnModel.java | 5 ++ 7 files changed, 77 insertions(+), 16 deletions(-) diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/dynamic/DynamicBean.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/dynamic/DynamicBean.java index 577139e..cb05869 100644 --- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/dynamic/DynamicBean.java +++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/dynamic/DynamicBean.java @@ -46,7 +46,9 @@ public class DynamicBean { * @param value */ public void setValue(String property, Object value) { - beanMap.put(property, value); + if(!beanMap.containsKey(property)){ + beanMap.put(property, value); + } } /** diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/dynamic/DynamicEntity.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/dynamic/DynamicEntity.java index c8006b8..f9437db 100644 --- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/dynamic/DynamicEntity.java +++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/dynamic/DynamicEntity.java @@ -14,6 +14,7 @@ import java.lang.reflect.Method; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; +import java.util.Date; import java.util.List; import java.util.Map; @@ -158,20 +159,41 @@ public class DynamicEntity extends BaseBean implements Serializable { fieldVal = 0.0f; } else if (f.getType() == Double.class) { fieldVal = 0.0d; - } else { + } else if (f.getType() == String.class) { + fieldVal = ""; + }else if (f.getType() == Character.class) { + fieldVal = ""; + }else if (f.getType() == Boolean.class) { + fieldVal = true; + }else if (f.getType() == Byte.class) { + fieldVal = 0; + }else if (f.getType() == Date.class) { + fieldVal = new Date(); + }else { fieldVal = ""; } } try { setMethod = this.getClass().getDeclaredMethod(setMethodName, new Class[]{f.getType()}); + System.out.println("Method Name:" + setMethod.getName() + "\t\t Value : " + fieldVal); setMethod.invoke(this, fieldVal); + } catch (ClassCastException e) { + e.printStackTrace(); + LOGGER.error("ClassCastException :{}", setMethodName, e); + } catch (IllegalArgumentException e) { + e.printStackTrace(); + LOGGER.error("IllegalArgumentException :{}", setMethodName, e); } catch (NoSuchMethodException e) { LOGGER.error("没有方法:{}", setMethodName, e); } catch (IllegalAccessException e) { LOGGER.error("入参出错:{}:{}:{}", f, f.getType(), fieldVal, e); } catch (InvocationTargetException e) { LOGGER.error("方法返回出错:{}", setMethodName, e); + }catch (RuntimeException e) { + LOGGER.error("RuntimeException :{}", setMethodName, e); + }catch (Exception e) { + LOGGER.error("Exception :{}", setMethodName, e); } } } diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/BlockFormEnumUtil.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/BlockFormEnumUtil.java index c6a518e..6cef54a 100644 --- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/BlockFormEnumUtil.java +++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/BlockFormEnumUtil.java @@ -1,6 +1,9 @@ package cn.estsh.i3plus.pojo.base.enumutil; import com.fasterxml.jackson.annotation.JsonFormat; +import javafx.scene.chart.Chart; + +import java.util.Date; /** * @Description : 模块表单枚举类 @@ -805,7 +808,7 @@ public class BlockFormEnumUtil { * 虚拟类型信息 */ @JsonFormat(shape = JsonFormat.Shape.OBJECT) - public enum PROPERTY_VIRTUAL_TYPE { + public enum PROPERTY_VIRTUAL_OPERATE_TYPE { STRING_SPLICE(10, "SPLICE", "字符串拼接"), NUM_ADD(20, "ADD", "加法计算"), NUM_LESS(30, "MIN", "减法计算"), @@ -816,7 +819,7 @@ public class BlockFormEnumUtil { private String code; private String description; - private PROPERTY_VIRTUAL_TYPE(int value, String code, String description) { + private PROPERTY_VIRTUAL_OPERATE_TYPE(int value, String code, String description) { this.value = value; this.code = code; this.description = description; @@ -864,7 +867,7 @@ public class BlockFormEnumUtil { return tmp; } - public static PROPERTY_VIRTUAL_TYPE valueOf(int val) { + public static PROPERTY_VIRTUAL_OPERATE_TYPE valueOf(int val) { String tmp = null; for (int i = 0; i < values().length; i++) { if (values()[i].value == val) { @@ -890,24 +893,28 @@ public class BlockFormEnumUtil { */ @JsonFormat(shape = JsonFormat.Shape.OBJECT) public enum PROPERTY_TYPE { - STRING(10, "String", "字符串"), - CHAR(11, "Character", "单字符"), - INTEGER(20, "Integer", "短整型"), - LONG(21, "Long", "长整型"), - DOUBLE(30, "Double", "大浮点型"), - FLOAT(31, "Float", "小浮点型"), - BOOLEAN(40, "Boolean", "布尔值"), - BYTE(50, "Byte", "字节"), - DATE(60, "Date", "日期"); + STRING(10, "String", "字符串", "java.lang.String", String.class), + CHAR(11, "Character", "单字符", "java.lang.Character", Character.class), + INTEGER(20, "Integer", "短整型", "java.lang.Integer", Integer.class), + LONG(21, "Long", "长整型", "java.lang.Long", Long.class), + DOUBLE(30, "Double", "大浮点型", "java.lang.Double", Double.class), + FLOAT(31, "Float", "小浮点型", "java.lang.Float", Float.class), + BOOLEAN(40, "Boolean", "布尔值", "java.lang.Boolean", Boolean.class), + BYTE(50, "Byte", "字节", "java.lang.Byte", Byte.class), + DATE(60, "Date", "日期", "java.sql.Timestamp", Date.class); private int value; private String code; private String description; + private String classPath; + private Class clzFullName; - private PROPERTY_TYPE(int value, String code, String description) { + private PROPERTY_TYPE(int value, String code, String description,String classPath,Class clzFullName) { this.value = value; this.code = code; this.description = description; + this.classPath = classPath; + this.clzFullName = clzFullName; } public int getValue() { @@ -932,6 +939,16 @@ public class BlockFormEnumUtil { return tmp; } + public static Class valueOfClzFullName(int val) { + Class tmp = null; + for (int i = 0; i < values().length; i++) { + if (values()[i].value == val) { + tmp = values()[i].clzFullName; + } + } + return tmp; + } + public static int codeOfValue(String code) { int tmp = 1; for (int i = 0; i < values().length; i++) { @@ -942,6 +959,16 @@ public class BlockFormEnumUtil { return tmp; } + public static int codeOfClassPath(String classPath) { + int tmp = 1; + for (int i = 0; i < values().length; i++) { + if (values()[i].classPath.equals(classPath)) { + tmp = values()[i].value; + } + } + return tmp; + } + public static String valueOfDescription(int val) { String tmp = null; for (int i = 0; i < values().length; i++) { diff --git a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfDataObject.java b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfDataObject.java index 496d6f8..4953b67 100644 --- a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfDataObject.java +++ b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfDataObject.java @@ -67,4 +67,5 @@ public class BfDataObject extends BaseBean { @ApiParam(value = "数据对象属性") @AnnoOutputColumn(hidden = true) private List propertyList; + } diff --git a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfDataObjectProperty.java b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfDataObjectProperty.java index 5f6c074..fbedb77 100644 --- a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfDataObjectProperty.java +++ b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfDataObjectProperty.java @@ -64,6 +64,10 @@ public class BfDataObjectProperty extends BaseBean { @ApiParam(value ="属性类型") private Integer propertyType; + @Column(name="PROPERTY_TYPE_NAME_RDD") + @ApiParam(value ="属性类型名称") + private String propertyTypeNameRdd; + @Column(name="PROPERTY_DESCRIPTION") @ApiParam(value ="属性描述") private String propertyDescription; diff --git a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfElementPropertyVirtual.java b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfElementPropertyVirtual.java index 01ccdb7..00e71ce 100644 --- a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfElementPropertyVirtual.java +++ b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfElementPropertyVirtual.java @@ -38,7 +38,7 @@ public class BfElementPropertyVirtual extends BaseBean { @JsonSerialize(using = ToStringSerializer.class) private Long elementId; - @Column(name = "PROPERTY_VIRTUAL_TYPE") + @Column(name = "PROPERTY_VIRTUAL_OPERATE_TYPE") @ApiParam(value = "虚拟元素类型") private Integer propertyVirtualType; diff --git a/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/form/SqlColumnModel.java b/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/form/SqlColumnModel.java index 81f736e..9c50dec 100644 --- a/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/form/SqlColumnModel.java +++ b/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/form/SqlColumnModel.java @@ -48,5 +48,10 @@ public class SqlColumnModel { // 字段Java 类型 @ApiParam(value = "字段Java 类型") private String columnClassName; + // 字段Java 类型 + @ApiParam(value = "枚举:BlockFormEnumUtil.PROPERTY_TYPE") + private Integer columnClassType; + + }