疯狂的狮子li
2021-08-02 cfdeada3fdb415ea451fb3fb76b96a2e7977752c
ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java
@@ -1,10 +1,11 @@
package com.ruoyi.generator.util;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.lang.Validator;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.ruoyi.common.constant.GenConstants;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.JsonUtils;
import com.ruoyi.generator.domain.GenTable;
import com.ruoyi.generator.domain.GenTableColumn;
import org.apache.velocity.VelocityContext;
@@ -12,10 +13,11 @@
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
/**
 * 模板处理工具类
 *
 *
 * @author ruoyi
 */
public class VelocityUtils
@@ -75,7 +77,7 @@
    public static void setMenuVelocityContext(VelocityContext context, GenTable genTable)
    {
        String options = genTable.getOptions();
        JSONObject paramsObj = JSONObject.parseObject(options);
      Map<String, Object> paramsObj = JsonUtils.parseMap(options);
        String parentMenuId = getParentMenuId(paramsObj);
        context.put("parentMenuId", parentMenuId);
    }
@@ -83,7 +85,7 @@
    public static void setTreeVelocityContext(VelocityContext context, GenTable genTable)
    {
        String options = genTable.getOptions();
        JSONObject paramsObj = JSONObject.parseObject(options);
      Map<String, Object> paramsObj = JsonUtils.parseMap(options);
        String treeCode = getTreecode(paramsObj);
        String treeParentCode = getTreeParentCode(paramsObj);
        String treeName = getTreeName(paramsObj);
@@ -94,11 +96,11 @@
        context.put("expandColumn", getExpandColumn(genTable));
        if (paramsObj.containsKey(GenConstants.TREE_PARENT_CODE))
        {
            context.put("tree_parent_code", paramsObj.getString(GenConstants.TREE_PARENT_CODE));
            context.put("tree_parent_code", paramsObj.get(GenConstants.TREE_PARENT_CODE));
        }
        if (paramsObj.containsKey(GenConstants.TREE_NAME))
        {
            context.put("tree_name", paramsObj.getString(GenConstants.TREE_NAME));
            context.put("tree_name", paramsObj.get(GenConstants.TREE_NAME));
        }
    }
@@ -129,6 +131,8 @@
    {
        List<String> templates = new ArrayList<String>();
        templates.add("vm/java/domain.java.vm");
        templates.add("vm/java/vo.java.vm");
      templates.add("vm/java/bo.java.vm");
        templates.add("vm/java/mapper.java.vm");
        templates.add("vm/java/service.java.vm");
        templates.add("vm/java/serviceImpl.java.vm");
@@ -176,6 +180,14 @@
        {
            fileName = StrUtil.format("{}/domain/{}.java", javaPath, className);
        }
        if (template.contains("vo.java.vm"))
        {
            fileName = StrUtil.format("{}/domain/vo/{}Vo.java", javaPath, className);
        }
      if (template.contains("bo.java.vm"))
      {
         fileName = StrUtil.format("{}/domain/bo/{}Bo.java", javaPath, className);
      }
        if (template.contains("sub-domain.java.vm") && StrUtil.equals(GenConstants.TPL_SUB, genTable.getTplCategory()))
        {
            fileName = StrUtil.format("{}/domain/{}.java", javaPath, genTable.getSubTable().getClassName());
@@ -280,11 +292,12 @@
     * @param paramsObj 生成其他选项
     * @return 上级菜单ID字段
     */
    public static String getParentMenuId(JSONObject paramsObj)
    public static String getParentMenuId(Map<String, Object> paramsObj)
    {
        if (Validator.isNotEmpty(paramsObj) && paramsObj.containsKey(GenConstants.PARENT_MENU_ID))
        if (Validator.isNotEmpty(paramsObj) && paramsObj.containsKey(GenConstants.PARENT_MENU_ID)
            && StrUtil.isNotEmpty(paramsObj.getString(GenConstants.PARENT_MENU_ID)))
        {
            return paramsObj.getString(GenConstants.PARENT_MENU_ID);
            return Convert.toStr(paramsObj.get(GenConstants.PARENT_MENU_ID));
        }
        return DEFAULT_PARENT_MENU_ID;
    }
@@ -295,11 +308,11 @@
     * @param paramsObj 生成其他选项
     * @return 树编码
     */
    public static String getTreecode(JSONObject paramsObj)
    public static String getTreecode(Map<String, Object> paramsObj)
    {
        if (paramsObj.containsKey(GenConstants.TREE_CODE))
        if (Validator.isNotEmpty(paramsObj) && paramsObj.containsKey(GenConstants.TREE_CODE))
        {
            return StrUtil.toCamelCase(paramsObj.getString(GenConstants.TREE_CODE));
            return StrUtil.toCamelCase(Convert.toStr(paramsObj.get(GenConstants.TREE_CODE)));
        }
        return StrUtil.EMPTY;
    }
@@ -310,11 +323,11 @@
     * @param paramsObj 生成其他选项
     * @return 树父编码
     */
    public static String getTreeParentCode(JSONObject paramsObj)
    public static String getTreeParentCode(Map<String, Object> paramsObj)
    {
        if (paramsObj.containsKey(GenConstants.TREE_PARENT_CODE))
        if (Validator.isNotEmpty(paramsObj) && paramsObj.containsKey(GenConstants.TREE_PARENT_CODE))
        {
            return StrUtil.toCamelCase(paramsObj.getString(GenConstants.TREE_PARENT_CODE));
            return StrUtil.toCamelCase(Convert.toStr(paramsObj.get(GenConstants.TREE_PARENT_CODE)));
        }
        return StrUtil.EMPTY;
    }
@@ -325,11 +338,11 @@
     * @param paramsObj 生成其他选项
     * @return 树名称
     */
    public static String getTreeName(JSONObject paramsObj)
    public static String getTreeName(Map<String, Object> paramsObj)
    {
        if (paramsObj.containsKey(GenConstants.TREE_NAME))
        if (Validator.isNotEmpty(paramsObj) && paramsObj.containsKey(GenConstants.TREE_NAME))
        {
            return StrUtil.toCamelCase(paramsObj.getString(GenConstants.TREE_NAME));
            return StrUtil.toCamelCase(Convert.toStr(paramsObj.get(GenConstants.TREE_NAME)));
        }
        return StrUtil.EMPTY;
    }
@@ -343,8 +356,8 @@
    public static int getExpandColumn(GenTable genTable)
    {
        String options = genTable.getOptions();
        JSONObject paramsObj = JSONObject.parseObject(options);
        String treeName = paramsObj.getString(GenConstants.TREE_NAME);
        Map<String, Object> paramsObj = JsonUtils.parseMap(options);
        String treeName = Convert.toStr(paramsObj.get(GenConstants.TREE_NAME));
        int num = 0;
        for (GenTableColumn column : genTable.getColumns())
        {