From c8f338feee0b6003d8f069b1d37fd9b90dd1b7f4 Mon Sep 17 00:00:00 2001
From: 杨前锦 <1010338399@qq.com>
Date: 星期一, 07 七月 2025 17:31:38 +0800
Subject: [PATCH] 印尼佳通优化

---
 HH.WCS.Mobox3/HH.WCS.Mobox3.YNJT_BZP/core/WCSCore.cs |   66 +++++++++++++++++++++++++++-----
 1 files changed, 55 insertions(+), 11 deletions(-)

diff --git a/HH.WCS.Mobox3/HH.WCS.Mobox3.YNJT_BZP/core/WCSCore.cs b/HH.WCS.Mobox3/HH.WCS.Mobox3.YNJT_BZP/core/WCSCore.cs
index 8712fcb..5fac5a1 100644
--- a/HH.WCS.Mobox3/HH.WCS.Mobox3.YNJT_BZP/core/WCSCore.cs
+++ b/HH.WCS.Mobox3/HH.WCS.Mobox3.YNJT_BZP/core/WCSCore.cs
@@ -37,7 +37,6 @@
                         var wmsTask = WMSHelper.GetWmsTask(TN_Task.S_OP_CODE);
                         if (wmsTask != null && wmsTask.N_B_STATE < 2) 
                         {
-                            WCSHelper.AddActionRecord(model.No, model.State, model.ForkliftNo, model.ExtData);
                             if (model.State <= 7)
                             {
                                 //鏈変换鍔″彿璇锋眰
@@ -82,27 +81,30 @@
                                         {
                                             LogHelper.Info($"浠诲姟鍙凤細{TN_Task.S_CODE}锛孉GV浠诲姟瀹屾垚锛屼换鍔′俊鎭洖鎶T", "AGV");
                                             string shift = ApiHelper.getShift(DateTime.Now.TimeOfDay);
-                                            string ydate_shiftName = "";
+                                            string ydate= "";
                                             if (shift == "III")
                                             {
-                                                ydate_shiftName = DateTime.Now.AddDays(-1).ToString("yy/MM/dd") + "-" + shift;
+                                                ydate = DateTime.Now.AddDays(-1).ToString("dd/MM/yy");
                                             }
                                             else
                                             {
-                                                ydate_shiftName = DateTime.Now.ToString("yy/MM/dd") + "-" + shift;
+                                                ydate = DateTime.Now.ToString("dd/MM/yy");
                                             }
-                                            WmsToGtLokasiModel wmsToGtLokasiModel = new WmsToGtLokasiModel()
+                                            Trfloc trfloc = new Trfloc()
                                             {
-                                                ydate_shiftName = ydate_shiftName,
+                                                recid = 1,
+                                                ydate = ydate,
+                                                shift = shift,
                                                 bc_entried = cntrItemRels[0].S_CG_ID,
                                                 loc_from = TN_Task.S_START_LOC,
                                                 loc_to = TN_Task.S_END_LOC,
-                                                qty = 1,
+                                                qty = cntrItemRels[0].F_QTY,
                                                 lot = 1,
                                                 scantime = TN_Task.T_CREATE.ToString("yyyy-MM-dd HH:mm:ss"),
-                                                pic = model.ForkliftNo
+                                                pic = model.ForkliftNo,
+                                                last_modify_time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff")
                                             };
-                                            GtDispatch.agvTaskFeedback(wmsToGtLokasiModel);
+                                           
                                         }
                                         break;
                                     case 7:
@@ -152,7 +154,7 @@
                                 if (agvJBLoc != null && agvJBLoc.action == 1)
                                 {
                                     //鏄垯鏌ヨWCS鐨勪换鍔℃墽琛屾儏鍐�-                                    var wcsTask = WCSHelper.GetTaskBySrcNoAndScheduleType(TN_Task.S_OP_CODE, "WCS");
+                                    var wcsTask = WCSHelper.GetTaskBySrcNoAndScheduleType(TN_Task.S_OP_CODE, "WCS" , wmsTask.S_TYPE);
                                     if (wcsTask != null)
                                     {
                                         bool existAction = WCSHelper.CheckActionRecordExist(wcsTask.S_CODE, 7);
@@ -214,6 +216,8 @@
                                 //瀹夊叏璇锋眰绛�                                 TaskProcess.OperateReq(model.No, model.State, model.ForkliftNo, model.ExtData);
                             }
+
+                            WCSHelper.AddActionRecord(model.No, model.State, model.ForkliftNo, model.ExtData);
                         }
                     }
                 }
@@ -346,6 +350,7 @@
                         {
                             // 婊℃枡鎵樼洏鍏ュ簱
                             itemCode = cntrItemRels[0].S_ITEM_CODE;
+                            int itemType = cntrItemRels[0].N_PRODUCT_TYPE_CODE;
                             var endLoc = WMSHelper.GetInstockEndLoc(container.N_TYPE, null, 1, itemCode);
                             if (endLoc != null)
                             {
@@ -371,7 +376,6 @@
                                             return agvLoc;
                                         }
                                     }
-
                                     LogHelper.Info($"浠诲姟鍙凤細{taskNo},鍏ュ簱鎺ラ┏浣嶈揣浣嶉兘宸茬鐢�, "AGV");
                                 }
                                 else
@@ -409,6 +413,46 @@
                                         WMSHelper.updateEmptyTrayBuffer(emptyTray);
                                     }
                                 }
+                                else 
+                                {
+                                    var endLoc = WMSHelper.GetInstockEndLoc(container.N_TYPE, null, 1);
+                                    if (endLoc != null)
+                                    {
+                                        Location agvLoc = null;
+                                        var locCodes = Settings.getAgvJBLocList(endLoc.N_ROADWAY, 1);
+                                        if (locCodes.Count > 0)
+                                        {
+                                            foreach (var locCode in locCodes)
+                                            {
+                                                agvLoc = LocationHelper.GetLoc(locCode);
+                                                if (agvLoc != null && agvLoc.C_ENABLE == "Y")
+                                                {
+                                                    cst.S_END_LOC = agvLoc.S_CODE;
+                                                    cst.S_END_AREA = agvLoc.S_AREA_CODE;
+                                                    WCSHelper.UpdateTaskEnd(cst);
+
+                                                    mst.S_END_LOC = endLoc.S_CODE;
+                                                    mst.S_END_AREA = endLoc.S_AREA_CODE;
+                                                    WMSHelper.UpdateTaskEnd(mst);
+                                                    LocationHelper.LockLoc(endLoc.S_CODE, 1);
+                                                    
+                                                    LogHelper.Info($"浠诲姟鍙凤細{taskNo},AGV鐢宠鐨勭粓鐐癸細{agvLoc.S_CODE}", "AGV");
+                                                    return agvLoc;
+                                                }
+                                            }
+
+                                            LogHelper.Info($"浠诲姟鍙凤細{taskNo},鍏ュ簱鎺ラ┏浣嶈揣浣嶉兘宸茬鐢�, "AGV");
+                                        }
+                                        else
+                                        {
+                                            LogHelper.Info($"浠诲姟鍙凤細{taskNo},娌℃湁閰嶇疆绔嬪簱鎺ラ┏浣�, "AGV");
+                                        }
+                                    }
+                                    else
+                                    {
+                                        LogHelper.Info($"浠诲姟鍙凤細{taskNo},绔嬪簱娌℃湁婊¤冻鏉′欢鐨勭┖璐т綅", "AGV");
+                                    }
+                                }
                             }
                         }
                     }

--
Gitblit v1.9.1