package com.engine.salary.entity.salaryitem.param; import com.engine.salary.enums.*; import com.engine.salary.util.valid.DataCheck; import com.engine.salary.util.valid.RuntimeTypeEnum; import com.engine.salary.util.valid.ValidTypeEnum; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; /** *

Copyright: Copyright (c) 2022

*

Company: 泛微软件

* * @author qiantao * @version 1.0 **/ @Data @Builder @NoArgsConstructor @AllArgsConstructor public class SalaryItemSaveParam { //主键id @JsonSerialize(using = ToStringSerializer.class) @DataCheck(require = true, runtime = {RuntimeTypeEnum.UPDATE}, message = "id不允许为空") private Long id; //名称 @DataCheck(require = true, max = 40, message = "名称不允许为空,名称不能超过40个字符") private String name; //是否是系统内置的薪资项目 private SalarySystemTypeEnum systemType; //默认使用 private Integer useDefault; //薪资档案引用 private Integer useInEmployeeSalary; //属性 @DataCheck(require = true, message = "属性不允许为空") private SalaryItemCategoryEnum category; //类型 @DataCheck(require = true, message = "类型不允许为空") private SalaryItemTypeEnum itemType; //舍入规则 private SalaryRoundingModeEnum roundingMode; //保留小数位 @DataCheck(require = true, type = ValidTypeEnum.NUMBER, max = 5, message = "小数位最多为5") private Integer pattern; //取值方式 @DataCheck(require = true, message = "取值方式不允许为空") private SalaryValueTypeEnum valueType; //公式 private Long formulaId; //备注 private String description; }