This commit is contained in:
parent
17358bf2cd
commit
59dd327214
|
|
@ -238,12 +238,12 @@ public class GenTableServiceImpl implements IGenTableService {
|
||||||
// 获取模板列表
|
// 获取模板列表
|
||||||
List<String> templates = VelocityUtils.getTemplateList(table.getTplCategory());
|
List<String> templates = VelocityUtils.getTemplateList(table.getTplCategory());
|
||||||
for (String template : templates) {
|
for (String template : templates) {
|
||||||
if (!StringUtils.containsAny(template, "sql.vm" , "api.js.vm" , "index.vue.vm" , "index-tree.vue.vm")) {
|
if (!StringUtils.containsAny(template, "table.sql.vm" , "api.js.vm" , "index.vue.vm" , "index-tree.vue.vm")) {
|
||||||
// 渲染模板
|
// 渲染模板
|
||||||
StringWriter sw = new StringWriter();
|
StringWriter sw = new StringWriter();
|
||||||
Template tpl = Velocity.getTemplate(template, Constants.UTF8);
|
Template tpl = Velocity.getTemplate(template, Constants.UTF8);
|
||||||
tpl.merge(context, sw);
|
tpl.merge(context, sw);
|
||||||
if (template.equals("vm/sql/sql.vm")) {
|
if (template.equals("vm/sql/table.sql.vm")) {
|
||||||
Boolean start = insertMenuItem(sw);
|
Boolean start = insertMenuItem(sw);
|
||||||
if (start){
|
if (start){
|
||||||
return false;
|
return false;
|
||||||
|
|
@ -352,7 +352,7 @@ public class GenTableServiceImpl implements IGenTableService {
|
||||||
Template tpl = Velocity.getTemplate(template, Constants.UTF8);
|
Template tpl = Velocity.getTemplate(template, Constants.UTF8);
|
||||||
tpl.merge(context, sw);
|
tpl.merge(context, sw);
|
||||||
|
|
||||||
if (template.equals("vm/sql/sql.vm")) {
|
if (template.equals("vm/sql/table.sql.vm")) {
|
||||||
Boolean start = insertMenuItem(sw);
|
Boolean start = insertMenuItem(sw);
|
||||||
if (start){
|
if (start){
|
||||||
return null;
|
return null;
|
||||||
|
|
|
||||||
|
|
@ -200,11 +200,16 @@ public class InterTableServiceImpl implements InterTableService {
|
||||||
Apiclass apiclass = interTableDao.selectInterTableClass(cid);
|
Apiclass apiclass = interTableDao.selectInterTableClass(cid);
|
||||||
VelocityInitializer.initVelocity();
|
VelocityInitializer.initVelocity();
|
||||||
VelocityContext context = InterTableUtils.prepareClassContext(apiclass);
|
VelocityContext context = InterTableUtils.prepareClassContext(apiclass);
|
||||||
String templates = InterTableUtils.getTemplateList(2);
|
Map<String,String> templates = InterTableUtils.getTemplateList(2);
|
||||||
StringWriter sw = new StringWriter();
|
StringWriter sw = new StringWriter();
|
||||||
Template template = Velocity.getTemplate(templates, Constants.UTF8);
|
Template template = Velocity.getTemplate(templates.get("java"), Constants.UTF8);
|
||||||
template.merge(context,sw);
|
template.merge(context,sw);
|
||||||
dataMap.put(getJavaClassName(apiclass.getcName()),sw.toString());
|
dataMap.put(getJavaClassName(apiclass.getcName()),sw.toString());
|
||||||
|
|
||||||
|
sw = new StringWriter();
|
||||||
|
template = Velocity.getTemplate(templates.get("sql"),Constants.UTF8);
|
||||||
|
template.merge(context,sw);
|
||||||
|
dataMap.put(getSqlName(apiclass.getcName()),sw.toString());
|
||||||
return new ServerResult<Map<String, String>>(true,dataMap);
|
return new ServerResult<Map<String, String>>(true,dataMap);
|
||||||
}catch (RuntimeException e){
|
}catch (RuntimeException e){
|
||||||
logger.error(e.getMessage());
|
logger.error(e.getMessage());
|
||||||
|
|
@ -219,13 +224,17 @@ public class InterTableServiceImpl implements InterTableService {
|
||||||
List<InterTable> interTableList = interTableDao.selectInterTableModule(mid);
|
List<InterTable> interTableList = interTableDao.selectInterTableModule(mid);
|
||||||
VelocityInitializer.initVelocity();
|
VelocityInitializer.initVelocity();
|
||||||
List<VelocityContext> contextList = InterTableUtils.prepareMoudleContext(interTableList);
|
List<VelocityContext> contextList = InterTableUtils.prepareMoudleContext(interTableList);
|
||||||
String templates = InterTableUtils.getTemplateList(2);
|
Map<String,String> templates = InterTableUtils.getTemplateList(2);
|
||||||
|
StringWriter sqlsw = new StringWriter();
|
||||||
|
Template sqltemplate = Velocity.getTemplate(templates.get("sql"),Constants.UTF8);
|
||||||
for (VelocityContext context : contextList){
|
for (VelocityContext context : contextList){
|
||||||
StringWriter sw = new StringWriter();
|
StringWriter sw = new StringWriter();
|
||||||
Template template = Velocity.getTemplate(templates, Constants.UTF8);
|
Template template = Velocity.getTemplate(templates.get("java"), Constants.UTF8);
|
||||||
template.merge(context,sw);
|
template.merge(context,sw);
|
||||||
|
sqltemplate.merge(context,sqlsw);
|
||||||
dataMap.put(getJavaClassName((String) context.get("ClassName")),sw.toString());
|
dataMap.put(getJavaClassName((String) context.get("ClassName")),sw.toString());
|
||||||
}
|
}
|
||||||
|
dataMap.put(getSqlName("module"),sqlsw.toString());
|
||||||
return new ServerResult<Map<String,Object>>(true,dataMap);
|
return new ServerResult<Map<String,Object>>(true,dataMap);
|
||||||
}catch (RuntimeException e){
|
}catch (RuntimeException e){
|
||||||
logger.error(e.getMessage());
|
logger.error(e.getMessage());
|
||||||
|
|
@ -236,4 +245,7 @@ public class InterTableServiceImpl implements InterTableService {
|
||||||
public String getJavaClassName(String cName){
|
public String getJavaClassName(String cName){
|
||||||
return InterTableUtils.getUpperCase(cName) + "Controller.java";
|
return InterTableUtils.getUpperCase(cName) + "Controller.java";
|
||||||
}
|
}
|
||||||
|
public String getSqlName(String cName){
|
||||||
|
return InterTableUtils.getUpperCase(cName) + ".sql";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -1,12 +1,15 @@
|
||||||
package com.hchyun.generator.util;
|
package com.hchyun.generator.util;
|
||||||
|
|
||||||
import com.hchyun.common.utils.DateUtils;
|
import com.hchyun.common.utils.DateUtils;
|
||||||
|
import com.hchyun.common.utils.SecurityUtils;
|
||||||
import com.hchyun.generator.entity.Apiclass;
|
import com.hchyun.generator.entity.Apiclass;
|
||||||
import com.hchyun.generator.entity.InterTable;
|
import com.hchyun.generator.entity.InterTable;
|
||||||
import org.apache.velocity.VelocityContext;
|
import org.apache.velocity.VelocityContext;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
public class InterTableUtils {
|
public class InterTableUtils {
|
||||||
public static List<VelocityContext> prepareMoudleContext(List<InterTable> interTableList) {
|
public static List<VelocityContext> prepareMoudleContext(List<InterTable> interTableList) {
|
||||||
|
|
@ -56,6 +59,7 @@ public class InterTableUtils {
|
||||||
permission = true;
|
permission = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
velocityContext.put("createBy", SecurityUtils.getUserId());
|
||||||
velocityContext.put("Permission", permission);
|
velocityContext.put("Permission", permission);
|
||||||
velocityContext.put("packageName", "com.huhyun."+module);
|
velocityContext.put("packageName", "com.huhyun."+module);
|
||||||
velocityContext.put("prefix",module+":"+getLowerCase(className));
|
velocityContext.put("prefix",module+":"+getLowerCase(className));
|
||||||
|
|
@ -80,6 +84,7 @@ public class InterTableUtils {
|
||||||
permission = true;
|
permission = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
velocityContext.put("createBy", SecurityUtils.getUserId());
|
||||||
velocityContext.put("Permission", permission);
|
velocityContext.put("Permission", permission);
|
||||||
velocityContext.put("packageName", apiclass.getPackageName());
|
velocityContext.put("packageName", apiclass.getPackageName());
|
||||||
velocityContext.put("ClassName", getUpperCase(apiclass.getcName()));
|
velocityContext.put("ClassName", getUpperCase(apiclass.getcName()));
|
||||||
|
|
@ -97,11 +102,10 @@ public class InterTableUtils {
|
||||||
return "/" + getLowerCase(mname) + "/" + getLowerCase(cname);
|
return "/" + getLowerCase(mname) + "/" + getLowerCase(cname);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static String getTemplateList(Integer type) {
|
public static Map<String,String> getTemplateList(Integer type) {
|
||||||
String templates = "vm/java/class.java.vm";
|
Map<String,String> templates = new HashMap<String,String>();
|
||||||
if (type == 1) {
|
templates.put("java","vm/java/class.java.vm");
|
||||||
templates = "vm/java/module.java.vm";
|
templates.put("sql","vm/sql/class.sql.vm");
|
||||||
}
|
|
||||||
return templates;
|
return templates;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -110,6 +114,6 @@ public class InterTableUtils {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static String getLowerCase(String str) {
|
public static String getLowerCase(String str) {
|
||||||
return str.substring(0, 1).toLowerCase() + str.substring(1);
|
return str.toLowerCase();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -59,7 +59,6 @@ public class VelocityUtils {
|
||||||
velocityContext.put("packageName", packageName);
|
velocityContext.put("packageName", packageName);
|
||||||
velocityContext.put("author", genTable.getFunctionAuthor());
|
velocityContext.put("author", genTable.getFunctionAuthor());
|
||||||
velocityContext.put("datetime", DateUtils.getDate());
|
velocityContext.put("datetime", DateUtils.getDate());
|
||||||
// velocityContext.put("createTime", DateUtils.getTime());
|
|
||||||
velocityContext.put("createBy", SecurityUtils.getUserId());
|
velocityContext.put("createBy", SecurityUtils.getUserId());
|
||||||
velocityContext.put("pkColumn", genTable.getPkColumn());
|
velocityContext.put("pkColumn", genTable.getPkColumn());
|
||||||
velocityContext.put("importList", getImportList(genTable));
|
velocityContext.put("importList", getImportList(genTable));
|
||||||
|
|
@ -132,7 +131,7 @@ public class VelocityUtils {
|
||||||
templates.add("vm/java/serviceImpl.java.vm");
|
templates.add("vm/java/serviceImpl.java.vm");
|
||||||
templates.add("vm/java/controller.java.vm");
|
templates.add("vm/java/controller.java.vm");
|
||||||
templates.add("vm/xml/mapper.xml.vm");
|
templates.add("vm/xml/mapper.xml.vm");
|
||||||
templates.add("vm/sql/sql.vm");
|
templates.add("vm/sql/table.sql.vm");
|
||||||
templates.add("vm/js/api.js.vm");
|
templates.add("vm/js/api.js.vm");
|
||||||
if (GenConstants.TPL_CRUD.equals(tplCategory)) {
|
if (GenConstants.TPL_CRUD.equals(tplCategory)) {
|
||||||
templates.add("vm/vue/index.vue.vm");
|
templates.add("vm/vue/index.vue.vm");
|
||||||
|
|
@ -179,7 +178,7 @@ public class VelocityUtils {
|
||||||
fileName = StringUtils.format("{}/controller/{}Controller.java", javaPath, className);
|
fileName = StringUtils.format("{}/controller/{}Controller.java", javaPath, className);
|
||||||
} else if (template.contains("mapper.xml.vm")) {
|
} else if (template.contains("mapper.xml.vm")) {
|
||||||
fileName = StringUtils.format("{}/{}Mapper.xml", mybatisPath, className);
|
fileName = StringUtils.format("{}/{}Mapper.xml", mybatisPath, className);
|
||||||
} else if (template.contains("sql.vm")) {
|
} else if (template.contains("table.sql.vm")) {
|
||||||
fileName = businessName + "Menu.sql";
|
fileName = businessName + "Menu.sql";
|
||||||
} else if (template.contains("api.js.vm")) {
|
} else if (template.contains("api.js.vm")) {
|
||||||
fileName = StringUtils.format("{}/api/{}/{}.js", vuePath, moduleName, businessName);
|
fileName = StringUtils.format("{}/api/{}/{}.js", vuePath, moduleName, businessName);
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,18 @@
|
||||||
|
-- ${functionName}Controller
|
||||||
|
|
||||||
|
delete from sys_menu where perms= '${prefix}';
|
||||||
|
|
||||||
|
insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
|
||||||
|
values('${functionName}', 5, '1', '#','' ,1, 0, 'F', '0', '0', '${prefix}','#', ${createBy}, sysdate(), 0, null, '${functionName}接口管理');
|
||||||
|
|
||||||
|
SELECT @parentId := LAST_INSERT_ID();
|
||||||
|
#foreach($column in $columns)
|
||||||
|
#if($column.isGenerate.equals("1"))
|
||||||
|
|
||||||
|
delete from sys_menu where perms= '${prefix}:${column.requrl}';
|
||||||
|
|
||||||
|
insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
|
||||||
|
values('${column.itDescribe}', @parentId, '1', '#', '', 1, 0, 'F', '0', '0', '${prefix}:${column.requrl}', '#', ${createBy}, sysdate(), 0, null, '');
|
||||||
|
#end
|
||||||
|
#end
|
||||||
|
|
||||||
Loading…
Reference in New Issue