| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174 |
- package com.punchsettle.server.atomic.entity;
- import java.io.Serial;
- import java.io.Serializable;
- import java.math.BigDecimal;
- import java.time.LocalDate;
- import java.util.Date;
- import com.punchsettle.server.common.pojo.BaseEntity;
- import com.punchsettle.server.constant.ConsecutiveStatusEnum;
- import jakarta.persistence.Column;
- import jakarta.persistence.Table;
- import lombok.Data;
- import lombok.EqualsAndHashCode;
- /**
- * @author tyuio
- * @version 1.0.0
- * @description 打卡任务状态记录表
- * @date 2025/04/08 09:49
- */
- @Data
- @EqualsAndHashCode(callSuper = true)
- @Table(name = "pi_status_history")
- public class PiStatusHistory extends BaseEntity implements Serializable {
- @Serial
- private static final long serialVersionUID = 4985644914965499020L;
- /**
- * 用户ID
- */
- @Column(name = "user_id")
- private Long userId;
- /**
- * 打卡多任务唯一ID
- */
- @Column(name = "multi_task_unique_id")
- private Long multiTaskUniqueId;
- /**
- * 打卡任务唯一ID
- */
- @Column(name = "task_unique_id")
- private Long taskUniqueId;
- /**
- * 记录状态的时间
- */
- @Column(name = "status_date")
- private String statusDate;
- /**
- * 任务连续打卡状态(连续打卡-CONTINUE、中断-INTERRUPTED)
- * @see ConsecutiveStatusEnum
- */
- @Column(name = "task_continue_status")
- private ConsecutiveStatusEnum taskContinueStatus;
- /**
- * 任务连续天数,第一天开始就等于1
- */
- @Column(name = "task_continue_day")
- private Integer taskContinueDay;
- /**
- * 连续阶段(宽限期-GRACE_STAGE,正常打卡期-NORMAL_STAGE,惩罚期-PENALTY_STAGE)
- */
- @Column(name = "continue_stage")
- private String continueStage;
- /**
- * 阶段开始日期
- */
- @Column(name = "stage_start_date")
- private LocalDate stageStartDate;
- /**
- * 结束日期
- */
- @Column(name = "stage_end_date")
- private LocalDate stageEndDate;
- /**
- * 连续中断次数
- */
- @Column(name = "连续中断次数")
- private Integer continueInterruptedCount;
- /**
- * 统计时间(格式:yyyy-W周数)
- */
- @Column(name = "stats_time_in_week")
- private String statTimeInWeek;
- /**
- * 本周需打卡数
- */
- @Column(name = "punch_in_total_count_in_week")
- private Integer punchInTotalCountInWeek;
- /**
- * 本周已打卡数
- */
- @Column(name = "punch_in_count_in_week")
- private Integer punchInCountInWeek;
- /**
- * 本周完成打卡数
- */
- @Column(name = "punch_in_done_count_in_week")
- private Integer punchInDoneCountInWeek;
- /**
- * 本周打卡率
- */
- @Column(name = "punch_in_rate_in_week")
- private BigDecimal punchInRateInWeek;
- /**
- * 本周打卡完成率
- */
- @Column(name = "punch_in_done_rate_in_week")
- private BigDecimal punchInDoneRateInWeek;
- /**
- * 本周获取积分数
- */
- @Column(name = "points_in_week")
- private Integer pointsInWeek;
- /**
- * 统计时间(格式:yyyy-W周数)
- */
- @Column(name = "stats_time_in_month")
- private String statTimeInMonth;
- /**
- * 本周需打卡数
- */
- @Column(name = "punch_in_total_count_in_month")
- private Integer punchInTotalCountInMonth;
- /**
- * 本周已打卡数
- */
- @Column(name = "punch_in_count_in_month")
- private Integer punchInCountInMonth;
- /**
- * 本周完成打卡数
- */
- @Column(name = "punch_in_done_count_in_month")
- private Integer punchInDoneCountInMonth;
- /**
- * 本周打卡率
- */
- @Column(name = "punch_in_rate_in_month")
- private BigDecimal punchInRateInMonth;
- /**
- * 本周打卡完成率
- */
- @Column(name = "punch_in_done_rate_in_month")
- private BigDecimal punchInDoneRateInMonth;
- /**
- * 本周获取积分数
- */
- @Column(name = "points_in_month")
- private Integer pointsInMonth;
- }
|