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 HrmEmployeeSocialSecuritySaveReqVO {
|
|
@Schema(description = "档案ID", example = "1")
|
private Long id;
|
|
@Schema(description = "系统用户ID(关联 system_users.id)", requiredMode = Schema.RequiredMode.REQUIRED, example = "100")
|
@NotNull(message = "系统用户ID不能为空")
|
private Long userId;
|
|
@Schema(description = "社保公积金方案ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
@NotNull(message = "社保公积金方案不能为空")
|
private Long socialSecuritySchemeId;
|
|
// ========== 缴纳基数(员工个性化设置) ==========
|
@Schema(description = "社保缴纳基数", requiredMode = Schema.RequiredMode.REQUIRED, example = "10000")
|
@NotNull(message = "社保缴纳基数不能为空")
|
private BigDecimal socialSecurityBase;
|
|
@Schema(description = "公积金缴纳基数", requiredMode = Schema.RequiredMode.REQUIRED, example = "10000")
|
@NotNull(message = "公积金缴纳基数不能为空")
|
private BigDecimal housingFundBase;
|
|
// ========== 生效信息 ==========
|
@Schema(description = "生效日期", requiredMode = Schema.RequiredMode.REQUIRED)
|
@NotNull(message = "生效日期不能为空")
|
private LocalDate effectiveDate;
|
|
@Schema(description = "状态:0-启用,1-禁用", example = "0")
|
private Integer status;
|
|
@Schema(description = "备注", example = "2026年调整社保基数")
|
private String remark;
|
|
}
|