🐛 代码生成器部分页面确实引用

This commit is contained in:
bunny 2025-07-05 19:42:17 +08:00
parent 6701b0985e
commit 14a505810f
7 changed files with 39 additions and 16 deletions

View File

@ -32,6 +32,9 @@ public class VmsTBaseTemplateGenerator extends AbstractTemplateGenerator {
// 处理表名称替换前缀 // 处理表名称替换前缀
String tableName = tableMetaData.getTableName(); String tableName = tableMetaData.getTableName();
String[] prefixes = dto.getTablePrefixes().split("[,]"); String[] prefixes = dto.getTablePrefixes().split("[,]");
tableMetaData.setCleanTableName(tableName);
for (String prefix : prefixes) { for (String prefix : prefixes) {
if (tableName.startsWith(prefix)) { if (tableName.startsWith(prefix)) {
String handlerTableName = tableName.replace(prefix, ""); String handlerTableName = tableName.replace(prefix, "");
@ -52,8 +55,8 @@ public class VmsTBaseTemplateGenerator extends AbstractTemplateGenerator {
@Override @Override
public void addContext(VelocityContext context) { public void addContext(VelocityContext context) {
// 当前的表名 // 当前的表名
String handlerTableName = tableMetaData.getCleanTableName(); String cleanTableName = tableMetaData.getCleanTableName();
handlerTableName = StringUtils.hasText(handlerTableName) ? handlerTableName : tableMetaData.getTableName(); cleanTableName = StringUtils.hasText(cleanTableName) ? cleanTableName : tableMetaData.getTableName();
// 表的注释内容 // 表的注释内容
String comment = tableMetaData.getComment(); String comment = tableMetaData.getComment();
@ -75,11 +78,11 @@ public class VmsTBaseTemplateGenerator extends AbstractTemplateGenerator {
context.put("package", dto.getPackageName()); context.put("package", dto.getPackageName());
// 将类名称转成小驼峰 // 将类名称转成小驼峰
String lowerCamelCase = MysqlTypeConvertUtil.convertToCamelCase(handlerTableName, false); String lowerCamelCase = MysqlTypeConvertUtil.convertToCamelCase(cleanTableName, false);
context.put("classLowercaseName", lowerCamelCase); context.put("classLowercaseName", lowerCamelCase);
// 将类名称转成大驼峰 // 将类名称转成大驼峰
String upperCameCase = MysqlTypeConvertUtil.convertToCamelCase(handlerTableName, true); String upperCameCase = MysqlTypeConvertUtil.convertToCamelCase(cleanTableName, true);
context.put("classUppercaseName", upperCameCase); context.put("classUppercaseName", upperCameCase);
// 添加中划线 // 添加中划线

View File

@ -12,6 +12,9 @@ import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import ${package}.service.${classUppercaseName}Service; import ${package}.service.${classUppercaseName}Service;
import com.mall.common.domain.vo.result.PageResult;
import com.mall.common.domain.vo.result.Result;
import com.mall.common.domain.vo.result.ResultCodeEnum;
import java.util.List; import java.util.List;

View File

@ -6,6 +6,10 @@ import lombok.Builder;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.Date;
@Data @Data
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor

View File

@ -9,6 +9,10 @@ import lombok.Getter;
import lombok.Setter; import lombok.Setter;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.Date;
@Getter @Getter
@Setter @Setter
@Accessors(chain = true) @Accessors(chain = true)
@ -17,13 +21,11 @@ import lombok.experimental.Accessors;
public class ${classUppercaseName} { public class ${classUppercaseName} {
#foreach($field in ${columnInfoList}) #foreach($field in ${columnInfoList})
@Schema(name = "${field.lowercaseName}", title = "${field.comment}")
@Schema(name = "${field.lowercaseName}", title = "${field.comment}") #if($field.isPrimaryKey)
@TableId(type = IdType.ASSIGN_ID)
#if($field.isPrimaryKey) #end
@TableId(type = IdType.ASSIGN_ID) private ${field.javaType} ${field.lowercaseName};
#end
private ${field.javaType} ${field.lowercaseName};
#end #end
} }

View File

@ -1,21 +1,26 @@
package ${package}.domain.vo; package ${package}.domain.vo;
import java.util.Date;
import java.math.BigDecimal;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Builder; import lombok.Builder;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import java.time.LocalDateTime;
@Data @Data
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor
@Schema(name = "${classUppercaseName}VO对象", title = "${comment}", description = "${comment}的VO对象") @Schema(name = "${classUppercaseName}VO对象", title = "${comment}", description = "${comment}的VO对象")
public class ${classUppercaseName}Vo { public class ${classUppercaseName}Vo {
#foreach($field in ${columnInfoList}) #foreach($field in ${columnInfoList})
@Schema(name = "${field.lowercaseName}", title = "${field.comment}") @Schema(name = "${field.lowercaseName}", title = "${field.comment}")
private ${field.javaType} ${field.lowercaseName}; private ${field.javaType} ${field.lowercaseName};
#end #end
} }

View File

@ -12,6 +12,9 @@ import ${package}.service.${classUppercaseName}Service;
import ${package}.domain.dto.${classUppercaseName}Dto; import ${package}.domain.dto.${classUppercaseName}Dto;
import ${package}.domain.entity.${classUppercaseName}; import ${package}.domain.entity.${classUppercaseName};
import ${package}.domain.vo.${classUppercaseName}Vo; import ${package}.domain.vo.${classUppercaseName}Vo;
import com.mall.common.domain.vo.result.PageResult;
import com.mall.common.domain.vo.result.Result;
import com.mall.common.domain.vo.result.ResultCodeEnum;
import java.util.List; import java.util.List;

View File

@ -6,6 +6,9 @@ import com.baomidou.mybatisplus.extension.service.IService;
import ${package}.domain.dto.${classUppercaseName}Dto; import ${package}.domain.dto.${classUppercaseName}Dto;
import ${package}.domain.entity.${classUppercaseName}; import ${package}.domain.entity.${classUppercaseName};
import ${package}.domain.vo.${classUppercaseName}Vo; import ${package}.domain.vo.${classUppercaseName}Vo;
import com.mall.common.domain.vo.result.PageResult;
import com.mall.common.domain.vo.result.Result;
import com.mall.common.domain.vo.result.ResultCodeEnum;
import java.util.List; import java.util.List;