weaver-hrm-salary/src/com/engine/salary/entity/salaryitem/param/SalaryItemSaveParam.java

106 lines
2.6 KiB
Java
Raw Normal View History

2022-03-17 15:14:35 +08:00
package com.engine.salary.entity.salaryitem.param;
2022-03-24 16:59:52 +08:00
import com.engine.salary.enums.SalaryRoundingModeEnum;
import com.engine.salary.enums.SalarySystemTypeEnum;
import com.engine.salary.enums.SalaryValueTypeEnum;
import com.engine.salary.enums.salaryitem.SalaryDataTypeEnum;
2022-03-21 20:09:10 +08:00
import com.engine.salary.util.valid.DataCheck;
2022-03-22 10:42:26 +08:00
import com.engine.salary.util.valid.RuntimeTypeEnum;
import com.engine.salary.util.valid.ValidTypeEnum;
2022-03-17 15:14:35 +08:00
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
2022-03-21 20:09:10 +08:00
import lombok.AllArgsConstructor;
2022-03-17 15:14:35 +08:00
import lombok.Builder;
import lombok.Data;
2022-03-21 20:09:10 +08:00
import lombok.NoArgsConstructor;
2022-03-17 15:14:35 +08:00
/**
* <p>Copyright: Copyright (c) 2022</p>
* <p>Company: 泛微软件</p>
*
* @author qiantao
* @version 1.0
**/
@Data
@Builder
2022-03-21 20:09:10 +08:00
@NoArgsConstructor
@AllArgsConstructor
2022-03-17 15:14:35 +08:00
public class SalaryItemSaveParam {
//主键id
@JsonSerialize(using = ToStringSerializer.class)
2022-03-22 10:42:26 +08:00
@DataCheck(require = true, runtime = {RuntimeTypeEnum.UPDATE}, message = "id不允许为空")
2022-03-17 15:14:35 +08:00
private Long id;
2022-03-21 20:09:10 +08:00
//名称
@DataCheck(require = true, max = 40, message = "名称不允许为空,名称不能超过40个字符")
2022-03-17 15:14:35 +08:00
private String name;
2022-03-22 21:01:38 +08:00
/**
* 是否是系统内置的薪资项目
*
* @see SalarySystemTypeEnum
*/
private Integer systemType;
2022-03-17 15:14:35 +08:00
//默认使用
private Integer useDefault;
//薪资档案引用
private Integer useInEmployeeSalary;
2023-07-14 11:34:53 +08:00
//核算时默认隐藏
2023-07-18 17:22:42 +08:00
@DataCheck(require = true, message = "核算时隐藏不允许为空")
2023-07-14 11:34:53 +08:00
private Integer hideDefault;
2022-03-17 15:14:35 +08:00
2022-03-22 21:01:38 +08:00
/**
* 舍入规则
*
* @see SalaryRoundingModeEnum
*/
2022-04-28 15:02:11 +08:00
@DataCheck(require = true, message = "舍入规则不允许为空")
2022-03-22 21:01:38 +08:00
private Integer roundingMode;
2022-03-17 15:14:35 +08:00
//保留小数位
2023-12-12 13:18:17 +08:00
@DataCheck(require = true, type = ValidTypeEnum.NUMBER, max = 8, message = "小数位最多为8")
2022-03-17 15:14:35 +08:00
private Integer pattern;
2022-03-22 21:01:38 +08:00
/**
* 取值方式
*
* @see SalaryValueTypeEnum
*/
2022-03-22 10:42:26 +08:00
@DataCheck(require = true, message = "取值方式不允许为空")
2022-03-22 21:01:38 +08:00
private Integer valueType;
2022-03-17 15:14:35 +08:00
2022-03-24 16:59:52 +08:00
/**
* 字段类型
* @see SalaryDataTypeEnum
*/
@DataCheck(require = true, message = "字段类型不允许为空")
private String dataType;
2022-03-17 15:14:35 +08:00
//公式
private Long formulaId;
//备注
private String description;
2022-03-24 16:59:52 +08:00
2022-11-11 13:59:37 +08:00
/**
* 可见范围0公共1私有
*/
private Integer sharedType;
/**
* 绑定人员范围','分隔
*/
private String taxAgentIds;
2023-05-31 09:55:24 +08:00
/**
* 排序
*/
private Integer sortedIndex;
2022-03-17 15:14:35 +08:00
}