package cn.iocoder.yudao.module.hrm.controller.admin.salary.vo;
|
|
import io.swagger.v3.oas.annotations.media.Schema;
|
import jakarta.validation.Valid;
|
import jakarta.validation.constraints.NotEmpty;
|
import jakarta.validation.constraints.NotNull;
|
import lombok.Data;
|
|
import java.math.BigDecimal;
|
import java.util.List;
|
|
@Schema(description = "管理后台 - 薪酬核算保存 Request VO")
|
@Data
|
public class HrmSalaryCalculationSaveReqVO {
|
|
@Schema(description = "核算周期", requiredMode = Schema.RequiredMode.REQUIRED, example = "2024-01")
|
@NotNull(message = "核算周期不能为空")
|
private String period;
|
|
@Schema(description = "薪酬核算列表", requiredMode = Schema.RequiredMode.REQUIRED)
|
@NotEmpty(message = "薪酬核算列表不能为空")
|
@Valid
|
private List<CalculationItem> list;
|
|
@Schema(description = "薪酬核算项")
|
@Data
|
public static class CalculationItem {
|
|
@Schema(description = "核算ID(新增时不传,修改时必传)")
|
private Long id;
|
|
@Schema(description = "系统用户ID", requiredMode = Schema.RequiredMode.REQUIRED)
|
@NotNull(message = "员工不能为空")
|
private Long userId;
|
|
@Schema(description = "部门ID", requiredMode = Schema.RequiredMode.REQUIRED)
|
@NotNull(message = "部门不能为空")
|
private Long deptId;
|
|
@Schema(description = "基本工资", requiredMode = Schema.RequiredMode.REQUIRED)
|
@NotNull(message = "基本工资不能为空")
|
private BigDecimal baseSalary;
|
|
@Schema(description = "标准工资")
|
private BigDecimal standardSalary;
|
|
@Schema(description = "岗位工资")
|
private BigDecimal postSalary;
|
|
@Schema(description = "加班工资标准(元/小时)")
|
private BigDecimal overtimeHourlyRate;
|
|
@Schema(description = "安全环保奖标准")
|
private BigDecimal safetyAwardStandard;
|
|
@Schema(description = "绩效标准")
|
private BigDecimal performanceStandard;
|
|
@Schema(description = "计薪出勤(天)")
|
private BigDecimal paidAttendanceDays;
|
|
@Schema(description = "标准出勤时长(小时)")
|
private BigDecimal standardWorkHours;
|
|
@Schema(description = "法定假日时长(小时)")
|
private BigDecimal legalHolidayHours;
|
|
@Schema(description = "标准出勤工资")
|
private BigDecimal standardAttendancePay;
|
|
@Schema(description = "法定假工资")
|
private BigDecimal legalHolidayPay;
|
|
@Schema(description = "安全环保奖")
|
private BigDecimal safetyAward;
|
|
@Schema(description = "浮动绩效工资")
|
private BigDecimal floatingPerformancePay;
|
|
@Schema(description = "应付工资")
|
private BigDecimal payableSalary;
|
|
@Schema(description = "工龄工资")
|
private BigDecimal seniorityPay;
|
|
@Schema(description = "夜班补助")
|
private BigDecimal nightShiftAllowance;
|
|
@Schema(description = "学历补贴")
|
private BigDecimal educationAllowance;
|
|
@Schema(description = "体检")
|
private BigDecimal healthCheckAllowance;
|
|
@Schema(description = "优秀员工奖")
|
private BigDecimal excellentEmployeeAward;
|
|
@Schema(description = "其他补助")
|
private BigDecimal otherSubsidy;
|
|
@Schema(description = "部门绩效")
|
private BigDecimal deptPerformance;
|
|
@Schema(description = "加项合计")
|
private BigDecimal additionTotal;
|
|
@Schema(description = "漏打卡")
|
private BigDecimal missedPunchDeduction;
|
|
@Schema(description = "迟到早退")
|
private BigDecimal lateEarlyDeduction;
|
|
@Schema(description = "扣款合计")
|
private BigDecimal deductionTotal;
|
|
@Schema(description = "绩效工资")
|
private BigDecimal performanceSalary;
|
|
@Schema(description = "加班工资")
|
private BigDecimal overtimePay;
|
|
@Schema(description = "餐补")
|
private BigDecimal mealAllowance;
|
|
@Schema(description = "交通补贴")
|
private BigDecimal transportAllowance;
|
|
@Schema(description = "其他补贴")
|
private BigDecimal otherAllowance;
|
|
@Schema(description = "社保扣除")
|
private BigDecimal socialSecurityDeduction;
|
|
@Schema(description = "公积金扣除")
|
private BigDecimal housingFundDeduction;
|
|
@Schema(description = "个税扣除")
|
private BigDecimal taxDeduction;
|
|
@Schema(description = "其他扣除")
|
private BigDecimal otherDeduction;
|
|
@Schema(description = "实发工资", requiredMode = Schema.RequiredMode.REQUIRED)
|
@NotNull(message = "实发工资不能为空")
|
private BigDecimal actualSalary;
|
|
@Schema(description = "出勤天数")
|
private Integer workDays;
|
|
@Schema(description = "加班时长")
|
private BigDecimal overtimeHours;
|
|
@Schema(description = "备注")
|
private String remark;
|
|
}
|
|
}
|