From 76a3bc5b62fda60af2a6edaa3f10632bd3134137 Mon Sep 17 00:00:00 2001 From: zs <zhousong@weben-smart.com> Date: 周三, 14 5月 2025 08:53:30 +0800 Subject: [PATCH] 库位及实体 --- HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsTaskAppService.cs | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 44 insertions(+), 0 deletions(-) diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsTaskAppService.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsTaskAppService.cs index d3d4886..d09721c 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsTaskAppService.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsTaskAppService.cs @@ -694,4 +694,48 @@ await uow.SaveChangesAsync(); await uow.CompleteAsync(); } + + /// <summary> + /// 淇敼鐩爣搴撲綅 + /// </summary> + /// <param name="input"></param> + /// <returns></returns> + /// <exception cref="UserFriendlyException"></exception> + public async Task ChangeTaskToPlaceAsync(ChangeTaskToPlaceInput input) + { + var task = await wmsTaskRepository.FindByNameAsync(input.TaskNo); + if (task == null) + { + throw new UserFriendlyException("浠诲姟淇℃伅涓嶅瓨鍦�"); + } + + if (task.TaskStatus != WmsTaskStatus.WEIZHIXING) + { + throw new UserFriendlyException("宸插紑濮嬫垨鑰呯粨鏉熺殑浠诲姟涓嶅厑璁镐慨鏀�"); + } + + var toPlaceInfo = await _wmsPlaceRepository.FindByNameAsync(input.ToPlace); + if (toPlaceInfo == null) + { + throw new UserFriendlyException("鐩爣搴撲綅淇℃伅涓嶅瓨鍦�"); + } + + if(toPlaceInfo.IsDisabled) + { + throw new UserFriendlyException("鐩爣搴撲綅宸茶绂佺敤"); + } + + var toplaceStock = await _wmsMaterialStockRepository.GetStockListAsync(new WmsMaterialStock { PlaceNo = input.ToPlace }); + if (toplaceStock != null && toplaceStock.Count>0) + { + var model = toplaceStock.FirstOrDefault(); + if (model.MaterialModel != input.MutableParam1) + { + throw new UserFriendlyException("鐩爣搴撲綅鍨嬪彿涓庡綋鍓嶅瀷鍙蜂笉涓�鑷翠笉鍏佽淇敼"); + } + } + task.ToPlace = input.ToPlace; + + await wmsTaskRepository.UpdateAsync(task); + } } -- Gitblit v1.9.3