package com.hzs.common.domain.scm.inventory;

import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.hzs.common.core.web.domain.BaseEntity;
import com.hzs.common.domain.scm.pub.ScmItemSpecs;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * <p>
 * 库存盘点单明细
 * </p>
 *
 * @author hzs
 * @since 2023-12-20
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@KeySequence("IC_INVENTORY_B_SEQ")
@TableName("IC_INVENTORY_B")
public class IcInventoryB extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId("PK_ID")
    private Long pkId;

    /**
     * 单位
     */
    @TableField("PK_UNIT")
    private Integer pkUnit;

    /**
     * 现存量主键
     */
    @TableField("PK_ONHANDNUM")
    private Long pkOnhandnum;

    /**
     * 主表主键
     */
    @TableField("PK_INVENTORY")
    private Long pkInventory;

    /**
     * 产品信息主键
     */
    @TableField("PK_PRODUCT")
    private Integer pkProduct;

    /**
     * 货位
     */
    @TableField("PK_CLOCATION")
    private Integer pkClocation;

    /**
     * 供应商
     */
    @TableField("PK_CUBASDOC")
    private Integer pkCubasdoc;

    /**
     * 生产日期
     */
    @TableField("PRODUCT_DATE")
    private Date productDate;

    /**
     * 失效日期
     */
    @TableField("EXPIRE_DATE")
    private Date expireDate;

    /**
     * 账面数量
     */
    @TableField("NONHANDNUM")
    private BigDecimal nonhandnum;

    /**
     * 调整数量
     */
    @TableField("NADJUSTNUM")
    private BigDecimal nadjustnum;

    /**
     * 差异数量
     */
    @TableField("NDIFFASTNUM")
    private BigDecimal ndiffastnum;

    /**
     * 批次主键
     */
    @TableField("PK_BATCH_CODE")
    private Long pkBatchCode;

    @TableField(exist=false)
    private List<ScmItemSpecs> scmItemSpecsList;
}
