package cn.iocoder.yudao.module.hrm.dal.dataobject.approval; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import cn.iocoder.yudao.module.hrm.enums.HrmLeaveTypeEnum; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.*; import java.math.BigDecimal; import java.time.LocalDateTime; /** * 请假申请 DO * * @author 芋道源码 */ @TableName("hrm_leave_application") @KeySequence("hrm_leave_application_seq") @Data @EqualsAndHashCode(callSuper = true) @ToString(callSuper = true) @Builder @NoArgsConstructor @AllArgsConstructor public class HrmLeaveApplicationDO extends BaseDO { /** * 申请ID */ @TableId private Long id; /** * 申请单号 */ private String no; /** * 申请人ID * * 关联 AdminUserDO#getId() */ private Long userId; /** * 部门ID * * 关联 DeptDO#getId() */ private Long deptId; /** * 请假类型 * * 枚举 {@link HrmLeaveTypeEnum} */ private Integer leaveType; /** * 开始时间 */ private LocalDateTime startTime; /** * 结束时间 */ private LocalDateTime endTime; /** * 请假时长(天) */ private BigDecimal duration; /** * 请假原因 */ private String reason; /** * 审批状态 * * 枚举 {@link cn.iocoder.yudao.module.hrm.enums.HrmAuditStatusEnum} */ private Integer status; /** * BPM 流程实例ID */ private String processInstanceId; /** * 审批完成时间 */ private LocalDateTime approveTime; /** * 附件地址 */ private String fileUrl; /** * 备注 */ private String remark; }