lvzb 2 years ago
parent
commit
2f6bbb4d65
  1. 33
      be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/MesOutConverter.cs
  2. 14
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Transactions/ProductReceiptNoteEventHandler.cs

33
be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/MesOutConverter.cs

@ -12,6 +12,7 @@ using Win_in.Sfs.Shared.Domain.Shared;
using Win_in.Sfs.Wms.DataExchange.Domain; using Win_in.Sfs.Wms.DataExchange.Domain;
using Win_in.Sfs.Wms.DataExchange.WMS.ProductReceiptNote; using Win_in.Sfs.Wms.DataExchange.WMS.ProductReceiptNote;
using Win_in.Sfs.Wms.Store.Application.Contracts; using Win_in.Sfs.Wms.Store.Application.Contracts;
using Win_in.Sfs.Wms.Store.Domain;
namespace Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent; namespace Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent;
@ -96,25 +97,41 @@ public class MesOutConverter : IIncomingConverter
wmsProductReceiptNoteDetail.LocationCode = loc[0].Code; wmsProductReceiptNoteDetail.LocationCode = loc[0].Code;
wmsProductReceiptNoteDetail.LocationArea = loc[0].AreaCode; wmsProductReceiptNoteDetail.LocationArea = loc[0].AreaCode;
wmsProductReceiptNoteDetail.LocationGroup = loc[0].LocationGroupCode; wmsProductReceiptNoteDetail.LocationGroup = loc[0].LocationGroupCode;
} wmsProductReceiptNoteDetail.LocationErpCode = loc[0].ErpLocationCode;
wmsProductReceiptNoteDetail.HandledToLocationCode = loc[0].Code;
wmsProductReceiptNoteDetail.HandledToLocationArea = loc[0].AreaCode;
wmsProductReceiptNoteDetail.HandledToLocationGroup = loc[0].LocationGroupCode;
wmsProductReceiptNoteDetail.HandledToLocationErpCode = loc[0].ErpLocationCode;
wmsProductReceiptNoteDetail.RecommendToLocationCode = loc[0].Code;
wmsProductReceiptNoteDetail.RecommendToLocationArea = loc[0].AreaCode;
wmsProductReceiptNoteDetail.RecommendToLocationGroup = loc[0].LocationGroupCode;
wmsProductReceiptNoteDetail.RecommendToLocationErpCode = loc[0].ErpLocationCode;
}
var item = await _itemBasicAppService.GetByCodeAsync(wmsProductReceiptNoteDetail.ItemCode).ConfigureAwait(false); var item = await _itemBasicAppService.GetByCodeAsync(wmsProductReceiptNoteDetail.ItemCode).ConfigureAwait(false);
if (item != null) if (item != null)
{ {
wmsProductReceiptNoteDetail.ItemName = !string.IsNullOrEmpty(item.Name) ? item.Name : ""; wmsProductReceiptNoteDetail.ItemName = !string.IsNullOrEmpty(item.Name) ? item.Name : "";
wmsProductReceiptNoteDetail.ItemDesc1 = !string.IsNullOrEmpty(item.Desc1) ? item.Desc1 : ""; wmsProductReceiptNoteDetail.ItemDesc1 = !string.IsNullOrEmpty(item.Desc1) ? item.Desc1 : "";
wmsProductReceiptNoteDetail.ItemDesc2 = !string.IsNullOrEmpty(item.Desc2) ? item.Desc2 : ""; wmsProductReceiptNoteDetail.ItemDesc2 = !string.IsNullOrEmpty(item.Desc2) ? item.Desc2 : "";
wmsProductReceiptNoteDetail.Uom = !string.IsNullOrEmpty(item.BasicUom) ? item.BasicUom : ""; wmsProductReceiptNoteDetail.Uom = !string.IsNullOrEmpty(item.BasicUom) ? item.BasicUom : "";
}
else wmsProductReceiptNoteDetail.ProduceDate = incomingFromExternal.EffectiveDate;
{ wmsProductReceiptNoteDetail.ArriveDate = incomingFromExternal.EffectiveDate;
wmsProductReceiptNoteDetail.ExpireDate = wmsProductReceiptNoteDetail.ProduceDate.AddDays(item.GetValidateDays());
}
else
{
//todo 这里不应该做完工 没有零件
wmsProductReceiptNoteDetail.ItemName = ""; wmsProductReceiptNoteDetail.ItemName = "";
wmsProductReceiptNoteDetail.ItemDesc1 = ""; wmsProductReceiptNoteDetail.ItemDesc1 = "";
wmsProductReceiptNoteDetail.ItemDesc2 = ""; wmsProductReceiptNoteDetail.ItemDesc2 = "";
wmsProductReceiptNoteDetail.Uom = ""; wmsProductReceiptNoteDetail.Uom = "";
} }
wmsProductReceiptNote.Details.Add(wmsProductReceiptNoteDetail); wmsProductReceiptNote.Details.Add(wmsProductReceiptNoteDetail);
} }
incomingToWms.DataContent = JsonSerializer.Serialize(wmsProductReceiptNote); incomingToWms.DataContent = JsonSerializer.Serialize(wmsProductReceiptNote);
incomingToWmsList.Add(incomingToWms); incomingToWmsList.Add(incomingToWms);

14
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Transactions/ProductReceiptNoteEventHandler.cs

@ -77,15 +77,6 @@ public class ProductReceiptNoteEventHandler
var transaction = ObjectMapper.Map<ProductReceiptNoteDetail, TransactionEditInput>(detail); var transaction = ObjectMapper.Map<ProductReceiptNoteDetail, TransactionEditInput>(detail);
var itemBasicDto= await _itemBasicAppService.GetByCodeAsync(detail.ItemCode).ConfigureAwait(false); var itemBasicDto= await _itemBasicAppService.GetByCodeAsync(detail.ItemCode).ConfigureAwait(false);
var locationDtos = await _locationAppService.GetListByTypesAndErpCodeAsync(
new List<EnumLocationType> { EnumLocationType.WIP },
detail.LocationErpCode).ConfigureAwait(false);
if (locationDtos == null||locationDtos.Count<1)
{
throw new UserFriendlyException(
$"Erp储位为【{detail.LocationErpCode}】,库位类型为{EnumLocationType.WIP.GetDisplayName()}的库位不存在。");
}
if (itemBasicDto == null) if (itemBasicDto == null)
{ {
@ -97,11 +88,6 @@ public class ProductReceiptNoteEventHandler
detail.ItemDesc2 = itemBasicDto.Desc2; detail.ItemDesc2 = itemBasicDto.Desc2;
detail.ItemName=itemBasicDto.Name; detail.ItemName=itemBasicDto.Name;
detail.StdPackQty=itemBasicDto.StdPackQty; detail.StdPackQty=itemBasicDto.StdPackQty;
var erpLocationDto = locationDtos.First();
detail.LocationArea = erpLocationDto.Code;
detail.LocationGroup = erpLocationDto.LocationGroupCode;
detail.LocationErpCode= erpLocationDto.Code;
detail.LocationCode= erpLocationDto.Code;
transaction.TransType = TransType; transaction.TransType = TransType;
transaction.TransInOut = TransInOut; transaction.TransInOut = TransInOut;

Loading…
Cancel
Save