From af42a9904d1d3939da7fa0a00c3a7a2ced78258e Mon Sep 17 00:00:00 2001 From: lss <Lss@HanInfo> Date: 星期三, 21 五月 2025 17:26:18 +0800 Subject: [PATCH] 佳通问题优化 --- HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/wms/LocationHelper.cs | 35 +++++++++++++++++++++++++++++++++++ 1 files changed, 35 insertions(+), 0 deletions(-) diff --git a/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/wms/LocationHelper.cs b/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/wms/LocationHelper.cs index eeff55c..4f6d9a9 100644 --- a/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/wms/LocationHelper.cs +++ b/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/wms/LocationHelper.cs @@ -210,6 +210,7 @@ .LeftJoin<CntrItemDetail>((a, b, c) => b.S_CNTR_CODE == c.S_CNTR_CODE) .Where((a, b, c) => a.N_CURRENT_NUM > 0 && a.N_LOCK_STATE == 0 && a.S_AREA_CODE == areaCode && c.S_ITEM_CODE == ItemCode); + // LogHelper.Info($"GetLocByItemCode=>鏍规嵁搴撳尯缂栫爜:{areaCode}锛岀墿鏂欑紪鐮�{ItemCode},鐗╂枡浼樺厛绾э紝鐗╂枡绛夌骇璁$畻鍑烘湁鎵樼洏璐т綅{JsonConvert.SerializeObject(queryable.ToList())}"); //鍒ゆ柇闇�笉闇�鐗╂枡绛夌骇鏌ユ壘锛屽苟浼樺厛鍑哄簱浣欐枡 if (string.IsNullOrEmpty(lev)) { @@ -219,9 +220,15 @@ { locs = queryable.Where((a, b, c) => c.LEV == lev && c.S_BS_TYPE == "浣欐枡").ToList(); } + // LogHelper.Info($"GetLocByItemCode=>鏌ユ壘浣欐枡,{JsonConvert.SerializeObject(locs)}"); + //娌℃湁浣欐枡鍒欏鎵惧叏閮ㄧ墿鏂� if (locs.Count == 0) { + queryable = db.Queryable<Location>() + .LeftJoin<LocCntrRel>((a, b) => a.S_CODE == b.S_LOC_CODE) + .LeftJoin<CntrItemDetail>((a, b, c) => b.S_CNTR_CODE == c.S_CNTR_CODE) + .Where((a, b, c) => a.N_CURRENT_NUM > 0 && a.N_LOCK_STATE == 0 && a.S_AREA_CODE == areaCode && c.S_ITEM_CODE == ItemCode); if (string.IsNullOrEmpty(lev)) { locs = queryable.ToList(); @@ -230,6 +237,7 @@ { locs = queryable.Where((a, b, c) => c.LEV == lev).ToList(); } + // LogHelper.Info($"GetLocByItemCode=>鏃犱綑鏂�鏌ユ壘鍏ㄩ儴{JsonConvert.SerializeObject(locs)}"); } return locs; @@ -521,6 +529,33 @@ } return res; } + + /// <summary> + /// 瑙i攣璐т綅 + /// </summary> + /// <param name="loc"></param> + /// <returns></returns> + public static bool UnlockLoc(string loc) + { + var res = false; + var db = new SqlHelper<object>().GetInstance(); + var location = db.Queryable<Location>().Where(a => a.S_CODE.Trim() == loc).First(); + try + { + db.BeginTran(); + var lcrList = db.Queryable<LocCntrRel>().Where(a => a.S_LOC_CODE.Trim() == loc).ToList(); + location.S_LOCK_STATE = "鏃�; + location.N_LOCK_STATE = 0; + db.Updateable(location).UpdateColumns(it => new { it.S_LOCK_STATE, it.N_LOCK_STATE }).ExecuteCommand(); + db.CommitTran(); + res = true; + } + catch (Exception ex) + { + db.RollbackTran(); + } + return res; + } /// <summary> /// 璐т綅缁戝畾瀹瑰櫒 /// </summary> -- Gitblit v1.9.1