From 06a54c7ac91fed8ece7dd6bedf724539af3c38ff Mon Sep 17 00:00:00 2001
From: pulg <plg@Haninfo>
Date: 星期四, 26 六月 2025 18:56:27 +0800
Subject: [PATCH] 1

---
 HH.WCS.ZCQTJ/api/WmsController.cs |  143 ++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 138 insertions(+), 5 deletions(-)

diff --git a/HH.WCS.ZCQTJ/api/WmsController.cs b/HH.WCS.ZCQTJ/api/WmsController.cs
index 1e65859..c614874 100644
--- a/HH.WCS.ZCQTJ/api/WmsController.cs
+++ b/HH.WCS.ZCQTJ/api/WmsController.cs
@@ -1570,7 +1570,6 @@
                     {
                         throw new Exception("鏈煡璇㈠埌璇ヤ换鍔�);
                     }
-
                     if (transportTask.S_TYPE == "鍏ュ簱" && !string.IsNullOrEmpty(transportTask.mark))
                     {
                         if (State.clientType == "1")
@@ -1580,6 +1579,7 @@
                     }
                     else if (transportTask.S_TYPE == "鍏ュ簱")
                     {
+
                         if (State.clientType == "1")
                         {
                             NDCHelper.ChangeParam(State.requestPk, 1103, 18);
@@ -1587,9 +1587,20 @@
                     }
                     else if (transportTask.S_TYPE == "鍑哄簱")
                     {
-                        if (State.clientType == "1")
+                        var tac = newDb.Queryable<TN_TcpCont>().Where(a => a.LocationCode == transportTask.S_END_LOC)?.First();
+                        if (tac?.CtiaMode == "绔嬪簱")
                         {
-                            NDCHelper.ChangeParam(State.requestPk, 1101, 18);
+                            if (State.clientType == "1")
+                            {
+                                NDCHelper.ChangeParam(State.requestPk, 1103, 18);
+                            }
+                        }
+                        else
+                        {
+                            if (State.clientType == "1")
+                            {
+                                NDCHelper.ChangeParam(State.requestPk, 1101, 18);
+                            }
                         }
                     }
                 }
@@ -3337,10 +3348,132 @@
             }
         }
         #endregion
