entity.kt.ftl 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. package ${package.Entity}
  2. <#list table.importPackages as pkg>
  3. import ${pkg}
  4. </#list>
  5. <#if swagger2>
  6. import io.swagger.annotations.ApiModel;
  7. import io.swagger.annotations.ApiModelProperty;
  8. </#if>
  9. /**
  10. * <p>
  11. * ${table.comment}
  12. * </p>
  13. *
  14. * @author ${author}
  15. */
  16. <#if table.convert>
  17. @TableName("${table.name}")
  18. </#if>
  19. <#if swagger2>
  20. @ApiModel(value="${entity}对象", description="${table.comment!}")
  21. </#if>
  22. <#if superEntityClass??>
  23. class ${entity} : ${superEntityClass}<#if activeRecord><${entity}></#if> {
  24. <#elseif activeRecord>
  25. class ${entity} : Model<${entity}>() {
  26. <#else>
  27. class ${entity} : Serializable {
  28. </#if>
  29. <#-- ---------- BEGIN 字段循环遍历 ---------->
  30. <#list table.fields as field>
  31. <#if field.keyFlag>
  32. <#assign keyPropertyName="${field.propertyName}"/>
  33. </#if>
  34. <#if field.comment!?length gt 0>
  35. <#if swagger2>
  36. @ApiModelProperty(value = "${field.comment}")
  37. <#else>
  38. /**
  39. * ${field.comment}
  40. */
  41. </#if>
  42. </#if>
  43. <#if field.keyFlag>
  44. <#-- 主键 -->
  45. <#if field.keyIdentityFlag>
  46. @TableId(value = "${field.name}", type = IdType.AUTO)
  47. <#elseif idType ??>
  48. @TableId(value = "${field.name}", type = IdType.${idType})
  49. <#elseif field.convert>
  50. @TableId("${field.name}")
  51. </#if>
  52. <#-- 普通字段 -->
  53. <#elseif field.fill??>
  54. <#-- ----- 存在字段填充设置 ----->
  55. <#if field.convert>
  56. @TableField(value = "${field.name}", fill = FieldFill.${field.fill})
  57. <#else>
  58. @TableField(fill = FieldFill.${field.fill})
  59. </#if>
  60. <#elseif field.convert>
  61. @TableField("${field.name}")
  62. </#if>
  63. <#-- 乐观锁注解 -->
  64. <#if (versionFieldName!"") == field.name>
  65. @Version
  66. </#if>
  67. <#-- 逻辑删除注解 -->
  68. <#if (logicDeleteFieldName!"") == field.name>
  69. @TableLogic
  70. </#if>
  71. <#if field.propertyType == "Integer">
  72. var ${field.propertyName}: Int? = null
  73. <#else>
  74. var ${field.propertyName}: ${field.propertyType}? = null
  75. </#if>
  76. </#list>
  77. <#-- ---------- END 字段循环遍历 ---------->
  78. <#if entityColumnConstant>
  79. companion object {
  80. <#list table.fields as field>
  81. const val ${field.name.toUpperCase()} : String = "${field.name}"
  82. </#list>
  83. }
  84. </#if>
  85. <#if activeRecord>
  86. override fun pkVal(): Serializable? {
  87. <#if keyPropertyName??>
  88. return ${keyPropertyName}
  89. <#else>
  90. return null
  91. </#if>
  92. }
  93. </#if>
  94. override fun toString(): String {
  95. return "${entity}{" +
  96. <#list table.fields as field>
  97. <#if field_index==0>
  98. "${field.propertyName}=" + ${field.propertyName} +
  99. <#else>
  100. ", ${field.propertyName}=" + ${field.propertyName} +
  101. </#if>
  102. </#list>
  103. "}"
  104. }
  105. }