package com.wms_main.model.po;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

/**
 * 盘点记录
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "t_app_inventory_record", autoResultMap = true)
public class TAppInventoryRecord {
    /**
     * 盘点id
     */
    @TableId(value = "inventory_id")
    private String inventoryId;
    /**
     * 料号
     */
    @TableField(value = "goods_id")
    private String goodsId;
    /**
     * 载具号
     */
    @TableField(value = "vehicle_id")
    private String vehicleId;
    /**
     * 库存数量
     * 只记录盘点确认时间点
     */
    @TableField(value = "stock_num")
    private Integer stockNum;
    /**
     * 确认数量
     */
    @TableField(value = "confirm_num")
    private Integer confirmNum;
    /**
     * 盘点站台
     */
    @TableField(value = "inv_stand")
    private String invStand;
    /**
     * 盘点人
     */
    @TableField(value = "inv_user")
    private String invUser;
    /**
     * 盘点类型：1：明盘；2：盲盘
     */
    @TableField(value = "inv_type")
    private Integer invType;
    /**
     * 盘点状态
     * 1. 初始化
     * 2. 已解析
     * 3. 数量确认
     * 4. 盘点关闭
     */
    @TableField(value = "inv_status")
    private Integer invStatus;
    /**
     * 盘点结果
     * -1: 盘亏
     * 0: 正常
     * 1: 盘盈
     */
    @TableField(value = "inv_result")
    private Integer invResult;
    /**
     * 盘点任务创建时间
     */
    @TableField(value = "inv_create_time")
    private LocalDateTime invCreateTime;
    /**
     * 盘点确认时间
     */
    @TableField(value = "inv_confirm_time")
    private LocalDateTime invConfirmTime;
    /**
     * 这个字段用于合并哪些任务是同一时间下发的
     */
    @TableField(value = "inv_order_id")
    private String invOrderId;
}
