Browse Source

tyrp接口添加流水字段

dev_DY_CC
lvzb 7 months ago
parent
commit
42e74e70fe
  1. 22
      be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Outgoing/CustomerReturnNoteConverter.cs
  2. 11
      be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Outgoing/ProductRecycleNoteConverter.cs
  3. 14
      be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Outgoing/RecycledMaterialReceiptNoteConverter.cs
  4. 16
      be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Outgoing/TransferNoteConverter.cs
  5. 10
      be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Outgoing/UnplannedIssueNoteConverter.cs
  6. 10
      be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Outgoing/UnplannedReceiptNoteConverter.cs

22
be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Outgoing/CustomerReturnNoteConverter.cs

@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text.Json;
using System.Threading.Tasks;
using Volo.Abp.ObjectMapping;
@ -44,17 +45,19 @@ public class CustomerReturnNoteConverter : IOutgoingConverter
var outgoingFromWmsList = await _outgoingFromWmsManager.GetToBeProcessedListAsync(EnumOutgoingDataType.CustomerReturn, EnumSystemType.ERP).ConfigureAwait(false);
foreach (var outgoingFromWms in outgoingFromWmsList)
{
string tyrpNumber = outgoingFromWms.TyrpNumber;
#region 主表
var wmsReceipt = JsonSerializer.Deserialize<CustomerReturnNoteDTO>(outgoingFromWms.DataContent);
var exchangeReceipt = _objectMapper.Map<CustomerReturnNoteDTO, CustomerReturnNoteExchangeDto>(wmsReceipt);
var department = await _departmentAppService.GetByUsernameAsync(exchangeReceipt.Worker).ConfigureAwait(false);
var departmentCode = department == null ? "" : department.Code;
var purchaseOrder = BuildDataInterface(exchangeReceipt, departmentCode);
var purchaseOrder = BuildDataInterface(exchangeReceipt, departmentCode,tyrpNumber);
var outgoingToExternal = new OutgoingToExternal()
{
DataType = EnumOutgoingDataType.UnplannedReceipt.ToString(),
TableType = EnumExchangeTableType.MainTable,
DataAction = outgoingFromWms.DataAction,
SerialNumber = tyrpNumber,
SourceSystem = EnumSystemType.WMS.ToString(),
SourceDataId = wmsReceipt.Id.ToString(),
SourceDataGroupCode = wmsReceipt.Number,
@ -68,17 +71,19 @@ public class CustomerReturnNoteConverter : IOutgoingConverter
outgoingToExternal.DestinationDataContent = JsonSerializer.Serialize(purchaseOrder);
outgoingToExternalList.Add(outgoingToExternal);
#endregion
var WipDetails = wmsReceipt.Details.GroupBy(r => new { r.Number, r.ItemCode, r.ToLocationErpCode }).Select(p => new CustomerReturnNoteDetailExchangeDto { Qty = p.Sum(itm => itm.Qty), Number = p.Key.Number, ItemCode = p.Key.ItemCode, ToLocationErpCode = p.Key.ToLocationErpCode });
#region 明细
foreach (var detail in wmsReceipt.Details)
foreach (var detail in WipDetails)
{
var outgoingDetailToExternal = new OutgoingToExternal()
{
DataType = EnumOutgoingDataType.UnplannedReceipt.ToString(),
TableType = EnumExchangeTableType.DetailTable,
DataAction = outgoingFromWms.DataAction,
SerialNumber = tyrpNumber,
SourceSystem = EnumSystemType.WMS.ToString(),
SourceDataId = detail.Id.ToString(),
SourceDataId = detail.Number.ToString(),
SourceDataGroupCode = wmsReceipt.Number,
SourceDataDetailCode = detail.ItemCode,
Writer = nameof(TyrpOutgoingBackgroundWorker),
@ -86,9 +91,8 @@ public class CustomerReturnNoteConverter : IOutgoingConverter
DestinationDataId = "",
};
outgoingDetailToExternal.SetEffectiveDate(outgoingFromWms.EffectiveDate);
var exchangeReceiptDetail = _objectMapper.Map<CustomerReturnNoteDetailDTO, CustomerReturnNoteDetailExchangeDto>(detail);
outgoingDetailToExternal.SourceDataContent = JsonSerializer.Serialize(exchangeReceiptDetail);
var purchaseOrderDetail = BuildDataInterfaceDetail(exchangeReceipt, exchangeReceiptDetail);
outgoingDetailToExternal.SourceDataContent = JsonSerializer.Serialize(detail);
var purchaseOrderDetail = BuildDataInterfaceDetail(exchangeReceipt, detail, tyrpNumber);
outgoingDetailToExternal.DestinationDataContent = JsonSerializer.Serialize(purchaseOrderDetail);
outgoingToExternalList.Add(outgoingDetailToExternal);
}
@ -108,11 +112,12 @@ public class CustomerReturnNoteConverter : IOutgoingConverter
/// <param name="exchangeOrder"></param>
/// <param name="departmentCode"></param>
/// <returns></returns>
private Wmsoutm BuildDataInterface(CustomerReturnNoteExchangeDto exchangeOrder, string departmentCode)
private Wmsoutm BuildDataInterface(CustomerReturnNoteExchangeDto exchangeOrder, string departmentCode,string tyrpNumber)
{
var ret = new Wmsoutm()
{
wmsoutm_mid = Convert.ToDecimal(tyrpNumber),
wmsoutm_nbr = exchangeOrder.Number,
wmsoutm_type = billtype,
wmsoutm_dt_w = DateTime.Now.ToString("yyyyMMdd HH:mm:ss"),
@ -140,10 +145,11 @@ public class CustomerReturnNoteConverter : IOutgoingConverter
/// <param name="exchangeOrder"></param>
/// <param name="exchangeDetailOrder"></param>
/// <returns></returns>
private static Wmsoutd BuildDataInterfaceDetail(CustomerReturnNoteExchangeDto exchangeOrder, CustomerReturnNoteDetailExchangeDto exchangeDetailOrder)
private static Wmsoutd BuildDataInterfaceDetail(CustomerReturnNoteExchangeDto exchangeOrder, CustomerReturnNoteDetailExchangeDto exchangeDetailOrder, string tyrpNumber)
{
var ret = new Wmsoutd()
{
wmsoutd_mid = Convert.ToDecimal(tyrpNumber),
wmsoutd_nbr = exchangeOrder.Number,
wmsoutd_part = exchangeDetailOrder.ItemCode,
wmsoutd_loc = exchangeDetailOrder.ToLocationErpCode,

11
be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Outgoing/ProductRecycleNoteConverter.cs

@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.Linq;
using System.Text.Json;
using System.Threading.Tasks;
using DocumentFormat.OpenXml.Drawing.Charts;
using Volo.Abp.ObjectMapping;
using Win_in.Sfs.Auth.Application.Contracts;
using Win_in.Sfs.Wms.DataExchange.Domain;
@ -98,7 +99,7 @@ public class ProductRecycleNoteConverter : IOutgoingConverter
outgoingDetailToExternal.SetEffectiveDate(outgoingFromWms.EffectiveDate);
var exchangeMterialDetail = _objectMapper.Map<ProductRecycleMaterialDetailDTO, ProductRecycleMaterialDetailExchangeDto>(materialDetail);
outgoingDetailToExternal.SourceDataContent = JsonSerializer.Serialize(exchangeMterialDetail);
var purchaseOrderDetail = BuildDataInterfaceDetail(tyrpNumber, exchangeMterialDetail);
var purchaseOrderDetail = BuildDataInterfaceDetail(tyrpNumber, exchangeMterialDetail, wmsReceipt.Number);
outgoingDetailToExternal.DestinationDataContent = JsonSerializer.Serialize(purchaseOrderDetail);
outgoingToExternalList.Add(outgoingDetailToExternal);
}
@ -122,7 +123,8 @@ public class ProductRecycleNoteConverter : IOutgoingConverter
var ret = new Wmsoutm()
{
wmsoutm_nbr = tyrpNumber,
wmsoutm_mid=Convert.ToDecimal(tyrpNumber),
wmsoutm_nbr = exchangeOrder.Number,
wmsoutm_type = billtype,
wmsoutm_dt_w = DateTime.Now.ToString("yyyyMMdd HH:mm:ss"),
wmsoutm_stat = "Y",
@ -150,11 +152,12 @@ public class ProductRecycleNoteConverter : IOutgoingConverter
/// <param name="exchangeOrder"></param>
/// <param name="exchangeDetailOrder"></param>
/// <returns></returns>
private Wmsoutd BuildDataInterfaceDetail(string tyrpNumber, ProductRecycleMaterialDetailExchangeDto exchangeDetailOrder)
private Wmsoutd BuildDataInterfaceDetail(string tyrpNumber, ProductRecycleMaterialDetailExchangeDto exchangeDetailOrder,string number)
{
var ret = new Wmsoutd()
{
wmsoutd_nbr = tyrpNumber,
wmsoutd_mid = Convert.ToDecimal(tyrpNumber),
wmsoutd_nbr = number,
wmsoutd_part = exchangeDetailOrder.ItemCode,
wmsoutd_loc = exchangeDetailOrder.LocationErpCode,
wmsoutd_qty = exchangeDetailOrder.Qty,

14
be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Outgoing/RecycledMaterialReceiptNoteConverter.cs

@ -52,7 +52,7 @@ public class RecycledMaterialReceiptNoteConverter : IOutgoingConverter
var exchangeReceipt = _objectMapper.Map<RecycledMaterialReceiptNoteDTO, RecycledMaterialReceiptNoteExchangeDto>(wmsReceipt);
var department = await _departmentAppService.GetByUsernameAsync(exchangeReceipt.Worker).ConfigureAwait(false);
var departmentCode = department == null ? "" : department.Code;
var purchaseOrder = BuildDataInterface(tyrpNumber, departmentCode);
var purchaseOrder = BuildDataInterface(tyrpNumber, departmentCode, wmsReceipt.Number);
var outgoingToExternal = new OutgoingToExternal()
{
DataType = EnumOutgoingDataType.RecycledMaterialReceipt.ToString(),
@ -93,7 +93,7 @@ public class RecycledMaterialReceiptNoteConverter : IOutgoingConverter
outgoingDetailToExternal.SetEffectiveDate(outgoingFromWms.EffectiveDate);
var exchangeReceiptDetail = _objectMapper.Map<RecycledMaterialReceiptNoteDetailDTO, RecycledMaterialReceiptNoteDetailExchangeDto>(detail);
outgoingDetailToExternal.SourceDataContent = JsonSerializer.Serialize(exchangeReceiptDetail);
var purchaseOrderDetail = BuildDataInterfaceDetail(tyrpNumber, exchangeReceiptDetail);
var purchaseOrderDetail = BuildDataInterfaceDetail(tyrpNumber, exchangeReceiptDetail,wmsReceipt.Number);
outgoingDetailToExternal.DestinationDataContent = JsonSerializer.Serialize(purchaseOrderDetail);
outgoingToExternalList.Add(outgoingDetailToExternal);
}
@ -111,12 +111,13 @@ public class RecycledMaterialReceiptNoteConverter : IOutgoingConverter
/// </summary>
/// <param name="exchangeOrder"></param>
/// <returns></returns>
private Wmsoutm BuildDataInterface(string tyrpNumber,string departmentCode)
private Wmsoutm BuildDataInterface(string tyrpNumber,string departmentCode,string number)
{
var ret = new Wmsoutm()
{
wmsoutm_nbr = tyrpNumber,
wmsoutm_mid = Convert.ToDecimal(tyrpNumber),
wmsoutm_nbr = number,
wmsoutm_type = billtype,
wmsoutm_dt_w = DateTime.Now.ToString("yyyyMMdd HH:mm:ss"),
wmsoutm_stat = "Y",
@ -144,11 +145,12 @@ public class RecycledMaterialReceiptNoteConverter : IOutgoingConverter
/// <param name="exchangeOrder"></param>
/// <param name="exchangeDetailOrder"></param>
/// <returns></returns>
private Wmsoutd BuildDataInterfaceDetail(string tyrpNumber, RecycledMaterialReceiptNoteDetailExchangeDto exchangeDetailOrder)
private Wmsoutd BuildDataInterfaceDetail(string tyrpNumber, RecycledMaterialReceiptNoteDetailExchangeDto exchangeDetailOrder,string number)
{
var ret = new Wmsoutd()
{
wmsoutd_nbr = tyrpNumber,
wmsoutd_mid= Convert.ToDecimal(tyrpNumber),
wmsoutd_nbr = number,
wmsoutd_part = exchangeDetailOrder.ItemCode,
wmsoutd_loc = exchangeDetailOrder.LocationErpCode,
wmsoutd_qty = exchangeDetailOrder.Qty,

16
be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Outgoing/TransferNoteConverter.cs

@ -105,13 +105,13 @@ public class TransferNoteConverter : IOutgoingConverter
var toLocationErpcode = details[0].ToLocationErpCode;
var erplocation = await _erpLocationAppService.GetByCodeAsync(toLocationErpcode).ConfigureAwait(false);
if (erplocation.Type != "2")
if (erplocation?.Type != "2")
{
stat = "2";
}
var location = stat == "1" ? details[0].ToLocationErpCode : details[0].FromLocationErpCode;
outgoingToExternal.DataType = EnumOutgoingDataType.TransferForCustom.ToString();
var putawayNoteWmsoutm = BuildWmsoutmDataInterface(departmentCode, dt_w, tyrpNumber, location, stat);
var putawayNoteWmsoutm = BuildWmsoutmDataInterface(departmentCode, dt_w, tyrpNumber, location, stat, wmsReceipt.Number);
outgoingToExternal.DestinationDataContent = JsonSerializer.Serialize(putawayNoteWmsoutm);
WipDetails = details.GroupBy(r => new { r.Number, r.ItemCode, r.FromLocationErpCode, r.ToLocationErpCode }).Select(p => new TransferNoteDetailExchangeDto { Qty = p.Sum(itm => itm.Qty), Number = p.Key.Number, ItemCode = p.Key.ItemCode, FromLocationErpCode = p.Key.FromLocationErpCode, ToLocationErpCode = p.Key.ToLocationErpCode }).ToList();
@ -156,7 +156,7 @@ public class TransferNoteConverter : IOutgoingConverter
}
else
{
var putawayNoteDetailWmsoutd = BuildWmsoutdDataInterfaceDetail(tyrpNumber, detail, stat);
var putawayNoteDetailWmsoutd = BuildWmsoutdDataInterfaceDetail(tyrpNumber, detail, stat, wmsReceipt.Number);
outgoingDetailToExternal.DestinationDataContent = JsonSerializer.Serialize(putawayNoteDetailWmsoutd);
}
}
@ -224,11 +224,12 @@ public class TransferNoteConverter : IOutgoingConverter
/// </summary>
/// <param name="exchangeOrder"></param>
/// <returns></returns>
private Wmsoutm BuildWmsoutmDataInterface(string departmentCode, string dt_w, string tyrpNumber,string locationcode,string stat)
private Wmsoutm BuildWmsoutmDataInterface(string departmentCode, string dt_w, string tyrpNumber,string locationcode,string stat,string number)
{
var ret = new Wmsoutm()
{
wmsoutm_nbr = tyrpNumber,
wmsoutm_mid=Convert.ToDecimal(tyrpNumber),
wmsoutm_nbr = number,
wmsoutm_type = billtype_w,
wmsoutm_dt_w = dt_w,
wmsoutm_stat = "Y",
@ -255,11 +256,12 @@ public class TransferNoteConverter : IOutgoingConverter
/// <param name="exchangeOrder"></param>
/// <param name="exchangeDetailOrder"></param>
/// <returns></returns>
private Wmsoutd BuildWmsoutdDataInterfaceDetail(string tyrpNumber, TransferNoteDetailExchangeDto exchangeDetailOrder,string stat)
private Wmsoutd BuildWmsoutdDataInterfaceDetail(string tyrpNumber, TransferNoteDetailExchangeDto exchangeDetailOrder,string stat, string number)
{
var ret = new Wmsoutd()
{
wmsoutd_nbr = tyrpNumber,
wmsoutd_mid=Convert.ToDecimal(tyrpNumber),
wmsoutd_nbr = number,
wmsoutd_part = exchangeDetailOrder.ItemCode,
wmsoutd_loc = stat=="1"? exchangeDetailOrder.FromLocationErpCode: exchangeDetailOrder.ToLocationErpCode,
wmsoutd_qty = exchangeDetailOrder.Qty,

10
be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Outgoing/UnplannedIssueNoteConverter.cs

@ -114,7 +114,7 @@ IUnplannedIssueRequestAppService unplannedIssueRequestAppService)
outgoingDetailToExternal.SetEffectiveDate(outgoingFromWms.EffectiveDate);
outgoingDetailToExternal.SourceDataContent = JsonSerializer.Serialize(detail);
var purchaseOrderDetail = BuildDataInterfaceDetail(tyrpNumber, detail);
var purchaseOrderDetail = BuildDataInterfaceDetail(tyrpNumber, detail, wmsReceipt.Number);
outgoingDetailToExternal.DestinationDataContent = JsonSerializer.Serialize(purchaseOrderDetail);
outgoingToExternalList.Add(outgoingDetailToExternal);
}
@ -141,7 +141,8 @@ IUnplannedIssueRequestAppService unplannedIssueRequestAppService)
}
var ret = new Wmsoutm()
{
wmsoutm_nbr = tyrpNumber,
wmsoutm_mid = Convert.ToDecimal(tyrpNumber),
wmsoutm_nbr = exchangeOrder.Number,
wmsoutm_type = billtype,
wmsoutm_dt_w = DateTime.Now.ToString("yyyyMMdd HH:mm:ss"),
wmsoutm_stat = "Y",
@ -169,11 +170,12 @@ IUnplannedIssueRequestAppService unplannedIssueRequestAppService)
/// <param name="exchangeOrder"></param>
/// <param name="exchangeDetailOrder"></param>
/// <returns></returns>
private Wmsoutd BuildDataInterfaceDetail(string tyrpNumber, UnplannedIssueNoteDetailExchangeDto exchangeDetailOrder)
private Wmsoutd BuildDataInterfaceDetail(string tyrpNumber, UnplannedIssueNoteDetailExchangeDto exchangeDetailOrder,string number)
{
var ret = new Wmsoutd()
{
wmsoutd_nbr = tyrpNumber,
wmsoutd_mid= Convert.ToDecimal(tyrpNumber),
wmsoutd_nbr = number,
wmsoutd_part = exchangeDetailOrder.ItemCode,
wmsoutd_loc = exchangeDetailOrder.LocationErpCode ?? "",
wmsoutd_qty = exchangeDetailOrder.Qty,

10
be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Outgoing/UnplannedReceiptNoteConverter.cs

@ -117,7 +117,7 @@ IUnplannedReceiptRequestAppService unplannedReceiptRequestAppService
};
outgoingDetailToExternal.SetEffectiveDate(outgoingFromWms.EffectiveDate);
outgoingDetailToExternal.SourceDataContent = JsonSerializer.Serialize(detail);
var purchaseOrderDetail = BuildDataInterfaceDetail(tyrpNumber, detail);
var purchaseOrderDetail = BuildDataInterfaceDetail(tyrpNumber, detail, wmsReceipt.Number);
outgoingDetailToExternal.DestinationDataContent = JsonSerializer.Serialize(purchaseOrderDetail);
outgoingToExternalList.Add(outgoingDetailToExternal);
}
@ -144,7 +144,8 @@ IUnplannedReceiptRequestAppService unplannedReceiptRequestAppService
}
var ret = new Wmsoutm()
{
wmsoutm_nbr = tyrpNumber,
wmsoutm_mid= Convert.ToDecimal(tyrpNumber),
wmsoutm_nbr = exchangeOrder.Number,
wmsoutm_type = billtype,
wmsoutm_dt_w = DateTime.Now.ToString("yyyyMMdd HH:mm:ss"),
wmsoutm_stat = "Y",
@ -172,11 +173,12 @@ IUnplannedReceiptRequestAppService unplannedReceiptRequestAppService
/// <param name="exchangeOrder"></param>
/// <param name="exchangeDetailOrder"></param>
/// <returns></returns>
private Wmsoutd BuildDataInterfaceDetail(string tyrpNumber, UnplannedReceiptNoteDetailExchangeDto exchangeDetailOrder)
private Wmsoutd BuildDataInterfaceDetail(string tyrpNumber, UnplannedReceiptNoteDetailExchangeDto exchangeDetailOrder,string number)
{
var ret = new Wmsoutd()
{
wmsoutd_nbr = tyrpNumber,
wmsoutd_mid= Convert.ToDecimal(tyrpNumber),
wmsoutd_nbr = number,
wmsoutd_part = exchangeDetailOrder.ItemCode,
wmsoutd_loc = exchangeDetailOrder.LocationErpCode ?? "",
wmsoutd_qty = exchangeDetailOrder.Qty,

Loading…
Cancel
Save