| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205 |
- package com.punchsettle.server.pojo.punchIn;
- import java.time.LocalDate;
- import java.time.LocalTime;
- import java.util.List;
- import org.hibernate.validator.constraints.Length;
- import com.punchsettle.server.common.constant.CommonEnableStatusEnum;
- import com.punchsettle.server.constant.CompareRuleEnum;
- import com.punchsettle.server.constant.FullAttendancePeriodEnum;
- import com.punchsettle.server.constant.PunchInExtraMethodEnum;
- import com.punchsettle.server.constant.PunchInMethodEnum;
- import com.punchsettle.server.constant.RepeatCategoryEnum;
- import jakarta.validation.Valid;
- import jakarta.validation.constraints.NotBlank;
- import jakarta.validation.constraints.NotNull;
- import jakarta.validation.constraints.Positive;
- import lombok.Data;
- /**
- * @author tyuio
- * @version 1.0.0
- * @date 2025/4/24 15:02
- * @description 打卡任务 请求
- */
- @Data
- public class PiTaskRequest {
- /**
- * 任务ID
- */
- @NotNull(message = "打卡任务ID不能为空")
- private Long id;
- /**
- * 任务名称
- */
- @NotBlank(message = "任务名称不能为空")
- @Length(max = 30, message = "任务名称不能超过30个字符")
- private String taskName;
- /**
- * 任务描述
- */
- private String description;
- /**
- * 奖励的积分(基本)
- */
- @NotNull(message = "奖励的积分不能为空")
- @Positive(message = "奖励的积分必须大于0")
- private Integer points;
- /**
- * 自动归档日期
- */
- private LocalDate autoArchiveDate;
- /**
- * 显示顺序
- */
- private Integer displayOrder;
- /**
- * 显示时间
- */
- private LocalTime displayTime;
- /**
- * 打卡方式(单次打卡-SINGLE,计数-COUNT、计时-TIMING)
- * @see PunchInMethodEnum
- */
- @NotNull(message = "打卡方式不能为空")
- private PunchInMethodEnum punchInMethod;
- /**
- * 比较规则(大于等于-GTE,小于等于-LTE)
- * @see CompareRuleEnum
- */
- private CompareRuleEnum compareRule;
- /**
- * 次数记录
- */
- private Integer countTrack;
- /**
- * 时间记录
- */
- private LocalTime timeTrack;
- /**
- * 是否启用节假日奖励(ENABLED-启用,DISABLED-关闭)
- * @see CommonEnableStatusEnum
- */
- @NotNull(message = "是否启用节假日奖励不能为空")
- private CommonEnableStatusEnum holidayStatus;
- /**
- * 次数记录(节假日用)
- */
- private Integer holidayCountTrack;
- /**
- * 时间记录(节假日用)
- */
- private LocalTime holidayTimeTrack;
- /**
- * 是否启用全勤奖励(ENABLED-启用,DISABLED-关闭)
- * @see CommonEnableStatusEnum
- */
- @NotNull(message = "是否启用全勤奖励不能为空")
- private CommonEnableStatusEnum fullAttendanceStatus;
- /**
- * 全勤周期(周-WEEK,月-MONTH)
- * @see FullAttendancePeriodEnum
- */
- private FullAttendancePeriodEnum fullAttendancePeriod;
- /**
- * 全勤容错次数
- */
- private Integer fullAttendanceFaultToleranceCnt;
- /**
- * 重复周期类型(每日-EVERYDAY、法定工作日-WORKDAY、法定节假日(含周末)-HOLIDAY、自定义(周一至周日)-CUSTOM)
- * @see RepeatCategoryEnum
- */
- @NotNull(message = "重复周期类型不能为空")
- private RepeatCategoryEnum repeatCategory;
- /**
- * 自定义重复日(周一-1,周二-2,周三-3,周四-4,周五-5,周六-6,周日-7)
- */
- private String repeatCustomDay;
- /**
- * 额外奖励方式(无-NONE,固定-FIXED,区间-INTERVAL)
- * @see PunchInExtraMethodEnum
- */
- @NotNull(message = "额外奖励方式不能为空")
- private PunchInExtraMethodEnum extraMethod;
- /**
- * 额外的时间间隔(单位:分钟)
- */
- private Integer extraTimeStep;
- /**
- * 奖励的积分(额外)
- */
- private Integer extraPoints;
- /**
- * 是否启用连续规则(ENABLED-启用,DISABLED-关闭)
- * @see CommonEnableStatusEnum
- */
- @NotNull(message = "是否启用连续规则不能为空")
- private CommonEnableStatusEnum continueStatus;
- /**
- * 宽限期(单位:天)
- */
- private Integer graceDay;
- /**
- * 连续中断次数
- */
- private Integer continueInterruptedCount;
- /**
- * 惩罚天数(单位:天)
- */
- private Integer penaltyDay;
- /**
- * 是否启用自动打卡(ENABLED-启用,DISABLED-关闭)
- * @see CommonEnableStatusEnum
- */
- @NotNull(message = "是否启用自动打卡不能为空")
- private CommonEnableStatusEnum autoStatus;
- /**
- * 是否启用任务积分计算(ENABLED-启用,DISABLED-关闭)
- * @see CommonEnableStatusEnum
- */
- @NotNull(message = "是否启用任务积分计算不能为空")
- private CommonEnableStatusEnum taskPointsStatus;
- /**
- * 拓展信息(当天打卡)
- */
- @Valid
- private List<PiTaskExtDto> taskExtList;
- /**
- * 拓展信息(连续打卡)
- */
- @Valid
- private List<PiTaskExtDto> continueTaskExtList;
- }
|