package cn.iocoder.yudao.module.hrm.controller.admin.salary.vo; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.DecimalMin; import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Size; import lombok.Data; import java.math.BigDecimal; @Schema(description = "管理后台 - 岗位加班工资配置新增/修改 Request VO") @Data public class HrmOvertimeWageConfigSaveReqVO { @Schema(description = "配置编号", example = "1") private Long id; @Schema(description = "岗位ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "岗位不能为空") private Long postId; @Schema(description = "加班时薪(元/小时),默认 20", requiredMode = Schema.RequiredMode.REQUIRED, example = "20.00") @NotNull(message = "加班时薪不能为空") @DecimalMin(value = "0", message = "加班时薪不能小于 0") private BigDecimal hourlyRate; @Schema(description = "每月最大加班时长上限(小时),为空表示不限", example = "36.0") @DecimalMin(value = "0", message = "最大加班时长不能小于 0") private BigDecimal maxOvertimeHours; @Schema(description = "状态:0-启用,1-禁用", requiredMode = Schema.RequiredMode.REQUIRED, example = "0") @NotNull(message = "状态不能为空") private Integer status; @Schema(description = "备注") @Size(max = 500, message = "备注不能超过 500 个字符") private String remark; }