From 50884f67cc2f622cd9fce212739e07270eb719b5 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周六, 23 11月 2024 15:52:15 +0800
Subject: [PATCH] 22
---
CC/iWareSql/DataAccess/TaskHandler.cs | 22 +++++++++++
CC/iWareCC_ASRS/ThreadService/02_BZ39工位(补板后工位)/DataProcess_RobotBuffer_ModeChange.cs | 59 +++++++++++++++++++++--------
CC/iWareCC_ASRS/FormCC.cs | 2
3 files changed, 65 insertions(+), 18 deletions(-)
diff --git a/CC/iWareCC_ASRS/FormCC.cs b/CC/iWareCC_ASRS/FormCC.cs
index 5f5600d..b23ffc4 100644
--- a/CC/iWareCC_ASRS/FormCC.cs
+++ b/CC/iWareCC_ASRS/FormCC.cs
@@ -237,7 +237,7 @@
new Thread(DeleteData).Start();
- new Thread(LineInSacnResult.HandlerLineInSacnResult).Start();
+ //new Thread(LineInSacnResult.HandlerLineInSacnResult).Start();
diff --git "a/CC/iWareCC_ASRS/ThreadService/02_BZ39\345\267\245\344\275\215\357\274\210\350\241\245\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/DataProcess_RobotBuffer_ModeChange.cs" "b/CC/iWareCC_ASRS/ThreadService/02_BZ39\345\267\245\344\275\215\357\274\210\350\241\245\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/DataProcess_RobotBuffer_ModeChange.cs"
index 082f504..57420bc 100644
--- "a/CC/iWareCC_ASRS/ThreadService/02_BZ39\345\267\245\344\275\215\357\274\210\350\241\245\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/DataProcess_RobotBuffer_ModeChange.cs"
+++ "b/CC/iWareCC_ASRS/ThreadService/02_BZ39\345\267\245\344\275\215\357\274\210\350\241\245\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/DataProcess_RobotBuffer_ModeChange.cs"
@@ -42,30 +42,55 @@
using (WmsDBModel wmsDB = new WmsDBModel())
{
var rbRunMode = wmsDB.wms_rbline_runmode.FirstOrDefault();
- if (rbRunMode.LineRunMode == (int)RbRunModeEnum.鍑哄簱妯″紡)
- {
- SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_ModeChange = $"宸茬粡鏄嚭搴撴ā寮忎簡,姝ゆ寰幆缁撴潫";
- continue;
- }
- rbRunMode.LineRunMode = (int)RbRunModeEnum.鍑哄簱妯″紡;
- rbRunMode.LineRunModeName = RbRunModeEnum.鍑哄簱妯″紡.ToString();
- rbRunMode.UpdateTime = DateTime.Now;
- //鎺ㄩ�佺粰PLC鍒囨崲妯″紡
- using (StationServiceClient client = new StationServiceClient())
- {
- var res = await client.ChangeModeAsync((int)EDevice.Station, (int)RbRunModeEnum.鍑哄簱妯″紡, rgvLocation);
- if (!res.result)
+ if (TaskHandler.ValidateNoFinishOutTaskForRobotBuffer(wmsDB))
+ {//涓嶅瓨鍦�
+ rbRunMode.LineRunMode = (int)RbRunModeEnum.鍏ュ簱妯″紡;
+ rbRunMode.LineRunModeName = RbRunModeEnum.鍏ュ簱妯″紡.ToString();
+ rbRunMode.UpdateTime = DateTime.Now;
+
+ //鎺ㄩ�佺粰PLC鍒囨崲妯″紡
+ using (StationServiceClient client = new StationServiceClient())
{
- SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_ModeChange = $"{rgvLocation.ToString()}-鎺ㄩ�佺粰PLC鍒囨崲妯″紡 澶辫触,ChangeModeAsync 杩斿洖:{res.resMsg}";
+ var res = await client.ChangeModeAsync((int)EDevice.Station, (int)RbRunModeEnum.鍏ュ簱妯″紡, rgvLocation);
+ if (!res.result)
+ {
+ SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_ModeChange = $"{rgvLocation.ToString()}-鎺ㄩ�佺粰PLC鍒囨崲妯″紡 澶辫触,ChangeModeAsync 杩斿洖:{res.resMsg}";
+ continue;
+ }
+ else
+ {
+ Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-鎺ㄩ�佺粰PLC鍒囨崲妯″紡 鎴愬姛,ChangeModeAsync锛屽弬鏁�: 绔欑偣{rgvLocation}");
+ }
+ }
+ FormCC.IsAllowRunOutMode = false;
+ }
+ else
+ {//瀛樺湪
+ if (rbRunMode.LineRunMode == (int)RbRunModeEnum.鍑哄簱妯″紡)
+ {
+ SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_ModeChange = $"宸茬粡鏄嚭搴撴ā寮忎簡,姝ゆ寰幆缁撴潫";
continue;
}
- else
+ rbRunMode.LineRunMode = (int)RbRunModeEnum.鍑哄簱妯″紡;
+ rbRunMode.LineRunModeName = RbRunModeEnum.鍑哄簱妯″紡.ToString();
+ rbRunMode.UpdateTime = DateTime.Now;
+
+ //鎺ㄩ�佺粰PLC鍒囨崲妯″紡
+ using (StationServiceClient client = new StationServiceClient())
{
- Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-鎺ㄩ�佺粰PLC鍒囨崲妯″紡 鎴愬姛,ChangeModeAsync锛屽弬鏁�: 绔欑偣{rgvLocation}");
+ var res = await client.ChangeModeAsync((int)EDevice.Station, (int)RbRunModeEnum.鍑哄簱妯″紡, rgvLocation);
+ if (!res.result)
+ {
+ SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_ModeChange = $"{rgvLocation.ToString()}-鎺ㄩ�佺粰PLC鍒囨崲妯″紡 澶辫触,ChangeModeAsync 杩斿洖:{res.resMsg}";
+ continue;
+ }
+ else
+ {
+ Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-鎺ㄩ�佺粰PLC鍒囨崲妯″紡 鎴愬姛,ChangeModeAsync锛屽弬鏁�: 绔欑偣{rgvLocation}");
+ }
}
}
-
wmsDB.SaveChanges();
}
diff --git a/CC/iWareSql/DataAccess/TaskHandler.cs b/CC/iWareSql/DataAccess/TaskHandler.cs
index 9a4526a..18ac5e0 100644
--- a/CC/iWareSql/DataAccess/TaskHandler.cs
+++ b/CC/iWareSql/DataAccess/TaskHandler.cs
@@ -36,5 +36,27 @@
}
+ /// <summary>
+ /// 楠岃瘉 鏈哄櫒浜虹紦瀛樺矝鏄惁瀛樺湪 鏈粨鏉� 鐨勫嚭搴撲换鍔�
+ /// </summary>
+ /// <param name="wmsDB"></param>
+ /// <returns>true:涓嶅瓨鍦� false锛氬瓨鍦�</returns>
+ public static bool ValidateNoFinishOutTaskForRobotBuffer(WmsDBModel.WmsDBModel wmsDB)
+ {
+ var isExist = wmsDB.wms_rbline_task.Where(x => x.TaskStatus != (int)TaskStatusEnum.宸插畬鎴�
+ && x.TaskStatus != (int)TaskStatusEnum.宸插彇娑�
+ && (
+ x.RbTaskType == (int)RbTaskTypeEnum.鍑哄簱浠诲姟
+ )
+ ).ToList();
+
+ if (isExist?.Count() > 0)
+ {
+ return false;
+ }
+ return true;
+ }
+
+
}
}
\ No newline at end of file
--
Gitblit v1.9.3