Browse Source

采购上价查询采购订单截至日期,入未查到不同步给TYRP

集成Redis
lvzb 2 years ago
parent
commit
18b40a4c79
  1. 19
      be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Outgoing/PutawayNoteConverter.cs
  2. 2
      be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Outgoing/ScontrolWriter.cs

19
be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Outgoing/PutawayNoteConverter.cs

@ -17,16 +17,19 @@ public class PutawayNoteConverter : IOutgoingConverter
private readonly IOutgoingFromWmsManager _outgoingFromWmsManager; private readonly IOutgoingFromWmsManager _outgoingFromWmsManager;
private readonly IOutgoingToExternalManager _outgoingToExternalManager; private readonly IOutgoingToExternalManager _outgoingToExternalManager;
private readonly IObjectMapper _objectMapper; private readonly IObjectMapper _objectMapper;
private readonly IPurchaseOrderAppService _purchaseOrderAppService;
public PutawayNoteConverter( public PutawayNoteConverter(
IOutgoingFromWmsManager outgoingFromWmsManager IOutgoingFromWmsManager outgoingFromWmsManager
, IOutgoingToExternalManager outgoingToExternalManager , IOutgoingToExternalManager outgoingToExternalManager
, IObjectMapper objectMapper , IObjectMapper objectMapper
,IPurchaseOrderAppService purchaseOrderAppService
) )
{ {
_outgoingFromWmsManager = outgoingFromWmsManager; _outgoingFromWmsManager = outgoingFromWmsManager;
_outgoingToExternalManager = outgoingToExternalManager; _outgoingToExternalManager = outgoingToExternalManager;
_objectMapper = objectMapper; _objectMapper = objectMapper;
_purchaseOrderAppService = purchaseOrderAppService;
} }
public virtual async Task<List<OutgoingToExternal>> ConvertAsync() public virtual async Task<List<OutgoingToExternal>> ConvertAsync()
{ {
@ -78,6 +81,20 @@ public class PutawayNoteConverter : IOutgoingConverter
var exchangeReceiptDetail = _objectMapper.Map<PutawayNoteDetailDTO, PutawayNoteDetailExchangeDto>(detail); var exchangeReceiptDetail = _objectMapper.Map<PutawayNoteDetailDTO, PutawayNoteDetailExchangeDto>(detail);
outgoingDetailToExternal.SourceDataContent = JsonSerializer.Serialize(exchangeReceiptDetail); outgoingDetailToExternal.SourceDataContent = JsonSerializer.Serialize(exchangeReceiptDetail);
var putawayNoteDetail = BuildDataInterfaceDetail(exchangeReceipt, exchangeReceiptDetail, putawayNote.scontrol_dt_w); var putawayNoteDetail = BuildDataInterfaceDetail(exchangeReceipt, exchangeReceiptDetail, putawayNote.scontrol_dt_w);
try
{
//通过采购订单号查询采购订单要求到货日期
var order = await _purchaseOrderAppService.GetByNumberAsync(putawayNoteDetail.scmsend_orderno).ConfigureAwait(false);
if (order != null)
{
putawayNoteDetail.scmsend_delv_date = order.DueDate.ToString("yyyyMMdd");
}
}
catch (Exception ex)
{
outgoingDetailToExternal.SetError(EnumExchangeDataErrorCode.Exception, ex.InnerException==null?ex.Message: ex.InnerException.Message, ex.ToString());
}
outgoingDetailToExternal.DestinationDataContent = JsonSerializer.Serialize(putawayNoteDetail); outgoingDetailToExternal.DestinationDataContent = JsonSerializer.Serialize(putawayNoteDetail);
outgoingToExternalList.Add(outgoingDetailToExternal); outgoingToExternalList.Add(outgoingDetailToExternal);
} }
@ -115,7 +132,7 @@ public class PutawayNoteConverter : IOutgoingConverter
/// <param name="exchangeDetailOrder"></param> /// <param name="exchangeDetailOrder"></param>
/// <returns></returns> /// <returns></returns>
private Scmsend BuildDataInterfaceDetail(PutawayNoteExchangeDto exchangeOrder, PutawayNoteDetailExchangeDto exchangeDetailOrder, string dt_w) private Scmsend BuildDataInterfaceDetail(PutawayNoteExchangeDto exchangeOrder, PutawayNoteDetailExchangeDto exchangeDetailOrder, string dt_w)
{ {
var ret = new Scmsend() var ret = new Scmsend()
{ {
scmsend_type = billtype, scmsend_type = billtype,

2
be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Outgoing/ScontrolWriter.cs

@ -27,7 +27,7 @@ public class ScontrolWriter : IWriter
public virtual async Task WriteAsync(List<OutgoingToExternal> outgoingDataList) public virtual async Task WriteAsync(List<OutgoingToExternal> outgoingDataList)
{ {
var groups = outgoingDataList.GroupBy(r => r.SourceDataGroupCode); var groups = outgoingDataList.Where(r=>r.Status!=EnumExchangeDataStatus.Error).GroupBy(r => r.SourceDataGroupCode);
foreach (var group in groups) foreach (var group in groups)
{ {
var dataInterfaceList = new List<Scontrol>(); var dataInterfaceList = new List<Scontrol>();

Loading…
Cancel
Save