using Magicodes.ExporterAndImporter.Core;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Model.Models;
namespace WIDESEA_DTO.Stock
{
    /// 
    /// 成品库存视图
    /// 
    public class ProStockViewDTO
    {
        /// 
        /// 仓库ID
        /// 
        [ExporterHeader(DisplayName = "仓库ID")]
        public int WarehouseId { get; set; }
        /// 
        /// 货位名称
        /// 
        [ExporterHeader(DisplayName = "货位名称")]
        public string LocationName { get; set; }
        /// 
        /// 货位编号
        /// 
        [ExporterHeader(DisplayName = "货位编号")]
        public string LocationCode { get; set; }
        /// 
        /// 货位列
        /// 
        [ExporterHeader(DisplayName = "货位列")]
        public int Column { get; set; }
        /// 
        /// 货位行
        /// 
        [ExporterHeader(DisplayName = "货位行")]
        public int Row { get; set; }
        /// 
        /// 货位层
        /// 
        [ExporterHeader(DisplayName = "货位层")]
        public int Layer { get; set; }
        /// 
        /// 库存数量
        /// 
        [ExporterHeader(DisplayName = "库存数量")]
        public float SumStocks { get; set; }
        /// 
        /// 货位状态
        /// 
        [ExporterHeader(DisplayName = "货位状态")]
        public int LocationStatus { get; set; }
        /// 
        /// 禁用状态
        /// 
        [ExporterHeader(IsIgnore = true)]
        public int EnalbeStatus { get; set; }
        /// 
        /// 库存主键
        /// 
        [ExporterHeader(IsIgnore = true)]
        public int ProStockId { get; set; }
        /// 
        /// 出货单号
        /// 
        [ExporterHeader(DisplayName = "出货单号")]
        public string ShipmentOrder { get; set; }
        /// 
        /// 胶框号
        /// 
        [ExporterHeader(DisplayName = "胶框号")]
        public string PalletCode { get; set; }
        /// 
        /// 产品编码
        /// 
        [ExporterHeader(DisplayName = "产品编码")]
        public string ProductCode { get; set; }
        /// 
        /// 版本
        /// 
        [ExporterHeader(DisplayName = "版本")]
        public string ProductVersion { get; set; }
        /// 
        /// 版本
        /// 
        [ExporterHeader(DisplayName = "版本")]
        public string SpecifyVer { get; set; }
        /// 
        /// 产品周期
        /// 
        [ExporterHeader(DisplayName = "产品周期")]
        public string DateCode { get; set; }
        /// 
        /// 产品批号
        /// 
        [ExporterHeader(DisplayName = "产品批号")]
        public string LotNumber { get; set; }
        /// 
        /// ERP工单
        /// 
        [ExporterHeader(DisplayName = "ERP工单")]
        public string ERPOrder { get; set; }
        /// 
        /// 制造工单
        /// 
        [ExporterHeader(DisplayName = "制造工单")]
        public string MoNumber { get; set; }
        /// 
        /// 销售订单
        /// 
        [ExporterHeader(DisplayName = "销售订单")]
        public string SaleOrder { get; set; }
        /// 
        /// 库存属性
        /// 
        [ExporterHeader(DisplayName = "库存属性")]
        public int ProStockAttribute { get; set; }
        /// 
        /// 库存状态
        /// 
        [ExporterHeader(IsIgnore = true)]
        public int StockStatus { get; set; }
        /// 
        /// 库存备注
        /// 
        [ExporterHeader(DisplayName = "库存备注")]
        public string StockRemark { get; set; }
        /// 
        /// 创建人
        /// 
        [ExporterHeader(DisplayName = "创建人")]
        public string Creater { get; set; }
        /// 
        /// 创建时间
        /// 
        [ExporterHeader(DisplayName = "创建时间")]
        public DateTime CreateDate { get; set; }
        /// 
        /// 修改人
        /// 
        [ExporterHeader(DisplayName = "修改人")]
        public string Modifier { get; set; }
        /// 
        /// 修改时间
        /// 
        [ExporterHeader(DisplayName = "修改时间")]
        public DateTime? ModifyDate { get; set; }
        /// 
        /// 库存详情
        /// 
        [ExporterHeader(IsIgnore = true)]
        [Navigate(NavigateType.OneToMany, nameof(Dt_ProStockInfoDetail.ProStockId), nameof(ProStockId))]
        public List Details { get; set; }
    }
}