+
+        #region Agv杞借揣淇℃伅鎺ュ彛
+        /// <summary>
+        /// Agv杞借揣淇℃伅鎺ュ彛
+        /// </summary>
+        /// <returns></returns>
+        [HttpGet]
+        [Route("ZcAgvVanAge")]
+        public OperateResult ZcAgvVanAge()
+        {
+            try
+            {
+                var chi = new SqlHelper<object>().GetInstance();
+                var newDb = chi.CopyNew();
+                //鏌ヨ鎵�湁姝e湪鎵ц鐨刟gv浠诲姟 骞朵笖鏈夎溅鍙�+                List<string> AgvTaskState = new List<string> { "鏈墽琛�, "宸叉帹閫�, "鎵ц涓�, "瀹屾垚", "鍙栨秷" };
+                var AgvtransportTask = newDb.Queryable<WMSTask>().Where(e => e.S_NOTE == "agv浠诲姟" && !AgvTaskState.Contains(e.S_B_STATE)).ToList();
+                var agv = newDb.Queryable<S_AGV_CONDITIONEntitys>().ToList();
+                //鏍规嵁杞﹀彿鎺掑簭
+                agv = agv.OrderBy(e => int.Parse(e.forkliftNo)).ToList();
+                AgvWcsCarryMsg agvWcsCar = new AgvWcsCarryMsg();
+                List<AgvCarryMsg> AgvMsgL = new List<AgvCarryMsg>();
+                foreach (var item in agv)
+                {
+                    var Model = new AgvCarryMsg();
+                    Model.forkliftNo = item.forkliftNo;
+                    Model.Agvstate_s = item.Agvstate_s;
+                    Model.Battery_Soc = item.Battery_Soc;
+                    Model.Pos_XY = $"{item.Pos_X},{item.Pos_Y}";
+                    var agvTask = AgvtransportTask.Find(e => e.S_EQ_NO == item.forkliftNo);
+                    if (agvTask != null)
+                    {
+                        Model.TrayCode = agvTask.S_CNTRS;
+                    }
+                    AgvMsgL.Add(Model);
+                }
+                var Wcs = BLLCreator.Create<WcsTask>().WcsdataBoard();
+                agvWcsCar.AgvMsgList = AgvMsgL;
+                agvWcsCar.WcsMsgList = Wcs;
+
+                return OperateResult.Succeed("", JsonConvert.SerializeObject(agvWcsCar));
+            }
+            catch (Exception ex)
+            {
+
+                return OperateResult.Error(ex.Message);
+            }
+
+        }
+        #endregion
+        #region MES淇敼鏅鸿兘绌烘《瀵瑰簲绌烘墭缂撳瓨鐐瑰閲�+        /// <summary>
+        /// MES淇敼鏅鸿兘绌烘《瀵瑰簲绌烘墭缂撳瓨鐐瑰閲�+        /// </summary>
+        /// <param name="LocationCode">婊℃墭鍏ュ簱鐐逛綅</param>
+        /// <returns></returns>
+        [HttpGet]
+        [Route("ZcMesUpdateLoNum")]
+        public OperateResult ZcMesUpdateLoNum(string LocationCode)
+        {
+            LogHelper.Info("MES", $"MES淇敼鏅鸿兘绌烘《瀵瑰簲绌烘墭缂撳瓨鐐瑰閲�鍏ュ弬:{LocationCode}");
+            var chi = new SqlHelper<object>().GetInstance();
+            var newDb = chi.CopyNew();
+            try
+            {
+                Location location2 = null;
+                List<ConfigValueList> ListValues = new List<ConfigValueList>();
+                var transport = newDb.Queryable<ConfigJsonEntitys>().Where(e => e.Autoindex == "鏅鸿兘绌烘《缂撳瓨")?.First();
+                if (transport != null)
+                {
+                    ListValues = JsonConvert.DeserializeObject<List<ConfigValueList>>(transport.TypeJson);
+                    if (ListValues.Count() > 0)
+                    {
+                        //鏌ヨ鍑哄搴旂殑绌烘墭缂撳瓨浣�+                        var ggf = ListValues.Find(e => e.LocationCode1 == LocationCode);
+                        if (ggf != null)
+                        {
+                            location2 = newDb.Queryable<Location>().Where(e => e.S_LOC_CODE == ggf.LocationCode2)?.First();
+                            if (location2 != null && (location2.N_CURRENT_NUM - 1 >= 0))
+                            {
+                                try
+                                {
+                                    newDb.BeginTran();
+                                    var I = newDb.Updateable<Location>().SetColumns(it => new Location()
+                                    {
+                                        T_MODIFY = DateTime.Now,
+                                        N_CURRENT_NUM = it.N_CURRENT_NUM - 1,
+                                        T_EMPTY_TIME = DateTime.Now
+                                    }).Where(x => x.S_LOC_CODE == location2.S_LOC_CODE).ExecuteCommand();
+                                    if (I == 0)
+                                    {
+                                        throw new Exception("鏇存柊缁堢偣褰撳墠瀹归噺-1澶辫触");
+                                    }
+                                    LogHelper.Info("MES", $"MES淇敼鏅鸿兘绌烘《瀵瑰簲绌烘墭缂撳瓨鐐瑰閲� 淇敼鎴愬姛 淇敼鐨勮揣浣嶄负{location2.S_LOC_CODE}");
+                                    newDb.CommitTran();
+                                    return OperateResult.Succeed();
+                                }
+                                catch (Exception ex)
+                                {
+                                    newDb.RollbackTran();
+                                    LogHelper.Info("MES", $"MES淇敼鏅鸿兘绌烘《瀵瑰簲绌烘墭缂撳瓨鐐瑰閲�{ex.Message}");
+                                    return OperateResult.Error(ex.Message);
+                                }
+                            }
+                            else
+                            {
+                                LogHelper.Info("MES", $"MES淇敼鏅鸿兘绌烘《瀵瑰簲绌烘墭缂撳瓨鐐瑰閲�{location2.N_CURRENT_NUM} 鍑忓幓1鍚庝笉鍦ㄥぇ浜�绛変簬0  鏁呰�涓嶅厑璁稿噺灏�);
+                                return OperateResult.Succeed();
+                            }
+                        }
+                    }
+                }
+                throw new Exception("鏈煡璇㈠埌 鏅鸿兘绌烘《缂撳瓨 鐩稿叧閰嶇疆淇℃伅");
+            }
+            catch (Exception ex)
+            {
+                LogHelper.Info("MES", $"MES淇敼鏅鸿兘绌烘《瀵瑰簲绌烘墭缂撳瓨鐐瑰閲�鎶ラ敊:{ex.Message}");
+                return OperateResult.Error(ex.Message);
+            }
+        }
+
+        #endregion
         #endregion
         [HttpGet]
         [Route("asss")]
-        public OperateResult asss(int T)
+        public OperateResult asss()
         {
             // List<OperateResult> nn = new List<OperateResult>();
             //var ca = BLLCreator.Create<IdGuid>().TaskNo("CK");
@@ -3355,7 +3488,7 @@
             //nn.Add(OperateResult.Succeed("", GGF2));
             //return nn;
             // BLLCreator.CreateSingleton<DingDingHelper>().button1_Click($"{Supplier.requestPk} {DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss")}");
-            // BLLCreator.CreateSingleton<DingDingHelper>().button1_Click($"{Supplier.requestPk}", Supplier.taskNo ?? "");
+            // BLLCreator.CreateSingleton<DingDingHelper>().ace();
 
             //    var gg = BLLCreator.CreateSingleton<DingDingHelper>().SendTextMessageToUser("WMS閫氱煡:搴撳瓨涓嶈冻", "kks53nw");
             //BLLCreator.CreateSingleton<DingDingHelper>().button1_Click($"娴嬭瘯   {DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss")} ");

--
Gitblit v1.9.1