package cn.iocoder.yudao.module.hrm.controller.admin.salary.vo; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotNull; import lombok.Data; import java.math.BigDecimal; import java.time.LocalDate; @Schema(description = "管理后台 - 员工薪酬档案 新增/修改 Request VO") @Data public class HrmEmployeeSalarySaveReqVO { @Schema(description = "档案ID", example = "1") private Long id; @Schema(description = "员工ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") @NotNull(message = "员工不能为空") private Long userId; @Schema(description = "薪酬结构ID", example = "1") private Long salaryStructureId; @Schema(description = "基本工资", example = "8000.00") private BigDecimal baseSalary; @Schema(description = "绩效工资", example = "2000.00") private BigDecimal performanceSalary; @Schema(description = "餐补", example = "300.00") private BigDecimal mealAllowance; @Schema(description = "交通补贴", example = "200.00") private BigDecimal transportAllowance; @Schema(description = "其他补贴", example = "100.00") private BigDecimal otherAllowance; @Schema(description = "生效日期", requiredMode = Schema.RequiredMode.REQUIRED) @NotNull(message = "生效日期不能为空") private LocalDate effectiveDate; @Schema(description = "状态:0-启用,1-禁用", requiredMode = Schema.RequiredMode.REQUIRED, example = "0") @NotNull(message = "状态不能为空") private Integer status; @Schema(description = "备注", example = "备注信息") private String remark; }