From 13137e3acdb759d1541f754fba81c616f418e2a1 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期五, 26 一月 2024 09:57:16 +0800
Subject: [PATCH] 添加车轮数据、AGV接口等

---
 代码管理/WMS/WMS_Server/WIDESEA_WMS/Common/Task.cs |   52 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 52 insertions(+), 0 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/Task.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/Task.cs"
index 4233123..9ebde49 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/Task.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/Task.cs"
@@ -1,11 +1,13 @@
 锘縰sing System;
 using System.Collections.Generic;
 using System.Linq;
+using System.Reflection;
 using System.Text;
 using System.Threading.Tasks;
 using WIDESEA_Comm;
 using WIDESEA_Common;
 using WIDESEA_Core.EFDbContext;
+using WIDESEA_Core.FreeDB;
 using WIDESEA_Entity.DomainModels;
 using WIDESEA_WMS.IRepositories;
 using WIDESEA_WMS.Repositories;
@@ -14,6 +16,7 @@
 {
     public class Task
     {
+        static FreeDB freeDB = new FreeDB();
         /// <summary>
         /// 娣诲姞鍘嗗彶浠诲姟
         /// </summary>
@@ -54,5 +57,54 @@
             htyRepository.Add(agvtask_Hty, true);
             repository.Delete(task, true);
         }
+        /// <summary>
+        /// 搴撳瓨澶勭悊
+        /// </summary>
+        /// <param name="task"></param>
+        public static void Updateinventory(dt_agvtask task)
+        {
+            string[] bindSNs = task.bindSN.Split(",");
+            if (bindSNs.Length > 0)
+            {
+                var Materiel = QueryData.QueryMateriel(task.agv_materielid);
+                List<dt_inventory> inventorys = new List<dt_inventory>();
+                foreach (string bindSN in bindSNs)
+                {
+                    dt_inventory inventory = new dt_inventory()
+                    {
+                        SN = bindSN,//寰呭畬鍠�
+                    };
+                    inventorys.Add(inventory);
+                }
+                if (task.agv_tasktype == AGVTaskTypeEnum.TaskType_Inbound.ToString() || task.agv_tasktype == AGVTaskTypeEnum.TaskType_OutsourceInbound.ToString())
+                    freeDB.AddRange(inventorys);
+                else if (task.agv_tasktype == AGVTaskTypeEnum.TaskType_Outbound.ToString() || task.agv_tasktype == AGVTaskTypeEnum.TaskType_OutsourceOutbound.ToString())
+                    freeDB.Remove(inventorys);
+            }
+        }
+
+        /// <summary>
+        /// 鑷姩鏇存柊缂撳瓨鏋剁姸鎬�
+        /// </summary>
+        /// <param name="task"></param>
+        public static void AutoUpdateHCJState(dt_agvtask task)
+        {
+            VOLContext context = new VOLContext();
+            Idt_stationinfoRepository stationinfoRepository = new dt_stationinfoRepository(context);
+            var station1 = stationinfoRepository.FindFirst(t => t.stationCode == task.agv_fromaddress);
+            var station2 = stationinfoRepository.FindFirst(t => t.stationCode == task.agv_toaddress);
+
+            station2.quantity = station1.quantity;
+            station2.bindSN = station1.bindSN;
+            station2.location_state = LocationStateEnum.Stroge.ToString();
+            station2.tray_status = station1.tray_status;
+            stationinfoRepository.Update(station2, true);
+
+            station1.quantity = 0;
+            station1.bindSN = string.Empty;
+            station1.location_state = LocationStateEnum.Empty.ToString();
+            station1.tray_status = string.Empty;
+            stationinfoRepository.Update(station1, true);
+        }
     }
 }

--
Gitblit v1.9.3