You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
555 lines
25 KiB
555 lines
25 KiB
using System;
|
|
using AutoMapper;
|
|
using Volo.Abp.AutoMapper;
|
|
using Win_in.Sfs.Basedata.Application.Contracts;
|
|
using Win_in.Sfs.Shared.Application;
|
|
using Win_in.Sfs.Shared.Domain.Shared;
|
|
using Win_in.Sfs.Wms.DataExchange.Application.Contracts.Iac.Qad;
|
|
using Win_in.Sfs.Wms.DataExchange.Domain.Iac.Qad;
|
|
using Win_in.Sfs.Wms.Inventory.Application.Contracts;
|
|
using Win_in.Sfs.Wms.Store.Application.Contracts;
|
|
|
|
namespace Win_in.Sfs.Wms.DataExchange.Application.Iac.Qad.Profiles;
|
|
|
|
public class QadToWmsAutoMapperProfile : Profile
|
|
{
|
|
public QadToWmsAutoMapperProfile()
|
|
{
|
|
CreateMap_InputToEntity();
|
|
CreateMap_EntityToDto();
|
|
|
|
CreateMap_asn_mstr(); //包含明细asn_det
|
|
CreateMap_bom();
|
|
CreateMap_cust_part();
|
|
CreateMap_cust();
|
|
CreateMap_inventory(); //inventory先不做
|
|
CreateMap_loc(); //Loc先不做
|
|
CreateMap_part();
|
|
CreateMap_po_mstr(); //包含明细po_det
|
|
CreateMap_prod_line(); //ProductLineCreateInput IProductLineAppService ProductionLineItemCreateInput IProductionLineItemAppService
|
|
CreateMap_sod_det(); //SaleOrderCreateInput SaleOrderDetailInput ISaleOrderAppService
|
|
CreateMap_vend_part();
|
|
CreateMap_vend();
|
|
CreateMap_Return();
|
|
CreateMap_Receipt();
|
|
//CreateMap_PrhHist();
|
|
|
|
}
|
|
|
|
#region 方法
|
|
|
|
private void CreateMap_InputToEntity()
|
|
{
|
|
CreateMap<AsnDetInput, AsnDet>().Ignore(p => p.Id);
|
|
CreateMap<AsnMstrInput, AsnMstr>()
|
|
.Ignore(p => p.Id)
|
|
.ForMember(dest => dest.Details, option => option.MapFrom(src => src.Details));
|
|
|
|
CreateMap<ReceiptDetInput, ReceiptDet>().Ignore(p => p.Id);
|
|
CreateMap<ReceiptMstrInput, ReceiptMstr>()
|
|
.Ignore(p => p.Id)
|
|
.ForMember(dest => dest.Details, option => option.MapFrom(src => src.Details));
|
|
|
|
CreateMap<ReturnDetInput, ReturnDet>().Ignore(p => p.Id);
|
|
CreateMap<ReturnMstrInput, ReturnMstr>()
|
|
.Ignore(p => p.Id)
|
|
.ForMember(dest => dest.Details, option => option.MapFrom(src => src.Details));
|
|
|
|
CreateMap<BomInput, Bom>().Ignore(p => p.Id);
|
|
CreateMap<CustPartInput, CustPart>().Ignore(p => p.Id);
|
|
CreateMap<CustInput, Cust>().Ignore(p => p.Id);
|
|
CreateMap<InventoryInput, Domain.Iac.Qad.Inventory>().Ignore(p => p.Id); //inventory先不做
|
|
CreateMap<LocInput, Loc>().Ignore(p => p.Id); //Loc先不做
|
|
CreateMap<PartInput, Part>().Ignore(p => p.Id);
|
|
|
|
CreateMap<PoDetInput, PoDet>().Ignore(p => p.Id);
|
|
CreateMap<PoMstrInput, PoMstr>()
|
|
.Ignore(p => p.Id)
|
|
.ForMember(dest => dest.Details, option => option.MapFrom(src => src.Details));
|
|
CreateMap<ProdLineInput, ProdLine>().Ignore(p => p.Id);
|
|
CreateMap<SodDetInput, SodDet>().Ignore(p => p.Id);
|
|
CreateMap<VendPartInput, VendPart>().Ignore(p => p.Id);
|
|
CreateMap<VendInput, Vend>().Ignore(p => p.Id);
|
|
CreateMap<PrhHistInput, PrhHist>().Ignore(p => p.Id);
|
|
|
|
}
|
|
|
|
private void CreateMap_EntityToDto()
|
|
{
|
|
CreateMap<AsnDet, AsnDetDto>();
|
|
CreateMap<AsnMstr, AsnMstrDto>()
|
|
.ForMember(dest => dest.Details, option => option.MapFrom(src => src.Details));
|
|
|
|
CreateMap<Bom, BomDto>();
|
|
CreateMap<CustPart, CustPartDto>();
|
|
CreateMap<Cust, CustDto>();
|
|
CreateMap<Domain.Iac.Qad.Inventory, InventoryDto>(); //inventory先不做
|
|
CreateMap<Loc, LocDto>(); //Loc先不做
|
|
CreateMap<Part, PartDto>();
|
|
|
|
CreateMap<PoDet, PoDetDto>();
|
|
CreateMap<PoMstr, PoMstrDto>()
|
|
.ForMember(dest => dest.Details, option => option.MapFrom(src => src.Details));
|
|
CreateMap<ProdLine, ProdLineDto>();
|
|
CreateMap<SodDet, SodDetDto>();
|
|
CreateMap<VendPart, VendPartDto>();
|
|
CreateMap<Vend, VendDto>();
|
|
CreateMap<ReturnMstr, ReturnMstrDto>();
|
|
CreateMap<ReturnDet, ReturnDetDto>();
|
|
|
|
CreateMap<ReceiptMstr, ReceiptMstrDto>();
|
|
CreateMap<ReceiptDet, ReceiptDetDto>();
|
|
CreateMap<PrhHist, PrhHistDto>();
|
|
|
|
}
|
|
|
|
private void CreateMap_Receipt()
|
|
{
|
|
//子对象
|
|
CreateMap<ReceiptDet, PurchaseReceiptNoteDetailInput>()
|
|
//.Ignore(p => p.TenantId)
|
|
.Ignore(p => p.PoNumber)
|
|
.Ignore(p => p.Qty)
|
|
|
|
.ForMember(p => p.PoLine, p => p.MapFrom(q => q.PoLine))
|
|
.ForMember(p => p.ItemCode, p => p.MapFrom(q => q.PartCode))
|
|
.ForMember(p => p.Lot, p => p.MapFrom(q => q.Lot))
|
|
.ForMember(p => p.Status, p => p.MapFrom(q => q.Status))
|
|
.ForMember(p => p.LocationCode, p => p.MapFrom(q => q.Loc))
|
|
.ForMember(p => p.PackingCode, p => p.MapFrom(q => q.PackingCode))
|
|
.ForMember(p => p.ContainerCode, p => p.MapFrom(q => q.ContainerCode))
|
|
.ForMember(p => p.Remark, p => p.MapFrom(q => q.Remark))
|
|
//.ForMember(p => p.CreateTime, p => p.MapFrom(q => q.CreateTime))
|
|
//.ForMember(p => p.Worker, p => p.MapFrom(q => q.CreateUser))
|
|
.IgnoreIHasRecommendAndHandledTo();
|
|
|
|
//主对象
|
|
CreateMap<ReceiptMstr, PurchaseReceiptNoteEditInput>()
|
|
.Ignore(p => p.TenantId)
|
|
.Ignore(p => p.JobNumber)
|
|
.Ignore(p => p.Status)
|
|
.Ignore(p => p.Type)
|
|
.Ignore(p => p.PurchaseReceiptRequestNumber)
|
|
|
|
//.ForMember(p => p.Site, p => p.MapFrom(q => q.Site))
|
|
.ForMember(p => p.Number, p => p.MapFrom(q => q.RcNbr))
|
|
.ForMember(p => p.AsnNumber, p => p.MapFrom(q => q.AsnNbr))
|
|
.ForMember(p => p.PoNumber, p => p.MapFrom(q => q.PoNbr))
|
|
.ForMember(p => p.RpNumber, p => p.MapFrom(q => q.RpNbr))
|
|
.ForMember(p => p.SupplierCode, p => p.MapFrom(q => q.VendorCode))
|
|
//.ForMember(p => p.Status, p => p.MapFrom(q => q.Status == "0" ? EnumSupplierAsnStatus.Cancelled : EnumSupplierAsnStatus.Received))
|
|
|
|
.ForMember(p => p.ReceiveTime, p => p.MapFrom(q => q.RcTime))
|
|
.ForMember(p => p.Worker, p => p.MapFrom(q => q.RcWorker))
|
|
|
|
.ForMember(p => p.Remark, p => p.MapFrom(q => q.Remark))
|
|
//.ForMember(p => p.CreateTime, p => p.MapFrom(q => q.CreateTime))
|
|
.ForMember(p => p.Details, p => p.MapFrom(q => q.Details)) //子列表 转换成 子列表
|
|
;
|
|
}
|
|
|
|
private void CreateMap_asn_mstr()
|
|
{
|
|
//子对象
|
|
CreateMap<AsnDet, SupplierAsnDetailInput>()
|
|
//.Ignore(p => p.TenantId)
|
|
.Ignore(p => p.Qty)
|
|
//.ForMember(p => p.AsnNbr, p => p.MapFrom(q => q.AsnNbr))
|
|
.ForMember(p => p.PoNumber, p => p.MapFrom(q => q.PoNbr))
|
|
.ForMember(p => p.PoLine, p => p.MapFrom(q => q.PoLine))
|
|
.ForMember(p => p.ItemCode, p => p.MapFrom(q => q.PartCode))
|
|
.ForMember(p => p.Lot, p => p.MapFrom(q => q.Lot))
|
|
//!! .ForMember(p => p.Qty, p => p.MapFrom(q => q.Qty))
|
|
//.ForMember(p => p.ProductionDate, p => p.MapFrom(q => q.ProductionDate))
|
|
//.ForMember(p => p.ShipDate, p => p.MapFrom(q => q.ShipDate))
|
|
//.ForMember(p => p.PromiseDate, p => p.MapFrom(q => q.PromiseDate))
|
|
//.ForMember(p => p.DueDate, p => p.MapFrom(q => q.DueDate))
|
|
//.ForMember(p => p.WareClass, p => p.MapFrom(q => q.WareClass))
|
|
//.ForMember(p => p.WareCode, p => p.MapFrom(q => q.WareCode))
|
|
//!! .ForMember(p => p.StdPack.PackQty, p => p.MapFrom(q => q.StdPackQty))
|
|
//!! .ForMember(p => p.Qty.Uom, p => p.MapFrom(q => q.PoUm))
|
|
//!! .ForMember(p => p.StdPack.PackUom, p => p.MapFrom(q => q.LocUm))
|
|
.ForMember(p => p.ConvertRate, p => p.MapFrom(q => q.UmConv))
|
|
//.ForMember(p => p.PartType, p => p.MapFrom(q => q.PartType))
|
|
//!! .ForMember(p => p.Batch.SupplierBatch, p => p.MapFrom(q => q.Supplierlot))
|
|
//.ForMember(p => p.Status, p => p.MapFrom(q => q.Status))
|
|
.ForMember(p => p.PackingCode, p => p.MapFrom(q => q.LabelCode))
|
|
//.ForMember(p => p.BarCode, p => p.MapFrom(q => q.EntireBarCode))
|
|
.ForMember(p => p.ContainerCode, p => p.MapFrom(q => q.PalletLabelCode))
|
|
.ForMember(p => p.Remark, p => p.MapFrom(q => q.Remark))
|
|
//.ForMember(p => p.CreateTime, p => p.MapFrom(q => q.CreateTime))
|
|
//.ForMember(p => p.Worker, p => p.MapFrom(q => q.CreateUser))
|
|
;
|
|
|
|
//主对象
|
|
CreateMap<AsnMstr, SupplierAsnEditInput>()
|
|
.Ignore(p => p.TenantId)
|
|
.Ignore(p => p.TimeWindow)
|
|
|
|
//.ForMember(p => p.Site, p => p.MapFrom(q => q.Site))
|
|
.ForMember(p => p.Number, p => p.MapFrom(q => q.AsnNbr))
|
|
.ForMember(p => p.RpNumber, p => p.MapFrom(q => q.RpNbr))
|
|
.ForMember(p => p.PoNumber, p => p.MapFrom(q => q.PoNbr))
|
|
.ForMember(p => p.SupplierCode, p => p.MapFrom(q => q.VendorCode))
|
|
.ForMember(p => p.Status, p => p.MapFrom(q => q.Status == "0" ? EnumSupplierAsnStatus.Cancelled : EnumSupplierAsnStatus.Received))
|
|
//!! .ForMember(p => p.Contacts.Name, p => p.MapFrom(q => q.Contacts))
|
|
//!! .ForMember(p => p.Contacts.Phone, p => p.MapFrom(q => q.Phone))
|
|
.ForMember(p => p.TruckNumber, p => p.MapFrom(q => q.TruckNbr))
|
|
.ForMember(p => p.DockCode, p => p.MapFrom(q => q.Dock))
|
|
//!! .ForMember(p => p.TimeWindow.BeginTime, p => p.MapFrom(q => q.WindowBeginTime))
|
|
//!! .ForMember(p => p.TimeWindow.BeginTime, p => p.MapFrom(q => q.WindowBeginDate))
|
|
//!! .ForMember(p => p.TimeWindow.EndTime, p => p.MapFrom(q => q.WindowEndTime))
|
|
//!! .ForMember(p => p.TimeWindow.EndTime, p => p.MapFrom(q => q.WindowEndDate))
|
|
.ForMember(p => p.Remark, p => p.MapFrom(q => q.Remark))
|
|
//.ForMember(p => p.CreateTime, p => p.MapFrom(q => q.CreateTime))
|
|
.ForMember(p => p.Details, p => p.MapFrom(q => q.Details)) //子列表 转换成 子列表
|
|
;
|
|
}
|
|
|
|
private void CreateMap_Return()
|
|
{
|
|
//子对象
|
|
CreateMap<ReturnDet, PurchaseReturnNoteDetailInput>()
|
|
//.Ignore(p => p.TenantId)
|
|
.Ignore(p => p.PoNumber)
|
|
.Ignore(p => p.Qty)
|
|
|
|
.ForMember(p => p.PoLine, p => p.MapFrom(q => q.PoLine))
|
|
.ForMember(p => p.ItemCode, p => p.MapFrom(q => q.PartCode))
|
|
.ForMember(p => p.Lot, p => p.MapFrom(q => q.Lot))
|
|
.ForMember(p => p.Status, p => p.MapFrom(q => q.Status))
|
|
.ForMember(p => p.LocationCode, p => p.MapFrom(q => q.Loc))
|
|
.ForMember(p => p.PackingCode, p => p.MapFrom(q => q.PackingCode))
|
|
.ForMember(p => p.ContainerCode, p => p.MapFrom(q => q.ContainerCode))
|
|
.ForMember(p => p.Remark, p => p.MapFrom(q => q.Remark))
|
|
//.ForMember(p => p.CreateTime, p => p.MapFrom(q => q.CreateTime))
|
|
//.ForMember(p => p.Worker, p => p.MapFrom(q => q.CreateUser))
|
|
.IgnoreIHasRecommendAndHandledFrom();
|
|
|
|
//主对象
|
|
CreateMap<ReturnMstr, PurchaseReturnNoteEditInput>()
|
|
.Ignore(p => p.TenantId)
|
|
.Ignore(p => p.JobNumber)
|
|
.Ignore(p => p.Status)
|
|
|
|
//.ForMember(p => p.Site, p => p.MapFrom(q => q.Site))
|
|
.ForMember(p => p.Number, p => p.MapFrom(q => q.RtNbr))
|
|
.ForMember(p => p.AsnNumber, p => p.MapFrom(q => q.AsnNbr))
|
|
.ForMember(p => p.PoNumber, p => p.MapFrom(q => q.PoNbr))
|
|
.ForMember(p => p.SupplierCode, p => p.MapFrom(q => q.VendorCode))
|
|
//.ForMember(p => p.Status, p => p.MapFrom(q => q.Status == "0" ? EnumSupplierAsnStatus.Cancelled : EnumSupplierAsnStatus.Received))
|
|
|
|
.ForMember(p => p.ReturnTime, p => p.MapFrom(q => q.RtTime))
|
|
.ForMember(p => p.Worker, p => p.MapFrom(q => q.RtWorker))
|
|
|
|
.ForMember(p => p.Remark, p => p.MapFrom(q => q.Remark))
|
|
//.ForMember(p => p.CreateTime, p => p.MapFrom(q => q.CreateTime))
|
|
.ForMember(p => p.Details, p => p.MapFrom(q => q.Details)) //子列表 转换成 子列表
|
|
;
|
|
}
|
|
|
|
private void CreateMap_bom()
|
|
{
|
|
CreateMap<Bom, BomEditInput>()
|
|
.Ignore(p => p.TenantId)
|
|
.Ignore(p => p.DistributionType)
|
|
.Ignore(p => p.TruncType)
|
|
.Ignore(p => p.PlannedSplitRule)
|
|
|
|
.ForMember(p => p.Product, p => p.MapFrom(q => q.Parent))
|
|
.ForMember(p => p.Component, p => p.MapFrom(q => q.Component))
|
|
.ForMember(p => p.ERPOp, p => p.MapFrom(q => q.Op))
|
|
.ForMember(p => p.Remark, p => p.MapFrom(q => q.Remark))
|
|
.ForMember(p => p.Layer, p => p.NullSubstitute(0))
|
|
;
|
|
}
|
|
|
|
private void CreateMap_cust_part()
|
|
{
|
|
CreateMap<CustPart, CustomerItemEditInput>()
|
|
.Ignore(p => p.TenantId)
|
|
.Ignore(p => p.CustomerPackQty)
|
|
.ForMember(p => p.CustomerCode, p => p.MapFrom(q => q.CustCode))
|
|
.ForMember(p => p.ItemCode, p => p.MapFrom(q => q.PartCode))
|
|
.ForMember(p => p.CustomerItemCode, p => p.MapFrom(q => q.CustPartCode));
|
|
}
|
|
|
|
private void CreateMap_cust()
|
|
{
|
|
CreateMap<Cust, CustomerEditInput>()
|
|
.Ignore(p => p.TenantId)
|
|
|
|
.ForMember(p => p.Code, p => p.MapFrom(q => q.Code))
|
|
.ForMember(p => p.Name, p => p.MapFrom(q => q.Name))
|
|
//.ForMember(p => p.Address, p => p.MapFrom(q => q.Addr1))
|
|
//.ForMember(p => p.Address, p => p.MapFrom(q => q.Addr2))
|
|
//.ForMember(p => p.Address, p => p.MapFrom(q => q.Addr3))
|
|
.ForMember(p => p.Address, p => p.MapFrom(q => q.Addr1 + q.Addr2 + q.Addr3))
|
|
.ForMember(p => p.Country, p => p.MapFrom(q => q.Country))
|
|
.ForMember(p => p.City, p => p.MapFrom(q => q.City))
|
|
.ForMember(p => p.Phone, p => p.MapFrom(q => q.Phone))
|
|
.ForMember(p => p.Fax, p => p.MapFrom(q => q.Fax))
|
|
.ForMember(p => p.PostID, p => p.MapFrom(q => q.PstId))
|
|
.ForMember(p => p.Contacts, p => p.MapFrom(q => q.Contacts))
|
|
.ForMember(p => p.Currency, p => p.MapFrom(q => q.Curr))
|
|
.ForMember(p => p.IsActive, p => p.MapFrom(q => q.Active))
|
|
//.ForMember(p => p.Type, p => p.MapFrom(q => q.Type))
|
|
.ForMember(p => p.Remark, p => p.MapFrom(q => q.Remark))
|
|
//.ForMember(p => p.CreateTime, p => p.MapFrom(q => q.CreateTime))
|
|
;
|
|
}
|
|
|
|
private void CreateMap_inventory()
|
|
{
|
|
//先不做
|
|
CreateMap<Domain.Iac.Qad.Inventory, ErpBalanceEditInput>()
|
|
.Ignore(p => p.TenantId)
|
|
.Ignore(p => p.Qty)
|
|
|
|
//.ForMember(p => p.Site, p => p.MapFrom(q => q.Site))
|
|
.ForMember(p => p.ItemCode, p => p.MapFrom(q => q.Part))
|
|
.ForMember(p => p.Lot, p => p.MapFrom(q => q.Lot))
|
|
//!!.ForMember(p => p.Qty, p => p.MapFrom(q => q.Qty))
|
|
//!!.ForMember(p => p.Qty.Uom, p => p.MapFrom(q => q.Um))
|
|
.ForMember(p => p.LocationCode, p => p.MapFrom(q => q.Loc))
|
|
//supp_consign_qty 供应商寄售库存
|
|
//cust_consign_qty 客户寄售库存
|
|
.ForMember(p => p.Status, p => p.MapFrom(q => q.Status))
|
|
.ForMember(p => p.Remark, p => p.MapFrom(q => q.Remark));
|
|
}
|
|
|
|
private void CreateMap_loc()
|
|
{
|
|
//先不做 Loc => Code
|
|
CreateMap<Loc, ErpLocationEditInput>()
|
|
.Ignore(p => p.TenantId)
|
|
.ForMember(p => p.WarehouseCode, p => p.MapFrom(q => q.Whse))
|
|
.ForMember(p => p.Description, p => p.MapFrom(q => q.Desc));
|
|
}
|
|
|
|
private void CreateMap_part()
|
|
{
|
|
CreateMap<Part, ItemBasicEditInput>()
|
|
.Ignore(p => p.TenantId)
|
|
.Ignore(p => p.Status)
|
|
|
|
//.ForMember(p => p.Site, p => p.MapFrom(q => q.Site))
|
|
.ForMember(p => p.Code, p => p.MapFrom(q => q.Code))
|
|
.ForMember(p => p.Name, p => p.MapFrom(q => q.Name))
|
|
.ForMember(p => p.Desc1, p => p.MapFrom(q => q.Desc1))
|
|
.ForMember(p => p.Desc2, p => p.MapFrom(q => q.Desc2))
|
|
//!!.ForMember(p => p.Status, p => p.MapFrom(q => q.Status))
|
|
.ForMember(p => p.CanMake, p => p.MapFrom(q => q.CanMake))
|
|
.ForMember(p => p.CanBuy, p => p.MapFrom(q => q.CanBuy))
|
|
.ForMember(p => p.BasicUom, p => p.MapFrom(q => q.Um))
|
|
.ForMember(p => p.AbcClass, p => p.MapFrom(q => q.AbcClass))
|
|
.ForMember(p => p.Type, p => p.MapFrom(q => q.PartType))
|
|
.ForMember(p => p.Category, p => p.MapFrom(q => q.PartCatalog))
|
|
.ForMember(p => p.Group, p => p.MapFrom(q => q.PartGroup))
|
|
.ForMember(p => p.IsPhantom, p => p.MapFrom(q => q.IsPhantom))
|
|
.ForMember(p => p.Color, p => p.MapFrom(q => q.Color))
|
|
.ForMember(p => p.Configuration, p => p.MapFrom(q => q.Config))
|
|
.ForMember(p => p.Project, p => p.MapFrom(q => q.Project))
|
|
.ForMember(p => p.Version, p => p.MapFrom(q => q.Version))
|
|
.ForMember(p => p.Eco, p => p.MapFrom(q => q.Eco))
|
|
.ForMember(p => p.ValidityUnit, p => p.MapFrom(q => EnumValidityUnit.Infinite))
|
|
//.ForMember(p => p.StdPackUm, p => p.MapFrom(q => q.StdPackUm))
|
|
//.ForMember(p => p.StdPackQty, p => p.MapFrom(q => q.StdPackQty))
|
|
//.ForMember(p => p.ExtPackUm, p => p.MapFrom(q => q.ExtPackUm))
|
|
//.ForMember(p => p.ExtPackQty, p => p.MapFrom(q => q.ExtPackQty))
|
|
.ForMember(p => p.Remark, p => p.MapFrom(q => q.Remark))
|
|
//.ForMember(p => p.CreateTime, p => p.MapFrom(q => q.CreateTime))
|
|
;
|
|
}
|
|
|
|
private void CreateMap_po_mstr()
|
|
{
|
|
//子对象
|
|
CreateMap<PoDet, PurchaseOrderDetailInput>()
|
|
//.Ignore(p => p.TenantId)
|
|
.Ignore(p => p.Qty)
|
|
//.ForMember(p => p.PoNbr, p => p.MapFrom(q => q.PoNbr))
|
|
.ForMember(p => p.PoLine, p => p.MapFrom(q => q.PoLine))
|
|
.ForMember(p => p.ItemCode, p => p.MapFrom(q => q.PartCode))
|
|
.ForMember(p => p.LineStatus, p => p.MapFrom(q => TryToIntZero(q.Status)))
|
|
//!! .ForMember(p => p.Qty.Uom, p => p.MapFrom(q => q.Um))
|
|
//.ForMember(p => p.OrderQty, p => p.MapFrom(q => q.OrderQty))
|
|
//!! .ForMember(p => p.Qty, p => p.MapFrom(q => q.RcQty))
|
|
//!! .ForMember(p => p.StdPack.PackUom, p => p.MapFrom(q => q.StdPackUm))
|
|
//!! .ForMember(p => p.StdPack.PackQty, p => p.MapFrom(q => q.StdPackQty))
|
|
//!! .ForMember(p => p.SupplierPack.PackUom, p => p.MapFrom(q => q.VendPackUm))
|
|
//!! .ForMember(p => p.SupplierPack.PackQty, p => p.MapFrom(q => q.VendPackQty))
|
|
.ForMember(p => p.ConvertRate, p => p.MapFrom(q => q.UmConv))
|
|
.ForMember(p => p.IsConsignment, p => p.MapFrom(q => q.Consignment))
|
|
.ForMember(p => p.Remark, p => p.MapFrom(q => q.Remark))
|
|
//.ForMember(p => p.CreateTime, p => p.MapFrom(q => q.CreateTime))
|
|
//.ForMember(p => p.CreateUser, p => p.MapFrom(q => q.CreateUser))
|
|
;
|
|
|
|
//主对象
|
|
CreateMap<PoMstr, PurchaseOrderEditInput>()
|
|
.Ignore(p => p.TenantId)
|
|
|
|
//.ForMember(p => p.Site, p => p.MapFrom(q => q.Site))
|
|
.ForMember(p => p.Number, p => p.MapFrom(q => q.PoNbr))
|
|
.ForMember(p => p.SupplierCode, p => p.MapFrom(q => q.VendorCode))
|
|
.ForMember(p => p.PoType, p => p.MapFrom(q => q.ModType))
|
|
.ForMember(p => p.OrderStatus, p => p.MapFrom(q => TryToIntZero(q.Status)))
|
|
.ForMember(p => p.IsConsignment, p => p.MapFrom(q => q.Consignment))
|
|
.ForMember(p => p.OrderDate, p => p.MapFrom(q => q.OrderDate))
|
|
.ForMember(p => p.DueDate, p => p.MapFrom(q => q.DueDate))
|
|
.ForMember(p => p.TaxRate, p => p.MapFrom(q => q.TaxRate))
|
|
//!! .ForMember(p => p.Contacts.Name, p => p.MapFrom(q => q.Contacts))
|
|
//.ForMember(p => p.Buyer, p => p.MapFrom(q => q.Buyer))
|
|
//.ForMember(p => p.Contract, p => p.MapFrom(q => q.Contract))
|
|
//.ForMember(p => p.Project, p => p.MapFrom(q => q.Project))
|
|
.ForMember(p => p.Remark, p => p.MapFrom(q => q.Remark))
|
|
//.ForMember(p => p.CreateTime, p => p.MapFrom(q => q.CreateTime))
|
|
.ForMember(p => p.Details, p => p.MapFrom(q => q.Details)) //子列表 转换成 子列表
|
|
;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 同一个源对象 转换成 两个不同的目标对象
|
|
/// </summary>
|
|
private void CreateMap_prod_line()
|
|
{
|
|
CreateMap<ProdLine, ProductionLineEditInput>()
|
|
.Ignore(p => p.TenantId)
|
|
|
|
//.ForMember(p => p.Site, p => p.MapFrom(q => q.Site))
|
|
.ForMember(p => p.Code, p => p.MapFrom(q => q.Code))
|
|
.ForMember(p => p.Description, p => p.MapFrom(q => q.Desc))
|
|
//.ForMember(p => p.Part, p => p.MapFrom(q => q.Part))
|
|
//.ForMember(p => p.Rate, p => p.MapFrom(q => q.Rate))
|
|
.ForMember(p => p.Remark, p => p.MapFrom(q => q.Remark))
|
|
//.ForMember(p => p.CreateTime, p => p.MapFrom(q => q.CreateTime))
|
|
.ForMember(p => p.Name, p => p.MapFrom(q => q.Desc))
|
|
;
|
|
|
|
/*
|
|
CreateMap<ProdLine, ProductLineCreateInput>()
|
|
.Ignore(p => p.TenantId)
|
|
|
|
//.ForMember(p => p.Site, p => p.MapFrom(q => q.Site))
|
|
.ForMember(p => p.Code, p => p.MapFrom(q => q.Code))
|
|
.ForMember(p => p.Description, p => p.MapFrom(q => q.Desc))
|
|
//.ForMember(p => p.Part, p => p.MapFrom(q => q.Part))
|
|
//.ForMember(p => p.Rate, p => p.MapFrom(q => q.Rate))
|
|
.ForMember(p => p.Remark, p => p.MapFrom(q => q.Remark))
|
|
//.ForMember(p => p.CreateTime, p => p.MapFrom(q => q.CreateTime))
|
|
.ForMember(p => p.Name, p => p.MapFrom(q => q.Desc))
|
|
;
|
|
*/
|
|
CreateMap<ProdLine, ProductionLineItemEditInput>()
|
|
.Ignore(p => p.TenantId)
|
|
|
|
//.ForMember(p => p.Site, p => p.MapFrom(q => q.Site))
|
|
// .ForMember(p => p.Code, p => p.MapFrom(q => q.Code))
|
|
//.ForMember(p => p, p => p.MapFrom(q => q.Desc))
|
|
//.ForMember(p => p.Part, p => p.MapFrom(q => q.Part))
|
|
//.ForMember(p => p.Rate, p => p.MapFrom(q => q.Rate))
|
|
.ForMember(p => p.Remark, p => p.MapFrom(q => q.Remark))
|
|
//.ForMember(p => p.CreateTime, p => p.MapFrom(q => q.CreateTime))
|
|
;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 源一个对象 转换成 两个不同的目标对象
|
|
/// </summary>
|
|
private static void CreateMap_sod_det()
|
|
{
|
|
/* AutoMapper不好使
|
|
CreateMap<SodDet, SaleOrderDetailInput>()
|
|
.Ignore(p => p.StdPack)
|
|
.ForMember(p => p.SoLine, p => p.MapFrom(q => q.SoLine))
|
|
.ForMember(p => p.ItemCode, p => p.MapFrom(q => q.PartCode))
|
|
//!! .ForMember(p => p.StdPack.PackUom, p => p.MapFrom(q => q.Um))
|
|
//!! .ForMember(p => p.StdPack.PackQty, p => p.MapFrom(q => q.StdPackQty))
|
|
.ForMember(p => p.ConvertRate, p => p.NullSubstitute(0))
|
|
.ForMember(p => p.LineStatus, p => p.NullSubstitute(1))
|
|
.ForMember(p => p.Qty, p => p.NullSubstitute(0))
|
|
;
|
|
|
|
CreateMap<SodDet, SaleOrderCreateInput>()
|
|
.Ignore(p => p.TenantId)
|
|
|
|
//.ForMember(p => p.Site, p => p.MapFrom(q => q.Site))
|
|
.ForMember(p => p.Number, p => p.MapFrom(q => q.SoNbr))
|
|
////.ForMember(p => p.Details, p => p.MapFrom(q => q.SoLine))
|
|
.ForMember(p => p.CustomerCode, p => p.MapFrom(q => q.CustCode))
|
|
////.ForMember(p => p.Part, p => p.MapFrom(q => q.Part))
|
|
////.ForMember(p => p.Um, p => p.MapFrom(q => q.Um))
|
|
////.ForMember(p => p.StdPackQty, p => p.MapFrom(q => q.StdPackQty))
|
|
//.ForMember(p => p.Loc, p => p.MapFrom(q => q.Loc))
|
|
//.ForMember(p => p.ShipTo, p => p.MapFrom(q => q.ShipTo))
|
|
.ForMember(p => p.Remark, p => p.MapFrom(q => q.Remark))
|
|
//.ForMember(p => p.CreateTime, p => p.MapFrom(q => q.CreateTime))
|
|
.ForMember(p => p.PoType, p => p.NullSubstitute(""))
|
|
.ForMember(p => p.Status, p => p.NullSubstitute(1))
|
|
;
|
|
*/
|
|
}
|
|
|
|
private void CreateMap_vend_part()
|
|
{
|
|
CreateMap<VendPart, SupplierItemEditInput>()
|
|
.Ignore(p => p.TenantId)
|
|
.Ignore(p => p.SupplierPackQty)
|
|
|
|
////.ForMember(p => p.Site, p => p.MapFrom(q => q.Site))
|
|
.ForMember(p => p.SupplierCode, p => p.MapFrom(q => q.VendorCode))
|
|
.ForMember(p => p.ItemCode, p => p.MapFrom(q => q.PartCode))
|
|
.ForMember(p => p.SupplierItemCode, p => p.MapFrom(q => q.VendPartCode))
|
|
|
|
//!! .ForMember(p => p.SupplierPackQty.Qty, p => p.MapFrom(q => q.VendPackQty))
|
|
//!! .ForMember(p => p.SupplierPackQty.Uom, p => p.MapFrom(q => q.VendPackUm))
|
|
|
|
.ForMember(p => p.Remark, p => p.MapFrom(q => q.Remark))
|
|
////.ForMember(p => p.CreateTime, p => p.MapFrom(q => q.CreateTime))
|
|
.ForMember(p => p.QtyPerPallet, p => p.NullSubstitute(0))
|
|
;
|
|
}
|
|
|
|
private void CreateMap_vend()
|
|
{
|
|
CreateMap<Vend, SupplierEditInput>()
|
|
.Ignore(p => p.TenantId)
|
|
.Ignore(p => p.Type)
|
|
|
|
.ForMember(p => p.Code, p => p.MapFrom(q => q.Code))
|
|
.ForMember(p => p.Name, p => p.MapFrom(q => q.Name))
|
|
.ForMember(p => p.Address, p => p.MapFrom(q => q.Addr1 + q.Addr2 + q.Addr3))
|
|
//.ForMember(p => p.Address, p => p.MapFrom(q => q.Addr2))
|
|
//.ForMember(p => p.Address, p => p.MapFrom(q => q.Addr3))
|
|
.ForMember(p => p.Country, p => p.MapFrom(q => q.Country))
|
|
.ForMember(p => p.City, p => p.MapFrom(q => q.City))
|
|
.ForMember(p => p.Phone, p => p.MapFrom(q => q.Phone))
|
|
.ForMember(p => p.Fax, p => p.MapFrom(q => q.Fax))
|
|
.ForMember(p => p.PostID, p => p.MapFrom(q => q.PstId))
|
|
.ForMember(p => p.Contacts, p => p.MapFrom(q => q.Contacts))
|
|
.ForMember(p => p.Bank, p => p.MapFrom(q => q.Bank))
|
|
.ForMember(p => p.Currency, p => p.MapFrom(q => q.Curr))
|
|
//.ForMember(p => p.TaxRate, p => p.MapFrom(q => q.TaxRate))
|
|
.ForMember(p => p.IsActive, p => p.MapFrom(q => q.Active))
|
|
//!!.ForMember(p => p.Type, p => p.MapFrom(q => q.Type))
|
|
.ForMember(p => p.Remark, p => p.MapFrom(q => q.Remark))
|
|
//.ForMember(p => p.CreateTime, p => p.MapFrom(q => q.CreateTime))
|
|
;
|
|
}
|
|
|
|
private static int TryToIntZero(string input)
|
|
{
|
|
int ret;
|
|
try
|
|
{
|
|
ret = Convert.ToInt32(input);
|
|
}
|
|
catch
|
|
{
|
|
ret = 0;
|
|
}
|
|
return ret;
|
|
}
|
|
#endregion
|
|
}
|
|
|