
templates.entity.kt.ej Maven / Gradle / Ivy
package #(package.Entity);
#for(pkg : table.importPackages)
import #(pkg);
#end
#if(springdoc)
import io.swagger.v3.oas.annotations.media.Schema;
#elseif(swagger)
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
#end
/**
*
* #(table.comment)
*
*
* @author #(author)
* @since #(date)
*/
#if(table.isConvert())
@TableName("#(schemaName)#(table.name)")
#end
#if(springdoc)
@Schema(name = "#(entity)", description = "#(table.comment)")
#elseif(swagger)
@ApiModel(value = "${entity}对象", description = "$!{table.comment}")
#end
#if(superEntityClass)
class #(entity) : #(superEntityClass)#if(activeRecord)<#(entity)>#end() {
#elseif(activeRecord)
class #(entity) : Model<#(entity)>() {
#elseif(entitySerialVersionUID)
class #(entity) : Serializable {
#else
class #(entity) {
#end
### ---------- BEGIN 字段循环遍历 ----------
#for(field : table.fields)
#if(field.keyFlag)
#set(keyPropertyName = field.propertyName)
#end
#if(field.comment != null)
#if(springdoc)
@Schema(description = "#(field.comment)")
#elseif(swagger)
@ApiModelProperty("#(field.comment)")
#else
/**
* #(field.comment)
*/
#end
#end
#if(field.isKeyFlag())
### 主键
#if(field.isKeyIdentityFlag())
@TableId(value = "#(field.annotationColumnName)", type = IdType.AUTO)
#elseif(idType != null && idType != "")
@TableId(value = "#(field.annotationColumnName)", type = IdType.#(idType))
#elseif(field.isConvert())
@TableId("#(field.annotationColumnName)")
#end
### 普通字段
#elseif(field.fill)
### ----- 存在字段填充设置 -----
#if(field.convert)
@TableField(value = "#(field.annotationColumnName)", fill = FieldFill.#(field.fill))
#else
@TableField(fill = FieldFill.#(field.fill))
#end
#elseif(field.isConvert())
@TableField("#(field.annotationColumnName)")
#end
### 乐观锁注解
#if(field.isVersionField())
@Version
#end
### 逻辑删除注解
#if(field.isLogicDeleteField())
@TableLogic
#end
#if(field.propertyType == "Integer")
var #(field.propertyName): Int? = null
#else
var #(field.propertyName): #(field.propertyType)? = null
#end
#end
### ---------- END 字段循环遍历 ----------
#if(entityColumnConstant)
companion object {
#for(field : table.fields)
const val #(field.name.toUpperCase()) : String = "#(field.name)"
#end
}
#end
#if(activeRecord)
override fun pkVal(): Serializable? {
#if(#(keyPropertyName))
return #(keyPropertyName)
#else
return null
#end
}
#end
override fun toString(): String {
return "#(entity){" +
#for(field : table.fields)
#if($!{foreach.index}==0)
"#(field.propertyName)=" + #(field.propertyName) +
#else
", #(field.propertyName)=" + #(field.propertyName) +
#end
#end
"}"
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy