diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/SplitPackings/Dtos/SplitPackingRecDto.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/SplitPackings/Dtos/SplitPackingRecDto.cs index 7f7c482c6..bc84be04e 100644 --- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/SplitPackings/Dtos/SplitPackingRecDto.cs +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/SplitPackings/Dtos/SplitPackingRecDto.cs @@ -11,6 +11,10 @@ using Win_in.Sfs.Basedata.Domain.Shared; namespace Win_in.Sfs.Basedata.Application.Contracts; public class SplitPackingRecDTO : SfsBaseDataDTOBase + , IHasPurchaseInfoDto + , IHasProductionInfoDto + , IHasQualityInfoDto + { /// /// 操作类型 @@ -156,5 +160,163 @@ public class SplitPackingRecDTO : SfsBaseDataDTOBase [Display(Name = "标签类型")] public EnumLabelType LabelType { get; set; } + + + + + #region InventoryLabel兼容成员 + + /// + /// 完整条码文本 + /// + [Display(Name = "完整条码文本")] + public string FullBarcodeString { get; set; } + + /// + /// 供应商批次 + /// + [Display(Name = "供应商批次")] + public string SupplierBatch { get; set; } + + /// + /// 到货时间 + /// + [Display(Name = "summary")] + public DateTime ArriveDate { get; set; } + + /// + /// 生产时间 + /// + [Display(Name = "生产时间")] + public DateTime ProduceDate { get; set; } + + /// + /// 过期时间 + /// + [Display(Name = "过期时间")] + public DateTime ExpireDate { get; set; } + + /// + /// 标签状态 + /// + [Display(Name = "标签状态")] + public LabelStatus LabelStatus { get; set; } + + /// + /// 建议库位 + /// + [Display(Name = "建议库位")] + public string RecommendLocationCode { get; set; } + + /// + /// 目标ERP库位 + /// + [Display(Name = "目标ERP库位")] + public string LocationErpCode { get; set; } + + /// + /// 托标签号 + /// + [Display(Name = "托标签号")] + public string ContainerCode { get; set; } + + #region 三个子实体成员 + //-----------------------QualityInfo + /// + /// 质量级别 + /// + [Display(Name = "质量级别")] + public string QLevel { get; set; } + + /// + /// 质检文件 + /// + [Display(Name = "质检文件")] + public string QualityFile { get; set; } + + //----------------------PurchaseInfo + /// + /// 供应商代码 + /// + [Display(Name = "供应商代码")] + public string SupplierCode { get; set; } + + /// + /// 订单号 + /// + [Display(Name = "订单号")] + public string PoNumber { get; set; } + + /// + /// 要货看板号 + /// + [Display(Name = "要货看板号")] + public string RpNumber { get; set; } + + /// + /// 发货单号 + /// + [Display(Name = "发货单号")] + public string AsnNumber { get; set; } + + //--------------------------------ProductionInfo + /// + /// 生产线 + /// + [Display(Name = "生产线")] + public string ProdLine { get; set; } + + /// + /// 班组 + /// + [Display(Name = "班组")] + public string Team { get; set; } + + /// + /// 班次 + /// + [Display(Name = "班次")] + public string Shift { get; set; } + + #endregion + + /// + /// 规格 + /// + [Display(Name = "规格")] + public string Specifications { get; set; } + + /// + /// 供应商名称 + /// + [Display(Name = "供应商名称")] + public string SupplierName { get; set; } + + /// + /// 供应商简称 + /// + [Display(Name = "供应商简称")] + public string SupplierSimpleName { get; set; } + + /// + /// 供应商ERP料号 + /// + [Display(Name = "供应商ERP料号")] + public string SupplierItemCode { get; set; } + + /// + /// 供应商物品名 + /// + [Display(Name = "供应商物品名")] + public string SupplierItemName { get; set; } + + /// + /// 要求到货时间 + /// + [Display(Name = "要求到货时间")] + [Required(ErrorMessage = "{0}是必填项")] + public DateTime PlanArriveDate { get; set; } + #endregion + } diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/SplitPackings/Inputs/SplitPackingRecEditInput.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/SplitPackings/Inputs/SplitPackingRecEditInput.cs index 1715995bc..1a450a8fc 100644 --- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/SplitPackings/Inputs/SplitPackingRecEditInput.cs +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/SplitPackings/Inputs/SplitPackingRecEditInput.cs @@ -13,6 +13,9 @@ namespace Win_in.Sfs.Basedata.Application.Contracts; public class SplitPackingRecEditInput : SfsBaseDataCreateOrUpdateInputBase + , IHasPurchaseInfoDto + , IHasProductionInfoDto + , IHasQualityInfoDto { /// /// 操作类型 @@ -159,4 +162,162 @@ public class SplitPackingRecEditInput : SfsBaseDataCreateOrUpdateInputBase /// 标签类型 /// public EnumLabelType LabelType { get; set; } + + + + + #region InventoryLabel兼容成员 + + /// + /// 完整条码文本 + /// + [Display(Name = "完整条码文本")] + public string FullBarcodeString { get; set; } + + /// + /// 供应商批次 + /// + [Display(Name = "供应商批次")] + public string SupplierBatch { get; set; } + + /// + /// 到货时间 + /// + [Display(Name = "summary")] + public DateTime ArriveDate { get; set; } + + /// + /// 生产时间 + /// + [Display(Name = "生产时间")] + public DateTime ProduceDate { get; set; } + + /// + /// 过期时间 + /// + [Display(Name = "过期时间")] + public DateTime ExpireDate { get; set; } + + /// + /// 标签状态 + /// + [Display(Name = "标签状态")] + public LabelStatus LabelStatus { get; set; } + + /// + /// 建议库位 + /// + [Display(Name = "建议库位")] + public string RecommendLocationCode { get; set; } + + /// + /// 目标ERP库位 + /// + [Display(Name = "目标ERP库位")] + public string LocationErpCode { get; set; } + + /// + /// 托标签号 + /// + [Display(Name = "托标签号")] + public string ContainerCode { get; set; } + + #region 三个子实体成员 + //-----------------------QualityInfo + /// + /// 质量级别 + /// + [Display(Name = "质量级别")] + public string QLevel { get; set; } + + /// + /// 质检文件 + /// + [Display(Name = "质检文件")] + public string QualityFile { get; set; } + + //----------------------PurchaseInfo + /// + /// 供应商代码 + /// + [Display(Name = "供应商代码")] + public string SupplierCode { get; set; } + + /// + /// 订单号 + /// + [Display(Name = "订单号")] + public string PoNumber { get; set; } + + /// + /// 要货看板号 + /// + [Display(Name = "要货看板号")] + public string RpNumber { get; set; } + + /// + /// 发货单号 + /// + [Display(Name = "发货单号")] + public string AsnNumber { get; set; } + + //--------------------------------ProductionInfo + /// + /// 生产线 + /// + [Display(Name = "生产线")] + public string ProdLine { get; set; } + + /// + /// 班组 + /// + [Display(Name = "班组")] + public string Team { get; set; } + + /// + /// 班次 + /// + [Display(Name = "班次")] + public string Shift { get; set; } + + #endregion + + /// + /// 规格 + /// + [Display(Name = "规格")] + public string Specifications { get; set; } + + /// + /// 供应商名称 + /// + [Display(Name = "供应商名称")] + public string SupplierName { get; set; } + + /// + /// 供应商简称 + /// + [Display(Name = "供应商简称")] + public string SupplierSimpleName { get; set; } + + /// + /// 供应商ERP料号 + /// + [Display(Name = "供应商ERP料号")] + public string SupplierItemCode { get; set; } + + /// + /// 供应商物品名 + /// + [Display(Name = "供应商物品名")] + public string SupplierItemName { get; set; } + + /// + /// 要求到货时间 + /// + [Display(Name = "要求到货时间")] + [Required(ErrorMessage = "{0}是必填项")] + public DateTime PlanArriveDate { get; set; } + #endregion + } diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/SplitPackings/SplitPackingRecAutoMapperProfile.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/SplitPackings/SplitPackingRecAutoMapperProfile.cs index dc89749ef..35486936c 100644 --- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/SplitPackings/SplitPackingRecAutoMapperProfile.cs +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/SplitPackings/SplitPackingRecAutoMapperProfile.cs @@ -9,8 +9,15 @@ public partial class BasedataApplicationAutoMapperProfile : Profile { private void SplitPackingRecAutoMapperProfile() { - CreateMap(); + CreateMap() + .MapPurchaseInfo() + .MapProductionInfo() + .MapQualityInfo(); + CreateMap() + .MapQualityInfoDto() + .MapPurchaseInfoDto() + .MapProductionInfoDto() .Ignore(t => t.FromTopPackingCode) .Ignore(t => t.ToTopPackingCode) .Ignore(t => t.LastModificationTime) @@ -19,5 +26,75 @@ public partial class BasedataApplicationAutoMapperProfile : Profile .Ignore(t => t.CreatorId) .Ignore(t => t.ConcurrencyStamp) .Ignore(t => t.Id); + + } +} + +public static class LabelCommonMapperExtensions +{ + public static IMappingExpression MapPurchaseInfo( + this IMappingExpression m) + where TSource : IHasPurchaseInfo + where TDestination : IHasPurchaseInfoDto + { + return m + .ForMember(dest => dest.SupplierCode, opts => opts.MapFrom(src => src.PurchaseInfo.SupplierCode)) + .ForMember(dest => dest.PoNumber, opts => opts.MapFrom(src => src.PurchaseInfo.PoNumber)) + .ForMember(dest => dest.RpNumber, opts => opts.MapFrom(src => src.PurchaseInfo.RpNumber)) + .ForMember(dest => dest.AsnNumber, opts => opts.MapFrom(src => src.PurchaseInfo.AsnNumber)) + ; + } + + public static IMappingExpression MapProductionInfo( + this IMappingExpression m) + where TSource : IHasProductionInfo + where TDestination : IHasProductionInfoDto + { + return m + .ForMember(dest => dest.ProdLine, opts => opts.MapFrom(src => src.ProductionInfo.ProdLine)) + .ForMember(dest => dest.Team, opts => opts.MapFrom(src => src.ProductionInfo.Team)) + .ForMember(dest => dest.Shift, opts => opts.MapFrom(src => src.ProductionInfo.Shift)) + ; + } + + public static IMappingExpression MapPurchaseInfoDto( + this IMappingExpression m) + where TSource : IHasPurchaseInfoDto + where TDestination : IHasPurchaseInfo + { + return m + .ForMember(dest => dest.PurchaseInfo, opts => opts.MapFrom(src => new PurchaseInfo(src.SupplierCode, src.PoNumber, src.RpNumber, src.AsnNumber))) + ; + } + + public static IMappingExpression MapProductionInfoDto( + this IMappingExpression m) + where TSource : IHasProductionInfoDto + where TDestination : IHasProductionInfo + { + return m + .ForMember(dest => dest.ProductionInfo, opts => opts.MapFrom(src => new ProductionInfo(src.ProdLine, src.Team, src.Shift))) + ; + } + + public static IMappingExpression MapQualityInfo( + this IMappingExpression m) + where TSource : IHasQualityInfo + where TDestination : IHasQualityInfoDto + { + return m + .ForMember(dest => dest.QLevel, opts => opts.MapFrom(src => src.QualityInfo.QLevel)) + .ForMember(dest => dest.QualityFile, opts => opts.MapFrom(src => src.QualityInfo.QualityFile)) + ; + } + + public static IMappingExpression MapQualityInfoDto( + this IMappingExpression m) + where TSource : IHasQualityInfoDto + where TDestination : IHasQualityInfo + { + return m + .ForMember(dest => dest.QualityInfo, opts => opts.MapFrom(src => new QualityInfo(src.QLevel, src.QualityFile))) + ; } } diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain.Shared/IHasPurchaseInfo.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain.Shared/IHasPurchaseInfo.cs new file mode 100644 index 000000000..11123aeb6 --- /dev/null +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain.Shared/IHasPurchaseInfo.cs @@ -0,0 +1,272 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Microsoft.EntityFrameworkCore; +using Volo.Abp.Domain.Values; +using Win_in.Sfs.Shared.Domain; + +namespace Win_in.Sfs.Basedata; +#region 枚举及实体 +/// +/// 标签类别 +/// +public enum EnumLabelType +{ + /// + /// 空枚举 + /// + [Display(Name = "未定义")] + None = 0, + + /// + /// 采购标签 + /// + [Display(Name = "采购标签")] + PurchaseLabel = 1, + + /// + /// 生产标签 + /// + [Display(Name = "生产标签")] + ProductionLabel = 2, + + /// + /// 销售标签 + /// + [Display(Name = "销售标签")] + SaleLabel = 3, + + /// + /// 托盘标签 + /// + [Display(Name = "托盘标签")] + PalletLabel = 4, + + /// + /// 盘点标签 + /// + [Display(Name = "盘点标签")] + CountLabel = 5, +} + +public enum LabelStatus +{ + /// + /// 未定义 + /// + [Display(Name = "未定义")] + None = 0, + + /// + /// 有效 + /// + [Display(Name = "有效")] + Enable = 1, + + /// + /// 无效 + /// + [Display(Name = "无效")] + Disable = 2 +} + +/// +/// 质量信息 +/// +public class QualityInfo : ValueObject +{ + + /// + /// 质量等级 + /// + [MaxLength(SfsEfCorePropertyConst.CodeLength)] + public string QLevel { get; set; } + + /// + /// 质检文件 + /// + [MaxLength(SfsEfCorePropertyConst.CodeLength)] + public string QualityFile { get; set; } + + protected override IEnumerable GetAtomicValues() + { + yield return QLevel; + yield return QualityFile; + } + + public QualityInfo(string qLevel, string qualityFile) + { + QLevel = qLevel; + QualityFile = qualityFile; + } + + public QualityInfo() + { + + } +} + + +/// +/// 采购信息 +/// +[Owned] +public class PurchaseInfo : ValueObject +{ + /// + /// 供应商代码 + /// + [MaxLength(SfsEfCorePropertyConst.CodeLength)] + public string SupplierCode { get; set; } + + /// + /// 订单号 + /// + [MaxLength(SfsEfCorePropertyConst.CodeLength)] + public string PoNumber { get; set; } + + /// + /// 要货计划号 + /// + [MaxLength(SfsEfCorePropertyConst.CodeLength)] + public string RpNumber { get; set; } + + /// + /// 发货单号 + /// + [MaxLength(SfsEfCorePropertyConst.CodeLength)] + public string AsnNumber { get; set; } + + protected override IEnumerable GetAtomicValues() + { + yield return SupplierCode; + yield return PoNumber; + yield return RpNumber; + yield return AsnNumber; + } + + public PurchaseInfo(string supplierCode, string poNumber, string rpNumber, string asnNumber) + { + SupplierCode = supplierCode; + PoNumber = poNumber; + RpNumber = rpNumber; + AsnNumber = asnNumber; + } + + public PurchaseInfo() + { + + } +} + +/// +/// 生产信息 +/// +public class ProductionInfo : ValueObject +{ + public ProductionInfo() + { + + } + + public ProductionInfo(string prodLine, string team, string shift) + { + ProdLine = prodLine; + Team = team; + Shift = shift; + } + + /// + /// 生产线 + /// + [MaxLength(SfsEfCorePropertyConst.CodeLength)] + public string ProdLine { get; set; } + + /// + /// 班组 + /// + [MaxLength(SfsEfCorePropertyConst.CodeLength)] + public string Team { get; set; } + + /// + /// 班次 + /// + [MaxLength(SfsEfCorePropertyConst.CodeLength)] + public string Shift { get; set; } + + protected override IEnumerable GetAtomicValues() + { + + yield return ProdLine; + yield return Team; + yield return Shift; + } +} + +#endregion + + + + +#region 接口 +public interface IHasPurchaseInfo +{ + /// + /// 采购信息 + /// + public PurchaseInfo PurchaseInfo { get; set; } + +} + +public interface IHasProductionInfo +{ + /// + /// 生产信息 + /// + public ProductionInfo ProductionInfo { get; set; } + +} + +public interface IHasPurchaseInfoDto +{ + /// + /// 供应商编号 + /// + [Display(Name = "供应商编号")] + public string SupplierCode { get; set; } + + public string PoNumber { get; set; } + + public string RpNumber { get; set; } + + public string AsnNumber { get; set; } + +} + +public interface IHasProductionInfoDto +{ + public string ProdLine { get; set; } + public string Team { get; set; } + public string Shift { get; set; } +} + +public interface IHasQualityInfo +{ + /// + /// 质量信息 + /// + public QualityInfo QualityInfo { get; set; } +} + +public interface IHasQualityInfoDto +{ + public string QLevel { get; set; } + + public string QualityFile { get; set; } + +} + +#endregion diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain.Shared/Win_in.Sfs.Basedata.Domain.Shared.csproj b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain.Shared/Win_in.Sfs.Basedata.Domain.Shared.csproj index 9d201acdf..3900f3899 100644 --- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain.Shared/Win_in.Sfs.Basedata.Domain.Shared.csproj +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain.Shared/Win_in.Sfs.Basedata.Domain.Shared.csproj @@ -10,6 +10,7 @@ + @@ -22,6 +23,10 @@ + + + + all diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/SplitPackings/SplitPackingRec.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/SplitPackings/SplitPackingRec.cs index 7a3f427cd..8eb845d83 100644 --- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/SplitPackings/SplitPackingRec.cs +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/SplitPackings/SplitPackingRec.cs @@ -1,6 +1,9 @@ using System; +using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; +using Microsoft.EntityFrameworkCore; +using Volo.Abp.Domain.Values; using Win_in.Sfs.Basedata.Domain.Shared; using Win_in.Sfs.Shared.Domain; using Win_in.Sfs.Shared.Domain.Shared; @@ -12,6 +15,9 @@ namespace Win_in.Sfs.Basedata.Domain; /// public class SplitPackingRec : SfsBaseDataAggregateRootBase , IHasItem + , IHasPurchaseInfo + , IHasQualityInfo + , IHasProductionInfo { /// /// 操作类型 @@ -141,46 +147,107 @@ public class SplitPackingRec : SfsBaseDataAggregateRootBase public string PutOnShelfNumber { get; set; } public EnumLabelType LabelType { get; set; } -} -/// -/// 标签类别 -/// -public enum EnumLabelType -{ + + + #region InventoryLabel兼容成员 + + /// + /// 完整条码文本 + /// + public string FullBarcodeString { get; set; } + + /// + /// 供应商批次 + /// + public string SupplierBatch { get; set; } + + /// + /// 到货时间 + /// + public DateTime ArriveDate { get; set; } + + /// + /// 生产时间 + /// + public DateTime ProduceDate { get; set; } + + /// + /// 过期时间 + /// + public DateTime ExpireDate { get; set; } + /// - /// 空枚举 + /// 标签状态 /// - [Display(Name = "未定义")] - None = 0, + public LabelStatus LabelStatus { get; set; } /// - /// 采购标签 + /// 建议库位 /// - [Display(Name = "采购标签")] - PurchaseLabel = 1, + public string RecommendLocationCode { get; set; } /// - /// 生产标签 + /// 目标ERP库位 /// - [Display(Name = "生产标签")] - ProductionLabel = 2, + public string LocationErpCode { get; set; } /// - /// 销售标签 + /// 托标签号 /// - [Display(Name = "销售标签")] - SaleLabel = 3, + public string ContainerCode { get; set; } /// - /// 托盘标签 + /// 质量信息 /// - [Display(Name = "托盘标签")] - PalletLabel = 4, + public QualityInfo QualityInfo { get; set; } = new(); /// - /// 盘点标签 + /// 采购信息 /// - [Display(Name = "盘点标签")] - CountLabel = 5, + public PurchaseInfo PurchaseInfo { get; set; } = new(); + + /// + /// 生产信息 + /// + public ProductionInfo ProductionInfo { get; set; } = new(); + + /// + /// 规格 + /// + [Display(Name = "规格")] + public string Specifications { get; set; } + + /// + /// 供应商名称 + /// + [Display(Name = "供应商名称")] + public string SupplierName { get; set; } + + /// + /// 供应商简称 + /// + [Display(Name = "供应商简称")] + public string SupplierSimpleName { get; set; } + + /// + /// 供应商ERP料号 + /// + [Display(Name = "供应商ERP料号")] + public string SupplierItemCode { get; set; } + + /// + /// 供应商物品名 + /// + [Display(Name = "供应商物品名")] + public string SupplierItemName { get; set; } + + /// + /// 要求到货时间 + /// + [Display(Name = "要求到货时间")] + [Required(ErrorMessage = "{0}是必填项")] + public DateTime PlanArriveDate { get; set; } + #endregion } + diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/SplitPackings/SplitPackingRecDbContextModelCreatingExtensions.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/SplitPackings/SplitPackingRecDbContextModelCreatingExtensions.cs index db760c765..c052bccbf 100644 --- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/SplitPackings/SplitPackingRecDbContextModelCreatingExtensions.cs +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/SplitPackings/SplitPackingRecDbContextModelCreatingExtensions.cs @@ -46,9 +46,30 @@ public static class SplitPackingRecDbContextModelCreatingExtensions b.Property(q => q.ReceiptRecNumber).HasMaxLength(SfsPropertyConst.CodeLength); b.Property(q => q.PutOnShelfNumber).HasMaxLength(SfsPropertyConst.CodeLength); + #region InventoryLabel兼容成员 + b.Property(q => q.FullBarcodeString).HasMaxLength(SfsPropertyConst.CodeLength); + b.Property(q => q.SupplierBatch).HasMaxLength(SfsPropertyConst.CodeLength); + b.Property(q => q.RecommendLocationCode).HasMaxLength(SfsPropertyConst.CodeLength); + b.Property(q => q.LocationErpCode).HasMaxLength(SfsPropertyConst.CodeLength); + b.Property(q => q.ContainerCode).HasMaxLength(SfsPropertyConst.CodeLength); + b.Property(q => q.Specifications).HasMaxLength(SfsPropertyConst.CodeLength); + b.Property(q => q.SupplierName).HasMaxLength(SfsPropertyConst.NameLength); + b.Property(q => q.SupplierSimpleName).HasMaxLength(SfsPropertyConst.NameLength); + b.Property(q => q.SupplierItemCode).HasMaxLength(SfsPropertyConst.CodeLength); + b.Property(q => q.SupplierItemName).HasMaxLength(SfsPropertyConst.NameLength); + //子实体成员属性中已经定义字段长度 + #endregion + //Indexes b.HasIndex(q => new { FromPackingCode = q.FromPackingCode, ToPackingCode = q.ToPackingCode }); b.HasIndex(q => new { ToPackingCode = q.ToPackingCode }); + //Relations + + b.OwnsOne(q => q.PurchaseInfo); + b.OwnsOne(q => q.ProductionInfo); + b.OwnsOne(q => q.QualityInfo); + }); + } } diff --git a/be/Modules/Label/src/Win_in.Sfs.Label.Application/InventoryLabels/InventoryLabelAppService.cs b/be/Modules/Label/src/Win_in.Sfs.Label.Application/InventoryLabels/InventoryLabelAppService.cs index d5eb0339f..d37e03c89 100644 --- a/be/Modules/Label/src/Win_in.Sfs.Label.Application/InventoryLabels/InventoryLabelAppService.cs +++ b/be/Modules/Label/src/Win_in.Sfs.Label.Application/InventoryLabels/InventoryLabelAppService.cs @@ -193,6 +193,34 @@ public class InventoryLabelAppService packRec.TaskOrderNumber = null; //任务单 packRec.ReceiptRecNumber = null; //收货记录单 packRec.PutOnShelfNumber = null; //上架单 + + + #region InventoryLabel兼容成员 + packRec.FullBarcodeString = inputObj.FullBarcodeString; + packRec.SupplierBatch = inputObj.SupplierBatch; + packRec.ArriveDate = inputObj.ArriveDate; + packRec.ProduceDate = inputObj.ProduceDate; + packRec.ExpireDate = inputObj.ExpireDate; + packRec.LabelStatus = (Win_in.Sfs.Basedata.LabelStatus)((int)inputObj.LabelStatus); + packRec.RecommendLocationCode = inputObj.RecommendLocationCode; + packRec.LocationErpCode = inputObj.LocationErpCode; + packRec.ContainerCode = inputObj.ContainerCode; + packRec.QLevel = inputObj.QLevel;// + packRec.QualityFile = inputObj.QualityFile; + packRec.SupplierCode = inputObj.SupplierCode; + packRec.PoNumber = inputObj.PoNumber; + packRec.RpNumber = inputObj.RpNumber; + packRec.AsnNumber = inputObj.AsnNumber; + packRec.ProdLine = inputObj.ProdLine; + packRec.Team = inputObj.Team; + packRec.Shift = inputObj.Shift;// + packRec.Specifications = inputObj.Specifications; + packRec.SupplierName = inputObj.SupplierName; + packRec.SupplierSimpleName = inputObj.SupplierSimpleName; + packRec.SupplierItemCode = inputObj.SupplierItemCode; + packRec.SupplierItemName = inputObj.SupplierItemName; + packRec.PlanArriveDate = inputObj.PlanArriveDate; + #endregion recLst.Add(packRec); } bool bo = await _splitPackingRecAppService.BatchInsertAsync(recLst).ConfigureAwait(false); diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/TransferNotes/TransferNoteAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/TransferNotes/TransferNoteAppService.cs index 2768b848b..3fb7b5b0e 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/TransferNotes/TransferNoteAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/TransferNotes/TransferNoteAppService.cs @@ -474,6 +474,34 @@ public class TransferNoteAppService : SfsStoreWithDetailsAppServiceBase { packRec.PurchaseInfo_PoNumber = inventoryLabelDto.PoNumber; packRec.PurchaseInfo_AsnNumber = inventoryLabelDto.AsnNumber; + + #region InventoryLabel兼容成员 + var inputObj = inventoryLabelDto; + packRec.FullBarcodeString = inputObj.FullBarcodeString; + packRec.SupplierBatch = inputObj.SupplierBatch; + packRec.ArriveDate = inputObj.ArriveDate; + packRec.ProduceDate = inputObj.ProduceDate; + packRec.ExpireDate = inputObj.ExpireDate; + packRec.LabelStatus = (Win_in.Sfs.Basedata.LabelStatus)((int)inputObj.LabelStatus); + packRec.RecommendLocationCode = inputObj.RecommendLocationCode; + packRec.LocationErpCode = inputObj.LocationErpCode; + packRec.ContainerCode = inputObj.ContainerCode; + packRec.QLevel = inputObj.QLevel;// + packRec.QualityFile = inputObj.QualityFile; + packRec.SupplierCode = inputObj.SupplierCode; + packRec.PoNumber = inputObj.PoNumber; + packRec.RpNumber = inputObj.RpNumber; + packRec.AsnNumber = inputObj.AsnNumber; + packRec.ProdLine = inputObj.ProdLine; + packRec.Team = inputObj.Team; + packRec.Shift = inputObj.Shift;// + packRec.Specifications = inputObj.Specifications; + packRec.SupplierName = inputObj.SupplierName; + packRec.SupplierSimpleName = inputObj.SupplierSimpleName; + packRec.SupplierItemCode = inputObj.SupplierItemCode; + packRec.SupplierItemName = inputObj.SupplierItemName; + packRec.PlanArriveDate = inputObj.PlanArriveDate; + #endregion } recLst.Add(packRec); }