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 0205ebd67..501bcd9b8 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 @@ -154,20 +154,22 @@ public class AssembleIssueJobAppService public override async Task CreateAsync(AssembleIssueJobEditInput input) { await CheckMinRowAndSetStatusAsync(input).ConfigureAwait(false); - await UpdateJobStatusWaitByDimensionalStorehouseAsync(input).ConfigureAwait(false); - await UpdateJobStatusWaitByAgvAsync(input).ConfigureAwait(false); + var flagDimensionalStorehouse= await UpdateJobStatusWaitByDimensionalStorehouseAsync(input).ConfigureAwait(false); + if (flagDimensionalStorehouse == false) + { + await UpdateJobStatusWaitByAgvAsync(input).ConfigureAwait(false); + } var assembleIssueJobDto = await base.CreateAsync(input).ConfigureAwait(false); await DoingDimensionalStorehouseAsync(assembleIssueJobDto).ConfigureAwait(false); - await DoingAgvAsync(assembleIssueJobDto).ConfigureAwait(false); + if (flagDimensionalStorehouse == false) + { + await DoingAgvAsync(assembleIssueJobDto).ConfigureAwait(false); + } return assembleIssueJobDto; } - - - - [HttpPost("invalid")] public override async Task CancelAsync(Guid id) { @@ -180,7 +182,8 @@ public class AssembleIssueJobAppService if (assembleJob.JobStatus == EnumJobStatus.Open || assembleJob.JobStatus == EnumJobStatus.Partial || assembleJob.JobStatus == EnumJobStatus.Wait || - assembleJob.JobStatus == EnumJobStatus.Doing) + assembleJob.JobStatus == EnumJobStatus.Doing|| + assembleJob.JobStatus==EnumJobStatus.WaitAgv) { await _expectOutAppService.RemoveByNumberAsync(assembleJob.Number).ConfigureAwait(false); await _transferLibRequestAppService.CancelByCallRequestNumberAsync(assembleJob.AssembleRequestNumber) @@ -195,7 +198,9 @@ public class AssembleIssueJobAppService $"{EnumJobStatus.Open.GetDisplayName()}、" + $"{EnumJobStatus.Partial.GetDisplayName()}、" + $"{EnumJobStatus.Doing.GetDisplayName()}、" + - $"{EnumJobStatus.Wait.GetDisplayName()}"); + $"{EnumJobStatus.Wait.GetDisplayName()}"+ + $"{EnumJobStatus.WaitAgv.GetDisplayName()}" + ); } } @@ -207,58 +212,6 @@ public class AssembleIssueJobAppService return ObjectMapper.Map, List>(entitys); } - /// - /// 库移回调 - /// - /// - /// - [HttpPost("Do-Call-Back")] - public async Task DoTransferLibCallbackAsync(TransferLibJobDTO dto) - { - var job = await _repository.FindAsync(p => p.Number == dto.CallJobNumber).ConfigureAwait(false); - - if (job.JobStatus != EnumJobStatus.Wait) - { - throw new UserFriendlyException($"任务状态不是{EnumJobStatus.Wait.GetDisplayName()}"); - } - - var transferLibNoteDetail = dto.Details.First(); - - var jobDetail = job.Details.First(); - - job.JobStatus = EnumJobStatus.Open; - - jobDetail.TransferLibFromArriveDate = transferLibNoteDetail.HandledFromArriveDate; - jobDetail.TransferLibFromContainerCode = transferLibNoteDetail.HandledFromContainerCode; - jobDetail.TransferLibFromExpireDate = transferLibNoteDetail.HandledFromExpireDate; - jobDetail.TransferLibFromLocationArea = transferLibNoteDetail.HandledFromLocationArea; - jobDetail.TransferLibFromLocationCode = transferLibNoteDetail.HandledFromLocationCode; - jobDetail.TransferLibFromLocationErpCode = transferLibNoteDetail.HandledFromLocationErpCode; - jobDetail.TransferLibFromLocationGroup = transferLibNoteDetail.HandledFromLocationGroup; - jobDetail.TransferLibFromLot = transferLibNoteDetail.HandledFromLot; - jobDetail.TransferLibFromPackingCode = transferLibNoteDetail.HandledFromPackingCode; - jobDetail.TransferLibFromProduceDate = transferLibNoteDetail.HandledFromProduceDate; - jobDetail.TransferLibFromQty = transferLibNoteDetail.HandledFromQty; - jobDetail.TransferLibFromSupplierBatch = transferLibNoteDetail.HandledFromSupplierBatch; - jobDetail.TransferLibFromWarehouseCode = transferLibNoteDetail.HandledFromWarehouseCode; - - jobDetail.TransferLibToArriveDate = transferLibNoteDetail.HandledToArriveDate; - jobDetail.TransferLibToContainerCode = transferLibNoteDetail.HandledToContainerCode; - jobDetail.TransferLibToExpireDate = transferLibNoteDetail.HandledToExpireDate; - jobDetail.TransferLibToLocationArea = transferLibNoteDetail.HandledToLocationArea; - jobDetail.TransferLibToLocationCode = transferLibNoteDetail.HandledToLocationCode; - jobDetail.TransferLibToLocationErpCode = transferLibNoteDetail.HandledToLocationErpCode; - jobDetail.TransferLibToLocationGroup = transferLibNoteDetail.HandledToLocationGroup; - jobDetail.TransferLibToLot = transferLibNoteDetail.HandledToLot; - jobDetail.TransferLibToPackingCode = transferLibNoteDetail.HandledToPackingCode; - jobDetail.TransferLibToProduceDate = transferLibNoteDetail.HandledToProduceDate; - jobDetail.TransferLibToQty = transferLibNoteDetail.HandledToQty; - jobDetail.TransferLibToSupplierBatch = transferLibNoteDetail.HandledToSupplierBatch; - jobDetail.TransferLibToWarehouseCode = transferLibNoteDetail.HandledToWarehouseCode; - - await _repository.UpdateAsync(job).ConfigureAwait(false); - } - /// /// 执行任务明细 /// @@ -328,7 +281,6 @@ public class AssembleIssueJobAppService await CancelAcceptAsync(masterId).ConfigureAwait(false); } - /// /// 执行任务明细 /// @@ -407,7 +359,6 @@ public class AssembleIssueJobAppService await CancelAcceptAsync(masterId).ConfigureAwait(false); } - /// /// 完成任务 /// @@ -492,6 +443,62 @@ public class AssembleIssueJobAppService return dto; } + #region 业务库移 高位置库位转低位置库位 + + /// + /// 库移回调 + /// + /// + /// + [HttpPost("Do-Call-Back")] + public async Task DoTransferLibCallbackAsync(TransferLibJobDTO dto) + { + var job = await _repository.FindAsync(p => p.Number == dto.CallJobNumber).ConfigureAwait(false); + + if (job.JobStatus != EnumJobStatus.Wait) + { + throw new UserFriendlyException($"任务状态不是{EnumJobStatus.Wait.GetDisplayName()}"); + } + + var transferLibNoteDetail = dto.Details.First(); + + var jobDetail = job.Details.First(); + + job.JobStatus = EnumJobStatus.Open; + + jobDetail.TransferLibFromArriveDate = transferLibNoteDetail.HandledFromArriveDate; + jobDetail.TransferLibFromContainerCode = transferLibNoteDetail.HandledFromContainerCode; + jobDetail.TransferLibFromExpireDate = transferLibNoteDetail.HandledFromExpireDate; + jobDetail.TransferLibFromLocationArea = transferLibNoteDetail.HandledFromLocationArea; + jobDetail.TransferLibFromLocationCode = transferLibNoteDetail.HandledFromLocationCode; + jobDetail.TransferLibFromLocationErpCode = transferLibNoteDetail.HandledFromLocationErpCode; + jobDetail.TransferLibFromLocationGroup = transferLibNoteDetail.HandledFromLocationGroup; + jobDetail.TransferLibFromLot = transferLibNoteDetail.HandledFromLot; + jobDetail.TransferLibFromPackingCode = transferLibNoteDetail.HandledFromPackingCode; + jobDetail.TransferLibFromProduceDate = transferLibNoteDetail.HandledFromProduceDate; + jobDetail.TransferLibFromQty = transferLibNoteDetail.HandledFromQty; + jobDetail.TransferLibFromSupplierBatch = transferLibNoteDetail.HandledFromSupplierBatch; + jobDetail.TransferLibFromWarehouseCode = transferLibNoteDetail.HandledFromWarehouseCode; + + jobDetail.TransferLibToArriveDate = transferLibNoteDetail.HandledToArriveDate; + jobDetail.TransferLibToContainerCode = transferLibNoteDetail.HandledToContainerCode; + jobDetail.TransferLibToExpireDate = transferLibNoteDetail.HandledToExpireDate; + jobDetail.TransferLibToLocationArea = transferLibNoteDetail.HandledToLocationArea; + jobDetail.TransferLibToLocationCode = transferLibNoteDetail.HandledToLocationCode; + jobDetail.TransferLibToLocationErpCode = transferLibNoteDetail.HandledToLocationErpCode; + jobDetail.TransferLibToLocationGroup = transferLibNoteDetail.HandledToLocationGroup; + jobDetail.TransferLibToLot = transferLibNoteDetail.HandledToLot; + jobDetail.TransferLibToPackingCode = transferLibNoteDetail.HandledToPackingCode; + jobDetail.TransferLibToProduceDate = transferLibNoteDetail.HandledToProduceDate; + jobDetail.TransferLibToQty = transferLibNoteDetail.HandledToQty; + jobDetail.TransferLibToSupplierBatch = transferLibNoteDetail.HandledToSupplierBatch; + jobDetail.TransferLibToWarehouseCode = transferLibNoteDetail.HandledToWarehouseCode; + + await _repository.UpdateAsync(job).ConfigureAwait(false); + } + + #endregion + #region 立库 /// @@ -1063,6 +1070,9 @@ public class AssembleIssueJobAppService /// private async Task SendInterFaceAsync(AssembleIssueJobDTO job) { +#if DEBUG + return new AgvResultObject(); +#endif var ret = new AgvResultObject { Code = "0", @@ -1119,7 +1129,7 @@ public class AssembleIssueJobAppService ret.Message = e.Message; ret.ReqCode = job.AssembleRequestNumber; await unitOfWork.RollbackAsync().ConfigureAwait(false); - + throw new UserFriendlyException($"接口报错 错误信息{e.Message}"); } return ret; } diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/TransferLibRequests/TransferLibRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/TransferLibRequests/TransferLibRequestAppService.cs index 93267adb9..f9341c235 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/TransferLibRequests/TransferLibRequestAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/TransferLibRequests/TransferLibRequestAppService.cs @@ -345,7 +345,9 @@ public class TransferLibRequestAppService : SfsStoreRequestAppServiceBase if (kittingIssueJobDto.JobStatus == EnumJobStatus.Open || kittingIssueJobDto.JobStatus == EnumJobStatus.Partial || kittingIssueJobDto.JobStatus == EnumJobStatus.Doing || - kittingIssueJobDto.JobStatus == EnumJobStatus.Wait) + kittingIssueJobDto.JobStatus == EnumJobStatus.Wait|| + kittingIssueJobDto.JobStatus==EnumJobStatus.WaitAgv + ) { await _transferLibJobAppService.CancelAsync(kittingIssueJobDto.Id).ConfigureAwait(false); }