using Furion.DatabaseAccessor;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Admin.NET.Core
{
///
/// 托盘信息表
///
[Table("wms_container")]
[Comment("托盘信息表")]
public class WmsContainer : DEntityBase //, IEntityTypeBuilder
{
///
/// 编号
///
[Comment("编号")]
[Required]
[MaxLength(50)]
public string ContainerCode { get; set; }
///
/// 类型;数据字典
///
[Comment("类型")]
[Required]
public ContainerType ContainerType { get; set; }
///
/// 托盘状态;数据字典
///
[Comment("托盘状态")]
[Required]
public ContainerStatus ContainerStatus { get; set; }
///
/// 长度
///
[Comment("长度")]
public decimal SpecLength { get; set; }
///
/// 宽度
///
[Comment("宽度")]
public decimal SpecWidth { get; set; }
///
/// 高度
///
[Comment("高度")]
public decimal SpecHeight { get; set; }
///
/// 限长
///
[Comment("限长")]
public decimal LimitLength { get; set; }
///
/// 限宽
///
[Comment("限宽")]
public decimal LimitWidth { get; set; }
///
/// 限高
///
[Comment("限高")]
public decimal LimitHeight { get; set; }
///
/// 载重上限
///
[Comment("载重上限")]
public decimal MaxWeight { get; set; }
///
/// 父托盘Id
///
[Comment("父托盘Id")]
public long ParentContainerId { get; set; }
///
/// 资产编号
///
[Comment("资产编号")]
[Required]
[MaxLength(50)]
public string AssetNo { get; set; }
///
/// 托盘分类
///
[Comment("托盘分类")]
[Required]
public ContainerCategory ContainerCategory { get; set; } = ContainerCategory.TY;
///
/// Erp单号
///
[Comment("Erp单号")]
[Required]
[MaxLength(50)]
public string ErpNo { get; set; }
///
/// 是否虚拟;数据字典
///
[Comment("是否虚拟")]
[Required]
public YesOrNot IsVirtually { get; set; } = YesOrNot.N;
///
/// 所属车间
///
[Comment("所属车间")]
[Required]
public LesWorkShopType WorkShopType { get; set; }
/////
///// 组装车间物料托盘关系表
/////
//public ICollection WmsAssembleMaterialContainer { get; set; }
/////
///// 物料托盘历史表
/////
//public ICollection WmsAssembleHistoryMaterialContainer { get; set; }
/////
///// 构建一对多的关系
/////
/////
/////
/////
//public void Configure(EntityTypeBuilder entityBuilder, DbContext dbContext, Type dbContextLocator)
//{
// entityBuilder.HasMany(x => x.WmsAssembleMaterialContainer)
// .WithOne(x => x.WmsContainer)
// .HasForeignKey(x => x.ContainerId);
// entityBuilder.HasMany(x => x.WmsAssembleHistoryMaterialContainer)
// .WithOne(x => x.WmsContainer)
// .HasForeignKey(x => x.Id).IsRequired(false);
//}
}
}