From 1a39a01ff6d99ab4c98e7243aa0d3e0a264008ad Mon Sep 17 00:00:00 2001
From: zhaowc <526854230@qq.com>
Date: 星期日, 16 二月 2025 09:02:33 +0800
Subject: [PATCH] 修改测试出现的问题

---
 Admin.NET/WCS.Application/PLC/PLCService.cs |   64 +++++++++++++++++++++++++++----
 1 files changed, 55 insertions(+), 9 deletions(-)

diff --git a/Admin.NET/WCS.Application/PLC/PLCService.cs b/Admin.NET/WCS.Application/PLC/PLCService.cs
index 11c55a9..42f3e22 100644
--- a/Admin.NET/WCS.Application/PLC/PLCService.cs
+++ b/Admin.NET/WCS.Application/PLC/PLCService.cs
@@ -1749,8 +1749,53 @@
 
 
                     #endregion
+                    
                 }
                 break;
+            #region 灏忚溅鍙斁淇″彿
+            case "150":
+                { // 鑾峰彇宸ヤ綅浠诲姟鍙蜂俊鎭�
+                    var strMsg = "";
+                    var http = new HttpService();
+                    // 鑾峰彇鎵樼洏浠诲姟鍙�
+                    var modPosTask = modDevice.listStation.FirstOrDefault(m => m.Text == "浠诲姟鍙�");
+                    var (res1, val) = plcConn.GetPlcDBValue(modPosTask.PosType, modDevice.DbNumber, modPosTask.PlcPos);
+                    if (res1.IsSucceed)
+                    {
+                        string tasknoVal = val.ToString();
+                        var modTask = _db.Queryable<WcsTask>().First(m => m.Status == TaskStatusEnum.Doing && m.TaskNo == tasknoVal && m.IsDelete == false);
+                        if (modTask == null)
+                        {
+                            //璇诲彇鎴愬姛鍚庡啓鍏�151
+                            var ret = plcConn.SetPlcDBValue(modDevice.PosType, modDevice.DbNumber, modDevice.WcsPos, "151");//鏀跺埌鍙斁淇″彿鍚庡啓鍏�151
+                            if (ret.IsSucceed)
+                            {
+                                //鍥炰紶WMS鍙斁淇″彿
+                                strMsg = http.RequesContinueAgv(res1.ToString(),modTask.StationNum);
+                                if (!strMsg.Contains("-1"))
+                                {
+                                    // 鎻掑叆浠诲姟鏄庣粏 
+                                    var modInsertTaskMonitor = new WcsTaskMonitor()
+                                    {
+                                        PlcId = modDevice.Id,
+                                        PlcName = modDevice.Text,
+                                        InteractiveMsg = $"鍐欏叆鎸囦护151锛歿modDevice.StationNum}宸ヤ綅鍙帴鍙桝GV鏀捐揣鍏ュ簱",
+                                        PalletNo = modTask.PalletNo,
+                                        Status = TaskStatusEnum.Complete,
+                                        StartLocat = modDevice.StationNum
+                                    };
+                                    // 鎻掑叆浜や簰鏃ュ織
+                                    _db.Insertable(modInsertTaskMonitor).ExecuteCommand();
+                                }
+                            }
+                            break;
+                        }
+                    }
+                     //
+
+                }
+                break;
+            #endregion
 
             default: break;
         }
@@ -2237,6 +2282,7 @@
                             }
 
                             var rowCount = _db.Updateable(boxInfo).ExecuteCommand();
+                            Log.Information(string.Format("鎻掔爜鎴愬姛锛岀鐮佹槸锛�"+ boxNo, modDevice.StationNum));
                             if (rowCount > 0)
                             {
                                 // 鎻掔爜鎴愬姛
@@ -2381,12 +2427,12 @@
                                     }
                                     break;
                                 }
+                                // 缁勬墭鎴愬姛鍚庡皢淇℃伅瀛樺埌log琛�
                                 string sqlStr = $"insert into WCSBoxInfoLog select * from WCSBoxInfo where IsDelete=0 and PalletNo='{palletNo}'";
                                 int insertCount = _db.Ado.ExecuteCommand(sqlStr);
                                 if (insertCount > 0)
                                 {
-                                    // 缁勬墭鎴愬姛鍚庡皢淇℃伅瀛樺埌log琛�
-                                    string sqlStr2 = $"delete from WCSBoxInfoLog where  IsDelete=0 and PalletNo='{palletNo}'";
+                                    string sqlStr2 = $"delete from WCSBoxInfo where  IsDelete=0 and PalletNo='{palletNo}'";
                                     _db.Ado.ExecuteCommand(sqlStr2);
                                 }
                                 
