| | |
| | | import io.swagger.v3.oas.annotations.media.Schema; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.time.LocalDate; |
| | | import java.time.LocalDateTime; |
| | | import java.time.LocalTime; |
| | | |
| | | @Schema(description = "管理后台 - 我的今日打卡状态 Response VO") |
| | | @Schema(description = "管理后台 - 我的考勤状态 Response VO") |
| | | @Data |
| | | public class HrmAttendanceMyStatusRespVO { |
| | | |
| | | @Schema(description = "考勤日期") |
| | | @Schema(description = "登录用户ID", example = "464") |
| | | private Long userId; |
| | | |
| | | @Schema(description = "员工档案ID", example = "233") |
| | | private Long employeeId; |
| | | |
| | | @Schema(description = "员工姓名", example = "阿卜杜克热木·吾拉依木") |
| | | private String employeeName; |
| | | |
| | | @Schema(description = "部门ID", example = "131") |
| | | private Long deptId; |
| | | |
| | | @Schema(description = "部门名称", example = "钢结构车间") |
| | | private String deptName; |
| | | |
| | | @Schema(description = "考勤日期", example = "2026-10-17") |
| | | private LocalDate date; |
| | | |
| | | @Schema(description = "服务器时间", example = "2026-10-17 18:30:00") |
| | | private LocalDateTime serverTime; |
| | | |
| | | @Schema(description = "是否工作日") |
| | | private Boolean workDay; |
| | | |
| | | @Schema(description = "员工ID") |
| | | private Long employeeId; |
| | | @Schema(description = "休息日原因,如:国庆节、周六") |
| | | private String restDayReason; |
| | | |
| | | @Schema(description = "员工姓名") |
| | | private String userName; |
| | | @Schema(description = "当前生效的考勤规则,未配置时为 null") |
| | | private HrmAttendanceRuleRespVO rule; |
| | | |
| | | @Schema(description = "部门ID") |
| | | private Long deptId; |
| | | @Schema(description = "当日考勤记录,未打卡时为 null") |
| | | private HrmAttendanceRecordRespVO record; |
| | | |
| | | @Schema(description = "部门名称") |
| | | private String deptName; |
| | | @Schema(description = "当前可打卡状态") |
| | | private Clockable clockable; |
| | | |
| | | @Schema(description = "考勤规则名称") |
| | | private String ruleName; |
| | | @Schema(description = "打卡状态") |
| | | @Data |
| | | public static class Clockable { |
| | | |
| | | @Schema(description = "上班时间") |
| | | private LocalTime workStartTime; |
| | | @Schema(description = "是否可上班打卡") |
| | | private Boolean clockIn; |
| | | |
| | | @Schema(description = "下班时间") |
| | | private LocalTime workEndTime; |
| | | @Schema(description = "是否可下班打卡") |
| | | private Boolean clockOut; |
| | | |
| | | @Schema(description = "是否启用定位范围校验") |
| | | private Boolean locationRequired; |
| | | @Schema(description = "下一步动作:in-上班打卡,out-下班打卡,none-无需打卡") |
| | | private String nextAction; |
| | | |
| | | @Schema(description = "打卡地点名称") |
| | | private String locationName; |
| | | @Schema(description = "提示文案", example = "已上班打卡,可下班打卡") |
| | | private String message; |
| | | |
| | | @Schema(description = "打卡地点地址") |
| | | private String locationAddress; |
| | | |
| | | @Schema(description = "打卡中心经度(WGS84)") |
| | | private BigDecimal longitude; |
| | | |
| | | @Schema(description = "打卡中心纬度(WGS84)") |
| | | private BigDecimal latitude; |
| | | |
| | | @Schema(description = "允许打卡半径,单位米") |
| | | private Integer radiusMeters; |
| | | |
| | | @Schema(description = "坐标系") |
| | | private String coordinateSystem; |
| | | |
| | | @Schema(description = "今日记录ID,未打卡时为空") |
| | | private Long recordId; |
| | | |
| | | @Schema(description = "上班打卡时间") |
| | | private LocalDateTime clockInTime; |
| | | |
| | | @Schema(description = "下班打卡时间") |
| | | private LocalDateTime clockOutTime; |
| | | |
| | | @Schema(description = "上班打卡类型") |
| | | private Integer clockInType; |
| | | |
| | | @Schema(description = "下班打卡类型") |
| | | private Integer clockOutType; |
| | | |
| | | @Schema(description = "是否已上班打卡") |
| | | private Boolean clockInDone; |
| | | |
| | | @Schema(description = "是否已下班打卡") |
| | | private Boolean clockOutDone; |
| | | |
| | | @Schema(description = "是否可上班打卡") |
| | | private Boolean canClockIn; |
| | | |
| | | @Schema(description = "是否可下班打卡") |
| | | private Boolean canClockOut; |
| | | |
| | | @Schema(description = "工作时长(小时)") |
| | | private BigDecimal workHours; |
| | | |
| | | @Schema(description = "加班时长(小时)") |
| | | private BigDecimal overtimeHours; |
| | | |
| | | @Schema(description = "打卡地点") |
| | | private String location; |
| | | |
| | | @Schema(description = "数据来源") |
| | | private Integer dataSource; |
| | | } |
| | | |
| | | } |