From ad64301e659e774d09776d2123eb09300c789468 Mon Sep 17 00:00:00 2001
From: liuying <1427574514@qq.com>
Date: 周三, 27 11月 2024 17:23:31 +0800
Subject: [PATCH] 打印
---
SDA/iWareSda/SdaMainForm.cs | 216 +++++++++++++++++-------------------------------------
1 files changed, 68 insertions(+), 148 deletions(-)
diff --git a/SDA/iWareSda/SdaMainForm.cs b/SDA/iWareSda/SdaMainForm.cs
index fa08681..2b2bd52 100644
--- a/SDA/iWareSda/SdaMainForm.cs
+++ b/SDA/iWareSda/SdaMainForm.cs
@@ -32,16 +32,16 @@
private static IDictionary<string, string> realtimePlcValueDict_Srm = new Dictionary<string, string>();
/// <summary>
- /// RGV瀹炴椂PLC鍊煎瓧鍏�
+ /// Station瀹炴椂PLC鍊煎瓧鍏�
/// </summary>
- private static IDictionary<string, string> realtimePlcValueDict_Rgv = new Dictionary<string, string>();
+ private static IDictionary<string, string> realtimePlcValueDict_Station = new Dictionary<string, string>();
#region 鍙戦�乄CS蹇冭烦
/// <summary>
/// 鍙戦�佸爢鍨涙満鐨勫績璺�
/// </summary>
private List<Thread> SendStackerHeartToSrmThreads = new List<Thread>();
- private List<Thread> SendStackerHeartToRgvThreads = new List<Thread>();
+ private List<Thread> SendStackerHeartToStationThreads = new List<Thread>();
/// <summary>
/// 鍙戦�佽緭閫佺嚎鐨勫績璺�
/// </summary>
@@ -51,7 +51,7 @@
private List<Thread> GetSrmStateThreads = new List<Thread>();
- private List<Thread> GetRgvStateThreads = new List<Thread>();
+ private List<Thread> GetStationStateThreads = new List<Thread>();
private List<Thread> GetLineStateThreads = new List<Thread>();
#endregion
@@ -62,16 +62,16 @@
public static bool isShowPlcValue_Srm = false;
/// <summary>
- /// 鏄惁瑕佹樉绀哄疄鏃禦gv鐨凱LC鍊煎爢鍨涙満
+ /// 鏄惁瑕佹樉绀哄疄鏃禨tation鐨凱LC鍊煎爢鍨涙満
/// </summary>
- public static bool isShowPlcValue_Rgv = false;
+ public static bool isShowPlcValue_Station = false;
static string errorStr = string.Empty;
static string infoStr_ChangeHandshake = string.Empty;
static string errorStr_Line = string.Empty;
static string errorStr_Srm = string.Empty;
- static string errorStr_Rgv = string.Empty;
+ static string errorStr_Station = string.Empty;
static string infoStr_SaveLine = string.Empty;
static string infoStr_Connection = string.Empty;
@@ -89,9 +89,9 @@
InitializeComponent();
Control.CheckForIllegalCrossThreadCalls = false;
- this.lbl_Main1.Text = SysHelper.Language(WareSdaStruct.LanguageFlg, "娼嶆煷瑗挎腐鏁版嵁璁块棶鏈嶅姟", "Data service runing");
+ this.lbl_Main1.Text = SysHelper.Language(WareSdaStruct.LanguageFlg, "椴佷附鏈ㄤ笟鍖呰绾挎暟鎹闂湇鍔�", "Data service runing");
this.lbl_Main2.Text = SysHelper.Language(WareSdaStruct.LanguageFlg, "璇峰嬁鍏抽棴锛�", "Please do not close!");
- this.Text = SysHelper.Language(WareSdaStruct.LanguageFlg, "娼嶆煷瑗挎腐鏁版嵁璁块棶鏈嶅姟", "Data service");
+ this.Text = SysHelper.Language(WareSdaStruct.LanguageFlg, "椴佷附鏈ㄤ笟鍖呰绾挎暟鎹闂湇鍔�", "Data service");
this.tabPage_Main.Text = SysHelper.Language(WareSdaStruct.LanguageFlg, "鏈嶅姟", "Service");
}
@@ -107,14 +107,9 @@
try
{
#region 瀵瑰鍙戝竷WCF褰㈠紡鏁版嵁璁块棶鏈嶅姟
- var srmServiceHost = new ServiceHost(typeof(iWareSda.SrmService));
- srmServiceHost.Open();
- //var lineServiceHost = new ServiceHost(typeof(iWareSda.LineService));
- //lineServiceHost.Open();
-
- var rgvServiceHost = new ServiceHost(typeof(iWareSda.RgvService));
- rgvServiceHost.Open();
+ var StationServiceHost = new ServiceHost(typeof(iWareSda.StationService));
+ StationServiceHost.Open();
#endregion
@@ -140,91 +135,35 @@
#region 鐘舵�佷俊鎭幏鍙�
- //鑾峰彇鍫嗗灈鏈虹殑鐘舵�佷俊鎭�
- Srm_CacheEntity.DeviceObjs.ForEach(x =>
- {
- var thread = new Thread(new ParameterizedThreadStart(GetSrmInfo));
- thread.Name = string.Format("鑾峰彇鍫嗗灈鏈簕0}鐨勭姸鎬�", x.View.DeviceName);
- GetSrmStateThreads.Add(thread);
- StartThread(thread, x);
- });
- ////妯℃嫙娴嬭瘯
- //var y = Srm_CacheEntity.DeviceObjs[3];
- //var thread_test = new Thread(new ParameterizedThreadStart(GetSrmInfo));
- //thread_test.Name = string.Format("鑾峰彇鍫嗗灈鏈簕0}鐨勭姸鎬�", y.View.DeviceName);
- //GetSrmStateThreads.Add(thread_test);
- //StartThread(thread_test, y);
-
- //鑾峰彇Rgv鐨勭姸鎬佷俊鎭�
- Rgv_CacheEntity.DeviceObjs.ForEach(x =>
+ //鑾峰彇Station鐨勭姸鎬佷俊鎭�
+ Station_CacheEntity.DeviceObjs.ForEach(x =>
{
- var thread = new Thread(new ParameterizedThreadStart(GetRgvInfo));
- thread.Name = string.Format("鑾峰彇Rgv{0}鐨勭姸鎬�", x.View.DeviceName);
- GetRgvStateThreads.Add(thread);
+ var thread = new Thread(new ParameterizedThreadStart(GetStationInfo));
+ thread.Name = string.Format("鑾峰彇Station{0}鐨勭姸鎬�", x.View.DeviceName);
+ GetStationStateThreads.Add(thread);
StartThread(thread, x);
});
- /*
- Rgv_CacheEntity.DeviceObjs.ForEach(x =>
- {
- var thread = new Thread(new ParameterizedThreadStart(HandleRGVAckBug));
- thread.Name = string.Format("淇Rgv{0}鐨凙CK BUG", x.View.DeviceName);
- GetRgvStateThreads.Add(thread);
- StartThread(thread, x);
- });
- //*/
-
- ////鑾峰彇杈撻�佺嚎鐨勭姸鎬佷俊鎭�
- //HuscoLine_CacheEntity.DeviceObjs.ForEach(x =>
- //{
- // var thread = new Thread(new ParameterizedThreadStart(GetLineInfo));
- // thread.Name = string.Format("鑾峰彇杈撻�佺嚎{0}鐨勭姸鎬�", x.View.DeviceName);
- // GetLineStateThreads.Add(thread);
- // StartThread(thread, x);
- //});
#endregion
#region 璁惧鍙戦�佸績璺�
- //寮�鍚� 鍫嗗灈鏈� 蹇冭烦鐨勭嚎绋�
- Srm_CacheEntity.DeviceObjs.ForEach(x =>
+
+ //寮�鍚� Station 蹇冭烦鐨勭嚎绋�
+ Station_CacheEntity.DeviceObjs.ForEach(x =>
{
- var thread = new Thread(new ParameterizedThreadStart(SendStackerHeartToSrm));
- thread.Name = string.Format("鑷姩鍙戦�佸爢鍨涙満{0}蹇冭烦", x.View.DeviceName);
- SendStackerHeartToSrmThreads.Add(thread);
+ var thread = new Thread(new ParameterizedThreadStart(SendStackerHeartToStation));
+ thread.Name = string.Format("鑷姩鍙戦�丼tation{0}蹇冭烦", x.View.DeviceName);
+ SendStackerHeartToStationThreads.Add(thread);
StartThread(thread, x);
});
- //寮�鍚� Rgv 蹇冭烦鐨勭嚎绋�
- Rgv_CacheEntity.DeviceObjs.ForEach(x =>
- {
- var thread = new Thread(new ParameterizedThreadStart(SendStackerHeartToRgv));
- thread.Name = string.Format("鑷姩鍙戦�丷gv{0}蹇冭烦", x.View.DeviceName);
- SendStackerHeartToRgvThreads.Add(thread);
- StartThread(thread, x);
- });
- /*
- //寮�鍚� 杈撻�佺嚎 蹇冭烦鐨勭嚎绋�
- HuscoLine_CacheEntity.DeviceObjs.ForEach(x =>
- {
- var thread = new Thread(new ParameterizedThreadStart(SendStackerHeartToLine));
- thread.Name = string.Format("鑷姩鍙戦�佽緭閫佺嚎{0}蹇冭烦", x.View.DeviceName);
- SendStackerHeartToLineThreads.Add(thread);
- StartThread(thread, x);
- });
- //*/
#endregion
- #region UI鏄剧ず
-
- var treadShowUI = new Thread(ShowUI);
- treadShowUI.Start();
-
- #endregion
new Thread(DeleteData).Start();
//*/
@@ -492,16 +431,16 @@
#endregion
- #region Rgv
+ #region Station
#region 璁惧鐘舵�佷俊鎭�
/// <summary>
- /// 鑾峰彇 Rgv 鐨勭姸鎬佷俊鎭�
+ /// 鑾峰彇 Station 鐨勭姸鎬佷俊鎭�
/// </summary>
/// <param name="obj"></param>
- private void GetRgvInfo(object obj)
+ private void GetStationInfo(object obj)
{
- var s = (RgvEntity)obj;
+ var s = (StationEntity)obj;
if (s.plcService != null && !s.plcService.IsConnected)
{
s.plcService.Close();
@@ -514,8 +453,8 @@
s.InitData();
if (s.plcService == null || !s.plcService.IsConnected)
{
- errorStr_Rgv = "Rgv" + s.View.DeviceName + "杩炴帴宸叉柇寮�锛屾鍦ㄥ皾璇曟墦寮�銆傘�傘��";
- errorStr_Rgv = SysHelper.Language(WareSdaStruct.LanguageFlg, errorStr_Rgv, "Piler connection disconnected,waiting for reconnection ");
+ errorStr_Station = "Station" + s.View.DeviceName + "杩炴帴宸叉柇寮�锛屾鍦ㄥ皾璇曟墦寮�銆傘�傘��";
+ errorStr_Station = SysHelper.Language(WareSdaStruct.LanguageFlg, errorStr_Station, "Piler connection disconnected,waiting for reconnection ");
s.plcService.Close();
s.plcService.OpenService();
Thread.Sleep(100);
@@ -524,7 +463,7 @@
else
{
var s7 = s.plcService;
- var Rgv_db = s.DBBlockForWrite;
+ var Station_db = s.DBBlockForWrite;
s.SetPropertyValueForRead();
s.SetPropertyValueForWrite();
@@ -533,44 +472,44 @@
//s.View.BodyTestName = s.GetBodyTestName(s.View.r_S);
//s.View.StateName = s.GetStateName(s.View.R_State);
- if (SdaMainForm.isShowPlcValue_Rgv)
+ if (SdaMainForm.isShowPlcValue_Station)
{
- string dbValues = SdaHelper.GetStrShow<RgvView, RgvDBForWrite, RgvDBForRead>(s.View, s.DBBlockForWrite, s.DBBlockForRead, "", "", s.View.DeviceId, s.View.DeviceName);
- realtimePlcValueDict_Rgv[s.View.DeviceName] = dbValues;
+ string dbValues = SdaHelper.GetStrShow<StationView, StationDBForWrite, StationDBForRead>(s.View, s.DBBlockForWrite, s.DBBlockForRead, "", "", s.View.DeviceId, s.View.DeviceName);
+ realtimePlcValueDict_Station[s.View.DeviceName] = dbValues;
}
else
{
- realtimePlcValueDict_Rgv[s.View.DeviceName] = "";
+ realtimePlcValueDict_Station[s.View.DeviceName] = "";
}
- foreach (var item in s.View.R_RgvForReadCommList)
+ foreach (var item in s.View.R_StationForReadCommList)
{
//鍒ゆ柇濡傛灉ACK=1锛屽垯鍐欏叆STB涓�0
if (item.R_ACK == true)
{
- var writeObj = s.View.W_RgvForWriteCommList.Where(x => x.StationCode == item.StationCode).FirstOrDefault();
- var writeAddressObj = s.DBBlockForWrite.W_RgvForWriteCommList.Where(x => x.StationCode == item.StationCode).FirstOrDefault();
- MessageModel fr = s.plcService.WriteValuePoint(writeAddressObj.W_STP, false, writeObj.W_STP);
+ var writeObj = s.View.W_StationForWriteCommList.Where(x => x.StationCode == item.StationCode).FirstOrDefault();
+ var writeAddressObj = s.DBBlockForWrite.W_StationForWriteCommList.Where(x => x.StationCode == item.StationCode).FirstOrDefault();
+ MessageModel fr = null;
if (fr.result == false)
{
- Log4NetHelper.WriteErrorLog(LogType.SrmTheadService, "鑾峰彇 RGV鍜岃緭閫佺嚎 鐨勭姸鎬佷俊鎭椂锛屽垽鏂瑼CK=1锛屾洿鏂癝TB涓�0鏃堕敊璇�:" + fr.resMsg, null);
+ Log4NetHelper.WriteErrorLog(LogType.SrmTheadService, "鑾峰彇 Station鍜岃緭閫佺嚎 鐨勭姸鎬佷俊鎭椂锛屽垽鏂瑼CK=1锛屾洿鏂癝TB涓�0鏃堕敊璇�:" + fr.resMsg, null);
}
}
}
//璧嬪�兼姤璀�
//s.View.R_Line_WarningDBList = s.GetLineAlertDatas();
- s.View.R_Rgv_WarningDBList = s.GetRgvAlertDatas();
+ s.View.R_Station_WarningDBList = s.GetStationAlertDatas();
}
}
catch (Exception ex)
{
s.InitData();
- errorStr_Rgv = "GetRgvInfo鍑虹幇寮傚父:" + ex.Message;
- errorStr_Rgv = SysHelper.Language(WareSdaStruct.LanguageFlg, errorStr_Rgv,
- "GetRgvInfo throw exceptions: " + ex.Message);
+ errorStr_Station = "GetStationInfo鍑虹幇寮傚父:" + ex.Message;
+ errorStr_Station = SysHelper.Language(WareSdaStruct.LanguageFlg, errorStr_Station,
+ "GetStationInfo throw exceptions: " + ex.Message);
- Log4NetHelper.WriteErrorLog(LogType.RgvSdaService, "鑾峰彇 Rgv 鐨勭姸鎬佷俊鎭嚭鐜板紓甯�", ex);
+ Log4NetHelper.WriteErrorLog(LogType.StationSdaService, "鑾峰彇 Station 鐨勭姸鎬佷俊鎭嚭鐜板紓甯�", ex);
}
Thread.Sleep(1000);
}
@@ -582,26 +521,26 @@
#region 蹇冭烦鐩稿叧
/// <summary>
- /// 鍙戦�佺粰Rgv鐨勫績璺�
+ /// 鍙戦�佺粰Station鐨勫績璺�
/// </summary>
/// <param name="obj"></param>
- private void SendStackerHeartToRgv(object obj)
+ private void SendStackerHeartToStation(object obj)
{
bool handShakeValue = true;
while (true)
{
- var s = (RgvEntity)obj;
+ var s = (StationEntity)obj;
handShakeValue = !handShakeValue;
try
{
if (s.plcService != null && !s.plcService.IsConnected)
{
- errorStr_Rgv = SysHelper.Language(WareSdaStruct.LanguageFlg, "Rgv" + s.View.DeviceName + "杩炴帴宸叉柇寮�", "Piler connection disconnected ");
+ errorStr_Station = SysHelper.Language(WareSdaStruct.LanguageFlg, "Station" + s.View.DeviceName + "杩炴帴宸叉柇寮�", "Piler connection disconnected ");
Thread.Sleep(100);
continue;
}
- errorStr_Rgv = SysHelper.Language(WareSdaStruct.LanguageFlg, "Rgv" + s.View.DeviceName + "杩炴帴宸茶繛鎺ャ�傘�傘��", "Piler connection connected ");
+ errorStr_Station = SysHelper.Language(WareSdaStruct.LanguageFlg, "Station" + s.View.DeviceName + "杩炴帴宸茶繛鎺ャ�傘�傘��", "Piler connection connected ");
if (s.plcService != null && s.plcService.IsConnected)
{
MessageModel fr = s.plcService.WriteValuePoint(s.DBBlockForWrite.W_HandShake, handShakeValue, s.View.W_HandShake);
@@ -615,8 +554,8 @@
}
catch (Exception ex)
{
- errorStr_Rgv = SysHelper.Language(WareSdaStruct.LanguageFlg, "鍙戦�佸績璺崇粰Rgv鍑虹幇寮傚父銆傘�傘��" + ex.Message, "Send to stacker for heart beat throw expection: " + ex.Message);
- Log4NetHelper.WriteErrorLog(LogType.SdaService, "鍙戦�佺粰Rgv鐨勫績璺冲嚭鐜板紓甯�:" + ex.Message, ex);
+ errorStr_Station = SysHelper.Language(WareSdaStruct.LanguageFlg, "鍙戦�佸績璺崇粰Station鍑虹幇寮傚父銆傘�傘��" + ex.Message, "Send to stacker for heart beat throw expection: " + ex.Message);
+ Log4NetHelper.WriteErrorLog(LogType.SdaService, "鍙戦�佺粰Station鐨勫績璺冲嚭鐜板紓甯�:" + ex.Message, ex);
}
}
}
@@ -675,7 +614,7 @@
//line.View.R_WarningDBList = line.GetAlertDatas();
string dbValues = SdaHelper.GetStrShow<HuscoLineView, HuscoLineDBForWrite, HuscoLineDBForRead>(line.View, line.DBBlockForWrite, line.DBBlockForRead, HuscoLine_CacheEntity.W_DBHeader, HuscoLine_CacheEntity.R_DBHeader, line.View.DeviceId, line.View.DeviceName);
- this.tb_Rgv.Text = dbValues + " \r\n AssemblyBarcode:" + _AssemblyBarcode + " \r\n CoilCode:" + _CoilCode + " \r\n";
+ this.tb_Station.Text = dbValues + " \r\n AssemblyBarcode:" + _AssemblyBarcode + " \r\n CoilCode:" + _CoilCode + " \r\n";
//棣栧厛璇诲彇鎻℃墜淇″彿鏄惁鏄痶rue锛屽彧鏈塼rue 鐨勬椂鍊欐墠鑳芥嬁鍊�
var isRead = Convert.ToInt32(line.plcService.ReadValuePoint("", handShareAddress, typeof(Int32)));
@@ -796,32 +735,13 @@
Thread.Sleep(1000);
try
{
- foreach (var item in realtimePlcValueDict_Srm)
- {
- if (item.Key == "Srm1")
- {
- this.tb_Srm1.Text = item.Value;
- }
- else if (item.Key == "Srm2")
- {
- this.tb_Srm2.Text = item.Value;
- }
- else if (item.Key == "Srm3")
- {
- this.tb_Srm3.Text = item.Value;
- }
- else if (item.Key == "Srm4")
- {
- this.tb_Srm4.Text = item.Value;
- }
- }
- var str_rgv = "";
- foreach (var item in realtimePlcValueDict_Rgv)
+ var str_Station = "";
+ foreach (var item in realtimePlcValueDict_Station)
{
- str_rgv += item.Value;
+ str_Station += item.Value;
}
- this.tb_Rgv.Text = str_rgv;
+ this.tb_Station.Text = str_Station;
}
catch (Exception)
@@ -856,7 +776,7 @@
{
realtimePlcValueDict_Srm.Add(x.View.DeviceName, "");
});
- Rgv_CacheEntity.DeviceObjs.ForEach(x =>
+ Station_CacheEntity.DeviceObjs.ForEach(x =>
{
realtimePlcValueDict_Srm.Add(x.View.DeviceName, "");
});
@@ -1012,36 +932,36 @@
private void button2_Click_1(object sender, EventArgs e)
{
- isShowPlcValue_Rgv = true;
+ isShowPlcValue_Station = true;
}
private void button1_Click_1(object sender, EventArgs e)
{
- isShowPlcValue_Rgv = false;
+ isShowPlcValue_Station = false;
}
/*
/// <summary>
- /// 涓�鐩村瓨鍦≧GVACK淇″彿鏃犳硶娓呴櫎鐨凚UG锛屽仛涓畾鏃舵竻闄ょ殑绾跨▼
+ /// 涓�鐩村瓨鍦⊿tationACK淇″彿鏃犳硶娓呴櫎鐨凚UG锛屽仛涓畾鏃舵竻闄ょ殑绾跨▼
/// </summary>
- public void HandleRGVAckBug(object obj)
+ public void HandleStationAckBug(object obj)
{
- var s = (RgvEntity)obj;
+ var s = (StationEntity)obj;
while (true)
{
Thread.Sleep(1000);
- bool finishRgv = (bool)s.plcService.ReadValuePoint(s.DBBlockForRead.R_RGV_Finish, typeof(bool));
- bool finisAck = (bool)s.plcService.ReadValuePoint(s.DBBlockForWrite.W_RGV_FinishACK, typeof(bool));
+ bool finishStation = (bool)s.plcService.ReadValuePoint(s.DBBlockForRead.R_Station_Finish, typeof(bool));
+ bool finisAck = (bool)s.plcService.ReadValuePoint(s.DBBlockForWrite.W_Station_FinishACK, typeof(bool));
- if (finisAck == false && finishRgv == true)
+ if (finisAck == false && finishStation == true)
{
Thread.Sleep(10000);//濡傛灉10绉掕繕娌℃竻闄わ紝灏卞己鍒舵竻闄�
- finishRgv = (bool)s.plcService.ReadValuePoint(s.DBBlockForRead.R_RGV_Finish, typeof(bool));
- finisAck = (bool)s.plcService.ReadValuePoint(s.DBBlockForWrite.W_RGV_FinishACK, typeof(bool));
- if (finisAck == false && finishRgv == true)
+ finishStation = (bool)s.plcService.ReadValuePoint(s.DBBlockForRead.R_Station_Finish, typeof(bool));
+ finisAck = (bool)s.plcService.ReadValuePoint(s.DBBlockForWrite.W_Station_FinishACK, typeof(bool));
+ if (finisAck == false && finishStation == true)
{
- s.plcService.WriteValuePoint(s.DBBlockForWrite.W_RGV_FinishACK, true, s.View.W_RGV_FinishACK);//閲嶅彂涓�娆� 20230503 鐜嬮摦
+ s.plcService.WriteValuePoint(s.DBBlockForWrite.W_Station_FinishACK, true, s.View.W_Station_FinishACK);//閲嶅彂涓�娆� 20230503 鐜嬮摦
}
}
--
Gitblit v1.9.3