From eb69f07e9241fc1dd6e28d931608ef6e3616846e Mon Sep 17 00:00:00 2001
From: zhaowc <526854230@qq.com>
Date: 星期日, 16 二月 2025 16:35:29 +0800
Subject: [PATCH] 修改与小车入库接口

---
 Admin.NET/WCS.Application/OpenApi/DemoOpenApi.cs |   96 +++++++++++++++++++++++++++++++++++++----------
 1 files changed, 75 insertions(+), 21 deletions(-)

diff --git a/Admin.NET/WCS.Application/OpenApi/DemoOpenApi.cs b/Admin.NET/WCS.Application/OpenApi/DemoOpenApi.cs
index 312164b..8890284 100644
--- a/Admin.NET/WCS.Application/OpenApi/DemoOpenApi.cs
+++ b/Admin.NET/WCS.Application/OpenApi/DemoOpenApi.cs
@@ -415,16 +415,37 @@
             string str = JsonConvert.SerializeObject(models);
             Log.Information("鎺ユ敹WMS鍏ュ簱鏀捐揣纭锛屾斁璐у彛锛�" + models.Port+"鍏ュ簱鍙�");
 
+            var portno = "";
+            switch (models.Port)
+            {
+                case "033":
+                    portno = "33";
+                    break;
+                case "039":
+                    portno = "39";
+                    break;
+                case "044":
+                    portno = "44";
+                    break;
+                case "051":
+                    portno = "51";
+                    break;
+            }
+
             //妫�娴嬪叆搴撳彛鐘舵�侊紝120涓哄彲鏀撅紝鍗犵敤鍒欎慨鏀逛负130
