baseVO.vm 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. package ${basePackage}.module.${table.moduleName}.controller.${sceneEnum.basePackage}.${table.businessName}.vo;
  2. import io.swagger.v3.oas.annotations.media.Schema;
  3. import lombok.*;
  4. import java.util.*;
  5. #foreach ($column in $columns)
  6. #if (${column.javaType} == "BigDecimal")
  7. import java.math.BigDecimal;
  8. #break
  9. #end
  10. #if (${column.javaType} == "LocalDateTime")
  11. import java.time.LocalDateTime;
  12. #break
  13. #end
  14. #end
  15. import javax.validation.constraints.*;
  16. ## 处理 Date 字段的引入
  17. #foreach ($column in $columns)
  18. #if (${column.createOperation} && ${column.updateOperation} && ${column.listOperationResult}
  19. && ${column.javaType} == "LocalDateTime")## 时间类型
  20. import org.springframework.format.annotation.DateTimeFormat;
  21. import static ${DateUtilsClassName}.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
  22. #break
  23. #end
  24. #end
  25. ## 特殊:主子表专属逻辑
  26. #foreach ($subTable in $subTables)
  27. import ${basePackage}.module.${subTable.moduleName}.dal.dataobject.${subTable.businessName}.${subTable.className}DO;
  28. #end
  29. /**
  30. * ${table.classComment} Base VO,提供给添加、修改、详细的子 VO 使用
  31. * 如果子 VO 存在差异的字段,请不要添加到这里,影响 Swagger 文档生成
  32. */
  33. @Data
  34. public class ${sceneEnum.prefixClass}${table.className}BaseVO {
  35. #foreach ($column in $columns)
  36. #if (${column.createOperation} && ${column.updateOperation} && ${column.listOperationResult})##通用操作
  37. #parse("codegen/java/controller/vo/_column.vm")
  38. #end
  39. #end
  40. ## 特殊:主子表专属逻辑
  41. #foreach ($subTable in $subTables)
  42. #set ($index = $foreach.count - 1)
  43. #if ( $subTable.subJoinMany)
  44. private List<${subTable.className}DO> ${subClassNameVars.get($index)}s;
  45. #else
  46. private ${subTable.className}DO ${subClassNameVars.get($index)};
  47. #end
  48. #end
  49. }