From 33b47abc54be9d7047936d5e93fb6b0401052933 Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期三, 11 六月 2025 00:08:07 +0800
Subject: [PATCH] 1
---
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Outbound.cs | 51 ++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 42 insertions(+), 9 deletions(-)
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Outbound.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Outbound.cs"
index 7208d9e..1574e33 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Outbound.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Outbound.cs"
@@ -83,7 +83,7 @@
/// <param name="ProOutNo">鍑哄簱璁㈠崟鍙�</param>
/// <param name="StationCode">绔欏彴鍦板潃</param>
/// <returns></returns>
- public async Task<WebResponseContent> OutProductTask(int[] keys, string StationCode)
+ public async Task<WebResponseContent> OutProductTask(int[] keys, string StationCode, int Grade)
{
WebResponseContent content = new WebResponseContent();
try
@@ -93,10 +93,10 @@
return await Task.FromResult(content.Error("绾夸綋杈撳叆閿欒"));
}
//鑾峰彇鎴愬搧鍑哄簱璁㈠崟
- List<Dt_ProOutOrderDetail> _ProOutOrderDetails = await _outboundRepository.ProOutOrderDetailRepository.QueryDataAsync(x => keys.Contains(x.Id));
+ List<Dt_ProOutOrderDetail> _ProOutOrderDetails = await _outboundRepository.ProOutOrderDetailRepository.QueryDataAsync(x => keys.Contains(x.Id) && x.ProOrderDetailStatus== OrderDetailStatusEnum.New.ObjToInt());
if (_ProOutOrderDetails.Count<=0)
{
- return await Task.FromResult(content.Error("鍕鹃�夎鍗曟槑缁嗕笉瀛樺湪"));
+ return await Task.FromResult(content.Error("鍕鹃�夎鍗曟槑缁嗙姸鎬佷负鍑哄簱涓�"));
}
List<Dt_Task> tasks = new List<Dt_Task>();
List<StockSelectViewDTO> stockSelectViews = new List<StockSelectViewDTO>();
@@ -124,10 +124,26 @@
}
if (result.Item1 != null && result.Item1.Count > 0)
{
+ Dt_Task? task = BaseDal.QueryData(x=>x.TaskType==TaskTypeEnum.OutProduct.ObjToInt()).OrderBy(x=>x.Grade).FirstOrDefault();
//鏇存柊鍑哄簱鐩殑浣嶇疆
result.Item1.ForEach(x =>
{
x.TargetAddress = StationCode;
+ if (Grade==1 || task==null)
+ {
+ x.Grade = 127;
+ }
+ else
+ {
+ if (task.Grade==0 || task.Grade==1)
+ {
+ x.Grade = 1;
+ }
+ else
+ {
+ x.Grade = task.Grade - 1;
+ }
+ }
});
tasks.AddRange(result.Item1);
}
@@ -422,9 +438,7 @@
{
x.Status = OutLockStockStatusEnum.鍑哄簱涓�.ObjToInt();
});
- string groupId = DateTime.Now.ToString("yyyyMMddHHmmss");
tasks.ForEach(x => x.OrderNo = proOutOrder.ProOutOrderNo);
- tasks.ForEach(x => x.GroupId = groupId);
proStockInfos = result.Item1;
proOutOrderDetails = result.Item2;
outProStockInfos = result.Item3;
@@ -445,10 +459,14 @@
public List<Dt_Task> GetTasks(List<Dt_ProStockInfo> stockInfos, TaskTypeEnum taskType)
{
List<Dt_Task> tasks = new List<Dt_Task>();
- for (int i = 0; i < stockInfos.Count; i++)
+ string groupId = DateTime.Now.ToString("yyMMddHHmmss");
+ for (int i = 1; i <= stockInfos.Count; i++)
{
- Dt_ProStockInfo stockInfo = stockInfos[i];
-
+ Dt_ProStockInfo stockInfo = stockInfos[i-1];
+ if (i%5==0)
+ {
+ groupId= DateTime.Now.AddSeconds(i).ToString("yyMMddHHmmss");
+ }
if (stockInfo != null)
{
Dt_LocationInfo locationInfo = _basicService.LocationInfoService.Repository.QueryFirst(x => x.LocationCode == stockInfo.LocationCode);
@@ -468,6 +486,9 @@
TaskNum = BaseDal.GetTaskNum(nameof(SequenceEnum.SeqTaskNum)),
PalletType = stockInfo.PalletType,
WarehouseId = stockInfo.WarehouseId,
+ GroupId= groupId,
+ MaterielCode = stockInfo.proStockInfoDetails.Where(x => x.ProStockId == stockInfo.Id).FirstOrDefault()?.ProductCode,
+ Quantity = (float)stockInfo.proStockInfoDetails.Where(x => x.ProStockId == stockInfo.Id).Sum(x=> x.StockPcsQty)
};
tasks.Add(task);
}
@@ -506,7 +527,17 @@
TaskNum = BaseDal.GetTaskNum(nameof(SequenceEnum.SeqTaskNum)),
PalletType = stockInfo.PalletType,
WarehouseId = stockInfo.WarehouseId,
+
};
+ if (taskType != TaskTypeEnum.OutEmpty)
+ {
+ task.MaterielCode = stockInfo.Details.Where(x => x.StockId == stockInfo.Id).FirstOrDefault()?.MaterielCode;
+ task.Quantity = (float)stockInfo.Details.Where(x => x.StockId == stockInfo.Id).FirstOrDefault()?.StockQuantity;
+ }
+ if (stockInfo.StockLength>0)
+ {
+ task.TaskLength = stockInfo.StockLength;
+ }
tasks.Add(task);
}
}
@@ -751,7 +782,9 @@
StockId = x.Id,
TaskNum = 0,
OrderQuantity = OrderDetail.OrderQuantity,
- Unit = OrderDetail.Unit
+ Unit = OrderDetail.Unit,
+ ProductionDate = v.ProductionDate,
+ EffectiveDate = v.EffectiveDate
};
outStockLockInfos.Add(outStockLockInfo);
}
--
Gitblit v1.9.3