do.vm 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. package ${basePackage}.module.${table.moduleName}.dal.dataobject.${table.businessName};
  2. import lombok.*;
  3. import java.util.*;
  4. #foreach ($column in $columns)
  5. #if (${column.javaType} == "BigDecimal")
  6. import java.math.BigDecimal;
  7. #end
  8. #if (${column.javaType} == "LocalDateTime")
  9. import java.time.LocalDateTime;
  10. #end
  11. #end
  12. import com.baomidou.mybatisplus.annotation.*;
  13. import ${BaseDOClassName};
  14. /**
  15. * ${table.classComment} DO
  16. *
  17. * @author ${table.author}
  18. */
  19. @TableName("${table.tableName.toLowerCase()}")
  20. @KeySequence("${table.tableName.toLowerCase()}_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
  21. @Data
  22. @EqualsAndHashCode(callSuper = true)
  23. @ToString(callSuper = true)
  24. @Builder
  25. @NoArgsConstructor
  26. @AllArgsConstructor
  27. public class ${table.className}DO extends BaseDO {
  28. ## 特殊:树表专属逻辑
  29. #if ( $table.templateType == 2 )
  30. public static final Long ${treeParentColumn_javaField_underlineCase.toUpperCase()}_ROOT = 0L;
  31. #end
  32. #foreach ($column in $columns)
  33. #if (!${baseDOFields.contains(${column.javaField})})##排除 BaseDO 的字段
  34. /**
  35. * ${column.columnComment}
  36. #if ("$!column.dictType" != "")##处理枚举值
  37. *
  38. * 枚举 {@link TODO ${column.dictType} 对应的类}
  39. #end
  40. */
  41. #if (${column.primaryKey})##处理主键
  42. @TableId#if (${column.javaType} == 'String')(type = IdType.INPUT)#end
  43. #end
  44. private ${column.javaType} ${column.javaField};
  45. #end
  46. #end
  47. }