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_takematerialorder")]
[Comment("领料单")]
public class WmsTakeMaterialOrder : DEntityBase, IEntityTypeBuilder
{
///
/// Billdate
///
[Comment("单据大类")]
[Required]
public long OrderLargeCategory { get; set; }
///
/// 单据小类
///
[Comment("单据小类")]
[Required]
public long OrderSubclass { get; set; }
///
///事务类型
///销售领料:Z201 生产领料:Z221
///
[Comment("事务类型")]
public string MoveType { get; set; }
///
/// SCM 领 料 申请单头表唯一标识
///
[Comment("上位系统单据唯一识别码")]
public long SOID { get; set; }
///
/// 单据编号
///
[Comment("单据编号")]
[Required]
[MaxLength(255)]
public string NO { get; set; }
///
/// 领料单申请日期
///
[Comment("领料单申请日期")]
public DateTimeOffset? Billdate { get; set; }
///
/// 领用项目号
///
[Comment("领用项目号")]
[MaxLength(255)]
public string WBSElementcode { get; set; }
///
/// 领料部门
///
[Comment("领料部门")]
[MaxLength(255)]
public string BenefitingDepartcode { get; set; }
///
/// 受益部门
///
[Comment("受益部门")]
[MaxLength(255)]
public string CostCenterID { get; set; }
///
/// 客户
///
[Comment("客户")]
[MaxLength(255)]
public string FI_Client_Analysis_H { get; set; }
///
/// 是否公司间交易 1.是 2.否
///
[Comment("是否公司间交易")]
public long IsInnerCompany { get; set; }
///
/// 领料人
///
[Comment("领料人")]
[MaxLength(255)]
public string PickerID { get; set; }
///
/// 仓储中心
///
[Comment("仓储中心")]
[MaxLength(255)]
public string WarehouseCentername { get; set; }
///
/// 公司
///
[Comment("公司")]
[MaxLength(255)]
public string Companyname { get; set; }
///
/// 施工队
///
[Comment("施工队")]
[MaxLength(255)]
public string ConstructionTeamID { get; set; }
///
/// 单据状态
///
[Comment("单据状态")]
[Required]
public OrderStatusEnum OrderStatus { get; set; } = OrderStatusEnum.WEIXIAFA;
///
/// 单据明细
///
public ICollection WmsTakeMaterialOrderDetail { get; set; }
///
/// 1对多配置关系
///
///
///
///
public void Configure(EntityTypeBuilder entityBuilder, DbContext dbContext, Type dbContextLocator)
{
// 一对多配置
entityBuilder.HasMany(x => x.WmsTakeMaterialOrderDetail)
.WithOne(x => x.WmsTakeMaterialOrder)
.HasForeignKey(x => x.OrderId);
}
}
}