package cn.iocoder.yudao.module.mes.dal.dataobject.pro.wage; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.*; import java.math.BigDecimal; /** * MES 工序工资字段 DO * *

每个工序可维护若干与工资相关的自定义字段,字段值为工序级固定值。 * 报工时按 {@link #calcRole} 参与工资计算,并整体快照到报工单。 * * @author 超级管理员 */ @TableName("mes_pro_process_wage_field") @KeySequence("mes_pro_process_wage_field_seq") @Data @EqualsAndHashCode(callSuper = true) @ToString(callSuper = true) @Builder @NoArgsConstructor @AllArgsConstructor public class MesProProcessWageFieldDO extends BaseDO { /** 字段类型:数值 */ public static final int FIELD_TYPE_NUMBER = 1; /** 字段类型:文本 */ public static final int FIELD_TYPE_TEXT = 2; /** 字段类型:下拉 */ public static final int FIELD_TYPE_SELECT = 3; /** 字段类型:布尔 */ public static final int FIELD_TYPE_BOOLEAN = 4; /** 计算角色:系数(连乘) */ public static final int CALC_ROLE_COEFFICIENT = 1; /** 计算角色:加减金额 */ public static final int CALC_ROLE_AMOUNT = 2; /** 计算角色:计价数量(数量 × 单价) */ public static final int CALC_ROLE_QUANTITY_PRICE = 3; /** 计算角色:仅记录,不参与计算 */ public static final int CALC_ROLE_RECORD_ONLY = 4; @TableId private Long id; /** * 工序编号 * * 关联 {@link cn.iocoder.yudao.module.mes.dal.dataobject.pro.process.MesProProcessDO#getId()} */ private Long processId; /** * 字段编码,工序内唯一 */ private String fieldCode; /** * 字段名称 */ private String fieldName; /** * 字段类型:1-数值 2-文本 3-下拉 4-布尔 */ private Integer fieldType; /** * 单位 */ private String unit; /** * 工序级固定值 */ private String fieldValue; /** * 计算角色:1-系数 2-加减金额 3-计价数量 4-仅记录 */ private Integer calcRole; /** * 计价数量时的单价 */ private BigDecimal unitPrice; /** * 排序 */ private Integer sort; /** * 状态 */ private Integer status; /** * 备注 */ private String remark; }