From ceb82ce60d984e2a9457502e74ec12b6800d26ef Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期一, 27 五月 2024 08:21:24 +0800
Subject: [PATCH] 托盘数量可修改

---
 代码管理/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/StationTask.cs |   57 +++++++--------------------------------------------------
 1 files changed, 7 insertions(+), 50 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 dffe3ee..14a2b4f 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 && x.processCode == "17").FirstOrDefault();
+                    var work = workinfoRepository.Find(x => x.workOrder == item.Number && x.drawingNo == item.stationType && x.heatID == item.heatNumber && x.processCode == "17").FirstOrDefault();
                     if (work == null)
                     {
                         item.remark = "瑙﹀彂鍏ュ簱浠诲姟,浣嗘湭鎵惧埌宸ュ崟淇℃伅锛�";
@@ -65,58 +65,16 @@
 
                     dt_stationinfo TargetLocation = null;
                     string tasktype = "";
-                    if (item.quantity == 5 /*|| CompeletedNum == 0*/)
+
+                    //if (item.quantity == 5)
+                    if (item.quantity == work.stackNoRange)
                     {
-
-
-                        if (/*(mesinfo.quantity <= 50 &&*/ !string.IsNullOrEmpty(work.area) || item.stationCode.Contains("3"))
-                        {
-                            //todo 瀵绘壘鍙斁璐у鍗忔斁璐у彴
+                        if (!string.IsNullOrEmpty(work.area) || item.stationCode.Contains("3"))
                             tasktype = "TaskType_OutsourceInbound";
-                            TargetLocation = GetEmptyLocation(stationinfoRepository);
-
-                        }
                         else
-                        {
-                            //todo:  璋冪敤WMS鎺ュ彛鍒涘缓浠诲姟
                             tasktype = "TaskType_Inbound";
-                            TargetLocation = GetLocation.GetEmptyLocation(stationinfoRepository, work, item);
-                        }
-                        if (TargetLocation != null)
-                        {
-                            dt_agvtask agvtask = new dt_agvtask()
-                            {
-                                agv_fromaddress = item.stationCode,
-                                agv_id = Guid.NewGuid(),
-                                agv_tasknum = IdenxManager.GetTaskNo("KH-", "WMS"),
-                                agv_grade = 1,
-                                agv_createtime = DateTime.Now,
-                                agv_taskstate = "Create",
-                                agv_materielid = item.stationType,
-                                agv_qty = item.quantity,
-                                agv_tasktype = tasktype,
-                                agv_toaddress = TargetLocation.stationCode,
-                                agv_userid = "绯荤粺",
-                                bindSN = item.bindSN,
-                                agv_worktype = Convert.ToInt32(work.processCode),
-                                agv_materbarcode = work.materialCode,
-                                agv_Traytype = item.tray_type,
-                                jobID = item.Number,
-                                agv_TrayStatus = item.tray_status
-                            };
-                            agvtaskRepository.Add(agvtask, true);
 
-                            item.location_state = LocationStateEnum.InBusy.ToString();
-                            stationinfoRepository.Update(item, true);
-
-                            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");
-                        }
+                        AGVTask.AddQueueTask(stationinfoRepository, agvtaskRepository, item, tasktype, work);
                     }
                 }
             }
@@ -124,7 +82,6 @@
             {
                 WriteDBLog.Error("鍒涘缓鍏ュ簱浠诲姟", $"閿欒淇℃伅锛� {ex.Message}", "PCS");
             }
-
         }
 
         /// <summary>
@@ -400,7 +357,7 @@
             if (!Pipeline_client.IsConnected) throw new Exception("涓庨摼鏉℃満杩炴帴瓒呮椂锛�");
             foreach (var item in target)
             {
-                TargetLocation = stationinfoRepository.Find(x => x.stationCode == item && x.location_state == "Empty" /*LocationStateEnum.Empty.ToString()*/ && x.enable).FirstOrDefault();
+                TargetLocation = stationinfoRepository.Find(x => x.stationCode == item && x.location_state == LocationStateEnum.Empty.ToString() && x.enable).FirstOrDefault();
 
                 var PalletSignal = Pipeline_client.ReadByOrder<Int16>("R_PalletSignal", item);//璇诲彇鎵樼洏淇″彿:1:鏈�,2鏃�
                 var MaterialSignal = Pipeline_client.ReadByOrder<Int16>("R_MaterialSignal", item);//璇诲彇璐х墿淇″彿:1:鏈�,2鏃�

--
Gitblit v1.9.3