PiMultiTaskHistory.java 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. package com.punchsettle.server.atomic.entity;
  2. import java.io.Serial;
  3. import java.io.Serializable;
  4. import java.time.LocalDate;
  5. import com.punchsettle.server.common.pojo.BaseEntity;
  6. import com.punchsettle.server.constant.PunchInStatusEnum;
  7. import jakarta.persistence.Column;
  8. import jakarta.persistence.Table;
  9. import lombok.Data;
  10. import lombok.EqualsAndHashCode;
  11. import org.springframework.beans.factory.annotation.Autowired;
  12. /**
  13. * @author tyuio
  14. * @version 1.0.0
  15. * @description 打卡多任务记录表
  16. * @date 2025/04/08 09:49
  17. */
  18. @Data
  19. @EqualsAndHashCode(callSuper = true)
  20. @Table(name = "pi_multi_task_history")
  21. public class PiMultiTaskHistory extends BaseEntity implements Serializable {
  22. @Serial
  23. private static final long serialVersionUID = -8993538007673896334L;
  24. /**
  25. * 用户ID
  26. */
  27. @Column(name = "user_id")
  28. private Long userId;
  29. /**
  30. * 打卡多任务唯一ID
  31. */
  32. @Column(name = "multi_task_unique_id")
  33. private Long multiTaskUniqueId;
  34. /**
  35. * 打卡日期
  36. */
  37. @Column(name = "punch_in_date")
  38. private String punchInDate;
  39. /**
  40. * 总任务数
  41. */
  42. @Column(name = "total_task_count")
  43. private Integer totalTaskCount;
  44. /**
  45. * 打卡完成数
  46. */
  47. @Column(name = "punch_in_done_count")
  48. private Integer punchInDoneCount;
  49. /**
  50. * 任务连续打卡状态(连续打卡-CONTINUE、中断-INTERRUPTED)
  51. */
  52. @Column(name = "task_continue_status")
  53. private String taskContinueStatus;
  54. /**
  55. * 任务连续天数,第一天开始就等于1
  56. */
  57. @Column(name = "task_continue_day")
  58. private Integer taskContinueDay;
  59. /**
  60. * 连续阶段(宽限期-GRACE_STAGE,正常打卡期-NORMAL_STAGE,惩罚期-PENALTY_STAGE)
  61. */
  62. @Column(name = "continue_stage")
  63. private String continueStage;
  64. /**
  65. * 阶段开始日期
  66. */
  67. @Column(name = "stage_start_date")
  68. private LocalDate stageStartDate;
  69. /**
  70. * 阶段结束日期
  71. */
  72. @Column(name = "stage_end_date")
  73. private LocalDate stageEndDate;
  74. /**
  75. * 连续中断次数
  76. */
  77. @Column(name = "continue_interrupted_count")
  78. private Integer continueInterruptedCount;
  79. /**
  80. * 打卡结果(DONE-完成,UNDONE-未完成)
  81. * @see PunchInStatusEnum
  82. */
  83. @Column(name = "punch_in_result")
  84. private PunchInStatusEnum punchInResult;
  85. /**
  86. * 结算结果(未结算-UNSETTLED,已结算-SETTLED)
  87. */
  88. @Column(name = "settle_result")
  89. private String settleResult;
  90. /**
  91. * 结算任务执行ID
  92. */
  93. @Column(name = "settle_task_history_id")
  94. private Long settleTaskHistoryId;
  95. /**
  96. * 结算时的打卡多任务ID
  97. */
  98. @Column(name = "settle_pi_multi_task_id")
  99. private Long settlePiMultiTaskId;
  100. /**
  101. * 结算奖励积分
  102. */
  103. @Column(name = "settle_points")
  104. private Integer settlePoints;
  105. }