From d8c0f4088dd1619279f6f894766a28bb0ecfe0a4 Mon Sep 17 00:00:00 2001 From: pengmn <pmn@HanInfo> Date: 星期五, 04 七月 2025 17:21:12 +0800 Subject: [PATCH] 1 --- HH.WCS.Mobox3.HangYang/wms/WMSHelper.cs | 136 +++++++++++++++++++++++++++++++++------------ 1 files changed, 100 insertions(+), 36 deletions(-) diff --git a/HH.WCS.Mobox3.HangYang/wms/WMSHelper.cs b/HH.WCS.Mobox3.HangYang/wms/WMSHelper.cs index e5816b5..ee5453d 100644 --- a/HH.WCS.Mobox3.HangYang/wms/WMSHelper.cs +++ b/HH.WCS.Mobox3.HangYang/wms/WMSHelper.cs @@ -560,7 +560,7 @@ var _Material = db.Queryable<TN_Material>().Where(c => c.S_ITEM_CODE == material.S_ITEM_CODE).First(); if (_Material != null) { - db.Updateable<TN_Material>(material).UpdateColumns(a => new { a.S_ITEM_NAME, a.S_ITEM_TYPE, a.S_ITEM_SPEC, a.S_MATERIAL, a.S_UOM, a.C_CLEAN, a.T_MODIFY }).ExecuteCommand(); + db.Updateable<TN_Material>(material).UpdateColumns(a => new { a.S_ITEM_NAME, a.S_AREA_CODE, a.S_ITEM_SPEC, a.S_MATERIAL, a.S_UOM, a.C_CLEAN, a.T_MODIFY }).ExecuteCommand(); } else { @@ -601,15 +601,22 @@ db.BeginTran(); foreach (var orderItem in order) { - var _order = db.Queryable<InOrder>().Where(c => c.S_NO == orderItem.S_NO).First(); - if (_order != null) + var _inOrder = db.Queryable<InOrder>().Where(c => c.S_NO == orderItem.S_NO).First(); + if (_inOrder != null) { - if (_order.N_B_STATE == 0) + foreach (var item in orderItem.InOrderDetail) { - db.Updateable<InOrder>(orderItem).UpdateColumns(a => new { a.S_OP_TYPE, a.S_BS_TYPE, a.S_NOTE, a.T_MODIFY }).ExecuteCommand(); - foreach (var item in orderItem.InOrderDetail) + var _orderDetail = db.Queryable<InOrderDetail>().Where(c => c.S_BS_NO == orderItem.S_BS_NO && c.S_ITEM_CODE == item.S_ITEM_CODE).First(); + if (_orderDetail != null) { - db.Updateable<InOrderDetail>(item).UpdateColumns(a => new { a.S_ITEM_CODE, a.S_ITEM_NAME, a.F_QTY }).ExecuteCommand(); + var _order = db.Queryable<InOrder>().Where(c => c.S_NO == _orderDetail.S_IO_NO).First(); + if (_order.N_B_STATE == 0) + { + _orderDetail.S_ITEM_NAME = item.S_ITEM_NAME; + _orderDetail.F_QTY = item.F_QTY; + _orderDetail.T_MODIFY = DateTime.Now; + db.Updateable<InOrderDetail>(_orderDetail).UpdateColumns(a => new { a.S_ITEM_NAME, a.F_QTY ,a.T_MODIFY}).ExecuteCommand(); + } } } } @@ -618,6 +625,26 @@ db.Insertable(orderItem).ExecuteCommand(); db.Insertable(orderItem.InOrderDetail).ExecuteCommand(); } + + + + + + + + //if (_order != null) + //{ + // if (_order.N_B_STATE == 0) + // { + // foreach (var item in orderItem.InOrderDetail) + // { + // } + // } + //} + //else + //{ + + //} } db.CommitTran(); @@ -655,15 +682,22 @@ foreach (var orderItem in order) { - var _order = db.Queryable<OutOrder>().Where(c => c.S_NO == orderItem.S_NO).First(); - if (_order != null) + var _outOrder = db.Queryable<OutOrder>().Where(c => c.S_NO == orderItem.S_NO).First(); + if (_outOrder != null) { - if (_order.N_B_STATE == 0) + foreach (var item in orderItem.OutOrderDetail) { - db.Updateable<OutOrder>(orderItem).UpdateColumns(a => new { a.S_OP_TYPE, a.S_BS_TYPE, a.S_NOTE, a.T_MODIFY }).ExecuteCommand(); - foreach (var item in orderItem.OutOrderDetail) + var _orderDetail = db.Queryable<OutOrderDetail>().Where(c => c.S_BS_NO == orderItem.S_BS_NO && c.S_ITEM_CODE == item.S_ITEM_CODE).First(); + if (_orderDetail != null) { - db.Updateable<InOrderDetail>(item).UpdateColumns(a => new { a.S_ITEM_CODE, a.S_ITEM_NAME, a.F_QTY }).ExecuteCommand(); + var _order = db.Queryable<OutOrder>().Where(c => c.S_NO == _orderDetail.S_OO_NO).First(); + if (_order.N_B_STATE == 0) + { + _orderDetail.S_ITEM_NAME = item.S_ITEM_NAME; + _orderDetail.F_QTY = item.F_QTY; + _orderDetail.T_MODIFY = DateTime.Now; + db.Updateable<OutOrderDetail>(_orderDetail).UpdateColumns(a => new { a.S_ITEM_NAME, a.F_QTY,a.T_MODIFY }).ExecuteCommand(); + } } } } @@ -672,6 +706,24 @@ db.Insertable(orderItem).ExecuteCommand(); db.Insertable(orderItem.OutOrderDetail).ExecuteCommand(); } + + //var _order = db.Queryable<OutOrder>().Where(c => c.S_NO == orderItem.S_NO).First(); + //if (_order != null) + //{ + // if (_order.N_B_STATE == 0) + // { + // db.Updateable<OutOrder>(orderItem).UpdateColumns(a => new { a.S_OP_TYPE, a.S_BS_TYPE, a.S_NOTE, a.T_MODIFY }).ExecuteCommand(); + // foreach (var item in orderItem.OutOrderDetail) + // { + // db.Updateable<InOrderDetail>(item).UpdateColumns(a => new { a.S_ITEM_CODE, a.S_ITEM_NAME, a.F_QTY }).ExecuteCommand(); + // } + // } + //} + //else + //{ + // db.Insertable(orderItem).ExecuteCommand(); + // db.Insertable(orderItem.OutOrderDetail).ExecuteCommand(); + //} } @@ -692,7 +744,7 @@ /// </summary> /// <param name="order"></param> /// <returns></returns> - internal static bool CancelOrderIn(InOrder order) + internal static bool CancelOrderIn(InOrderCancel order) { try { @@ -700,22 +752,29 @@ var db = new SqlHelper<object>().GetInstance(); db.BeginTran(); - var _order = db.Queryable<InOrder>().Where(c => c.S_NO == order.S_NO).First(); - if (_order != null) + foreach (var item in order.OrderDetail) { - if (_order.N_B_STATE == 0) + var _orderDetail = db.Queryable<InOrderDetail>().Where(c => c.S_BS_NO == order.S_BS_NO).ToList(); + if (_orderDetail.Any()) { - foreach (var item in order.InOrderDetail) + var orderItem = _orderDetail.FirstOrDefault(a => a.S_ITEM_CODE.Trim() == item.S_ITEM_CODE); + if (orderItem != null) { - db.Deleteable<InOrderDetail>().Where(it => it.S_ITEM_CODE.Trim() == item.S_ITEM_CODE && it.S_BS_NO == order.S_BS_NO).ExecuteCommand(); + var _order = db.Queryable<InOrder>().Where(c => c.S_NO == orderItem.S_IO_NO).First(); + if (_order.N_B_STATE == 0) + { + db.Deleteable<InOrderDetail>().Where(it => it.S_ITEM_CODE.Trim() == item.S_ITEM_CODE && it.S_IO_NO == orderItem.S_IO_NO).ExecuteCommand(); + _orderDetail.RemoveAll(s => s.S_ITEM_CODE == item.S_ITEM_CODE); + if (!_orderDetail.Any()) + { + db.Deleteable<InOrder>().Where(it => it.S_NO == orderItem.S_IO_NO).ExecuteCommand(); + } + + } } } } - var _orderItem = db.Queryable<InOrderDetail>().Where(c => c.S_BS_NO == order.S_BS_NO).First(); - if (_orderItem == null) - { - db.Deleteable<InOrder>().Where(it => it.S_BS_NO == order.S_BS_NO).ExecuteCommand(); - } + db.CommitTran(); res = true; return res; @@ -741,30 +800,35 @@ /// </summary> /// <param name="order"></param> /// <returns></returns> - internal static bool CancelOrderOut(OutOrder order) + internal static bool CancelOrderOut(OutOrderCancel order) { try { bool res = false; var db = new SqlHelper<object>().GetInstance(); db.BeginTran(); - - var _order = db.Queryable<OutOrder>().Where(c => c.S_NO == order.S_NO).First(); - if (_order != null) + foreach (var item in order.OrderDetail) { - if (_order.N_B_STATE == 0) + var _orderDetail = db.Queryable<OutOrderDetail>().Where(c => c.S_BS_NO == order.S_BS_NO).ToList(); + if (_orderDetail.Any()) { - foreach (var item in order.OutOrderDetail) + var orderItem = _orderDetail.FirstOrDefault(a => a.S_ITEM_CODE.Trim() == item.S_ITEM_CODE); + if (orderItem != null) { - db.Deleteable<OutOrderDetail>().Where(it => it.S_ITEM_CODE.Trim() == item.S_ITEM_CODE && it.S_BS_NO == order.S_BS_NO).ExecuteCommand(); + var _order = db.Queryable<OutOrder>().Where(c => c.S_NO == orderItem.S_OO_NO).First(); + if (_order.N_B_STATE == 0) + { + db.Deleteable<OutOrderDetail>().Where(it => it.S_ITEM_CODE.Trim() == item.S_ITEM_CODE && it.S_OO_NO == orderItem.S_OO_NO).ExecuteCommand(); + _orderDetail.RemoveAll(s => s.S_ITEM_CODE == item.S_ITEM_CODE); + if (!_orderDetail.Any()) + { + db.Deleteable<OutOrder>().Where(it => it.S_NO == orderItem.S_OO_NO).ExecuteCommand(); + } + } } } } - var _orderItem = db.Queryable<OutOrderDetail>().Where(c => c.S_BS_NO == order.S_BS_NO).First(); - if (_orderItem == null) - { - db.Deleteable<OutOrder>().Where(it => it.S_BS_NO == order.S_BS_NO).ExecuteCommand(); - } + db.CommitTran(); res = true; return res; -- Gitblit v1.9.1