package com.chinaztt.mes.production.entity; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.extension.activerecord.Model; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import java.math.BigDecimal; import java.time.LocalDateTime; /** * 报工投入表 * * @author cxf * @date 2020-11-17 10:12:30 */ @Data @TableName("production_product_input") @EqualsAndHashCode(callSuper = true) @ApiModel(value = "报工投入表") public class ProductInput extends Model { private static final long serialVersionUID = 1L; /** * 系统号的规则 */ public static final int DIGIT = 6; public static final String PREFIX = "XT"; /** * id */ @TableId @ApiModelProperty(value = "id") private Long id; /** * 零件ID */ @ApiModelProperty(value = "零件id") private Long partId; /** * 零件批次 */ @ApiModelProperty(value = "零件批次") private String partBatchNo; /** * 投入数量 */ @ApiModelProperty(value = "投入数量") private BigDecimal inputQuantity; /** * 报工表id */ @ApiModelProperty(value = "报工表id") private Long productMainId; /** * 系统号 */ @ApiModelProperty(value = "系统号") private String systemNo; /** * 库存id */ @ApiModelProperty(value = "库存ID") private Long stockId; /** * ifs批次号 */ @ApiModelProperty(value = "IFS批次号") private String ifsBatchNo; /** * 行项号 */ @ApiModelProperty(value = "行项号") private String ifsLineItemNo; /** * 是否为工序库存 */ @ApiModelProperty(value = "是否为工序库存") private Boolean operationStockStatus; /** * 创建时间 */ @ApiModelProperty(value = "创建时间") @TableField(fill = FieldFill.INSERT) private LocalDateTime createTime; /** * 创建者 */ @ApiModelProperty(value = "创建者") @TableField(fill = FieldFill.INSERT) private String createUser; /** * 更新时间 */ @ApiModelProperty(value = "更新时间") @TableField(fill = FieldFill.UPDATE) private LocalDateTime updateTime; /** * 更新者 */ @ApiModelProperty(value = "更新者") @TableField(fill = FieldFill.UPDATE) private String updateUser; //inputQuantity字段暂时未排查出在哪边被更新成0的,先通过约束setInputQuantity方法处理 public void setInputQuantity(BigDecimal value){ if(null == value){ throw new RuntimeException("set投入表投入数量为null"); } if(value.compareTo(BigDecimal.ZERO) != 1){ throw new RuntimeException("set投入表投入数量 = 【" + value + "】"); } if(value.compareTo(new BigDecimal("0.000001")) == -1){ throw new RuntimeException("set投入表投入数量 = 【" + value + "】 -> 超过mes数据库数值最大精度"); } inputQuantity = value; } }