package com.gree.mall.manager.bean.goods;

import com.gree.mall.manager.annotation.ZfireField;
import com.gree.mall.manager.enums.ExamineStatusEnum;
import com.gree.mall.manager.enums.material.GoodsMaterialTypeEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

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

@Data
@ApiModel
@ZfireField(tbName = "a")
public class GoodsPurchaseRetItemVO {

    @ApiModelProperty(value = "单据编号")
    private String id;

    @ApiModelProperty(value = "采购入库单号")
    private String goodsPurchaseId;

    @ApiModelProperty(value = "单据状态")
    private ExamineStatusEnum status;

//    @ZfireField(hide = true)
//    @ApiModelProperty(value = "商户编号")
//    private String companyWechatId;
//
//    @ApiModelProperty(value = "商户名称")
//    private String companyWechatName;

    @ZfireField(hide = true)
    @ApiModelProperty(value = "供应商编号")
    private String venderId;

    @ApiModelProperty(value = "供应商名称")
    private String venderName;

    @ZfireField(tbName = "b", hide = true)
    @ApiModelProperty(value = "品牌id")
    private String brandId;

    @ZfireField(tbName = "b")
    @ApiModelProperty(value = "品牌名称")
    private String brandName;

    @ZfireField(tbName = "b", hide = true)
    @ApiModelProperty(value = "产品大类id")
    private String mainId;

    @ZfireField(tbName = "b")
    @ApiModelProperty(value = "产品大类名称")
    private String mainName;

    @ZfireField(tbName = "b", hide = true)
    @ApiModelProperty(value = "产品小类")
    private String smallId;

    @ZfireField(tbName = "b")
    @ApiModelProperty(value = "产品小类名称")
    private String smallName;

    @ZfireField(tbName = "b", hide = true)
    @ApiModelProperty(value = "商品物料id")
    private String goodsMaterialId;

    @ZfireField(tbName = "b")
    @ApiModelProperty(value = "商品名称")
    private String goodsMaterialName;

    @ZfireField(tbName = "b")
    @ApiModelProperty(value = "系列名称")
    private String seriesName;

    @ZfireField(tbName = "b")
    @ApiModelProperty(value = "规格型号")
    private String specsName;

    @ZfireField(tbName = "b")
    @ApiModelProperty(value = "厂物料编码")
    private String factoryNo;

    @ZfireField(tbName = "b", multiple = true)
    @ApiModelProperty(value = "单位")
    private GoodsMaterialTypeEnum unit;

    @ZfireField(tbName = "b")
    @ApiModelProperty(value = "退货数量")
    private Integer retQty;

    @ZfireField(tbName = "b")
    @ApiModelProperty(value = "内机数量")
    private Integer retInsideQty;

    @ZfireField(tbName = "b")
    @ApiModelProperty(value = "外机数量")
    private Integer retOutQty;

    @ZfireField(tbName = "b")
    @ApiModelProperty(value = "配件数量")
    private Integer retPartsQty;

    @ZfireField(tbName = "b")
    @ApiModelProperty(value = "已导入内机条码数量")
    private Integer insideCodeQty;

    @ZfireField(tbName = "b")
    @ApiModelProperty(value = "已导入外机条码数量")
    private Integer outCodeQty;

    @ZfireField(tbName = "b")
    @ApiModelProperty(value = "已导入配件条码数量")
    private Integer partsCodeQty;

    @ZfireField(tbName = "b")
    @ApiModelProperty(value = "采购价格")
    private BigDecimal price;

    @ZfireField(tbName = "b")
    @ApiModelProperty(value = "退货金额")
    private BigDecimal retAmount;

    @ApiModelProperty(value = "创建人")
    private String createBy;

    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @ApiModelProperty(value = "更新人")
    private String updateBy;

    @ApiModelProperty(value = "更新时间")
    private Date updateTime;

    @ApiModelProperty(value = "审核人")
    private String examineBy;

    @ApiModelProperty(value = "审核时间")
    private Date examineTime;
}