-            WcsDeviceDto modDevice = new WcsDeviceDto();
-            var modPosTask = modDevice.listStation.FirstOrDefault(m => m.Text == "PLC娴佺▼瀛�");
-            var plcConn = modDevice.PLCUtil;
-            var (res1, val) = plcConn.GetPlcDBValue(modPosTask.PosType, modDevice.DbNumber, modPosTask.PlcPos);
+
+            WcsDeviceDto mod = new WcsDeviceDto();
+            var plcConn = mod.PLCUtil;
+            //鑾峰彇宸ヤ綅鐐逛綅淇℃伅
+            var listPlcDevice = _db.Queryable<WcsDevice>().Where(s => s.LedIP != null && s.StationNum == portno).First();
+            var modDevice = _db.Queryable<WcsPosition>().Where(s => s.StationNum == portno && s.Text == "PLC娴佺▼瀛�").First();
+
+            var (res1, val) = plcConn.GetPlcDBValue(modDevice.PosType, listPlcDevice.DbNumber, modDevice.PlcPos);
             if (val.ToString() == "120")
             {
-                modPosTask = modDevice.listStation.FirstOrDefault(m => m.Text == "WCS娴佺▼瀛�");
                 //璇诲彇鎴愬姛鍚庡啓鍏�130
-                var ret = plcConn.SetPlcDBValue(modPosTask.PosType, modDevice.DbNumber, modPosTask.PlcPos, "130");//鍗犵敤姝ゅ伐浣�
+                modDevice = _db.Queryable<WcsPosition>().Where(s => s.StationNum == portno && s.Text == "WCS娴佺▼瀛�").First();
+                var ret = plcConn.SetPlcDBValue(modDevice.PosType, listPlcDevice.DbNumber, modDevice.PlcPos, "130");//鍗犵敤姝ゅ伐浣�
                 if (ret.IsSucceed)
                 {
                     //鍥炰紶WMS鍙斁淇″彿
@@ -454,16 +475,32 @@
             string str = JsonConvert.SerializeObject(models);
             Log.Information("鎺ユ敹WMS鍏ュ簱鏀捐揣纭锛屾斁璐у彛锛�" + models.Port + "鍏ュ簱鍙�");
 
-            WcsDeviceDto modDevice = new WcsDeviceDto();
-            var plcConn = modDevice.PLCUtil;
+            var portno = "";
+            switch (models.Port)
+            {
+                case "033":
+                    portno = "33";
+                    break;
+                case "039":
+                    portno = "39";
+                    break;
+                case "044":
+                    portno = "44";
+                    break;
+                case "051":
+                    portno = "51";
+                    break;
+            }
+
+            WcsDeviceDto mod = new WcsDeviceDto();
+            var plcConn = mod.PLCUtil;
             //鑾峰彇宸ヤ綅鐐逛綅淇℃伅
-            //modDevice = ......=models.Port
-            var modPosTask = modDevice.listStation.FirstOrDefault(m => m.Text == "浠诲姟鍙�");
-            plcConn.SetPlcDBValue(modPosTask.PosType, modDevice.DbNumber, modPosTask.PlcPos, models.TaskNo);//鍐欏叆浠诲姟鍙�
-                                                                                                    //
-            modPosTask = modDevice.listStation.FirstOrDefault(m => m.Text == "WCS娴佺▼瀛�");
-            
-            var ret = plcConn.SetPlcDBValue(modPosTask.PosType, modDevice.DbNumber, modPosTask.PlcPos, "140");//寮�濮嬫斁璐�
+            var listPlcDevice = _db.Queryable<WcsDevice>().Where(s=>s.LedIP != null && s.StationNum == portno).First();
+            var modDevice = _db.Queryable<WcsPosition>().Where(s => s.StationNum == portno && s.Text == "浠诲姟鍙�").First();
+            plcConn.SetPlcDBValue(modDevice.PosType, listPlcDevice.DbNumber, modDevice.PlcPos, models.TaskNo);//鍐欏叆浠诲姟鍙�
+                                                                                                              //
+            modDevice = _db.Queryable<WcsPosition>().Where(s => s.StationNum == portno && s.Text == "WCS娴佺▼瀛�").First();
+            var ret = plcConn.SetPlcDBValue(modDevice.PosType, listPlcDevice.DbNumber, modDevice.PlcPos, "140");//鍐欏叆寮�濮嬫斁璐т俊鍙�
             if (ret.IsSucceed)
             {
                 //鍥炰紶WMS鏀捐揣淇″彿
@@ -494,13 +531,30 @@
             string str = JsonConvert.SerializeObject(models);
             Log.Information("鎺ユ敹WMS鍏ュ簱鏀捐揣纭锛屾斁璐у彛锛�" + models.Port + "鍏ュ簱鍙�");
 
-            WcsDeviceDto modDevice = new WcsDeviceDto();
-            //鑾峰彇宸ヤ綅鐐逛綅淇℃伅
-            //modDevice = ......=models.Port
+            var portno = "";
+            switch (models.Port)
+            {
+                case "033":
+                    portno = "33";
+                    break;
+                case "039":
+                    portno = "39";
+                    break;
+                case "044":
+                    portno = "44";
+                    break;
+                case "051":
+                    portno = "51";
+                    break;
+            }
 
-            var modPosTask = modDevice.listStation.FirstOrDefault(m => m.Text == "WCS娴佺▼瀛�");
-            var plcConn = modDevice.PLCUtil;
-            var ret = plcConn.SetPlcDBValue(modPosTask.PosType, modDevice.DbNumber, modPosTask.PlcPos, "140");//寮�濮嬫斁璐�
+            WcsDeviceDto mod = new WcsDeviceDto();
+            var plcConn = mod.PLCUtil;
+            //鑾峰彇宸ヤ綅鐐逛綅淇℃伅
+            var listPlcDevice = _db.Queryable<WcsDevice>().Where(s => s.LedIP != null && s.StationNum == portno).First();
+            var modDevice = _db.Queryable<WcsPosition>().Where(s => s.StationNum == portno && s.Text == "WCS娴佺▼瀛�").First();
+
+            var ret = plcConn.SetPlcDBValue(modDevice.PosType, listPlcDevice.DbNumber, modDevice.PlcPos, "160");//鏀惧畬鎴�
             if (ret.IsSucceed)
             {
                 //鍥炰紶WMS鏀捐揣淇″彿

--
Gitblit v1.8.0