CourseWareVO.java 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. package cn.seecoder.courselearning.vo;
  2. import cn.seecoder.courselearning.po.CourseWare;
  3. import com.fasterxml.jackson.annotation.JsonFormat;
  4. import lombok.Data;
  5. import lombok.NonNull;
  6. import java.util.Date;
  7. @Data
  8. public class CourseWareVO {
  9. private Integer id;
  10. private Integer courseId;
  11. private Integer number;
  12. private String title;
  13. private String fileName;
  14. private String fileType;
  15. private String fileSize;
  16. private Boolean freeFlag;
  17. private Boolean downloadFlag;
  18. private Boolean availableFlag;
  19. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  20. private Date uploadTime;
  21. public CourseWareVO(){
  22. }
  23. public CourseWareVO(@NonNull CourseWare courseWare) {
  24. id = courseWare.getId();
  25. courseId = courseWare.getCourseId();
  26. number = courseWare.getNumber();
  27. title = courseWare.getTitle();
  28. fileName = courseWare.getFileName();
  29. fileType = courseWare.getFileType();
  30. fileSize = courseWare.getFileSize();
  31. freeFlag = courseWare.getFreeFlag();
  32. downloadFlag = courseWare.getDownloadFlag();
  33. availableFlag = freeFlag;
  34. uploadTime = courseWare.getUploadTime();
  35. }
  36. public CourseWareVO(@NonNull CourseWare courseWare, boolean isBought) {
  37. id = courseWare.getId();
  38. courseId = courseWare.getCourseId();
  39. number = courseWare.getNumber();
  40. title = courseWare.getTitle();
  41. fileName = courseWare.getFileName();
  42. fileType = courseWare.getFileType();
  43. fileSize = courseWare.getFileSize();
  44. freeFlag = courseWare.getFreeFlag();
  45. downloadFlag = courseWare.getDownloadFlag();
  46. availableFlag = isBought?true:freeFlag;
  47. uploadTime = courseWare.getUploadTime();
  48. }
  49. }