From 2950220f98f891a64cc452478e2a2ae61b82a8cd Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期日, 13 四月 2025 16:21:52 +0800
Subject: [PATCH] 优化代码、添加大屏
---
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Outbound.cs | 116 +++++++++++++++++++++++++++++++++++++---------------------
1 files changed, 74 insertions(+), 42 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Outbound.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Outbound.cs"
index 0a2d4fa..bb09de9 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Outbound.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Outbound.cs"
@@ -67,7 +67,7 @@
/// <exception cref="Exception"></exception>
public (List<Dt_Task>?, List<Dt_StockInfo>?, List<Dt_OutboundOrderDetail>?, List<Dt_OutStockLockInfo>?, List<Dt_LocationInfo>?, List<Dt_LocationInfo>?, Dt_OutboundOrder?) OutboundTaskDataHandle(int[] keys)
{
- List<Dt_Task> tasks = new List<Dt_Task>();
+ List<Dt_Task>? tasks = new List<Dt_Task>();
List<Dt_OutboundOrderDetail> outboundOrderDetails = _outboundService.OutboundOrderDetailService.Repository.QueryData(x => keys.Contains(x.Id));
if (outboundOrderDetails == null || outboundOrderDetails.Count == 0)
@@ -83,7 +83,7 @@
List<Dt_OutStockLockInfo>? outStockLockInfos = null;
List<Dt_LocationInfo>? locationInfos = null;
List<Dt_LocationInfo>? locationInfos1 = null;
- Dt_OutboundOrder outboundOrder = null;
+ Dt_OutboundOrder? outboundOrder = null;
(List<Dt_StockInfo>?, List<Dt_OutboundOrderDetail>?, List<Dt_OutStockLockInfo>?, List<Dt_LocationInfo>?, Dt_OutboundOrder?) result = _outboundService.OutboundOrderDetailService.AssignStockOutbound(outboundOrderDetails);
if (result.Item1 != null && result.Item1.Count > 0)
@@ -111,7 +111,7 @@
/// </summary>
/// <param name="stockInfos"></param>
/// <returns></returns>
- public (List<Dt_Task>, List<Dt_LocationInfo>, List<Dt_StockInfo>) GetTasks(List<Dt_StockInfo> stockInfos, TaskTypeEnum taskType, List<Dt_LocationInfo> locationInfos)
+ public (List<Dt_Task>?, List<Dt_LocationInfo>?, List<Dt_StockInfo>?) GetTasks(List<Dt_StockInfo> stockInfos, TaskTypeEnum taskType, List<Dt_LocationInfo>? locationInfos)
{
List<Dt_Task> tasks = new List<Dt_Task>();
List<Dt_LocationInfo> locations = new List<Dt_LocationInfo>();
@@ -206,53 +206,45 @@
/// <param name="stockSelectViews"></param>
/// <returns></returns>
/// <exception cref="Exception"></exception>
- public (List<Dt_Task>, List<Dt_StockInfo>?, List<Dt_OutboundOrderDetail>?, List<Dt_OutStockLockInfo>?, List<Dt_LocationInfo>?) OutboundTaskDataHandle(int orderDetailId, List<StockSelectViewDTO> stockSelectViews)
+ public (List<Dt_Task>?, List<Dt_StockInfo>?, List<Dt_OutboundOrderDetail>?, List<Dt_OutStockLockInfo>?, List<Dt_LocationInfo>?, List<Dt_LocationInfo>?, Dt_OutboundOrder?) OutboundTaskDataHandle(int orderDetailId, List<StockSelectViewDTO> stockSelectViews)
{
- List<Dt_Task> tasks = new List<Dt_Task>();
+ List<Dt_Task>? tasks = new List<Dt_Task>();
+ if (stockSelectViews == null || stockSelectViews.Count < 1) throw new Exception("鏈幏鍙栧埌鎸囧畾搴撳瓨淇℃伅");
Dt_OutboundOrderDetail outboundOrderDetail = _outboundService.OutboundOrderDetailService.Repository.QueryFirst(x => x.Id == orderDetailId);
- if (outboundOrderDetail == null)
- {
- throw new Exception("鏈壘鍒板嚭搴撳崟鏄庣粏淇℃伅");
- }
+ if (outboundOrderDetail == null) throw new Exception("鏈壘鍒板嚭搴撳崟鏄庣粏淇℃伅");
+ if (outboundOrderDetail.OrderDetailStatus != OrderDetailStatusEnum.New.ObjToInt())
+ throw new Exception("鎵�閫夊嚭搴撳崟鏄庣粏瀛樺湪鍑哄簱涓垨宸插畬鎴�");
- List<Dt_StockInfo>? stockInfos = null;
- Dt_OutboundOrderDetail? orderDetail = null;
+ Dt_OutboundOrder outboundOrder = _outboundService.OutboundOrderService.Repository.QueryFirst(x => x.Id == outboundOrderDetail.OrderId);
+ outboundOrder.Details = new List<Dt_OutboundOrderDetail> { outboundOrderDetail };
+
+ List<Dt_StockInfo> stockInfos = new List<Dt_StockInfo>();
List<Dt_OutStockLockInfo>? outStockLockInfos = null;
List<Dt_LocationInfo>? locationInfos = null;
- if (outboundOrderDetail.OrderDetailStatus == OrderDetailStatusEnum.New.ObjToInt())
- {
- (List<Dt_StockInfo>, Dt_OutboundOrderDetail, List<Dt_OutStockLockInfo>, List<Dt_LocationInfo>) result = _outboundService.OutboundOrderDetailService.AssignStockOutbound(outboundOrderDetail, stockSelectViews);
- if (result.Item1 != null && result.Item1.Count > 0)
- {
- tasks = GetTasks(result.Item1);
- result.Item2.OrderDetailStatus = OrderDetailStatusEnum.Outbound.ObjToInt();
- result.Item3.ForEach(x =>
- {
- x.Status = OutStockStatus.鍑哄簱涓�.ObjToInt();
- });
+ List<Dt_LocationInfo>? locationInfos1 = null;
- stockInfos = result.Item1;
- orderDetail = result.Item2;
- outStockLockInfos = result.Item3;
- locationInfos = result.Item4;
- }
- else
- {
- throw new Exception("鏃犲簱瀛�");
- }
- }
- else if (outboundOrderDetail.OrderDetailStatus == OrderDetailStatusEnum.AssignOverPartial.ObjToInt() || outboundOrderDetail.OrderDetailStatus == OrderDetailStatusEnum.AssignOver.ObjToInt())
+ (List<Dt_StockInfo>, List<Dt_OutStockLockInfo>, List<Dt_LocationInfo>) result = _outboundService.OutboundOrderDetailService.AssignStockOutbound(outboundOrder, stockSelectViews);
+
+ if (result.Item1 != null && result.Item1.Count > 0)
{
- List<Dt_OutStockLockInfo> stockLockInfos = _outboundService.OutboundStockLockInfoService.GetByOrderDetailId(outboundOrderDetail.Id);
- if (stockLockInfos != null && stockLockInfos.Count > 0)
- {
- List<Dt_StockInfo> stocks = _stockService.StockInfoService.Repository.GetStockInfosByPalletCodes(stockLockInfos.Select(x => x.PalletCode).Distinct().ToList());
- tasks = GetTasks(stocks);
- }
+ (List<Dt_Task>?, List<Dt_LocationInfo>?, List<Dt_StockInfo>?) result1 = GetTasks(result.Item1, TaskTypeEnum.Outbound, result.Item3);
+ tasks = result1.Item1;
+ locationInfos1 = result1.Item2;
+ stockInfos.AddRange(result1.Item3);
+
+ stockInfos.AddRange(result.Item1);
+ outboundOrderDetail.OrderDetailStatus = OrderDetailStatusEnum.Outbound.ObjToInt();
+ outStockLockInfos = result.Item2;
+ locationInfos = result.Item3;
+ outboundOrder.OrderStatus = OutboundStatusEnum.鍑哄簱涓�.ObjToInt();
+ }
+ else
+ {
+ throw new Exception("鏃犲簱瀛�");
}
- return (tasks, stockInfos, orderDetail == null ? null : new List<Dt_OutboundOrderDetail> { orderDetail }, outStockLockInfos, locationInfos);
+ return (tasks, stockInfos, new List<Dt_OutboundOrderDetail> { outboundOrderDetail }, outStockLockInfos, locationInfos, locationInfos1, outboundOrder);
}
/// <summary>
@@ -265,9 +257,48 @@
{
try
{
- (List<Dt_Task>, List<Dt_StockInfo>?, List<Dt_OutboundOrderDetail>?, List<Dt_OutStockLockInfo>?, List<Dt_LocationInfo>?) result = OutboundTaskDataHandle(orderDetailId, stockSelectViews);
+ List<Dt_Task> tasks = new List<Dt_Task>();
+ List<Dt_StockInfo> stockInfos = new List<Dt_StockInfo>();
+ List<Dt_OutboundOrderDetail> outboundOrderDetails = new List<Dt_OutboundOrderDetail>();
+ List<Dt_OutStockLockInfo> outStockLockInfos = new List<Dt_OutStockLockInfo>();
+ List<Dt_LocationInfo> locationInfos = new List<Dt_LocationInfo>();
+ List<Dt_LocationInfo> locationInfos1 = new List<Dt_LocationInfo>();
+ Dt_OutboundOrder order = new Dt_OutboundOrder();
- WebResponseContent content = GenerateOutboundTaskDataUpdate(result.Item1, result.Item2, result.Item3, result.Item4, result.Item5);
+ #region 鍑哄簱浠诲姟鏁版嵁澶勭悊
+ (List<Dt_Task>?, List<Dt_StockInfo>?, List<Dt_OutboundOrderDetail>?, List<Dt_OutStockLockInfo>?, List<Dt_LocationInfo>?, List<Dt_LocationInfo>?, Dt_OutboundOrder?) result = OutboundTaskDataHandle(orderDetailId, stockSelectViews);
+ if (result.Item1 != null && result.Item1.Count > 0)
+ {
+ tasks.AddRange(result.Item1);
+ }
+ if (result.Item2 != null && result.Item2.Count > 0)
+ {
+ stockInfos.AddRange(result.Item2);
+ }
+ if (result.Item3 != null && result.Item3.Count > 0)
+ {
+ outboundOrderDetails.AddRange(result.Item3);
+ }
+ if (result.Item4 != null && result.Item4.Count > 0)
+ {
+ outStockLockInfos.AddRange(result.Item4);
+ }
+ if (result.Item5 != null && result.Item5.Count > 0)
+ {
+ locationInfos.AddRange(result.Item5);
+ }
+ if (result.Item6 != null && result.Item6.Count > 0)
+ {
+ locationInfos1.AddRange(result.Item6);
+ }
+ if (result.Item7 != null)
+ {
+ order = result.Item7;
+ }
+ #endregion
+
+ //WebResponseContent content = GenerateOutboundTaskDataUpdate(result.Item1, result.Item2, result.Item3, result.Item4, result.Item5);
+ WebResponseContent content = GenerateOutboundTaskDataUpdate(tasks, stockInfos, outboundOrderDetails, outStockLockInfos, locationInfos, locationInfos1, order);
return content;
}
@@ -276,6 +307,7 @@
return WebResponseContent.Instance.Error(ex.Message);
}
}
+
public WebResponseContent GenerateOutboundTaskDataUpdate(List<Dt_Task> tasks, List<Dt_StockInfo>? stockInfos = null, List<Dt_OutboundOrderDetail>? outboundOrderDetails = null, List<Dt_OutStockLockInfo>? outStockLockInfos = null, List<Dt_LocationInfo>? locationInfos = null, List<Dt_LocationInfo>? locationInfos1 = null, Dt_OutboundOrder? order = null)
{
try
--
Gitblit v1.9.3