Compare commits
2 Commits
c478aa9418
...
e47acc4651
Author | SHA1 | Date |
---|---|---|
|
e47acc4651 | |
|
ef2364d991 |
|
@ -3,9 +3,11 @@ package cn.bunny.core.template;
|
|||
import cn.bunny.domain.dto.VmsArgumentDto;
|
||||
import cn.bunny.domain.entity.TableMetaData;
|
||||
import cn.bunny.utils.MysqlTypeConvertUtil;
|
||||
import com.google.common.base.CaseFormat;
|
||||
import org.apache.velocity.Template;
|
||||
import org.apache.velocity.VelocityContext;
|
||||
import org.apache.velocity.app.Velocity;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
import java.io.StringWriter;
|
||||
import java.text.SimpleDateFormat;
|
||||
|
@ -27,10 +29,6 @@ public class VmsTBaseTemplateGenerator extends AbstractTemplateGenerator {
|
|||
* @param tableMetaData 表名称
|
||||
*/
|
||||
public VmsTBaseTemplateGenerator(VmsArgumentDto dto, String path, TableMetaData tableMetaData) {
|
||||
this.dto = dto;
|
||||
this.path = path;
|
||||
this.tableMetaData = tableMetaData;
|
||||
|
||||
// 处理表名称,替换前缀
|
||||
String tableName = tableMetaData.getTableName();
|
||||
String[] prefixes = dto.getTablePrefixes().split("[,,]");
|
||||
|
@ -40,6 +38,11 @@ public class VmsTBaseTemplateGenerator extends AbstractTemplateGenerator {
|
|||
tableMetaData.setCleanTableName(handlerTableName);
|
||||
}
|
||||
}
|
||||
|
||||
this.dto = dto;
|
||||
this.path = path;
|
||||
this.tableMetaData = tableMetaData;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -51,6 +54,7 @@ public class VmsTBaseTemplateGenerator extends AbstractTemplateGenerator {
|
|||
public void addContext(VelocityContext context) {
|
||||
// 当前的表名
|
||||
String handlerTableName = tableMetaData.getCleanTableName();
|
||||
handlerTableName = StringUtils.hasText(handlerTableName) ? handlerTableName : tableMetaData.getTableName();
|
||||
// 表的注释内容
|
||||
String comment = tableMetaData.getComment();
|
||||
|
||||
|
@ -77,6 +81,10 @@ public class VmsTBaseTemplateGenerator extends AbstractTemplateGenerator {
|
|||
// 将类名称转成大驼峰
|
||||
String upperCameCase = MysqlTypeConvertUtil.convertToCamelCase(handlerTableName, true);
|
||||
context.put("classUppercaseName", upperCameCase);
|
||||
|
||||
// 添加中划线
|
||||
String lowerHyphenName = CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_HYPHEN, lowerCamelCase);
|
||||
context.put("lowerHyphenName", lowerHyphenName);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -17,4 +17,8 @@ spring:
|
|||
password: ${bunny.master.password}
|
||||
hikari:
|
||||
maximum-pool-size: 20
|
||||
connection-timeout: 30000
|
||||
connection-timeout: 30000
|
||||
|
||||
logging:
|
||||
file:
|
||||
path: "logs/${spring.application.name}"
|
|
@ -12,7 +12,9 @@ import org.springframework.web.bind.annotation.*;
|
|||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import ${package}.service.${classUppercaseName}Service;
|
||||
|
||||
import ${package}.domain.vo.result.PageResult;
|
||||
import ${package}.domain.vo.result.Result;
|
||||
import ${package}.domain.vo.result.ResultCodeEnum;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
@ -25,7 +27,7 @@ import java.util.List;
|
|||
*/
|
||||
@Tag(name = "${comment}", description = "${comment}相关接口")
|
||||
@RestController
|
||||
@RequestMapping("${requestMapping}/${classLowercaseName}")
|
||||
@RequestMapping("${requestMapping}/${lowerHyphenName}")
|
||||
@RequiredArgsConstructor
|
||||
public class ${classUppercaseName}Controller {
|
||||
|
||||
|
|
|
@ -6,6 +6,10 @@ import lombok.Builder;
|
|||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
|
@ -14,8 +18,8 @@ import lombok.NoArgsConstructor;
|
|||
public class ${classUppercaseName}Dto {
|
||||
|
||||
#foreach($field in ${columnInfoList})
|
||||
@Schema(name = "${field.lowercaseName}", title = "${field.comment}")
|
||||
private ${field.javaType} ${field.lowercaseName};
|
||||
@Schema(name = "${field.lowercaseName}", title = "${field.comment}")
|
||||
private ${field.javaType} ${field.lowercaseName};
|
||||
|
||||
#end
|
||||
}
|
|
@ -2,22 +2,30 @@ package ${package}.domain.entity;
|
|||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
import java.time.LocalDateTime;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@Accessors(chain = true)
|
||||
@TableName("${tableName}")
|
||||
@Schema(name = "${classUppercaseName}对象", title = "${comment}", description = "${comment}的实体类对象")
|
||||
public class ${classUppercaseName} extends BaseEntity {
|
||||
|
||||
#foreach($field in ${columnInfoList})
|
||||
@Schema(name = "${field.lowercaseName}", title = "${field.comment}")
|
||||
private ${field.javaType} ${field.lowercaseName};
|
||||
public class ${classUppercaseName} {
|
||||
|
||||
#foreach($field in ${columnInfoList})
|
||||
@Schema(name = "${field.lowercaseName}", title = "${field.comment}")
|
||||
#if($field.isPrimaryKey)
|
||||
@TableId(type = IdType.ASSIGN_ID)
|
||||
#end
|
||||
private ${field.javaType} ${field.lowercaseName};
|
||||
|
||||
#end
|
||||
}
|
|
@ -1,21 +1,26 @@
|
|||
package ${package}.domain.vo;
|
||||
|
||||
import java.util.Date;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Schema(name = "${classUppercaseName}VO对象", title = "${comment}", description = "${comment}的VO对象")
|
||||
public class ${classUppercaseName}Vo {
|
||||
|
||||
#foreach($field in ${columnInfoList})
|
||||
#foreach($field in ${columnInfoList})
|
||||
@Schema(name = "${field.lowercaseName}", title = "${field.comment}")
|
||||
private ${field.javaType} ${field.lowercaseName};
|
||||
|
||||
#end
|
||||
#end
|
||||
}
|
||||
|
||||
|
|
|
@ -9,7 +9,9 @@ import ${package}.domain.entity.${classUppercaseName};
|
|||
import ${package}.domain.vo.${classUppercaseName}Vo;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import ${package}.domain.vo.result.PageResult;
|
||||
import ${package}.domain.vo.result.Result;
|
||||
import ${package}.domain.vo.result.ResultCodeEnum;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
|
|
@ -12,7 +12,9 @@ import ${package}.service.${classUppercaseName}Service;
|
|||
import ${package}.domain.dto.${classUppercaseName}Dto;
|
||||
import ${package}.domain.entity.${classUppercaseName};
|
||||
import ${package}.domain.vo.${classUppercaseName}Vo;
|
||||
|
||||
import ${package}.domain.vo.result.PageResult;
|
||||
import ${package}.domain.vo.result.Result;
|
||||
import ${package}.domain.vo.result.ResultCodeEnum;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
|
|
@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.extension.service.IService;
|
|||
import ${package}.domain.dto.${classUppercaseName}Dto;
|
||||
import ${package}.domain.entity.${classUppercaseName};
|
||||
import ${package}.domain.vo.${classUppercaseName}Vo;
|
||||
|
||||
import ${package}.domain.vo.result.PageResult;
|
||||
import ${package}.domain.vo.result.Result;
|
||||
import ${package}.domain.vo.result.ResultCodeEnum;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue