From 3f016f3de352db04e5c2d99dae9e4b7472198359 Mon Sep 17 00:00:00 2001
From: Admin <Admin@ADMIN>
Date: 星期二, 23 十二月 2025 17:43:46 +0800
Subject: [PATCH] 最新
---
项目代码/WCS/WIDESEA_WCSServer/WIDESEA_WCS/Jobs/ConveyorLine/OutboundArea/OutboundAreaDispathAction.cs | 86 ++++++++++++++++++++++---------------------
1 files changed, 44 insertions(+), 42 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEA_WCSServer/WIDESEA_WCS/Jobs/ConveyorLine/OutboundArea/OutboundAreaDispathAction.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEA_WCSServer/WIDESEA_WCS/Jobs/ConveyorLine/OutboundArea/OutboundAreaDispathAction.cs"
index a422c67..4329c02 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEA_WCSServer/WIDESEA_WCS/Jobs/ConveyorLine/OutboundArea/OutboundAreaDispathAction.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEA_WCSServer/WIDESEA_WCS/Jobs/ConveyorLine/OutboundArea/OutboundAreaDispathAction.cs"
@@ -3,6 +3,7 @@
using System;
using System.Collections.Generic;
using System.Linq;
+using System.Reflection.Metadata;
using System.Text;
using System.Threading;
using WIDESEA_Common;
@@ -248,48 +249,25 @@
{
try
{
- string barcode = client.ReadValue(CLineInfoDBName.R_Line_Barcode.ToString(), ReInboundRequestStationNo).ToString();
+ int R_Line_PLCDispatch = int.Parse(client.ReadValue(CLineInfoDBName.W_Line_PLCDispatch.ToString(), ReInboundRequestStationNo).ToString());
bool load = bool.Parse(client.ReadValue(CLineInfoDBName.R_Line_LoadSleep.ToString(), ReInboundRequestStationNo).ToString());
- if (!string.IsNullOrEmpty(barcode) && !"0".Equals(barcode) && load)
+ if (R_Line_PLCDispatch ==1 && load)
{
- Dt_TaskWCSinfo wcsInfo = taskWCSinfoRepository.FindFirst(r => r.wcstask_barcode == barcode && r.wcstask_type == TaskType.TaskType_Empty_Pallet_Inbound.ToString());
- if (null == wcsInfo)
+ string barcode = client.ReadValue(CLineInfoDBName.R_Line_Barcode.ToString(), ReInboundRequestStationNo).ToString();
+ if (!string.IsNullOrEmpty(barcode) && !"0".Equals(barcode))
{
- //鑾峰彇杞﹁酱鍑哄簱
- List<Dt_TaskWCSinfo> executingTask = taskWCSinfoRepository.Find(r => (r.wcstask_type.Equals(TaskType.TaskType_Box_Pallet_Outbound.ToString()) ||
- r.wcstask_type.Equals(TaskType.TaskType_Empty_Pallet_Outbound.ToString())) && endStationNo.Contains(r.wcstask_endPoint));
-
- //鑾峰彇鏈夊灏戞潯鍑哄簱鐨勪换鍔�
- int LineExecucount = executingTask.Count(x => x.wcstask_state == TaskState.TaskState_Box_Out_Line_Executing.ToString());
- if (LineExecucount >= 4)
+ Dt_TaskWCSinfo wcsInfo = taskWCSinfoRepository.FindFirst(r => r.wcstask_barcode == barcode && r.wcstask_type == TaskType.TaskType_Empty_Pallet_Inbound.ToString());
+ if (null == wcsInfo)
{
- //鍒ゆ柇鏄惁鏈夊搴斿眰鐨勫嚭搴撲换鍔★紝
- //鐢宠鍏ュ簱浠诲姟
- WebResponseContent content = WMSApi.PostInboundRequstToWMS(barcode);
- if (content.Status)
- {
- WmsTaskInfo wmsTask = JsonConvert.DeserializeObject<WmsTaskInfo>(content.Data.ToString());
- wcsInfo = CommonFunction.AddWCSEmptyInboundTask(wmsTask, taskWCSinfoRepository);
- taskWCSinfoRepository.Add(wcsInfo, true);
- client.WriteValue(CLineInfoDBName.W_Line_PLCDispatch.ToString(), ReInboundRequestStationNo, 1);
-
+ //鑾峰彇杞﹁酱鍑哄簱
+ List<Dt_TaskWCSinfo> executingTask = taskWCSinfoRepository.Find(r => (r.wcstask_type.Equals(TaskType.TaskType_Box_Pallet_Outbound.ToString()) ||
+ r.wcstask_type.Equals(TaskType.TaskType_Empty_Pallet_Outbound.ToString())) && endStationNo.Contains(r.wcstask_endPoint));
- }
- else
+ //鑾峰彇鏈夊灏戞潯鍑哄簱鐨勪换鍔�
+ int LineExecucount = executingTask.Count(x => x.wcstask_state == TaskState.TaskState_Box_Out_Line_Executing.ToString());
+ if (LineExecucount >= 4)
{
- client.WriteValue(CLineInfoDBName.W_Line_PLCDispatch.ToString(), ReInboundRequestStationNo, 2);
- throw new Exception("鍏ュ簱鐢宠澶辫触:" + content.Message);
-
- }
-
- }
- else
- {
- //鍒ゆ柇鏈夊灏戞潯鍦ㄧ紦瀛樻灦鐨�
- int RGV_Finishedcount = executingTask.Count(x => x.wcstask_state != TaskState.TaskState_Box_Out_Line_Executing.ToString()
- && x.wcstask_state != TaskState.TaskState_Assigned.ToString());
- if (RGV_Finishedcount == 0)
- {
+ //鍒ゆ柇鏄惁鏈夊搴斿眰鐨勫嚭搴撲换鍔★紝
//鐢宠鍏ュ簱浠诲姟
WebResponseContent content = WMSApi.PostInboundRequstToWMS(barcode);
if (content.Status)
@@ -297,24 +275,48 @@
WmsTaskInfo wmsTask = JsonConvert.DeserializeObject<WmsTaskInfo>(content.Data.ToString());
wcsInfo = CommonFunction.AddWCSEmptyInboundTask(wmsTask, taskWCSinfoRepository);
taskWCSinfoRepository.Add(wcsInfo, true);
- client.WriteValue(CLineInfoDBName.W_Line_PLCDispatch.ToString(), ReInboundRequestStationNo, 1);
-
+ client.WriteValue(CLineInfoDBName.W_Line_PLCDispatch.ToString(), ReInboundRequestStationNo, 2);
}
else
{
- client.WriteValue(CLineInfoDBName.W_Line_PLCDispatch.ToString(), ReInboundRequestStationNo, 2);
throw new Exception("鍏ュ簱鐢宠澶辫触:" + content.Message);
-
}
-
+
+ }
+ else
+ {
+ //鍒ゆ柇鏈夊灏戞潯鍦ㄧ紦瀛樻灦鐨�
+ int RGV_Finishedcount = executingTask.Count(x => x.wcstask_state != TaskState.TaskState_Box_Out_Line_Executing.ToString()
+ && x.wcstask_state != TaskState.TaskState_Assigned.ToString());
+ if (RGV_Finishedcount == 0)
+ {
+ //鐢宠鍏ュ簱浠诲姟
+ WebResponseContent content = WMSApi.PostInboundRequstToWMS(barcode);
+ if (content.Status)
+ {
+ WmsTaskInfo wmsTask = JsonConvert.DeserializeObject<WmsTaskInfo>(content.Data.ToString());
+ wcsInfo = CommonFunction.AddWCSEmptyInboundTask(wmsTask, taskWCSinfoRepository);
+ taskWCSinfoRepository.Add(wcsInfo, true);
+ client.WriteValue(CLineInfoDBName.W_Line_PLCDispatch.ToString(), ReInboundRequestStationNo, 2);
+ }
+ else
+ {
+ throw new Exception("鍏ュ簱鐢宠澶辫触:" + content.Message);
+ }
+
+ }
}
}
-
+ }
+ else
+ {
+ throw new Exception("鍏ュ簱鐢宠澶辫触:璇诲彇鍒扮殑绌烘墭鐩樻潯鐮佷负绌猴紝璇诲彇鍐呭锛�"+ barcode);
}
}
}
catch (Exception ex)
{
+ client.WriteValue(CLineInfoDBName.W_Line_PLCDispatch.ToString(), ReInboundRequestStationNo, 3);
Console.Out.WriteLine(DateTime.Now + ex.Message);
}
}
--
Gitblit v1.9.3