Browse Source

1. 解决没有供应商代码的不过, 2. 解决 未质检 不显示检验人; 质检完成 显示检验人 bug

dev_DY_CC
刘云峰 10 months ago
parent
commit
0ec5c7f903
  1. 2
      be/Hosts/Wms.Host/Win_in.Sfs.Wms.Store.HttpApi.Host/StoreHttpApiHostModule.cs
  2. 3
      be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/BaseDatas/SplitPackingRecController.cs
  3. 4
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/SplitPackings/Inputs/SplitPackingRecEditInput.cs
  4. 18
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/SplitPackings/SplitPackingRecManager.cs
  5. 2
      be/Modules/Label/src/Win_in.Sfs.Label.Application/InventoryLabels/InventoryLabelAppService.cs
  6. 20
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/InspectJobs/InspectJobAppService.cs
  7. 2
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/TransferNotes/TransferNoteAppService.cs
  8. 8
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Jobs/InspectJobs/InspectJobManager.cs
  9. 7
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/PurchaseReceiptRequestEventHandler.cs

2
be/Hosts/Wms.Host/Win_in.Sfs.Wms.Store.HttpApi.Host/StoreHttpApiHostModule.cs

@ -102,7 +102,7 @@ public class StoreHttpApiHostModule : ModuleBase<StoreHttpApiHostModule>
{
ServiceConfigurationContext.Services.AddHttpClient("Label", (HttpClient client) =>
{
client.Timeout = TimeSpan.FromSeconds(180);
client.Timeout = TimeSpan.FromSeconds(300);
});
ServiceConfigurationContext.Services.AddHttpClientProxies(

3
be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/BaseDatas/SplitPackingRecController.cs

@ -66,7 +66,7 @@ public class SplitPackingRecController : AbpController
}
[HttpPost("batch-insert-test")]
public async Task<bool> BatchInsertTestAsync(List<SplitPackingRecEditInput> inputs, int recordCount)
public async Task<bool> BatchInsertTestAsync(List<SplitPackingRecEditInput> inputs, int recordCount, int pageSize = 50)
{
Stopwatch sw = new Stopwatch();
sw.Start();
@ -79,7 +79,6 @@ public class SplitPackingRecController : AbpController
}
//分页
int pageSize = 50;
int pageTotal = PageHelper.GetTotalPages(operLst.Count, pageSize);
for (int i = 1; i <= pageTotal; i++)
{

4
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/SplitPackings/Inputs/SplitPackingRecEditInput.cs

@ -137,8 +137,8 @@ public class SplitPackingRecEditInput : SfsBaseDataCreateOrUpdateInputBase
/// <summary>
/// 供应商代码
/// </summary>
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string PurchaseInfo_SupplierCode { get; set; }
//[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
//public string PurchaseInfo_SupplierCode { get; set; }
/// <summary>
/// 到货通知

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

@ -46,12 +46,18 @@ public class SplitPackingRecManager : DomainService, ISplitPackingRecManager
}
#endregion
//缓存数据
var query = await _repository.GetQueryableAsync().ConfigureAwait(false);
var fromPackCodeLst = input.Select(itm => itm.FromPackingCode).ToList();
var toPackCodeLst = input.Select(itm => itm.ToPackingCode).ToList();
var historyLst = await query.Where(itm => fromPackCodeLst.Contains(itm.ToPackingCode) && (itm.OprType == OprTypeEnum.SplitBox || itm.OprType == OprTypeEnum.MergeBox)).ToListAsync().ConfigureAwait(false); //取顶级箱码时用到
var hisLst2 = await query.Where(itm => fromPackCodeLst.Contains(itm.FromPackingCode)).ToListAsync().ConfigureAwait(false);
Dictionary<string, SplitPackingRec> hisLst3 = await query.Where(itm => toPackCodeLst.Contains(itm.FromPackingCode) && itm.OprType == OprTypeEnum.Other).ToDictionaryAsync(itm => itm.FromPackingCode, it2 => it2).ConfigureAwait(false);
List<SplitPackingRec> historyLst = new List<SplitPackingRec>();
List<SplitPackingRec> hisLst2 = new List<SplitPackingRec>();
Dictionary<string, SplitPackingRec> hisLst3 = new Dictionary<string, SplitPackingRec>();
if (input.Any(itm => itm.OprType == OprTypeEnum.SplitBox || itm.OprType == OprTypeEnum.MergeBox))
{
var query = await _repository.GetQueryableAsync().ConfigureAwait(false);
var fromPackCodeLst = input.Select(itm => itm.FromPackingCode).ToList();
var toPackCodeLst = input.Select(itm => itm.ToPackingCode).ToList();
historyLst = await query.Where(itm => fromPackCodeLst.Contains(itm.ToPackingCode) && (itm.OprType == OprTypeEnum.SplitBox || itm.OprType == OprTypeEnum.MergeBox)).ToListAsync().ConfigureAwait(false); //取顶级箱码时用到
hisLst2 = await query.Where(itm => fromPackCodeLst.Contains(itm.FromPackingCode)).ToListAsync().ConfigureAwait(false);
hisLst3 = await query.Where(itm => toPackCodeLst.Contains(itm.FromPackingCode) && itm.OprType == OprTypeEnum.Other).ToDictionaryAsync(itm => itm.FromPackingCode, it2 => it2).ConfigureAwait(false);
}
//遍历、批量插入
List<SplitPackingRec> operLst = new List<SplitPackingRec>();

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

@ -190,7 +190,7 @@ public class InventoryLabelAppService
packRec.ToLot = inputObj.Lot;
packRec.PurchaseInfo_PoNumber = inputObj.PoNumber; // 采购订单
packRec.PurchaseInfo_AsnNumber = inputObj.AsnNumber; //供应商发货单
packRec.PurchaseInfo_SupplierCode = inputObj.SupplierCode; //供应商发货单
//packRec.PurchaseInfo_SupplierCode = inputObj.SupplierCode; //供应商发货单
packRec.ArrivalNoticNumber = null; //到货通知
packRec.TaskOrderNumber = null; //任务单
packRec.ReceiptRecNumber = null; //收货记录单

20
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/InspectJobs/InspectJobAppService.cs

@ -43,16 +43,16 @@ public class InspectJobAppService
{
var entity = ObjectMapper.Map<InspectJobEditInput, InspectJob>(input);
if (_currentUser != null)
{
foreach (var item in entity.SummaryDetails)
{
if (item.InspectUser.IsNullOrEmpty())
{
item.InspectUser = _currentUser.UserName;
}
}
}
//if (_currentUser != null)
//{
// foreach (var item in entity.SummaryDetails)
// {
// if (item.InspectUser.IsNullOrEmpty())
// {
// item.InspectUser = _currentUser.UserName;
// }
// }
//}
var result = await _inspectJobManager.AddAsync(entity).ConfigureAwait(false);

2
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/TransferNotes/TransferNoteAppService.cs

@ -474,7 +474,7 @@ public class TransferNoteAppService : SfsStoreWithDetailsAppServiceBase
{
packRec.PurchaseInfo_PoNumber = inventoryLabelDto.PoNumber;
packRec.PurchaseInfo_AsnNumber = inventoryLabelDto.AsnNumber;
packRec.PurchaseInfo_SupplierCode = inventoryLabelDto.SupplierCode;
//packRec.PurchaseInfo_SupplierCode = inventoryLabelDto.SupplierCode;
#region InventoryLabel兼容成员
var inputObj = inventoryLabelDto;

8
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Jobs/InspectJobs/InspectJobManager.cs

@ -158,8 +158,8 @@ public class InspectJobManager : SfsJobManagerBase<InspectJob, InspectJobDetail>
//获取 汇总详情
var summaryDetailEntity = jobEntity.SummaryDetails.Find(p => p.Id == summaryDetailId);
var itemQuality =
await _itemQualityAclService.GetByItemCodeAsync(summaryDetailEntity.ItemCode, jobEntity.SupplierCode);
var itemQuality = await _itemQualityAclService.GetByItemCodeAsync(summaryDetailEntity.ItemCode, jobEntity.SupplierCode).ConfigureAwait(false);
if (itemQuality.InspectType != EnumInspectType.Exempt)
{
//获取质检标准
@ -175,6 +175,10 @@ public class InspectJobManager : SfsJobManagerBase<InspectJob, InspectJobDetail>
//构造 汇总详情
await BuildInspectJobSummaryDetailAsync(input, summaryDetailEntity).ConfigureAwait(false);
if (summaryDetailEntity.InspectUser.IsNullOrEmpty())
{
summaryDetailEntity.InspectUser = currentUser.UserName; //lyt at 2024-07-17 未质检 不显示检验人; 质检完成 显示检验人
}
//判断 汇总详情是否全部执行完毕
if (jobEntity.SummaryDetails.All(p => p.SummaryInspectStatus != EnumSummaryInspectStatus.NotInspect))

7
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/PurchaseReceiptRequestEventHandler.cs

@ -67,6 +67,13 @@ public class PurchaseReceiptRequestEventHandler
private async Task CreatePurchaseReceiptJob(PurchaseReceiptRequest purchaseReceiptRequest)
{
var createInput = await BuildPurchaseReceiptJobCreateInputAsync(purchaseReceiptRequest).ConfigureAwait(false);
foreach (var item in createInput)
{
if (string.IsNullOrEmpty(item.Worker))
{
item.Worker = "admin!";
}
}
await _purchaseReceiptJobAppService.CreateManyAsync(createInput).ConfigureAwait(false);
}

Loading…
Cancel
Save