schangxiang@126.com
2025-05-13 25246d39da4b74b54a844b36d8a50752917b81cc
HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsTaskAppService.cs
@@ -694,4 +694,38 @@
        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 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);
    }
}