Files
WMS-Api/src/WMS.Web.Domain/Mappers/InStockMapper.cs
2023-12-01 18:18:23 +08:00

68 lines
2.7 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<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<SaveInStockDetailsRequest, InStockDetails>().ReverseMap();
CreateMap<NoPurchaseShelfDetailsRequest, InStockDetails>().ReverseMap();
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
}
}
}