From beca28ecb3a730ffb33c21e0c55c729774725faf Mon Sep 17 00:00:00 2001 From: Rodney Chen <rodney.chen@hotmail.com> Date: 星期五, 25 四月 2025 16:51:28 +0800 Subject: [PATCH] 优化备料单发料逻辑 --- Tiger.Business.WMS/Common/Preparation.cs | 29 +++++------------------------ 1 files changed, 5 insertions(+), 24 deletions(-) diff --git a/Tiger.Business.WMS/Common/Preparation.cs b/Tiger.Business.WMS/Common/Preparation.cs index 9862cc5..f942fbc 100644 --- a/Tiger.Business.WMS/Common/Preparation.cs +++ b/Tiger.Business.WMS/Common/Preparation.cs @@ -1,21 +1,18 @@ -锘縰sing MailKit.Search; -using Rhea.Common; +锘縰sing Rhea.Common; using SqlSugar; using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Text; -using System.Threading.Tasks; using Tiger.Business.WMS.Extensions; -using Tiger.Business.WMS.Transaction; using Tiger.IBusiness; using Tiger.Model; -using Tiger.Model.Entitys.MES.Position; using Tiger.Model.Extensions; namespace Tiger.Business.WMS.Common { + /// <summary> /// 澶囨枡浠诲姟鍗曟嵁 /// </summary> @@ -30,11 +27,13 @@ #region Propertys & Variables private static object AddOrderLock { get; } = new object(); + private static object AddBatchLock { get; } = new object(); public DbClient MainDB { get; set; } public string UserCode { get; set; } public string OrgCode { get; set; } public BIZ_WMS_PREP Order { get; set; } public BIZ_WMS_PREP.BIZ_TYPEs BizType => Order.BIZ_TYPE.GetEnum<BIZ_WMS_PREP.BIZ_TYPEs>(); + public SuggestOption Option { get; set; } #endregion Propertys & Variables #region Functions @@ -120,7 +119,6 @@ Order.SourceOrders = Order.SourceOrders ?? new(); Order.SourceDetails = Order.SourceDetails ?? new(); Order.Details = Order.Details ?? new(); - Order.Batchs = Order.Batchs ?? new(); Order.SnList = Order.SnList ?? new(); var srcOrder = new BIZ_WMS_PREP_SRC() { @@ -172,23 +170,7 @@ var srcInfo = Order.SourceOrders.Select(q => new { q.SOURCE_CODE, q.SOURCE_ORDER }).DistinctBy(q => q.SOURCE_ORDER).OrderBy(q => q.SOURCE_ORDER); Order.SOURCE_CODE = string.Join(",", srcInfo.Select(q => q.SOURCE_CODE)); Order.SOURCE_ORDER = string.Join(",", srcInfo.Select(q => q.SOURCE_ORDER)); - if (Order.CurBatch.IsNullOrEmpty()) - { - var bacth = new BIZ_WMS_PREP_BTH() - { - AUTH_ORG = OrgCode, - ORDER_NO = Order.ORDER_NO, - BATCH = Order.Batchs.Max(q => q.BATCH) + 1, - PREP_MODE = BIZ_WMS_PREP_BTH.PREP_MODEs.Whole.GetValue(), - DLVY_MODE = BIZ_WMS_PREP_BTH.DLVY_MODEs.Supply.GetValue(), - STATUS = BIZ_WMS_PREP_BTH.STATUSs.WaitPick.GetValue(), - CALL_TIME = DateTime.Now, - PRIORITY = 4, - }; - bacth.PLAN_TIME = bacth.CALL_TIME.AddHours(1); - Order.Batchs.Add(bacth); - } - + //浣跨敤缁熶竴鐨勪簨鍔B瀵硅薄 var db = Biz.Db; var dbTran = db.UseTran(() => @@ -201,7 +183,6 @@ var d = db.Storageable(Order.Details, UserCode).WhereColumns(t => new { t.ORDER_NO, t.ITEM_CODE, t.GHOST_ROW }).ToStorage(); d.AsInsertable.ExecuteCommand(); d.AsUpdateable.IgnoreColumns(q => q.ID).UpdateColumns(q => new { q.QTY_REQ, q.UPDATE_TIME, q.UPDATE_USER }).ExecuteCommand(); - db.Storageable(Order.Batchs, UserCode).WhereColumns(t => new { t.ORDER_NO, t.BATCH, t.GHOST_ROW }).ToStorage().AsInsertable.ExecuteCommand(); }); if (dbTran.IsSuccess) { -- Gitblit v1.9.3