From c2bed218cc875e59fff53ef43a187d5934bdf35c Mon Sep 17 00:00:00 2001
From: chengsc <11752@DESKTOP-DS49RCP>
Date: 星期日, 27 四月 2025 14:59:20 +0800
Subject: [PATCH] 修改优化问题

---
 Admin.NET/WCS.Application/OpenApi/OpenApi.cs |   54 ++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 52 insertions(+), 2 deletions(-)

diff --git a/Admin.NET/WCS.Application/OpenApi/OpenApi.cs b/Admin.NET/WCS.Application/OpenApi/OpenApi.cs
index 62c9a4d..7d62853 100644
--- a/Admin.NET/WCS.Application/OpenApi/OpenApi.cs
+++ b/Admin.NET/WCS.Application/OpenApi/OpenApi.cs
@@ -17,6 +17,8 @@
 using Newtonsoft.Json.Linq;
 using SqlSugar;
 using NewLife.Reflection;
+using static SKIT.FlurlHttpClient.Wechat.Api.Models.CustomServiceKfSessionGetWaitCaseResponse.Types;
+using WCS.Application.Util;
 
 namespace WCS.Application;
 
@@ -42,7 +44,54 @@
         _taskService = taskService;
     }
 
-    // <summary>
+    /// <summary>
+    /// 娴嬭瘯鍒嗛厤浠诲姟璺緞
+    /// </summary>
+    /// <param name="models">浠诲姟淇℃伅</param>
+    /// <returns>鍙嶉淇℃伅</returns>
+    [AllowAnonymous]
+    public async Task AddAssignTasks(ResponseTasksModel models)
+    {
+        // 楠岃瘉浠诲姟鏄惁宸插瓨鍦�
+        var taskInfo = await _db.Queryable<WcsTask>().FirstAsync(w => w.TaskNo == models.TaskNo);
+        if (taskInfo == null)
+        {
+            throw Oops.Bah("浠诲姟:" + models.TaskNo + ";涓嶅瓨鍦�!");
+        }
+        var data1 = FourWayCarUtil.GetCarPath("090601", "080401");
+        if (data1 == null) //|| data1.Count == 0
+        {
+            throw Oops.Bah("鍒嗛厤璺緞涓嶅瓨鍦�!");
+        }
+
+        // 鏍规嵁浠诲姟鐘舵�� 琛ュ厖璧峰缁撴潫鑺傜偣鐘舵��
+        var data2 = FourWayCarUtil.GetCarPathUp(data1, 1);
+        var path = "";
+        var executionPath1 = "";
+        foreach (var item in data1)
+        {
+            //璺緞鑺傜偣
+            var pathXYZ = item.X.ToString().PadLeft(2, '0') + item.Y.ToString().PadLeft(2, '0') + item.Z.ToString().PadLeft(2, '0') + item.NodeCom.ToString();
+            path += pathXYZ + ";";
+            if (item.IsSendPlc)
+            {
+                executionPath1 += pathXYZ + ";";
+            }
+        }
+        // 鎻掑叆鍥涘悜杞︿换鍔¤〃
+        var carTask1 = new WcsCarTasks()
+        {
+            TaskNo = taskInfo.TaskNo,
+            PreId = "",
+            ExecutionPath = executionPath1,
+            Path = path,
+            CarNo = "",
+            Status = TaskStatusEnum.Wait
+        };
+        var i = _db.Insertable(carTask1).ExecuteCommand();
+        Console.WriteLine(""+i);
+    }
+
     /// WCS鎺ュ彈WMS涓嬪彂鐨勪换鍔�(澶�
     /// 鏉′换鍔�)
     /// <param name="models">浠诲姟淇℃伅</param>
@@ -115,8 +164,9 @@
         var taskAdd = new WcsTask()
         {
             TaskNo = models.TaskNo,
-            TaskType = TaskTypeEnum.Out,
+            TaskType = (TaskTypeEnum?)int.Parse(models.TaskType),
             Status = TaskStatusEnum.Wait,
+            Type = models.Type,
             Levels = 999,
             Origin = "WMS",
             StartRoadway = models.StartRoadway,

--
Gitblit v1.8.0