Browse Source

代码生成

fanxp 1 year ago
parent
commit
4ca72c498a

+ 48 - 0
src/main/java/com/xjrsoft/common/utils/JdbcToJavaUtil.java

@@ -57,4 +57,52 @@ public class JdbcToJavaUtil {
         }
     }
 
+    /**
+     * 根据jdbc类型 返回java类型字符串(自定义日期)
+     */
+    public static String getClassName(JdbcType type, int dateType) {
+
+        switch (type) {
+            case BIT:
+                return "Boolean";
+            case TINYINT:
+                return "Byte";
+            case SMALLINT:
+                return "Short";
+            case INTEGER:
+                return "Integer";
+            case BIGINT:
+                return "Long";
+            case FLOAT:
+                return "Float";
+            case REAL:
+            case DOUBLE:
+                return "Double";
+            case NUMERIC:
+            case DECIMAL:
+                return "BigDecimal";
+            case CHAR:
+            case VARCHAR:
+            case LONGVARCHAR:
+                return "String";
+            case DATE:
+            case TIMESTAMP:
+                if (dateType == 0) {
+                    return "LocalDateTime";
+                } else {
+                    return "Date";
+                }
+            case TIME:
+                return "LocalTime";
+            case BINARY:
+            case VARBINARY:
+            case LONGVARBINARY:
+                return "Byte[]";
+            case DATETIMEOFFSET:
+            default:
+                return "Object";
+
+        }
+    }
+
 }

+ 5 - 5
src/main/java/com/xjrsoft/module/generator/service/impl/ApiGeneratorServiceImpl.java

@@ -185,7 +185,7 @@ public class ApiGeneratorServiceImpl implements IApiGeneratorService {
                 }
                 fieldConfig.setFieldComment(column.getComment());
                 fieldConfig.setPk(column.isPk());
-                fieldConfig.setFieldType(JdbcToJavaUtil.getClassName(column.getTypeEnum()));
+                fieldConfig.setFieldType(JdbcToJavaUtil.getClassName(column.getTypeEnum(),1));
                 fieldConfig.setFieldName(StrUtil.toCamelCase(column.getName()));
 
                 fieldConfigList.add(fieldConfig);
@@ -444,7 +444,7 @@ public class ApiGeneratorServiceImpl implements IApiGeneratorService {
                                 !StrUtil.equalsIgnoreCase(column.getName(), GlobalConstant.DELETE_MARK) &&
                                 !StrUtil.equalsIgnoreCase(column.getName(), GlobalConstant.DELETE_MARK)
                 ) {
-                    String fieldType = JdbcToJavaUtil.getClassName(column.getTypeEnum());
+                    String fieldType = JdbcToJavaUtil.getClassName(column.getTypeEnum(),1);
                     fieldConfig.setFieldComment(column.getComment());
                     fieldConfig.setPk(false);
                     fieldConfig.setFieldType(fieldType);
@@ -540,7 +540,7 @@ public class ApiGeneratorServiceImpl implements IApiGeneratorService {
                                 !StrUtil.equalsIgnoreCase(column.getName(), GlobalConstant.DELETE_MARK) &&
                                 !StrUtil.equalsIgnoreCase(column.getName(), GlobalConstant.DELETE_MARK)
                 ) {
-                    String fieldType = JdbcToJavaUtil.getClassName(column.getTypeEnum());
+                    String fieldType = JdbcToJavaUtil.getClassName(column.getTypeEnum(),1);
                     fieldConfig.setFieldComment(column.getComment());
                     fieldConfig.setPk(false);
                     fieldConfig.setFieldType(fieldType);
@@ -633,7 +633,7 @@ public class ApiGeneratorServiceImpl implements IApiGeneratorService {
 
                     fieldConfig.setFieldComment(column.getComment());
                     fieldConfig.setPk(false);
-                    fieldConfig.setFieldType(JdbcToJavaUtil.getClassName(column.getTypeEnum()));
+                    fieldConfig.setFieldType(JdbcToJavaUtil.getClassName(column.getTypeEnum(),1));
                     fieldConfig.setFieldName(StrUtil.toCamelCase(column.getName()));
 
                     fieldConfigList.add(fieldConfig);
@@ -762,7 +762,7 @@ public class ApiGeneratorServiceImpl implements IApiGeneratorService {
             fieldConfig.setLabel(column.getComment());
             fieldConfig.setPk(false);
             //如果是主键 就默认使用字符串类型 前端无法识别long类型的精度
-            fieldConfig.setFieldType(column.isPk() ? "String" : JdbcToJavaUtil.getClassName(column.getTypeEnum()));
+            fieldConfig.setFieldType(column.isPk() ? "String" : JdbcToJavaUtil.getClassName(column.getTypeEnum(),1));
             fieldConfig.setFieldName(StrUtil.toCamelCase(column.getName()));
             fieldConfigList.add(fieldConfig);
         }

+ 2 - 6
src/main/java/com/xjrsoft/module/liteflow/node/WfOaPullNode.java

@@ -21,12 +21,8 @@ public class WfOaPullNode extends NodeComponent {
     public void process() throws Exception {
         // 获取表单中数据编号
         Map<String, Object> params = this.getFirstContextBean();
-        Optional<String> formKey = params.keySet().stream().filter(f -> f.contains("form_")).findFirst();
-        if (formKey.isPresent()) {
-            Map<String, Object> formData = (Map<String, Object>) params.get(formKey.get());
-            Long id = (Long) formData.get("id");
-            System.out.println(id);
-        }
+        Long formId = util.getFormDataId(params);
+
         System.out.println("wf_oa_pull_node");
     }
 }

+ 29 - 5
src/main/java/com/xjrsoft/module/liteflow/node/util.java

@@ -1,10 +1,34 @@
 package com.xjrsoft.module.liteflow.node;
 
+import java.util.Map;
+import java.util.Optional;
+
 public class util {
 
-//    public Long getFormDataId() {
-//
-//    }
-//
-//    public Map<>
+    /**
+     * 获取表单主键
+     *
+     * @return
+     */
+    public static Long getFormDataId(Map<String, Object> params) {
+        if (params != null) {
+            Long id = (Long) params.get("id");
+            return id;
+        }
+        return null;
+    }
+
+    /**
+     * 获取表单数据
+     *
+     * @param params
+     * @return
+     */
+    public static Map<String, Object> getFormData(Map<String, Object> params) {
+        Optional<String> formKey = params.keySet().stream().filter(f -> f.contains("form_")).findFirst();
+        if (formKey.isPresent()) {
+            return (Map<String, Object>) params.get(formKey.get());
+        }
+        return null;
+    }
 }