From 4932c3447f523b8bbe60a0990c4dbed9f413e5bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=A6=20=E8=B5=B5?= <89237069@qq.com> Date: Tue, 7 Jan 2025 17:34:19 +0800 Subject: [PATCH] up --- .../AssembleIssueJobAppService.cs | 125 ++++++++++-------- .../InjectionIssueJobAppService.cs | 125 ++++++++++-------- .../KittingIssueJobAppService.cs | 21 ++- .../SparePartIssueJobAppService.cs | 125 ++++++++++-------- 4 files changed, 233 insertions(+), 163 deletions(-) diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/AssembleIssueJobs/AssembleIssueJobAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/AssembleIssueJobs/AssembleIssueJobAppService.cs index ab614d38b..1c90136f4 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/AssembleIssueJobs/AssembleIssueJobAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/AssembleIssueJobs/AssembleIssueJobAppService.cs @@ -937,62 +937,81 @@ public class AssembleIssueJobAppService return ReturnMessage("-1", $"{entity.Number}任务单据已结束!"); } - foreach (var detail in entity.Details) + try { - var detailDto = new AssembleIssueJobDetailDTO(); - if (!string.IsNullOrEmpty(detail.TransferLibFromLocationCode)) - { - //库移的最终目标 挪到 推荐的目标 - var fromloc = await _locationAppService.GetByCodeAsync(detail.TransferLibToLocationCode).ConfigureAwait(false); - var toloc =await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false); - - detailDto.InjectFrom(detail); - - detailDto.HandledToLocationCode = toloc.Code; - detailDto.HandledToLocationGroup = toloc.LocationGroupCode; - detailDto.HandledToLocationArea = toloc.AreaCode; - detailDto.HandledToLocationErpCode = toloc.ErpLocationCode; - detailDto.HandledToWarehouseCode = toloc.WarehouseCode; - detailDto.HandledToQty = request.Data.First().MatQty; - detailDto.HandledToLot = detail.TransferLibToLot; - detailDto.HandledToPackingCode = detail.TransferLibToPackingCode; - - detailDto.HandledFromLocationCode = fromloc.Code; - detailDto.HandledFromLocationGroup = fromloc.LocationGroupCode; - detailDto.HandledFromLocationArea = fromloc.AreaCode; - detailDto.HandledFromLocationErpCode = fromloc.ErpLocationCode; - detailDto.HandledFromWarehouseCode = fromloc.WarehouseCode; - detailDto.HandledFromQty = request.Data.First().MatQty;//2024-12-16 和励 张旭确认的 因为没有人工干预 也没校验 一托就直接顶走了 - detailDto.HandledFromLot = detail.TransferLibToLot; - detailDto.HandledFromPackingCode = detail.TransferLibToPackingCode; - } - else + foreach (var detail in entity.Details) { - var fromloc = await _locationAppService.GetByCodeAsync(detail.RecommendFromLocationCode).ConfigureAwait(false); - var toloc = await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false); - - detailDto.InjectFrom(detail); - - detailDto.HandledToLocationCode = toloc.Code; - detailDto.HandledToLocationGroup = toloc.LocationGroupCode; - detailDto.HandledToLocationArea = toloc.AreaCode; - detailDto.HandledToLocationErpCode = toloc.ErpLocationCode; - detailDto.HandledToWarehouseCode = toloc.WarehouseCode; - detailDto.HandledToQty = request.Data.First().MatQty; - detailDto.HandledToLot = detail.RecommendToLot; - detailDto.HandledToPackingCode = detail.RecommendToPackingCode; - - detailDto.HandledFromLocationCode = fromloc.Code; - detailDto.HandledFromLocationGroup = fromloc.LocationGroupCode; - detailDto.HandledFromLocationArea = fromloc.AreaCode; - detailDto.HandledFromLocationErpCode = fromloc.ErpLocationCode; - detailDto.HandledFromWarehouseCode = fromloc.WarehouseCode; - detailDto.HandledFromQty = request.Data.First().MatQty;//2024-12-16 和励 张旭确认的 因为没有人工干预 也没校验 一托就直接顶走了 - detailDto.HandledFromLot = detail.RecommendToLot; - detailDto.HandledFromPackingCode = detail.RecommendToPackingCode; - } + var detailDto = new KittingIssueJobDetailDTO(); + if (!string.IsNullOrEmpty(detail.TransferLibFromLocationCode)) + { + var fromloc = new LocationDTO(); + if (detail.TransferLibFromLocationCode == detail.RecommendFromLocationCode && + detail.TransferLibToLocationCode == detail.RecommendToLocationCode) + { + //库移的最终目标 挪到 推荐的目标 + fromloc = await _locationAppService.GetByCodeAsync(detail.RecommendFromLocationCode).ConfigureAwait(false); + } + else + { + //库移的最终目标 挪到 推荐的目标 + fromloc = await _locationAppService.GetByCodeAsync(detail.TransferLibToLocationCode).ConfigureAwait(false); + } + - await ExecuteDetailExtAsync(entity.Id, entity.Details.First().Id, detailDto).ConfigureAwait(false); + var toloc = await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false); + + detailDto.InjectFrom(detail); + + detailDto.HandledToLocationCode = toloc.Code; + detailDto.HandledToLocationGroup = toloc.LocationGroupCode; + detailDto.HandledToLocationArea = toloc.AreaCode; + detailDto.HandledToLocationErpCode = toloc.ErpLocationCode; + detailDto.HandledToWarehouseCode = toloc.WarehouseCode; + detailDto.HandledToQty = request.Data.First().MatQty; + detailDto.HandledToLot = detail.TransferLibToLot; + detailDto.HandledToPackingCode = detail.TransferLibToPackingCode; + + detailDto.HandledFromLocationCode = fromloc.Code; + detailDto.HandledFromLocationGroup = fromloc.LocationGroupCode; + detailDto.HandledFromLocationArea = fromloc.AreaCode; + detailDto.HandledFromLocationErpCode = fromloc.ErpLocationCode; + detailDto.HandledFromWarehouseCode = fromloc.WarehouseCode; + detailDto.HandledFromQty = request.Data.First().MatQty;//2024-12-16 和励 张旭确认的 因为没有人工干预 也没校验 一托就直接顶走了 + detailDto.HandledFromLot = detail.TransferLibToLot; + detailDto.HandledFromPackingCode = detail.TransferLibToPackingCode; + } + else + { + var fromloc = await _locationAppService.GetByCodeAsync(detail.RecommendFromLocationCode).ConfigureAwait(false); + var toloc = await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false); + + detailDto.InjectFrom(detail); + + detailDto.HandledToLocationCode = toloc.Code; + detailDto.HandledToLocationGroup = toloc.LocationGroupCode; + detailDto.HandledToLocationArea = toloc.AreaCode; + detailDto.HandledToLocationErpCode = toloc.ErpLocationCode; + detailDto.HandledToWarehouseCode = toloc.WarehouseCode; + detailDto.HandledToQty = request.Data.First().MatQty; + detailDto.HandledToLot = detail.RecommendToLot; + detailDto.HandledToPackingCode = detail.RecommendToPackingCode; + + detailDto.HandledFromLocationCode = fromloc.Code; + detailDto.HandledFromLocationGroup = fromloc.LocationGroupCode; + detailDto.HandledFromLocationArea = fromloc.AreaCode; + detailDto.HandledFromLocationErpCode = fromloc.ErpLocationCode; + detailDto.HandledFromWarehouseCode = fromloc.WarehouseCode; + detailDto.HandledFromQty = request.Data.First().MatQty;//2024-12-16 和励 张旭确认的 因为没有人工干预 也没校验 一托就直接顶走了 + detailDto.HandledFromLot = detail.RecommendToLot; + detailDto.HandledFromPackingCode = detail.RecommendToPackingCode; + } + + await ExecuteDetailExtAsync(entity.Id, entity.Details.First().Id, detailDto).ConfigureAwait(false); + } + } + catch (Exception e) + { + return ReturnMessage("-1", e.Message); } return ReturnMessage("0", "OK"); diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/InjectionIssueJobs/InjectionIssueJobAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/InjectionIssueJobs/InjectionIssueJobAppService.cs index 27c2ae835..d3d0ca3a3 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/InjectionIssueJobs/InjectionIssueJobAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/InjectionIssueJobs/InjectionIssueJobAppService.cs @@ -908,62 +908,81 @@ public class InjectionIssueJobAppService return ReturnMessage("-1", $"{entity.Number}任务单据已结束!"); } - foreach (var detail in entity.Details) + try { - var detailDto = new InjectionIssueJobDetailDTO(); - if (!string.IsNullOrEmpty(detail.TransferLibFromLocationCode)) - { - //库移的最终目标 挪到 推荐的目标 - var fromloc = await _locationAppService.GetByCodeAsync(detail.TransferLibToLocationCode).ConfigureAwait(false); - var toloc = await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false); - - detailDto.InjectFrom(detail); - - detailDto.HandledToLocationCode = toloc.Code; - detailDto.HandledToLocationGroup = toloc.LocationGroupCode; - detailDto.HandledToLocationArea = toloc.AreaCode; - detailDto.HandledToLocationErpCode = toloc.ErpLocationCode; - detailDto.HandledToWarehouseCode = toloc.WarehouseCode; - detailDto.HandledToQty = request.Data.First().MatQty; - detailDto.HandledToLot = detail.TransferLibToLot; - detailDto.HandledToPackingCode = detail.TransferLibToPackingCode; - - detailDto.HandledFromLocationCode = fromloc.Code; - detailDto.HandledFromLocationGroup = fromloc.LocationGroupCode; - detailDto.HandledFromLocationArea = fromloc.AreaCode; - detailDto.HandledFromLocationErpCode = fromloc.ErpLocationCode; - detailDto.HandledFromWarehouseCode = fromloc.WarehouseCode; - detailDto.HandledFromQty = request.Data.First().MatQty;//2024-12-16 和励 张旭确认的 因为没有人工干预 也没校验 一托就直接顶走了 - detailDto.HandledFromLot = detail.TransferLibToLot; - detailDto.HandledFromPackingCode = detail.TransferLibToPackingCode; - } - else + foreach (var detail in entity.Details) { - var fromloc = await _locationAppService.GetByCodeAsync(detail.RecommendFromLocationCode).ConfigureAwait(false); - var toloc = await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false); - - detailDto.InjectFrom(detail); - - detailDto.HandledToLocationCode = toloc.Code; - detailDto.HandledToLocationGroup = toloc.LocationGroupCode; - detailDto.HandledToLocationArea = toloc.AreaCode; - detailDto.HandledToLocationErpCode = toloc.ErpLocationCode; - detailDto.HandledToWarehouseCode = toloc.WarehouseCode; - detailDto.HandledToQty = request.Data.First().MatQty; - detailDto.HandledToLot = detail.RecommendToLot; - detailDto.HandledToPackingCode = detail.RecommendToPackingCode; - - detailDto.HandledFromLocationCode = fromloc.Code; - detailDto.HandledFromLocationGroup = fromloc.LocationGroupCode; - detailDto.HandledFromLocationArea = fromloc.AreaCode; - detailDto.HandledFromLocationErpCode = fromloc.ErpLocationCode; - detailDto.HandledFromWarehouseCode = fromloc.WarehouseCode; - detailDto.HandledFromQty = request.Data.First().MatQty;//2024-12-16 和励 张旭确认的 因为没有人工干预 也没校验 一托就直接顶走了 - detailDto.HandledFromLot = detail.RecommendToLot; - detailDto.HandledFromPackingCode = detail.RecommendToPackingCode; - } + var detailDto = new InjectionIssueJobDetailDTO(); + if (!string.IsNullOrEmpty(detail.TransferLibFromLocationCode)) + { + var fromloc = new LocationDTO(); + if (detail.TransferLibFromLocationCode == detail.RecommendFromLocationCode && + detail.TransferLibToLocationCode == detail.RecommendToLocationCode) + { + //库移的最终目标 挪到 推荐的目标 + fromloc = await _locationAppService.GetByCodeAsync(detail.RecommendFromLocationCode).ConfigureAwait(false); + } + else + { + //库移的最终目标 挪到 推荐的目标 + fromloc = await _locationAppService.GetByCodeAsync(detail.TransferLibToLocationCode).ConfigureAwait(false); + } + - await ExecuteDetailExtAsync(entity.Id, entity.Details.First().Id, detailDto).ConfigureAwait(false); + var toloc = await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false); + + detailDto.InjectFrom(detail); + + detailDto.HandledToLocationCode = toloc.Code; + detailDto.HandledToLocationGroup = toloc.LocationGroupCode; + detailDto.HandledToLocationArea = toloc.AreaCode; + detailDto.HandledToLocationErpCode = toloc.ErpLocationCode; + detailDto.HandledToWarehouseCode = toloc.WarehouseCode; + detailDto.HandledToQty = request.Data.First().MatQty; + detailDto.HandledToLot = detail.TransferLibToLot; + detailDto.HandledToPackingCode = detail.TransferLibToPackingCode; + + detailDto.HandledFromLocationCode = fromloc.Code; + detailDto.HandledFromLocationGroup = fromloc.LocationGroupCode; + detailDto.HandledFromLocationArea = fromloc.AreaCode; + detailDto.HandledFromLocationErpCode = fromloc.ErpLocationCode; + detailDto.HandledFromWarehouseCode = fromloc.WarehouseCode; + detailDto.HandledFromQty = request.Data.First().MatQty;//2024-12-16 和励 张旭确认的 因为没有人工干预 也没校验 一托就直接顶走了 + detailDto.HandledFromLot = detail.TransferLibToLot; + detailDto.HandledFromPackingCode = detail.TransferLibToPackingCode; + } + else + { + var fromloc = await _locationAppService.GetByCodeAsync(detail.RecommendFromLocationCode).ConfigureAwait(false); + var toloc = await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false); + + detailDto.InjectFrom(detail); + + detailDto.HandledToLocationCode = toloc.Code; + detailDto.HandledToLocationGroup = toloc.LocationGroupCode; + detailDto.HandledToLocationArea = toloc.AreaCode; + detailDto.HandledToLocationErpCode = toloc.ErpLocationCode; + detailDto.HandledToWarehouseCode = toloc.WarehouseCode; + detailDto.HandledToQty = request.Data.First().MatQty; + detailDto.HandledToLot = detail.RecommendToLot; + detailDto.HandledToPackingCode = detail.RecommendToPackingCode; + + detailDto.HandledFromLocationCode = fromloc.Code; + detailDto.HandledFromLocationGroup = fromloc.LocationGroupCode; + detailDto.HandledFromLocationArea = fromloc.AreaCode; + detailDto.HandledFromLocationErpCode = fromloc.ErpLocationCode; + detailDto.HandledFromWarehouseCode = fromloc.WarehouseCode; + detailDto.HandledFromQty = request.Data.First().MatQty;//2024-12-16 和励 张旭确认的 因为没有人工干预 也没校验 一托就直接顶走了 + detailDto.HandledFromLot = detail.RecommendToLot; + detailDto.HandledFromPackingCode = detail.RecommendToPackingCode; + } + + await ExecuteDetailExtAsync(entity.Id, entity.Details.First().Id, detailDto).ConfigureAwait(false); + } + } + catch (Exception e) + { + return ReturnMessage("-1", e.Message); } return ReturnMessage("0", "OK"); diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/KittingIssueJobs/KittingIssueJobAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/KittingIssueJobs/KittingIssueJobAppService.cs index 268519fec..9b5938c9c 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/KittingIssueJobs/KittingIssueJobAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/KittingIssueJobs/KittingIssueJobAppService.cs @@ -917,8 +917,20 @@ public class KittingIssueJobAppService var detailDto = new KittingIssueJobDetailDTO(); if (!string.IsNullOrEmpty(detail.TransferLibFromLocationCode)) { - //库移的最终目标 挪到 推荐的目标 - var fromloc = await _locationAppService.GetByCodeAsync(detail.TransferLibToLocationCode).ConfigureAwait(false); + var fromloc = new LocationDTO(); + if (detail.TransferLibFromLocationCode == detail.RecommendFromLocationCode && + detail.TransferLibToLocationCode == detail.RecommendToLocationCode) + { + //库移的最终目标 挪到 推荐的目标 + fromloc = await _locationAppService.GetByCodeAsync(detail.RecommendFromLocationCode).ConfigureAwait(false); + } + else + { + //库移的最终目标 挪到 推荐的目标 + fromloc = await _locationAppService.GetByCodeAsync(detail.TransferLibToLocationCode).ConfigureAwait(false); + } + + var toloc = await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false); detailDto.InjectFrom(detail); @@ -966,12 +978,13 @@ public class KittingIssueJobAppService detailDto.HandledFromLot = detail.RecommendToLot; detailDto.HandledFromPackingCode = detail.RecommendToPackingCode; } + await ExecuteDetailExtAsync(entity.Id, entity.Details.First().Id, detailDto).ConfigureAwait(false); } } - catch (Exception ex) + catch (Exception e) { - return ReturnMessage("-1", ex.Message); + return ReturnMessage("-1", e.Message); } return ReturnMessage("0", "OK"); } diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/SparePartIssueJobs/SparePartIssueJobAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/SparePartIssueJobs/SparePartIssueJobAppService.cs index 36f4322f7..43704c671 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/SparePartIssueJobs/SparePartIssueJobAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/SparePartIssueJobs/SparePartIssueJobAppService.cs @@ -908,62 +908,81 @@ public class SparePartIssueJobAppService { return ReturnMessage("-1", $"{entity.Number}任务单据已结束!"); } - foreach (var detail in entity.Details) + try { - var detailDto = new SparePartIssueJobDetailDTO(); - if (!string.IsNullOrEmpty(detail.TransferLibFromLocationCode)) - { - //库移的最终目标 挪到 推荐的目标 - var fromloc = await _locationAppService.GetByCodeAsync(detail.TransferLibToLocationCode).ConfigureAwait(false); - var toloc = await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false); - - detailDto.InjectFrom(detail); - - detailDto.HandledToLocationCode = toloc.Code; - detailDto.HandledToLocationGroup = toloc.LocationGroupCode; - detailDto.HandledToLocationArea = toloc.AreaCode; - detailDto.HandledToLocationErpCode = toloc.ErpLocationCode; - detailDto.HandledToWarehouseCode = toloc.WarehouseCode; - detailDto.HandledToQty = request.Data.First().MatQty; - detailDto.HandledToLot = detail.TransferLibToLot; - detailDto.HandledToPackingCode = detail.TransferLibToPackingCode; - - detailDto.HandledFromLocationCode = fromloc.Code; - detailDto.HandledFromLocationGroup = fromloc.LocationGroupCode; - detailDto.HandledFromLocationArea = fromloc.AreaCode; - detailDto.HandledFromLocationErpCode = fromloc.ErpLocationCode; - detailDto.HandledFromWarehouseCode = fromloc.WarehouseCode; - detailDto.HandledFromQty = request.Data.First().MatQty;//2024-12-16 和励 张旭确认的 因为没有人工干预 也没校验 一托就直接顶走了 - detailDto.HandledFromLot = detail.TransferLibToLot; - detailDto.HandledFromPackingCode = detail.TransferLibToPackingCode; - } - else + foreach (var detail in entity.Details) { - var fromloc = await _locationAppService.GetByCodeAsync(detail.RecommendFromLocationCode).ConfigureAwait(false); - var toloc = await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false); - - detailDto.InjectFrom(detail); - - detailDto.HandledToLocationCode = toloc.Code; - detailDto.HandledToLocationGroup = toloc.LocationGroupCode; - detailDto.HandledToLocationArea = toloc.AreaCode; - detailDto.HandledToLocationErpCode = toloc.ErpLocationCode; - detailDto.HandledToWarehouseCode = toloc.WarehouseCode; - detailDto.HandledToQty = request.Data.First().MatQty; - detailDto.HandledToLot = detail.RecommendToLot; - detailDto.HandledToPackingCode = detail.RecommendToPackingCode; - - detailDto.HandledFromLocationCode = fromloc.Code; - detailDto.HandledFromLocationGroup = fromloc.LocationGroupCode; - detailDto.HandledFromLocationArea = fromloc.AreaCode; - detailDto.HandledFromLocationErpCode = fromloc.ErpLocationCode; - detailDto.HandledFromWarehouseCode = fromloc.WarehouseCode; - detailDto.HandledFromQty = request.Data.First().MatQty;//2024-12-16 和励 张旭确认的 因为没有人工干预 也没校验 一托就直接顶走了 - detailDto.HandledFromLot = detail.RecommendToLot; - detailDto.HandledFromPackingCode = detail.RecommendToPackingCode; - } + var detailDto = new SparePartIssueJobDetailDTO(); + if (!string.IsNullOrEmpty(detail.TransferLibFromLocationCode)) + { + var fromloc = new LocationDTO(); + if (detail.TransferLibFromLocationCode == detail.RecommendFromLocationCode && + detail.TransferLibToLocationCode == detail.RecommendToLocationCode) + { + //库移的最终目标 挪到 推荐的目标 + fromloc = await _locationAppService.GetByCodeAsync(detail.RecommendFromLocationCode).ConfigureAwait(false); + } + else + { + //库移的最终目标 挪到 推荐的目标 + fromloc = await _locationAppService.GetByCodeAsync(detail.TransferLibToLocationCode).ConfigureAwait(false); + } + - await ExecuteDetailExtAsync(entity.Id, entity.Details.First().Id, detailDto).ConfigureAwait(false); + var toloc = await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false); + + detailDto.InjectFrom(detail); + + detailDto.HandledToLocationCode = toloc.Code; + detailDto.HandledToLocationGroup = toloc.LocationGroupCode; + detailDto.HandledToLocationArea = toloc.AreaCode; + detailDto.HandledToLocationErpCode = toloc.ErpLocationCode; + detailDto.HandledToWarehouseCode = toloc.WarehouseCode; + detailDto.HandledToQty = request.Data.First().MatQty; + detailDto.HandledToLot = detail.TransferLibToLot; + detailDto.HandledToPackingCode = detail.TransferLibToPackingCode; + + detailDto.HandledFromLocationCode = fromloc.Code; + detailDto.HandledFromLocationGroup = fromloc.LocationGroupCode; + detailDto.HandledFromLocationArea = fromloc.AreaCode; + detailDto.HandledFromLocationErpCode = fromloc.ErpLocationCode; + detailDto.HandledFromWarehouseCode = fromloc.WarehouseCode; + detailDto.HandledFromQty = request.Data.First().MatQty;//2024-12-16 和励 张旭确认的 因为没有人工干预 也没校验 一托就直接顶走了 + detailDto.HandledFromLot = detail.TransferLibToLot; + detailDto.HandledFromPackingCode = detail.TransferLibToPackingCode; + } + else + { + var fromloc = await _locationAppService.GetByCodeAsync(detail.RecommendFromLocationCode).ConfigureAwait(false); + var toloc = await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false); + + detailDto.InjectFrom(detail); + + detailDto.HandledToLocationCode = toloc.Code; + detailDto.HandledToLocationGroup = toloc.LocationGroupCode; + detailDto.HandledToLocationArea = toloc.AreaCode; + detailDto.HandledToLocationErpCode = toloc.ErpLocationCode; + detailDto.HandledToWarehouseCode = toloc.WarehouseCode; + detailDto.HandledToQty = request.Data.First().MatQty; + detailDto.HandledToLot = detail.RecommendToLot; + detailDto.HandledToPackingCode = detail.RecommendToPackingCode; + + detailDto.HandledFromLocationCode = fromloc.Code; + detailDto.HandledFromLocationGroup = fromloc.LocationGroupCode; + detailDto.HandledFromLocationArea = fromloc.AreaCode; + detailDto.HandledFromLocationErpCode = fromloc.ErpLocationCode; + detailDto.HandledFromWarehouseCode = fromloc.WarehouseCode; + detailDto.HandledFromQty = request.Data.First().MatQty;//2024-12-16 和励 张旭确认的 因为没有人工干预 也没校验 一托就直接顶走了 + detailDto.HandledFromLot = detail.RecommendToLot; + detailDto.HandledFromPackingCode = detail.RecommendToPackingCode; + } + + await ExecuteDetailExtAsync(entity.Id, entity.Details.First().Id, detailDto).ConfigureAwait(false); + } + } + catch (Exception e) + { + return ReturnMessage("-1", e.Message); } return new AgvResultObject