package com.yh.saas.plugin.base.entity.bean.material;

import java.util.Date;
import java.util.List;

import lombok.Data;

/**
 * 入库bean
 * 
 * @author Lenovo
 *
 */
@Data
public class MatInStoreBean {

	private InfoBean info;

	private List<DetailBean> details;

	@Data
	public static class InfoBean {

		/**
		 * 入库单ID
		 */
		private String inStoreId;

		/**
		 * 公司ID(该用户所属公司的公司表的主键值)
		 */
		private String compId;

		/**
		 * 船舶ID
		 */
		private String vesselId;

		/**
		 * 船舶名称
		 */
		private String vesselName;

		/**
		 * 入库单号
		 */
		private String inStoreNo;

		/**
		 * 部门ID
		 */
		private String deptId;

		/**
		 * 部门名称
		 */
		private String deptName;

		/**
		 * 拆单合单标记
		 */
		private String splitFlag;

		/**
		 * 入库日期
		 */
		private Date inStoreDate;

		/**
		 * 状态标识（0:废弃/1:已供货，待验收/3:部分验收/5:全部验收/7:强制完成）
		 */
		private String status;

		/**
		 * 状态名称
		 */
		private String statusName;

		/**
		 * 状态英文名称
		 */
		private String statusNameEn;

		/**
		 * 供船时间
		 */
		private Date supplyDate;
		/**
		 * 供船地点
		 */
		private String supplyPlace;

		/**
		 * 验收人
		 */
		private String acceptUser;

		/**
		 * 实际验收人(黄三角不用)
		 */
		private String actualAcceptUser;

		// region 基础字段
		/**
		 * 供货商名称
		 */
		private String vendorName;

		/**
		 * 签收单是否提交回公司（0：不提交 1:提交）
		 */
		private String submitFlag;
		/**
		 * 签收单说明
		 */
		private String acceptRemark;

		/**
		 * 申请人
		 */
		private String applUserName;

		/**
		 * 申请单ID
		 */
		private String applId;
		/**
		 * 申请单号
		 */
		private String applNo;
		/**
		 * 询价单ID
		 */
		private String enquiryId;
		/**
		 * 报价单ID
		 */
		private String quotesId;
		/**
		 * 采购单ID
		 */
		private String purchaseId;
		/**
		 * 结算单ID
		 */
		private String billId;

		/**
		 * 备注
		 */
		private String remark;

		/**
		 * 科目ID
		 */
		private String subjectId;

		/**
		 * 附件ID
		 */
		private String appendixId;

		/**
		 * 供船内容
		 */
		private String deviceName;
		
		private String purchaseNo;
		
		

	}

	@Data
	public static class DetailBean {

		/**
		 * 入库单明细id
		 */
		private String id;
		/**
		 * 入库单ID
		 */
		private String inStoreId;

		/**
		 * 结算明细单ID
		 */
		private String billDetailId;
		/**
		 * 公司ID(该用户所属公司的公司表的主键值)
		 */
		private String compId;
		/**
		 * 库位ID
		 */
		private String locationId;
		/**
		 * 船舶ID
		 */
		private String vesselId;
		/**
		 * 物料ID
		 */
		private String maId;
		/**
		 * 设备ID
		 */
		private String maTypeId;

		/**
		 * 品牌ID
		 */
		private String brandId;
		/**
		 * 申请数量
		 */
		private Double applQuantity;
		/**
		 * 库存数量
		 */
		private Double storeQuantity;
		/**
		 * 核定数量
		 */
		private Double verifyQuantity;
		/**
		 * 采购数量
		 */
		private Double purchaseQuantity;
		/**
		 * 供船数量(入库数量)
		 */
		private Double inStoreQuantity;
		/**
		 * 未入库数量
		 */
		private Double notInStoreQuantity;
		/**
		 * 记录备件的顺序，同一设备下的备件序号不应重复
		 */
		private Integer orderNum;
		/**
		 * 备注
		 */
		private String description;
		/**
		 * 预计年限
		 */
		private String expectedLife;
		/**
		 * 备用字段1
		 */
		private String reserve01;
		/**
		 * 备用字段2
		 */
		private String reserve02;
		/**
		 * 备用字段3
		 */
		private String reserve03;
		/**
		 * 备用字段4
		 */
		private String reserve04;
		/**
		 * 备用字段5
		 */
		private String reserve05;

		/**
		 * 当前版本号
		 */
		private String versionNo;
		/**
		 * 单价
		 */
		private Double unitPrice;

		/**
		 * 科目ID
		 */
		private String subjectId;
		/**
		 * 附件ID
		 */
		private String appendixId;
		/**
		 * 消耗数量
		 */
		private Double consumedQuantity;
		/**
		 * 最高库存
		 */
		private Double maximumInventory;
		/**
		 * 物料代码
		 */
		private String objCode;
		/**
		 * 物料名称
		 */
		private String materialName;
		/**
		 * 物料英文名称
		 */
		private String materialNameEn;
		/**
		 * 物料编码
		 */
		private String materialCode;
		/**
		 * 规格
		 */
		private String specification;
		/**
		 * 备件计量单位ID
		 */
		private String measurementUnitId;
		/**
		 * 备件计量单位
		 */
		private String measurementUnit;
		/**
		 * 备件计量单位英文
		 */
		private String measurementUnitEn;
		/**
		 * 物料说明
		 */
		private String maDescription;
		/**
		 * 物料备注
		 */
		private String maRemark;
		/**
		 * 品牌
		 */
		private String brandName;
		/**
		 * 品牌英文名称
		 */
		private String brandNameEn;
		/**
		 * 分类名称
		 */
		private String maTypeName;
		/**
		 * 分类英文名称
		 */
		private String maTypeNameEn;

		/**
		 * 供船状态 0为未供船，1为部分供船， 2为全部供船
		 */
		private String shipSupplyFlag;

		/**
		 * 库位名称
		 */
		private String locationName;

	}
}
