| | |
| | | using Newtonsoft.Json; |
| | | using Newtonsoft.Json.Serialization; |
| | | using Org.BouncyCastle.Asn1.X509; |
| | | using Org.BouncyCastle.Ocsp; |
| | | using Rhea.Common; |
| | | using SqlSugar; |
| | | using System; |
| | |
| | | item.QTY_ACT_DLVY = item.QTY_ACT_REQ; |
| | | } |
| | | trans.CurPREP.Order.STATUS = BIZ_WMS_PREP.STATUSs.Sended.GetValue(); |
| | | var orders = trans.MainDB.Queryable<BIZ_U9_MISC_OUT>().Where(q => trans.CurPREP.Order.SourceOrders.Select(s => s.SOURCE_ORDER).Contains(q.ORDER_NO)).ToList(); |
| | | foreach (var item in orders) |
| | | var orders = trans.MainDB.Queryable<BIZ_U9_MISC_OUT>().Where(q => trans.CurPREP.Order.SourceOrders.Select(s => s.SOURCE_ORDER).Contains(q.ORDER_NO)).IncludesAllFirstLayer().ToList(); |
| | | foreach (var order in orders) |
| | | { |
| | | item.STATUS = BIZ_U9_MISC_OUT.STATUSs.Sended.GetValue(); |
| | | item.PREP_PERSON = trans.UserCode; |
| | | item.FINISH_TIME = DateTime.Now; |
| | | item.REQ_PERSON = trans.UserCode; |
| | | item.DLVY_TIME = DateTime.Now; |
| | | order.STATUS = BIZ_U9_MISC_OUT.STATUSs.Sended.GetValue(); |
| | | order.PREP_PERSON = trans.UserCode; |
| | | order.FINISH_TIME = DateTime.Now; |
| | | order.REQ_PERSON = trans.UserCode; |
| | | order.DLVY_TIME = DateTime.Now; |
| | | foreach (var dtl in order.Details) |
| | | { |
| | | dtl.STATUS = BIZ_WMS_TRANSFER.STATUSs.Sended.GetValue(); |
| | | } |
| | | order.SnList ??= new(); |
| | | foreach (var sn in trans.CurPREP.Order.SnList) |
| | | { |
| | | var dtl = order.Details.Where(q => q.ITEM_CODE == sn.ITEM_CODE).First(); |
| | | order.SnList.Add(new() |
| | | { |
| | | AUTH_ORG = dtl.AUTH_ORG, |
| | | ORDER_NO = dtl.ORDER_NO, |
| | | LINE_NO = dtl.LINE_NO, |
| | | SN = sn.SN, |
| | | STATUS = sn.STATUS, |
| | | ITEM_CODE = sn.ITEM_CODE, |
| | | QTY = sn.QTY, |
| | | UNIT = sn.UNIT, |
| | | WH_CODE = sn.WH_CODE, |
| | | REGION_CODE = sn.REGION_CODE, |
| | | SHELF_CODE = sn.SHELF_CODE, |
| | | LOCATION_CODE = sn.LOCATION_CODE, |
| | | DOWN_TIME = sn.DOWN_TIME, |
| | | DLVY_TIME = DateTime.Now, |
| | | IS_OUT = "Y", |
| | | LOTNO = sn.LOTNO, |
| | | }); |
| | | } |
| | | } |
| | | var items = trans.MainDB.Queryable<WMS_ITEM>().Where(q => q.TRANS_NO == trans.CurPREP.Order.ORDER_NO).ToList(); |
| | | var history = new List<WMS_ITEM_HIS>(); |
| | |
| | | db.Updateable(items, trans.UserCode).UpdateColumns(q => new { q.UPDATE_TIME, q.UPDATE_USER, q.STATUS }).ExecuteCommand(); |
| | | db.Insertable(history, trans.UserCode).ExecuteCommand(); |
| | | db.Updateable(orders, trans.UserCode).UpdateColumns(q => new { q.UPDATE_TIME, q.UPDATE_USER, q.STATUS, q.PREP_PERSON, q.FINISH_TIME, q.REQ_PERSON, q.DLVY_TIME }).ExecuteCommand(); |
| | | db.Updateable(orders.SelectMany(q => q.Details).ToList(), trans.UserCode).UpdateColumns(q => new { q.UPDATE_TIME, q.UPDATE_USER, q.STATUS }).ExecuteCommand(); |
| | | db.Storageable(orders.SelectMany(q => q.SnList).ToList(), trans.UserCode).ToStorage().AsInsertable.ExecuteCommand(); |
| | | }); |
| | | if (dbTran.IsSuccess) |
| | | { |
| | |
| | | { |
| | | sn.DLVY_BATCH = batch.DLVY_BATCH; |
| | | sn.STATUS = WMS_ITEM.STATUSs.Sended.GetValue(); |
| | | sn.REQ_ID = batch.REQ_ID; |
| | | sn.REQ_ORDER = batch.REQ_ORDER; |
| | | } |
| | | |
| | | var items = trans.MainDB.Queryable<WMS_ITEM>().Where(q => sns.Select(s => s.SN).Contains(q.SN)).ToList(); |
| | |
| | | db.Updateable(trans.CurPREP.Order, trans.UserCode).UpdateColumns(q => new { q.UPDATE_TIME, q.UPDATE_USER, q.STATUS }).ExecuteCommand(); |
| | | db.Updateable(prepSrcList, trans.UserCode).UpdateColumns(q => new { q.UPDATE_TIME, q.UPDATE_USER, q.QTY_ACT_DLVY }).ExecuteCommand(); |
| | | db.Insertable(batch, trans.UserCode).ExecuteCommand(); |
| | | db.Updateable(sns, trans.UserCode).UpdateColumns(q => new { q.UPDATE_TIME, q.UPDATE_USER, q.STATUS, q.DLVY_BATCH }).ExecuteCommand(); |
| | | db.Updateable(sns, trans.UserCode).UpdateColumns(q => new { q.UPDATE_TIME, q.UPDATE_USER, q.STATUS, q.DLVY_BATCH, q.REQ_ID, q.REQ_ORDER }).ExecuteCommand(); |
| | | db.Updateable(items, trans.UserCode).UpdateColumns(q => new { q.UPDATE_TIME, q.UPDATE_USER, q.STATUS }).ExecuteCommand(); |
| | | db.Insertable(history, trans.UserCode).ExecuteCommand(); |
| | | }); |
| | |
| | | { |
| | | sn.DLVY_BATCH = batch.DLVY_BATCH; |
| | | sn.STATUS = WMS_ITEM.STATUSs.Sended.GetValue(); |
| | | sn.REQ_ID = batch.REQ_ID; |
| | | sn.REQ_ORDER = batch.REQ_ORDER; |
| | | } |
| | | |
| | | var items = trans.MainDB.Queryable<WMS_ITEM>().Where(q => sns.Select(s => s.SN).Contains(q.SN)).ToList(); |
| | |
| | | db.Updateable(trans.CurPREP.Order, trans.UserCode).UpdateColumns(q => new { q.UPDATE_TIME, q.UPDATE_USER, q.STATUS }).ExecuteCommand(); |
| | | db.Updateable(prepSrcList, trans.UserCode).UpdateColumns(q => new { q.UPDATE_TIME, q.UPDATE_USER, q.QTY_ACT_DLVY }).ExecuteCommand(); |
| | | db.Insertable(batch, trans.UserCode).ExecuteCommand(); |
| | | db.Updateable(sns, trans.UserCode).UpdateColumns(q => new { q.UPDATE_TIME, q.UPDATE_USER, q.STATUS, q.DLVY_BATCH }).ExecuteCommand(); |
| | | db.Updateable(sns, trans.UserCode).UpdateColumns(q => new { q.UPDATE_TIME, q.UPDATE_USER, q.STATUS, q.DLVY_BATCH, q.REQ_ID, q.REQ_ORDER }).ExecuteCommand(); |
| | | db.Updateable(items, trans.UserCode).UpdateColumns(q => new { q.UPDATE_TIME, q.UPDATE_USER, q.STATUS }).ExecuteCommand(); |
| | | db.Insertable(history, trans.UserCode).ExecuteCommand(); |
| | | if (orders.Any()) |
| | |
| | | item.QTY_ACT_DLVY = item.QTY_ACT_REQ; |
| | | } |
| | | trans.CurPREP.Order.STATUS = BIZ_WMS_PREP.STATUSs.Sended.GetValue(); |
| | | //var orders = trans.MainDB.Queryable<BIZ_WMS_TRANSFER>().Where(q => trans.CurPREP.Order.SourceOrders.Select(s => s.SOURCE_ORDER).Contains(q.ORDER_NO)).ToList(); |
| | | //foreach (var item in orders) |
| | | //{ |
| | | // item.STATUS = BIZ_WMS_TRANSFER.STATUSs.Sended.GetValue(); |
| | | // item.PREP_PERSON = trans.UserCode; |
| | | // item.FINISH_TIME = DateTime.Now; |
| | | // item.REQ_PERSON = trans.UserCode; |
| | | // item.DLVY_TIME = DateTime.Now; |
| | | //} |
| | | var orders = trans.MainDB.Queryable<BIZ_WMS_TRANSFER>().Where(q => trans.CurPREP.Order.SourceOrders.Select(s => s.SOURCE_ORDER).Contains(q.ORDER_NO)).IncludesAllFirstLayer().ToList(); |
| | | foreach (var order in orders) |
| | | { |
| | | order.STATUS = BIZ_WMS_TRANSFER.STATUSs.Sended.GetValue(); |
| | | order.OUT_WH_CODE = string.Join(",", trans.CurPREP.Order.SnList.Select(q => q.WH_CODE).Distinct()); |
| | | foreach (var dtl in order.Details) |
| | | { |
| | | dtl.STATUS = BIZ_WMS_TRANSFER.STATUSs.Sended.GetValue(); |
| | | dtl.OUT_WH_CODE = string.Join(",", trans.CurPREP.Order.SnList.Select(q => q.WH_CODE).Distinct()); |
| | | dtl.QTY_OUT = dtl.QTY_REQ; |
| | | dtl.OUT_LOTNO = string.Join(",", trans.CurPREP.Order.SnList.Select(q => q.LOTNO).Distinct()); |
| | | } |
| | | order.SnList ??= new(); |
| | | foreach (var sn in trans.CurPREP.Order.SnList) |
| | | { |
| | | var dtl = order.Details.Where(q => q.ITEM_CODE == sn.ITEM_CODE).First(); |
| | | order.SnList.Add(new() |
| | | { |
| | | AUTH_ORG = dtl.AUTH_ORG, |
| | | ORDER_NO = dtl.ORDER_NO, |
| | | ORDER_LINE = dtl.ORDER_LINE, |
| | | SN = sn.SN, |
| | | STATUS = sn.STATUS, |
| | | ITEM_CODE = sn.ITEM_CODE, |
| | | QTY = sn.QTY, |
| | | LOTNO = sn.LOTNO, |
| | | OUT_WH_CODE = sn.WH_CODE, |
| | | OUT_REGION_CODE = sn.REGION_CODE, |
| | | OUT_SHELF_CODE = sn.SHELF_CODE, |
| | | OUT_LOCATION_CODE = sn.LOCATION_CODE, |
| | | OUT_TIME = DateTime.Now, |
| | | }); |
| | | } |
| | | } |
| | | var items = trans.MainDB.Queryable<WMS_ITEM>().Where(q => q.TRANS_NO == trans.CurPREP.Order.ORDER_NO).ToList(); |
| | | var history = new List<WMS_ITEM_HIS>(); |
| | | foreach(var item in items) |
| | |
| | | .SetColumns(q => q.DLVY_BATCH == batch.DLVY_BATCH).SetColumns(q => q.STATUS == WMS_ITEM.STATUSs.Sended.GetValue()).ExecuteCommand(); |
| | | db.Updateable(items, trans.UserCode).UpdateColumns(q => new { q.UPDATE_TIME, q.UPDATE_USER, q.STATUS }).ExecuteCommand(); |
| | | db.Insertable(history, trans.UserCode).ExecuteCommand(); |
| | | //db.Updateable(orders, trans.UserCode).UpdateColumns(q => new { q.UPDATE_TIME, q.UPDATE_USER, q.STATUS, q.PREP_PERSON, q.FINISH_TIME, q.REQ_PERSON, q.DLVY_TIME }).ExecuteCommand(); |
| | | db.Updateable(orders, trans.UserCode).UpdateColumns(q => new { q.UPDATE_TIME, q.UPDATE_USER, q.STATUS, q.OUT_WH_CODE }).ExecuteCommand(); |
| | | db.Updateable(orders.SelectMany(q => q.Details).ToList(), trans.UserCode).UpdateColumns(q => new { q.UPDATE_TIME, q.UPDATE_USER, q.STATUS, q.OUT_WH_CODE, q.QTY_OUT, q.OUT_LOTNO }).ExecuteCommand(); |
| | | db.Storageable(orders.SelectMany(q => q.SnList).ToList(), trans.UserCode).ToStorage().AsInsertable.ExecuteCommand(); |
| | | }); |
| | | if (dbTran.IsSuccess) |
| | | { |