@@ -2487,7 +2533,7 @@
     private static void StackingRobot(WcsDeviceDto modDevice)
     {
         var plcConn = modDevice.PLCUtil;
-        if (modDevice.DbNumber == "DB131" && modDevice.DbNumber == "DB132" && modDevice.DbNumber == "DB133" && modDevice.DbNumber == "DB134")
+        if (modDevice.DbNumber == "DB131" || modDevice.DbNumber == "DB132" || modDevice.DbNumber == "DB133" || modDevice.DbNumber == "DB134")
         {
             switch (modDevice.Value.ToString())
             {
@@ -2507,7 +2553,7 @@
                         // 鏍规嵁浠诲姟鍙疯幏鍙栦换鍔′俊鎭�
                         if (res1.IsSucceed)
                         {
-                            var modTask = _db.Queryable<WcsTask>().First(m => m.Status == TaskStatusEnum.Doing && m.TaskNo == tasknoVal && m.EndLocate == "009" && m.IsDelete == false);
+                            var modTask = _db.Queryable<WcsTask>().First(m => m.TaskNo == tasknoVal && m.EndLocate == "009" && m.IsDelete == false);
                             if (modTask == null)
                             {
                                 Log.Error(string.Format($"鍑哄簱浠诲姟鏈笅鍙戯紝璇蜂汉宸ュ鐞嗭紝鏃犳硶鎷嗗灈锛�"));
@@ -2517,22 +2563,22 @@
                             //閫氳繃浠诲姟鍙峰拰鎵樼洏鍙峰悜WMS鐢宠姝ゆ墭鐩樼殑鎷嗗灈淇℃伅
                             var http = new HttpService();
                             RequestBoxInfoCheckAll tasklist = http.RequestBoxCheckinfo(palletVal, tasknoVal);
-                            if (!tasklist.Success.Contains("-1"))
+                            if (tasklist.Success != -1)
                             {
                                 //鑾峰彇鎷嗗灈鐗╂枡鍝佺(闇�瑕佸鍔犵墿鏂欏垽鏂紝鍚屼竴涓墿鏂欏彿鍙兘浼氬嚭鐜颁笉鍚岀殑鐮佸灈瑙勫垯)
-                                var pz = _db.Queryable<WcsMateialPzInfo>().First(m => m.SkuNo == tasklist.list[0].SkuNo);
+                                var pz = _db.Queryable<WcsMateialPzInfo>().First(m => m.SkuNo == tasklist.data.SkuNo);
                                 //涓嬪彂鎷嗘墭瑙勬牸锛屾媶绠辨暟鍜屾墭鐩樹笂鎬荤鏁帮紙涓嶇粦瀹氭満鍣ㄤ汉锛屾媶鍨涗换鍔′俊鎭彧涓嬪彂涓�娆★級
                                 // 缁橮LC鍐欏叆浠诲姟鏁版嵁
                                 var listResult = new List<Result>();
                                 // 鑾峰彇鎵樼洏瑙勫垯
                                 var Standard = modDevice.listStation.FirstOrDefault(m => m.Text == "瑙勬牸");
-                                listResult.Add(plcConn.SetPlcDBValue(Standard.PosType, modDevice.DbNumber, Standard.PlcPos, tasklist.list[0].Standard));
+                                listResult.Add(plcConn.SetPlcDBValue(Standard.PosType, modDevice.DbNumber, Standard.PlcPos, pz.PZNo));
                                 //鎶撶鏁�
                                 var qty = modDevice.listStation.FirstOrDefault(m => m.Text == "鎷嗙鏁伴噺");
-                                listResult.Add(plcConn.SetPlcDBValue(qty.PosType, modDevice.DbNumber, qty.PlcPos, tasklist.list[0].Qty.ToString()));
+                                listResult.Add(plcConn.SetPlcDBValue(qty.PosType, modDevice.DbNumber, qty.PlcPos, tasklist.data.Qty.ToString()));
                                 //鎬荤鏁�
                                 var qtycount = modDevice.listStation.FirstOrDefault(m => m.Text == "鎬荤鏁�");
-                                listResult.Add(plcConn.SetPlcDBValue(qtycount.PosType, modDevice.DbNumber, qtycount.PlcPos, tasklist.list[0].QtyCount.ToString()));
+                                listResult.Add(plcConn.SetPlcDBValue(qtycount.PosType, modDevice.DbNumber, qtycount.PlcPos, tasklist.data.QtyCount.ToString()));
 
 
                                 // 鏄惁鍐欏叆鎴愬姛

--
Gitblit v1.8.0