From 83109bffe17f4cf877bb9546065723835a3c6b7d Mon Sep 17 00:00:00 2001
From: lss <Lss@HanInfo>
Date: 星期三, 18 六月 2025 17:30:38 +0800
Subject: [PATCH] 货位禁用添加,国自安全交互流程变更

---
 HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/wms/LocationHelper.cs |   26 +++++++++++++++++++++-----
 1 files changed, 21 insertions(+), 5 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 94f4928..ebc2d8b 100644
--- a/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/wms/LocationHelper.cs
+++ b/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/wms/LocationHelper.cs
@@ -220,7 +220,7 @@
             var 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);
+      .Where((a, b, c) => a.N_CURRENT_NUM > 0 && a.N_LOCK_STATE == 0 && a.S_AREA_CODE == areaCode && a.C_ENABLE == "Y");
             //鍏綅鐮佸尮閰嶅墠鍏綅锛屽叾浠栫殑鍏ㄩ儴閰嶇疆
             if (ItemCode.Trim().Length == 6)
             {
@@ -255,7 +255,7 @@
                 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);
+                    .Where((a, b, c) => a.N_CURRENT_NUM > 0 && a.N_LOCK_STATE == 0 && a.S_AREA_CODE == areaCode && a.C_ENABLE == "Y");
                 //鍏綅鐮佸尮閰嶅墠鍏綅锛屽叾浠栫殑鍏ㄩ儴閰嶇疆
                 if (ItemCode.Trim().Length == 6)
                 {
@@ -293,11 +293,11 @@
             Location loc = new Location();
             var db = new SqlHelper<object>().GetInstance();
             string CntrCodeWith = "";
-            if (type.Trim() == "PM")
+            if (type.Trim().Contains("MA"))
             {
                 CntrCodeWith = "MA";
             }
-            else if (type.Trim() == "PN")
+            else if (type.Trim().Contains("NA"))
             {
                 CntrCodeWith = "NA";
             }
@@ -310,7 +310,7 @@
    .LeftJoin<CntrItemDetail>((a, b, c) => b.S_CNTR_CODE == c.S_CNTR_CODE)
    .Where((a, b, c) => a.S_AREA_CODE == areaCode && a.N_CURRENT_NUM == 1
                    && a.N_LOCK_STATE == 0
-                   && b.S_CNTR_CODE != null && b.S_CNTR_CODE.Contains(CntrCodeWith) && c.S_ITEM_CODE == null
+                   && b.S_CNTR_CODE != null && b.S_CNTR_CODE.Contains(CntrCodeWith) && c.S_ITEM_CODE == null && a.C_ENABLE == "Y"
                    );
             loc = query.First();
 
@@ -621,16 +621,32 @@
             {
                 db.BeginTran();
                 var lcrList = db.Queryable<LocCntrRel>().Where(a => a.S_LOC_CODE.Trim() == loc).ToList();
+                //if (!string.IsNullOrEmpty(location.S_NOTE) && lcrList.Count > 0)
+                //{
+                //    if (location.S_NOTE == "鍙犵洏" || location.S_NOTE.Trim() == "鐗囪兌鍫嗗彔浣�)
+                //    {
+                //        LogHelper.Info("鍙犵洏璐т綅鍒犻櫎鎵樼洏");
+                //        cntrs = lcrList.Select(a => a.S_CNTR_CODE).ToList();
+
+                //    }
+                //}
+                if (lcrList.Count > 0)
+                {
+                    cntrs = lcrList.Select(a => a.S_CNTR_CODE).ToList();
+                }
+                LogHelper.Info($"BindingLoc锛氬紑濮嬭В缁戝鍣細{cntrs}");
                 var count = db.Deleteable<LocCntrRel>().Where(it => cntrs.Contains(it.S_CNTR_CODE.Trim()) && it.S_LOC_CODE.Trim() == loc).ExecuteCommand();
                 location.N_CURRENT_NUM = lcrList.Count - count;
                 location.S_LOCK_STATE = "鏃�;
                 location.N_LOCK_STATE = 0;
                 db.Updateable(location).UpdateColumns(it => new { it.N_CURRENT_NUM, it.S_LOCK_STATE, it.N_LOCK_STATE }).ExecuteCommand();
+                LogHelper.Info($"BindingLoc锛氳В缁戝鍣細{cntrs}锛屾垚鍔�);
                 db.CommitTran();
                 res = true;
             }
             catch (Exception ex)
             {
+                LogHelper.Info($"BindingLoc Error:{ex}");
                 db.RollbackTran();
             }
             return res;

--
Gitblit v1.9.1