diff --git a/server/like-generator/src/main/java/com/mdd/generator/entity/GenTableColumn.java b/server/like-generator/src/main/java/com/mdd/generator/entity/GenTableColumn.java index d4c81bd1..ea4bf88d 100644 --- a/server/like-generator/src/main/java/com/mdd/generator/entity/GenTableColumn.java +++ b/server/like-generator/src/main/java/com/mdd/generator/entity/GenTableColumn.java @@ -19,7 +19,7 @@ public class GenTableColumn implements Serializable { private Integer tableId; private String columnName; private String columnComment; - private Integer columnLength; + private String columnLength; private String columnType; private String javaType; private String javaField; diff --git a/server/like-generator/src/main/java/com/mdd/generator/service/impl/GenerateServiceImpl.java b/server/like-generator/src/main/java/com/mdd/generator/service/impl/GenerateServiceImpl.java index ce2b3afe..b8187016 100644 --- a/server/like-generator/src/main/java/com/mdd/generator/service/impl/GenerateServiceImpl.java +++ b/server/like-generator/src/main/java/com/mdd/generator/service/impl/GenerateServiceImpl.java @@ -188,6 +188,9 @@ public class GenerateServiceImpl implements IGenerateService { public void importTable(String[] tableNames) { try { List tables = genTableMapper.selectDbTableListByNames(tableNames); + if (tables.size() <= 0) { + throw new Exception("表不存在!"); + } for (DbTableVo map : tables) { // 生成表信息 GenTable table = new GenTable(); @@ -198,10 +201,12 @@ public class GenerateServiceImpl implements IGenerateService { if (row > 0) { String tableName = map.getTableName(); List genTableColumns = genTableMapper.selectDbTableColumnsByName(tableName); + System.out.println("有没有来iih"); for (GenTableColumn column : genTableColumns) { GenUtil.initColumn(column, table); genTableColumnMapper.insert(column); } + System.out.println("应该没来吧"); } } } catch (Exception e) { @@ -372,7 +377,7 @@ public class GenerateServiceImpl implements IGenerateService { Template tpl = Velocity.getTemplate(template, GenConstants.UTF8); tpl.merge(context, sw); map.put(template.replace(".vm", ""), sw.toString()); - // System.out.println(sw); + System.out.println(sw); } return map; diff --git a/server/like-generator/src/main/java/com/mdd/generator/util/GenUtil.java b/server/like-generator/src/main/java/com/mdd/generator/util/GenUtil.java index 3c4c505d..61dca2b3 100644 --- a/server/like-generator/src/main/java/com/mdd/generator/util/GenUtil.java +++ b/server/like-generator/src/main/java/com/mdd/generator/util/GenUtil.java @@ -58,8 +58,8 @@ public class GenUtil { // 文本域组 if (GenUtil.isArraysContains(SqlConstants.COLUMN_TYPE_STR, columnType) || GenUtil.isArraysContains(SqlConstants.COLUMN_TYPE_TEXT, columnType)) { - Integer columnLength = GenUtil.getColumnLength(column.getColumnType()); - String htmlType = columnLength >= 500 || GenUtil.isArraysContains(SqlConstants.COLUMN_TYPE_TEXT, columnType) + String columnLength = GenUtil.getColumnLength(column.getColumnType()); + String htmlType = Integer.parseInt(columnLength) >= 500 || GenUtil.isArraysContains(SqlConstants.COLUMN_TYPE_TEXT, columnType) ? HtmlConstants.HTML_TEXTAREA : HtmlConstants.HTML_INPUT; column.setHtmlType(htmlType); @@ -241,13 +241,12 @@ public class GenUtil { * @param columnType 列类型 * @return 截取后的列类型 */ - public static Integer getColumnLength(String columnType) { + public static String getColumnLength(String columnType) { if (StringUtil.indexOf(columnType, "(") > 0) { - String length = StringUtil.substringBetween(columnType, "(", ")"); - return Integer.valueOf(length); + return StringUtil.substringBetween(columnType, "(", ")"); } else { - return 0; + return ""; } } diff --git a/server/like-generator/src/main/java/com/mdd/generator/util/VelocityUtil.java b/server/like-generator/src/main/java/com/mdd/generator/util/VelocityUtil.java index 730f9c4a..6b1ef7cb 100644 --- a/server/like-generator/src/main/java/com/mdd/generator/util/VelocityUtil.java +++ b/server/like-generator/src/main/java/com/mdd/generator/util/VelocityUtil.java @@ -40,8 +40,9 @@ public class VelocityUtil { * @return VelocityContext */ public static VelocityContext prepareContext(GenTable table, List columns) { - boolean isSearch = false; // 是否需要搜索 - String primaryKey = "id"; // 主键字段名称 + boolean isSearch = false; // 是否需要搜索 + String primaryKey = "id"; // 主键字段名称 + String primaryField = "id"; // 主键字段 List allFields = new LinkedList<>(); // 所有字段 List listFields = new LinkedList<>(); // 列表字段 List detailFields = new LinkedList<>(); // 详情字段 @@ -59,6 +60,7 @@ public class VelocityUtil { } if (column.getIsPk() == 1) { primaryKey = column.getJavaField(); + primaryField = column.getColumnName(); } if (StringUtil.isNotEmpty(column.getDictType()) && !dictFields.contains(column.getDictType())) { dictFields.add(column.getDictType()); @@ -79,6 +81,7 @@ public class VelocityUtil { velocityContext.put("columns", columns); velocityContext.put("dateFields", SqlConstants.COLUMN_TIME_NAME); velocityContext.put("primaryKey", primaryKey); + velocityContext.put("primaryField", primaryField); velocityContext.put("allFields", allFields); velocityContext.put("listFields", listFields); velocityContext.put("detailFields", detailFields); @@ -110,23 +113,23 @@ public class VelocityUtil { */ public static List getTemplateList(String genTpl, List columns) { List templates = new LinkedList<>(); - templates.add("java/controller.java.vm"); - templates.add("java/entity.java.vm"); - templates.add("java/mapper.java.vm"); - templates.add("java/service.java.vm"); - templates.add("java/serviceImpl.java.vm"); - templates.add("java/validate.java.vm"); +// templates.add("java/controller.java.vm"); +// templates.add("java/entity.java.vm"); +// templates.add("java/mapper.java.vm"); +// templates.add("java/service.java.vm"); +// templates.add("java/serviceImpl.java.vm"); +// templates.add("java/validate.java.vm"); templates.add("java/voList.java.vm"); - templates.add("java/voDetail.java.vm"); - templates.add("vue/api.ts.vm"); - templates.add("vue/edit.vue.vm"); - if (GenConstants.TPL_CRUD.equals(genTpl)) { - templates.add("vue/index.vue.vm"); - } - - else if (GenConstants.TPL_TREE.equals(genTpl)) { - templates.add("vue/index-tree.vue.vm"); - } +// templates.add("java/voDetail.java.vm"); +// templates.add("vue/api.ts.vm"); +// templates.add("vue/edit.vue.vm"); +// if (GenConstants.TPL_CRUD.equals(genTpl)) { +// templates.add("vue/index.vue.vm"); +// } +// +// else if (GenConstants.TPL_TREE.equals(genTpl)) { +// templates.add("vue/index-tree.vue.vm"); +// } return templates; } diff --git a/server/like-generator/src/main/resources/java/controller.java.vm b/server/like-generator/src/main/resources/java/controller.java.vm index f926b598..1482a163 100644 --- a/server/like-generator/src/main/resources/java/controller.java.vm +++ b/server/like-generator/src/main/resources/java/controller.java.vm @@ -117,7 +117,8 @@ public class ${EntityName}Controller { @Log(title = "${functionName}删除") @PostMapping("/del") public Object del(@Validated(value = ${EntityName}Param.delete.class) @RequestBody ${EntityName}Param ${entityName}Param) { - i${EntityName}Service.del(${entityName}Param.getId()); + #set($AttrName=$primaryKey.substring(0,1).toUpperCase() + ${primaryKey.substring(1)}) + i${EntityName}Service.del(${entityName}Param.get${AttrName}()); return AjaxResult.success(); } diff --git a/server/like-generator/src/main/resources/java/serviceImpl.java.vm b/server/like-generator/src/main/resources/java/serviceImpl.java.vm index 8b320561..96b8a0b3 100644 --- a/server/like-generator/src/main/resources/java/serviceImpl.java.vm +++ b/server/like-generator/src/main/resources/java/serviceImpl.java.vm @@ -88,9 +88,9 @@ public class ${EntityName}ServiceImpl implements I${EntityName}Service { mpjQueryWrapper.eq("is_delete", 0); #end #if($allFields.contains("sort")) - mpjQueryWrapper.orderByDesc(Arrays.asList("sort", "id")); + mpjQueryWrapper.orderByDesc(Arrays.asList("sort", "${primaryField}")); #else - mpjQueryWrapper.orderByDesc("id"); + mpjQueryWrapper.orderByDesc("${primaryField}"); #end #else #set($queryWrapper = "queryWrapper") @@ -99,9 +99,9 @@ public class ${EntityName}ServiceImpl implements I${EntityName}Service { queryWrapper.eq("is_delete", 0); #end #if($allFields.contains("sort")) - queryWrapper.orderByDesc(Arrays.asList("sort", "id")); + queryWrapper.orderByDesc(Arrays.asList("sort", "${primaryField}")); #else - queryWrapper.orderByDesc("id"); + queryWrapper.orderByDesc("${primaryField}"); #end #end @@ -264,7 +264,7 @@ public class ${EntityName}ServiceImpl implements I${EntityName}Service { public ${EntityName}DetailVo detail(Integer id) { ${EntityName} model = ${entityName}Mapper.selectOne( new QueryWrapper<${EntityName}>() - .eq("id", id) + .eq("${primaryField}", id) #if($allFields.contains("is_delete")) .eq("is_delete", 0) #end @@ -346,9 +346,10 @@ public class ${EntityName}ServiceImpl implements I${EntityName}Service { */ @Override public void edit(${EntityName}Param ${entityName}Param) { + #set($AttrName=$primaryKey.substring(0,1).toUpperCase() + ${primaryKey.substring(1)}) ${EntityName} model = ${entityName}Mapper.selectOne( new QueryWrapper<${EntityName}>() - .eq("id", ${entityName}Param.getId()) + .eq("${primaryField}", ${entityName}Param.get${AttrName}()) #if($allFields.contains("is_delete")) .eq("is_delete", 0) #end @@ -383,7 +384,7 @@ public class ${EntityName}ServiceImpl implements I${EntityName}Service { public void del(Integer id) { ${EntityName} model = ${entityName}Mapper.selectOne( new QueryWrapper<${EntityName}>() - .eq("id", id) + .eq("${primaryField}", id) #if($allFields.contains("is_delete")) .eq("is_delete", 0) #end @@ -398,7 +399,7 @@ public class ${EntityName}ServiceImpl implements I${EntityName}Service { #end ${entityName}Mapper.updateById(model); #else - ${entityName}Mapper.delete(new QueryWrapper<${EntityName}>().eq("id", id)); + ${entityName}Mapper.delete(new QueryWrapper<${EntityName}>().eq("${primaryField}", id)); #end }