From c119ea611cc0e3704cc3be71b5009795323982be Mon Sep 17 00:00:00 2001
From: zxx <Zxx@HanInfo>
Date: 星期五, 04 七月 2025 11:35:04 +0800
Subject: [PATCH] xiaomi

---
 HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/process/TaskProcess.cs |   71 +++++++++++++++++++++++++++++++++++
 1 files changed, 70 insertions(+), 1 deletions(-)

diff --git a/HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/process/TaskProcess.cs b/HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/process/TaskProcess.cs
index d2a5cdf..286d391 100644
--- a/HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/process/TaskProcess.cs
+++ b/HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/process/TaskProcess.cs
@@ -27,6 +27,8 @@
 using Newtonsoft.Json.Linq;
 using S7.Net;
 using System.Threading.Tasks;
+using HH.WCS.XiaoMi.LISTA.dispatch;
+using static HH.WCS.XiaoMi.LISTA.dispatch.RcsHelper;
 
 namespace HH.WCS.XiaoMi.process
 {
@@ -368,7 +370,56 @@
             else { result = true; }
             return result;
         }
+        //灏忕背鎺ㄩ�浠诲姟
+        internal static bool SendXmTask(WCSTask mst)
+        {
+            var result = false;
+            var taskState = mst.N_B_STATE;
+            if (taskState == 0)
+            {
+                Console.WriteLine($"浠诲姟mst {JsonConvert.SerializeObject(mst)}");
+                LogHelper.Info($"浠诲姟mst {JsonConvert.SerializeObject(mst)}", "浠诲姟");
+                var startLoc = LocationHelper.GetLoc(mst.S_START_LOC);
+                var endLoc = LocationHelper.GetLoc(mst.S_END_LOC);
+                if (startLoc != null && endLoc != null)
+                {
+                    string src = $"\"src\":\"{startLoc.S_AGV_SITE}\",";
+                    string dst = $"\"dst\":\"{endLoc.S_AGV_SITE}\"";
+                    string carrier_type_id = $"\"carrier_type_id\":\"-99\"";
+                    string parmeS = "{";
+                    string parmeD = "}";
+                    string parme = parmeS + src + dst + carrier_type_id + parmeD;
+                    
+                    LogHelper.Info($"鎺ㄩ�浠诲姟鍙傛暟{parme}", "浠诲姟");
+                    AntsTaskModel model = new AntsTaskModel();
+                    model.order_name = mst.S_CODE;
+                    model.priority = 1;
+                    model.dead_line = DateTime.Now.ToString();
+                    model.ts_name = mst.S_TYPE;
 
+                    var res = RcsHelper.CreateAntsOrder(model);
+                    if (res)
+                    {
+                        //鏇存柊浠诲姟鐘舵�
+                        mst.N_B_STATE = 1;
+                        //mst.S_EQ_TASK_CODE = res.ToString();
+                        WCSHelper.UpdateStatus(mst);
+                        WCSHelper.UpdateEQNo(mst);
+                        ////鎺ㄩ�鎴愬姛锛屼慨鏀逛换鍔$姸鎬�+                        //TaskHelper.UpdateStatus(mst, "宸叉帹閫�);
+                        ////鎺ㄩ�鎴愬姛锛屼慨鏀瑰浗鑷狪D
+                        //TaskHelper.UpdateGzId(mst, res);
+                        LogHelper.Info($"浠诲姟mst {mst.S_CODE}鎺ㄩ�鎴愬姛", "浠诲姟");
+                        result = true;
+                    }
+
+                }
+
+            }
+
+            else { result = true; }
+            return result;
+        }
 
         /// <summary>
         /// 鍒涘缓鎼繍浠诲姟
@@ -390,6 +441,24 @@
 
 
             var res = WCSHelper.CreateTask(taskNo, start.Trim(), end.Trim(), taskType, priority, trayCodes, trayCarryCount, startLayer, endLayer);
+            if (res)
+            {
+                result = true;
+                //浠诲姟鍒涘缓鎴愬姛锛岃捣鐐硅揣浣嶅嚭搴撻攣瀹氾紝缁堢偣璐т綅鍏ュ簱閿佸畾
+                LocationHelper.LockLoc(start, 2);
+                LocationHelper.LockLoc(end, 1);
+            }
+            return result;
+        }
+        //灏忕背澶т欢
+        public static bool CreateTransportDj(string start, string end, string taskType, string cntrs,string orderName, int startLayer, int endLayer, int trayCarryCount = 1, int priority = 1)
+        {
+            var result = false;
+            var trayCodes = cntrs;
+            var taskNo = DateTime.Now.Ticks.ToString();
+
+
+            var res = WCSHelper.CreateTaskDj(taskNo, start.Trim(), end.Trim(), taskType, priority, trayCodes, orderName,trayCarryCount, startLayer, endLayer);
             if (res)
             {
                 result = true;
@@ -957,7 +1026,7 @@
                 var locCntrRel = db.Queryable<LocCntrRel>().Where(a => a.S_LOC_CODE == startLoc.S_CODE).First();
                 //鍒涘缓浠诲姟
                 LogHelper.Info($"鍒涘缓浠诲姟 璧风偣:{startLoc.S_CODE}缁堢偣:{endLocStr}", model.ts_name);
-                var res = TaskProcess.CreateTransport(startLoc.S_CODE, endLocStr, model.ts_name, locCntrRel.S_CNTR_CODE, 1, 1);
+                var res = TaskProcess.CreateTransportDj(startLoc.S_CODE, endLocStr, model.ts_name, locCntrRel.S_CNTR_CODE, model.order_name, 1, 1);
                 if (!res)
                 {
                     return new TaskResponse

--
Gitblit v1.9.1