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) => ServiceConfigurationContext.Services.AddHttpClient("Label", (HttpClient client) =>
{ {
client.Timeout = TimeSpan.FromSeconds(180); client.Timeout = TimeSpan.FromSeconds(300);
}); });
ServiceConfigurationContext.Services.AddHttpClientProxies( 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")] [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(); Stopwatch sw = new Stopwatch();
sw.Start(); sw.Start();
@ -79,7 +79,6 @@ public class SplitPackingRecController : AbpController
} }
//分页 //分页
int pageSize = 50;
int pageTotal = PageHelper.GetTotalPages(operLst.Count, pageSize); int pageTotal = PageHelper.GetTotalPages(operLst.Count, pageSize);
for (int i = 1; i <= pageTotal; i++) 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>
/// 供应商代码 /// 供应商代码
/// </summary> /// </summary>
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")] //[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string PurchaseInfo_SupplierCode { get; set; } //public string PurchaseInfo_SupplierCode { get; set; }
/// <summary> /// <summary>
/// 到货通知 /// 到货通知

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

@ -46,12 +46,18 @@ public class SplitPackingRecManager : DomainService, ISplitPackingRecManager
} }
#endregion #endregion
//缓存数据 //缓存数据
var query = await _repository.GetQueryableAsync().ConfigureAwait(false); List<SplitPackingRec> historyLst = new List<SplitPackingRec>();
var fromPackCodeLst = input.Select(itm => itm.FromPackingCode).ToList(); List<SplitPackingRec> hisLst2 = new List<SplitPackingRec>();
var toPackCodeLst = input.Select(itm => itm.ToPackingCode).ToList(); Dictionary<string, SplitPackingRec> hisLst3 = new Dictionary<string, SplitPackingRec>();
var historyLst = await query.Where(itm => fromPackCodeLst.Contains(itm.ToPackingCode) && (itm.OprType == OprTypeEnum.SplitBox || itm.OprType == OprTypeEnum.MergeBox)).ToListAsync().ConfigureAwait(false); //取顶级箱码时用到 if (input.Any(itm => itm.OprType == OprTypeEnum.SplitBox || itm.OprType == OprTypeEnum.MergeBox))
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); 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>(); 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.ToLot = inputObj.Lot;
packRec.PurchaseInfo_PoNumber = inputObj.PoNumber; // 采购订单 packRec.PurchaseInfo_PoNumber = inputObj.PoNumber; // 采购订单
packRec.PurchaseInfo_AsnNumber = inputObj.AsnNumber; //供应商发货单 packRec.PurchaseInfo_AsnNumber = inputObj.AsnNumber; //供应商发货单
packRec.PurchaseInfo_SupplierCode = inputObj.SupplierCode; //供应商发货单 //packRec.PurchaseInfo_SupplierCode = inputObj.SupplierCode; //供应商发货单
packRec.ArrivalNoticNumber = null; //到货通知 packRec.ArrivalNoticNumber = null; //到货通知
packRec.TaskOrderNumber = null; //任务单 packRec.TaskOrderNumber = null; //任务单
packRec.ReceiptRecNumber = 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); var entity = ObjectMapper.Map<InspectJobEditInput, InspectJob>(input);
if (_currentUser != null) //if (_currentUser != null)
{ //{
foreach (var item in entity.SummaryDetails) // foreach (var item in entity.SummaryDetails)
{ // {
if (item.InspectUser.IsNullOrEmpty()) // if (item.InspectUser.IsNullOrEmpty())
{ // {
item.InspectUser = _currentUser.UserName; // item.InspectUser = _currentUser.UserName;
} // }
} // }
} //}
var result = await _inspectJobManager.AddAsync(entity).ConfigureAwait(false); 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_PoNumber = inventoryLabelDto.PoNumber;
packRec.PurchaseInfo_AsnNumber = inventoryLabelDto.AsnNumber; packRec.PurchaseInfo_AsnNumber = inventoryLabelDto.AsnNumber;
packRec.PurchaseInfo_SupplierCode = inventoryLabelDto.SupplierCode; //packRec.PurchaseInfo_SupplierCode = inventoryLabelDto.SupplierCode;
#region InventoryLabel兼容成员 #region InventoryLabel兼容成员
var inputObj = inventoryLabelDto; 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 summaryDetailEntity = jobEntity.SummaryDetails.Find(p => p.Id == summaryDetailId);
var itemQuality = var itemQuality = await _itemQualityAclService.GetByItemCodeAsync(summaryDetailEntity.ItemCode, jobEntity.SupplierCode).ConfigureAwait(false);
await _itemQualityAclService.GetByItemCodeAsync(summaryDetailEntity.ItemCode, jobEntity.SupplierCode);
if (itemQuality.InspectType != EnumInspectType.Exempt) if (itemQuality.InspectType != EnumInspectType.Exempt)
{ {
//获取质检标准 //获取质检标准
@ -175,6 +175,10 @@ public class InspectJobManager : SfsJobManagerBase<InspectJob, InspectJobDetail>
//构造 汇总详情 //构造 汇总详情
await BuildInspectJobSummaryDetailAsync(input, summaryDetailEntity).ConfigureAwait(false); 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)) 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) private async Task CreatePurchaseReceiptJob(PurchaseReceiptRequest purchaseReceiptRequest)
{ {
var createInput = await BuildPurchaseReceiptJobCreateInputAsync(purchaseReceiptRequest).ConfigureAwait(false); 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); await _purchaseReceiptJobAppService.CreateManyAsync(createInput).ConfigureAwait(false);
} }

Loading…
Cancel
Save