From d2cef0150abe6d14cbfa60c8845795b91a1f5f97 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期六, 20 四月 2024 19:50:53 +0800
Subject: [PATCH] 添加入库触发条件,修改上料区任务逻辑

---
 代码管理/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/StationTask.cs |   40 +++++++++++++++++++---------------------
 1 files changed, 19 insertions(+), 21 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/StationTask.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/StationTask.cs"
index 8880cd9..dffe3ee 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/StationTask.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/StationTask.cs"
@@ -54,7 +54,7 @@
 
                     //鏍规嵁涓嬫枡鍙g殑缁戝畾淇℃伅鏌ヨ瀵瑰簲宸ュ崟锛屾娴嬫宸ュ崟鏄惁宸插畬鎴�  瀹屾垚鍗冲彲灏嗗叾閫佸叆搴�
 
-                    var work = workinfoRepository.Find(x => x.workOrder == item.Number && x.drawingNo == x.drawingNo && x.heatID == item.heatNumber).FirstOrDefault();
+                    var work = workinfoRepository.Find(x => x.workOrder == item.Number && x.drawingNo == x.drawingNo && x.heatID == item.heatNumber && x.processCode == "17").FirstOrDefault();
                     if (work == null)
                     {
                         item.remark = "瑙﹀彂鍏ュ簱浠诲姟,浣嗘湭鎵惧埌宸ュ崟淇℃伅锛�";
@@ -63,29 +63,13 @@
                         continue;
                     }
 
-                    //dt_mes_head mesinfo = mes_HeadRepository.Find(x => x.workOrder == item.Number).FirstOrDefault();
-                    //if (mesinfo == null)
-                    //{
-                    //    item.remark = "瑙﹀彂鍏ュ簱浠诲姟,浣嗘湭鎵惧埌宸ュ崟澶磋〃锛�";
-                    //    item.location_state = LocationStateEnum.Abnormal.ToString();
-                    //    stationinfoRepository.Update(item, true);
-                    //    continue;
-                    //    //throw new Exception("鏈壘鍒板伐鍗曞ご琛紒宸ュ崟鍙凤細" + item.Number);
-                    //}
-                    //var dt_Geometry_Data = PipelineJob.QueryMateriel(mesinfo.drawingNo);
-                    //var dt_Geometry_Data1 = PipelineJob.QueryMateriel1(mesinfo.drawingNo);
-
-                    //int CompeletedNum = Convert.ToInt32(mesinfo.quantity) - Convert.ToInt32(mesinfo.finishNum);
-
-
-
                     dt_stationinfo TargetLocation = null;
                     string tasktype = "";
-                    if (item.quantity == 5 /*|| CompeletedNum == 0*/)  //寰幆璇诲彇杞﹁疆鏁颁负5鎴栬�呰鍗曞凡瀹屾垚鏁伴噺鐨勪笅鏂欏彛    鈫掑伐鍗曚汉宸ュ叧闂殑宸ュ崟
+                    if (item.quantity == 5 /*|| CompeletedNum == 0*/)
                     {
 
 
-                        if (/*(mesinfo.quantity <= 50 && string.IsNullOrEmpty(mesinfo.area)) ||*/ item.stationCode.Contains("3"))    //灏忎簬50浠剁洿鎺ュ嚭搴�
+                        if (/*(mesinfo.quantity <= 50 &&*/ !string.IsNullOrEmpty(work.area) || item.stationCode.Contains("3"))
                         {
                             //todo 瀵绘壘鍙斁璐у鍗忔斁璐у彴
                             tasktype = "TaskType_OutsourceInbound";
@@ -97,7 +81,6 @@
                             //todo:  璋冪敤WMS鎺ュ彛鍒涘缓浠诲姟
                             tasktype = "TaskType_Inbound";
                             TargetLocation = GetLocation.GetEmptyLocation(stationinfoRepository, work, item);
-                            //TargetLocation = GetEmptyLocation(stationinfoRepository, mesinfo, item, CompeletedNum, dt_Geometry_Data == null ? dt_Geometry_Data1.e : dt_Geometry_Data.e);
                         }
                         if (TargetLocation != null)
                         {
@@ -129,6 +112,7 @@
                             TargetLocation.location_state = LocationStateEnum.InBusy.ToString();
                             TargetLocation.stationType = agvtask.agv_materielid;
                             TargetLocation.heatNumber = item.heatNumber;
+                            TargetLocation.billetID = item.billetID;
                             TargetLocation.Number = agvtask.jobID;
                             stationinfoRepository.Update(TargetLocation, true);
                             WriteDBLog.Success("鍒涘缓鍏ュ簱浠诲姟", $"浠诲姟缂栧彿锛歿agvtask.agv_tasknum}", "PCS");
@@ -392,7 +376,21 @@
             }
             return TargetLocation;
         }
-
+        /// <summary>
+        /// 涓存椂浣跨敤
+        /// </summary>
+        /// <param name="stationinfoRepository"></param>
+        /// <returns></returns>
+        public static dt_stationinfo GetEmptyLocation1(Idt_stationinfoRepository stationinfoRepository)
+        {
+            return stationinfoRepository.Find(x => x.line == 1 && x.location_state == LocationStateEnum.Empty.ToString() && x.enable && x.area == "3").OrderBy(x => x.column).FirstOrDefault();//琛屽拰鍖哄煙闇�鍐欐
+        }
+        /// <summary>
+        /// 鍘诲鍗�
+        /// </summary>
+        /// <param name="stationinfoRepository"></param>
+        /// <returns></returns>
+        /// <exception cref="Exception"></exception>
         public static dt_stationinfo GetEmptyLocation(Idt_stationinfoRepository stationinfoRepository)
         {
             dt_stationinfo TargetLocation = null;

--
Gitblit v1.9.3