Files
WMS-Api/src/WMS.Web.Domain/Mappers/InStockMapper.cs
2023-12-26 11:39:39 +08:00

79 lines
3.4 KiB
C#

using AutoMapper;
using System;
using System.Collections.Generic;
using System.Text;
using WMS.Web.Core.Dto.Erp;
using WMS.Web.Core.Dto.InStock;
using WMS.Web.Core.Dto.InStockTask;
using WMS.Web.Core.Dto.Inventory;
using WMS.Web.Domain.Entitys;
namespace WMS.Web.Domain.Mappers
{
/// <summary>
/// 入库相关-映射
/// </summary>
public class InStockMapper: Profile
{
public InStockMapper()
{
CreateMap<UpdateInStockTaskRequest, InStockTask>()
.ForMember(x => x.Details, opt => opt.Ignore());
CreateMap<UpdateInStockTaskDetailsRequest, InStockTaskBoxDetails>();
CreateMap<BoxDetails, InStockTaskBoxDetails>()
.ForMember(x => x.Id, opt => opt.Ignore())
.ForMember(x => x.Fid, opt => opt.Ignore())
.ForMember(x => x.ReceiveQty, ops => ops.MapFrom(x => x.Qty));
CreateMap<UpdateInStockTaskBoxRequest, InStockTaskBox>()
.ForMember(x => x.Details, opt => opt.Ignore());
CreateMap<InStockTask, InStockTask>()
.ForMember(x => x.Details, opt => opt.Ignore());
CreateMap<InStockTaskDetails, InStockTaskDetails>();
CreateMap<InStockTaskBox, InStockTaskBox>();
CreateMap<InStock, InStock>()
.ForMember(x => x.Details, opt => opt.Ignore())
.ForMember(x => x.ErpDetails, opt => opt.Ignore());
CreateMap<InStockDetails, InStockDetails>();
CreateMap<InStockErpDetails, InStockErpDetails>();
CreateMap<SaveInStockDetailsRequest, InStockDetails>().ReverseMap();
CreateMap<NoPurchaseShelfDetailsRequest, InStockDetails>().ReverseMap();
CreateMap<SaveInStockDetailsRequest, InStockTotalDetails>();
CreateMap<NoPurchaseShelfDetailsRequest, InStockTotalDetails>();
CreateMap<NoPurchaseShelfDetailsRequest, BoxInventoryGenerateDetailsDto>();
CreateMap<InStockTask, InStockTaskInfoDto>()
.ForMember(x => x.Details, ops => ops.Ignore());
CreateMap<InStockTaskDetails, InStockTaskDetailsInfoDto>();
CreateMap<BoxDetails, ContrastBoxDetailsResponse>();
#region ERP-dto映射到wsm的任务表中
//ERP-同步结果对象统一映射
CreateMap<ErpInStockResultDto, InStockTask>()
.ForMember(x => x.SourceBillNo, ops => ops.MapFrom(x => x.BillNo))
.ForMember(x => x.CreateTime, ops => ops.MapFrom(x => x.CreateTime));
CreateMap<ErpInStockResultDto, InStockTaskDetails>()
.ForMember(x => x.SupplierId, ops => ops.MapFrom(x => x.SupplierId))
.ForMember(x => x.OrgId, ops => ops.MapFrom(x => x.OrgId))
.ForMember(x => x.OrgCode, ops => ops.MapFrom(x => x.OrgCode))
.ForMember(x => x.MaterialId, ops => ops.MapFrom(x => x.MaterialId))
.ForMember(x => x.StockCode, ops => ops.MapFrom(x => x.StockCode))
.ForMember(x => x.DeliveredQty, ops => ops.MapFrom(x => x.DeliveredQty))
.ForMember(x => x.FactoryPrice, ops => ops.MapFrom(x => x.FactoryPrice))
.ForMember(x => x.AccruedQty, ops => ops.MapFrom(x => x.Qty))
.ForMember(x => x.Remark, ops => ops.MapFrom(x => x.Remark))
.ReverseMap();
#endregion
}
}
}