Browse Source

改拆箱记录表没有单号、创建label没有同步拆箱记录表

dev_DY_CC
刘云峰 12 months ago
parent
commit
9862ba85bd
  1. 18
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/SplitPackings/SplitPackingRecManager.cs
  2. 30
      be/Modules/Label/src/Win_in.Sfs.Label.Application/InventoryLabels/InventoryLabelAppService.cs

18
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/SplitPackings/SplitPackingRecManager.cs

@ -174,14 +174,32 @@ public class SplitPackingRecManager : DomainService, ISplitPackingRecManager
{ {
var historyRec = historyQuery.Where(itm => itm.FromPackingCode == obj.FromPackingCode).OrderBy(itm => itm.CreationTime).FirstOrDefault(); var historyRec = historyQuery.Where(itm => itm.FromPackingCode == obj.FromPackingCode).OrderBy(itm => itm.CreationTime).FirstOrDefault();
if (historyRec != null) if (historyRec != null)
{
if (historyRec.PurchaseInfo_PoNumber.HasValue())
{ {
obj.PurchaseInfo_PoNumber = historyRec.PurchaseInfo_PoNumber; //采购订单 obj.PurchaseInfo_PoNumber = historyRec.PurchaseInfo_PoNumber; //采购订单
}
if (historyRec.PurchaseInfo_AsnNumber.HasValue())
{
obj.PurchaseInfo_AsnNumber = historyRec.PurchaseInfo_AsnNumber; //供应商发货单 obj.PurchaseInfo_AsnNumber = historyRec.PurchaseInfo_AsnNumber; //供应商发货单
}
if (historyRec.ArrivalNoticNumber.HasValue())
{
obj.ArrivalNoticNumber = historyRec.ArrivalNoticNumber; //到货通知 obj.ArrivalNoticNumber = historyRec.ArrivalNoticNumber; //到货通知
}
if (historyRec.TaskOrderNumber.HasValue())
{
obj.TaskOrderNumber = historyRec.TaskOrderNumber; //任务单 obj.TaskOrderNumber = historyRec.TaskOrderNumber; //任务单
}
if (historyRec.ReceiptRecNumber.HasValue())
{
obj.ReceiptRecNumber = historyRec.ReceiptRecNumber; //收货记录单 obj.ReceiptRecNumber = historyRec.ReceiptRecNumber; //收货记录单
}
if (historyRec.PutOnShelfNumber.HasValue())
{
obj.PutOnShelfNumber = historyRec.PutOnShelfNumber; //上架单 obj.PutOnShelfNumber = historyRec.PutOnShelfNumber; //上架单
} }
}
//else //else
//{ //{
// historyRec = historyQuery.Where(itm => itm.ToPackingCode == obj.ToPackingCode).OrderBy(itm => itm.CreationTime).FirstOrDefault(); // historyRec = historyQuery.Where(itm => itm.ToPackingCode == obj.ToPackingCode).OrderBy(itm => itm.CreationTime).FirstOrDefault();

30
be/Modules/Label/src/Win_in.Sfs.Label.Application/InventoryLabels/InventoryLabelAppService.cs

@ -133,6 +133,8 @@ public class InventoryLabelAppService
[UnitOfWork] [UnitOfWork]
public virtual async Task<List<InventoryLabelDto>> CreateManyByNoCodeAsync(List<InventoryLabelEditInput> inputs) public virtual async Task<List<InventoryLabelDto>> CreateManyByNoCodeAsync(List<InventoryLabelEditInput> inputs)
{ {
await InsertSplitBoxRecAsync(inputs).ConfigureAwait(false); //插入拆箱记录表
var entitys = ObjectMapper.Map<List<InventoryLabelEditInput>, List<InventoryLabel>>(inputs); var entitys = ObjectMapper.Map<List<InventoryLabelEditInput>, List<InventoryLabel>>(inputs);
await _repository.InsertManyAsync(entitys).ConfigureAwait(false); await _repository.InsertManyAsync(entitys).ConfigureAwait(false);
return ObjectMapper.Map<List<InventoryLabel>, List<InventoryLabelDto>>(entitys); return ObjectMapper.Map<List<InventoryLabel>, List<InventoryLabelDto>>(entitys);
@ -149,10 +151,24 @@ public class InventoryLabelAppService
[UnitOfWork] [UnitOfWork]
public virtual async Task<List<InventoryLabelDto>> CreateManyByNoCode_NewAsync(List<InventoryLabelEditInput> inputs) public virtual async Task<List<InventoryLabelDto>> CreateManyByNoCode_NewAsync(List<InventoryLabelEditInput> inputs)
{ {
#region 插入拆箱记录表 await InsertSplitBoxRecAsync(inputs).ConfigureAwait(false); //插入拆箱记录表
foreach (var inputObj in inputs)
var entitys = ObjectMapper.Map<List<InventoryLabelEditInput>, List<InventoryLabel>>(inputs);
await _repository.InsertManyAsync(entitys).ConfigureAwait(false);
return ObjectMapper.Map<List<InventoryLabel>, List<InventoryLabelDto>>(entitys);
}
/// <summary>
/// 插入拆箱记录表
/// </summary>
/// <param name="inputs">InventoryLabelEditInput列表</param>
/// <returns></returns>
/// <exception cref="UserFriendlyException"></exception>
private async Task InsertSplitBoxRecAsync(List<InventoryLabelEditInput> inputs)
{ {
List<SplitPackingRecEditInput> recLst = new List<SplitPackingRecEditInput>(); List<SplitPackingRecEditInput> recLst = new List<SplitPackingRecEditInput>();
foreach (var inputObj in inputs)
{
SplitPackingRecEditInput packRec = new SplitPackingRecEditInput(); SplitPackingRecEditInput packRec = new SplitPackingRecEditInput();
packRec.OprType = OprTypeEnum.Other; packRec.OprType = OprTypeEnum.Other;
packRec.FromPackingCode = inputObj.Code; packRec.FromPackingCode = inputObj.Code;
@ -178,17 +194,13 @@ public class InventoryLabelAppService
packRec.ReceiptRecNumber = null; //收货记录单 packRec.ReceiptRecNumber = null; //收货记录单
packRec.PutOnShelfNumber = null; //上架单 packRec.PutOnShelfNumber = null; //上架单
recLst.Add(packRec); recLst.Add(packRec);
}
bool bo = await _splitPackingRecAppService.BatchInsertAsync(recLst).ConfigureAwait(false); bool bo = await _splitPackingRecAppService.BatchInsertAsync(recLst).ConfigureAwait(false);
if (bo == false) if (bo == false)
{ {
throw new UserFriendlyException("调用插入拆箱记录表方法时返回假!"); throw new UserFriendlyException("调用插入拆箱记录表方法时返回假!");
} }
}
#endregion
var entitys = ObjectMapper.Map<List<InventoryLabelEditInput>, List<InventoryLabel>>(inputs);
await _repository.InsertManyAsync(entitys).ConfigureAwait(false);
return ObjectMapper.Map<List<InventoryLabel>, List<InventoryLabelDto>>(entitys);
} }
@ -233,6 +245,10 @@ public class InventoryLabelAppService
var createInput = ObjectMapper.Map<InventoryLabelWithoutCodeCreateInput, InventoryLabelEditInput>(input); var createInput = ObjectMapper.Map<InventoryLabelWithoutCodeCreateInput, InventoryLabelEditInput>(input);
createInput.Code = numbers[i]; createInput.Code = numbers[i];
var lst = new List<InventoryLabelEditInput>();
lst.Add(createInput);
await InsertSplitBoxRecAsync(lst).ConfigureAwait(false); //插入拆箱记录表
await CheckCreatePolicyAsync().ConfigureAwait(continueOnCapturedContext: false); await CheckCreatePolicyAsync().ConfigureAwait(continueOnCapturedContext: false);
var createEntity=ObjectMapper.Map<InventoryLabelEditInput, InventoryLabel>(createInput); var createEntity=ObjectMapper.Map<InventoryLabelEditInput, InventoryLabel>(createInput);

Loading…
Cancel
Save