From e2d35901cf1fc8b1892a6a03c613261ab754e708 Mon Sep 17 00:00:00 2001 From: hlb <894797954@qq.com> Date: Fri, 16 Jun 2023 09:15:29 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=93=8D=E4=BD=9C=E5=8D=95?= =?UTF-8?q?=E6=8F=92=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../WmsPDAEmptyInstockService.cs | 16 +++++++++++ .../WmsPDAExceptionCancelService.cs | 27 ++++++++++++------- 2 files changed, 33 insertions(+), 10 deletions(-) diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsPDAEmptyInstockService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsPDAEmptyInstockService.cs index 270e933a..1955a030 100644 --- a/WarehouseMgr/Tnb.WarehouseMgr/WmsPDAEmptyInstockService.cs +++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsPDAEmptyInstockService.cs @@ -125,6 +125,22 @@ namespace Tnb.WarehouseMgr preTaskUpInput.LocationIds = points.Select(x => x.id).ToList(); preTaskUpInput.PreTaskRecords = preTasks.Adapt>(); preTaskUpInput.PreTaskRecords.ForEach(x => x.id = SnowflakeIdHelper.NextId()); + WmsHandleH handleH = new(); + handleH.org_id = _userManager.User.OrganizeId; + handleH.startlocation_id = input.data[nameof(WmsPointH.location_id)]?.ToString(); + handleH.endlocation_id = endLocations[0].id; + handleH.bill_code = input.data[nameof(WmsHandleH.bill_code)]?.ToString(); + handleH.biz_type = input.data[nameof(WmsHandleH.biz_type)]?.ToString(); + handleH.carry_id = input.data[nameof(WmsHandleH.carry_id)]?.ToString(); + handleH.carry_code = input.data[nameof(WmsHandleH.carry_code)]?.ToString(); + handleH.require_id = input.data["ReturnIdentity"].ToString(); + handleH.require_code = input.data[nameof(WmsHandleH.bill_code)]?.ToString()!; + handleH.create_id = _userManager.UserId; + handleH.create_time = DateTime.Now; + preTaskUpInput.PreTaskRecord = handleH; + //根据空载具入库Id,回更单据状态 + await _db.Updateable().SetColumns(it => new WmsEmptyInstock { status = WmsWareHouseConst.BILLSTATUS_ON_ID }).Where(it => it.id == preTaskUpInput.PreTaskId).ExecuteCommandAsync(); + await _wareHouseService.GenInStockTaskHandleAfter(preTaskUpInput); } } diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsPDAExceptionCancelService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsPDAExceptionCancelService.cs index a3551d1a..28fb5180 100644 --- a/WarehouseMgr/Tnb.WarehouseMgr/WmsPDAExceptionCancelService.cs +++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsPDAExceptionCancelService.cs @@ -61,21 +61,28 @@ namespace Tnb.WarehouseMgr try { await _db.Ado.BeginTranAsync(); - //更新任务执行状态 已取消 - await _db.Updateable().SetColumns(it => new WmsDistaskH { status = WmsWareHouseConst.TASK_BILL_STATUS_CANCEL_ID }).Where(it => it.bill_code == input.data[nameof(WmsDistaskH.bill_code)].ToString()).ExecuteCommandAsync(); - //预任务取消 - await _db.Updateable().SetColumns(it => new WmsPretaskH { status = WmsWareHouseConst.PRETASK_BILL_STATUS_CANCEL_ID }).Where(it => it.id == input.data[nameof(WmsDistaskH.pretask_id)].ToString()).ExecuteCommandAsync(); - //载具解锁 - await _db.Updateable().SetColumns(it => new WmsCarryH { is_lock = 0 }).Where(it => it.id == input.data[nameof(WmsDistaskH.carry_id)].ToString()).ExecuteCommandAsync(); - //所有库位解锁 + if (input.data.ContainsKey(nameof(WmsDistaskH.bill_code))) { + //更新任务执行状态 已取消 + await _db.Updateable().SetColumns(it => new WmsDistaskH { status = WmsWareHouseConst.TASK_BILL_STATUS_CANCEL_ID }).Where(it => it.bill_code == input.data[nameof(WmsDistaskH.bill_code)].ToString()).ExecuteCommandAsync(); + + } + if (input.data.ContainsKey(nameof(WmsDistaskH.pretask_id))) + { + //预任务取消 + await _db.Updateable().SetColumns(it => new WmsPretaskH { status = WmsWareHouseConst.PRETASK_BILL_STATUS_CANCEL_ID }).Where(it => it.id == input.data[nameof(WmsDistaskH.pretask_id)].ToString()).ExecuteCommandAsync(); + + } + if (input.data.ContainsKey(nameof(WmsDistaskH.carry_id))) + { + //载具解锁 + await _db.Updateable().SetColumns(it => new WmsCarryH { is_lock = 0 }).Where(it => it.id == input.data[nameof(WmsDistaskH.carry_id)].ToString()).ExecuteCommandAsync(); + } if (input.data.ContainsKey(nameof(WmsDistaskH.startlocation_id)) && input.data.ContainsKey(nameof(WmsDistaskH.endlocation_id))) { + //所有库位解锁 var ids = new[] { input.data[nameof(WmsDistaskH.startlocation_id)]?.ToString(), input.data[nameof(WmsDistaskH.endlocation_id)]?.ToString() }; await _db.Updateable().SetColumns(it => new BasLocation { is_lock = 0 }).Where(it => ids.Contains(it.id)).ExecuteCommandAsync(); } - - - await _db.Ado.CommitTranAsync(); } catch (Exception ex)