From 8a9ca879c839467051db1e5d3e7986537ac5afce Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周五, 06 9月 2024 13:54:55 +0800
Subject: [PATCH] 测量岛数据展示
---
DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/DataCaptureHandler_OP0501.cs | 69 ++++++++++++++++++++++++----------
1 files changed, 49 insertions(+), 20 deletions(-)
diff --git a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/DataCaptureHandler_OP0501.cs b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/DataCaptureHandler_OP0501.cs
index 9e5649a..042948c 100644
--- a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/DataCaptureHandler_OP0501.cs
+++ b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/DataCaptureHandler_OP0501.cs
@@ -59,6 +59,8 @@
// plcService.OpenService();
//}
+ string lastHandlerWorkPileIDForOP0501 = "";//鏈�鍚庝竴娆″鐞嗙殑宸ヤ欢鍙�
+
while (true)
{
ThreadStatusMonitor threadStatusMonitor = new ThreadStatusMonitor();
@@ -91,7 +93,7 @@
var path = ConfigHelper.GetConfigString("WorkPeiceIDPath");//鎵撶爜鏈烘墦鐮佷簩缁寸爜璺緞
//鎵弿鍏变韩鐩綍骞跺皢鏂扮殑鏂囦欢鎵弿杩斿洖 涓�鑸妭鎷嶅湪15绉掑乏鍙筹紙鍙互纭涓�涓嬶級
//鎵弿淇敼鏃堕棿鍦ㄤ笂娆℃壂鎻忔椂闂翠箣鍓�10绉掑埌褰撳墠鏃堕棿鐨勪箣闂寸殑鏂囦欢
- var dataTime = CommonManager.Instance.CheackPath(Environment.CurrentDirectory + "\\LastModifyTime\\OP05-LastScapTime.txt", 4,-10);
+ var dataTime = CommonManager.Instance.CheackPath(Environment.CurrentDirectory + "\\LastModifyTime\\OP05-LastScapTime.txt", 4, -10);
var scapEndTime = DateTimeHelper.GetDateTime();
var newFiles = FileHelper.DetectNewFilesCSV(path, 60, Convert.ToDateTime(dataTime), scapEndTime);
@@ -104,7 +106,7 @@
threadStatusMonitor.Threadlastmodifytime = DateTime.Now;
Log4NetHelper.WriteInfoLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure),
$"{_dataCaptureConfig.WorkingProcedure}宸ュ簭璇诲彇宸ユ帶鏈轰腑浜岀淮鐮佷俊鎭�,鏂囦欢鍚�:{file.FullName}");
- DataTable dt = null;
+ DataTable dt = null;
dt = CSVHelper.ReadCSV(file.FullName);
if (dt == null)
{
@@ -166,9 +168,9 @@
}
Log4NetHelper.WriteInfoLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure),
- $"{_dataCaptureConfig.WorkingProcedure}宸ュ簭璇诲彇宸ユ帶鏈轰腑浜岀淮鐮佷俊鎭�,宸ヤ欢鏈�鏂版椂闂�:{(cache==null?"鏃犵紦瀛�":cache.ToString())}");
+ $"{_dataCaptureConfig.WorkingProcedure}宸ュ簭璇诲彇宸ユ帶鏈轰腑浜岀淮鐮佷俊鎭�,宸ヤ欢鏈�鏂版椂闂�:{(cache == null ? "鏃犵紦瀛�" : cache.ToString())}");
for (int i = dt.Rows.Count - 1; i >= 0; i--)
- {
+ {//闄嶅簭锛屽嵆浼樺厛璇诲彇鏈�鍚庝竴鏉℃暟鎹�
string timeValue = " ";
try
{
@@ -183,14 +185,15 @@
{
if (j == 0)
{
- if(currrentTime>DateTimeHelper.GetDateTime().AddHours(-10))
+ if (currrentTime > DateTimeHelper.GetDateTime().AddHours(-10))
{
lasttime = currrentTime;
}
}
var oldTime = DateTime.Now.AddMinutes(-10);
- if (currrentTime <= oldTime)
- {
+ // if (currrentTime <= oldTime)
+ if (lastHandlerWorkPileIDForOP0501 == Convert.ToString(dt.Rows[i]["鎵撴爣鍐呭"]))
+ {//濡傛灉excel閲岀殑鏃堕棿瑕佹瘮 褰撳墠鍓�10鍒嗛挓鏃堕棿瑕佹棭锛岄偅涔堟垜灏卞拷鐣ヤ笉澶勭悊銆�
break;
}
filteredRows[j] = dt.Rows[i];
@@ -198,8 +201,9 @@
else
{
var cacheTime = Convert.ToDateTime(cache);
- if (currrentTime <= cacheTime)
- {
+ //if (currrentTime <= cacheTime)
+ if (lastHandlerWorkPileIDForOP0501 == Convert.ToString(dt.Rows[i]["鎵撴爣鍐呭"]))
+ {//濡傛灉excel閲岀殑鏃堕棿瑕佹瘮 鎴戠紦瀛樹腑鐨勬椂闂磋鏃╋紝閭d箞鎴戝氨蹇界暐涓嶅鐞嗐��
break;
}
filteredRows[j] = dt.Rows[i];
@@ -221,7 +225,7 @@
}
}
- filteredRows = filteredRows.Where(item=>item!=null).ToArray();
+ filteredRows = filteredRows.Where(item => item != null).ToArray();
// 璁剧疆缂撳瓨鍊�
DateTime absoluteExpiration = DateTime.Now.AddDays(30);
TimeSpan slidingExpiration = TimeSpan.FromMinutes(20);
@@ -244,7 +248,7 @@
dataTime = file.LastAccessTime.ToString();
writer.Write(dataTime);
}
- Log4NetHelper.WriteInfoLog(LogType.PLCOP05, $"璇诲彇鍒皗filteredRows.Count()}琛屾暟鎹紝鏃堕棿鑼冨洿鏄瘂filteredRows[j-1]["鏃堕棿"]}-{filteredRows[0]["鏃堕棿"]}");
+ Log4NetHelper.WriteInfoLog(LogType.PLCOP05, $"璇诲彇鍒皗filteredRows.Count()}琛屾暟鎹紝鏃堕棿鑼冨洿鏄瘂filteredRows[j - 1]["鏃堕棿"]}-{filteredRows[0]["鏃堕棿"]}");
}
//// 宸ヤ欢鍙凤紙浜岀淮鐮佸�硷級
@@ -266,16 +270,19 @@
//wplog.EquipmentID = WorkingProcedure;
wplog.Remarks = "cs";
wplog.MonitoringPoint = DataCapturePointCode;
+ //wplog.CreatedUserName = DataCapturePointCode;
+ SystemBussinessHelper.SetWorkPieceLogMiddleForCreatedUserName(ref wplog, DataCapturePointCode, DataCapturePointCname);
wplog.CreatedTime = DateTimeHelper.GetDateTime();
- wplog.CreatedUserName = DataCapturePointCode;
wplog.UpdatedTime = DateTimeHelper.GetDateTime();
- wplog.UpdatedUserName = Environment.MachineName+"鑷姩" + Thread.CurrentThread.ManagedThreadId.ToString();
+ wplog.UpdatedUserName = Environment.MachineName + "鑷姩" + Thread.CurrentThread.ManagedThreadId.ToString();
wplog.IsDeleted = false;
wplog.EquipmentID = _dataCaptureConfig.EquipmentID;
wplog.OnlineTime = DateTimeHelper.GetDateTime();//缁欎笂绾挎椂闂寸敤
- wplog.QualityState = 1;
+ //wplog.QualityState = 1;
+ wplog.QualityState = (int)QualityStateEnum.OK;//榛樿鍚堟牸锛孫P05榛樿鍚堟牸
+
wplog.ProcessingDuration = 1;
wplog.MachineToolState = 1;
wplog.AlertType = 1;
@@ -289,22 +296,44 @@
wplog.KnifeToolEarlyWarningLife = 3;
wplog.KnifeToolSurplusLife = 10;
+ //蹇�熷鐞�
+ List<WorkPieceLog> wplogs = new List<WorkPieceLog>();
+
foreach (var item in filteredRows)
{
- Log4NetHelper.WriteInfoLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure),
- $"{_dataCaptureConfig.WorkingProcedure}宸ュ簭璇诲彇宸ユ帶鏈轰腑浜岀淮鐮佷俊鎭�,璇诲彇宸ヤ欢浜岀淮鐮�:{item["鎵撴爣鍐呭"].ToString()}");
-
if (item == null) break;
wplog.Id = Yitter.IdGenerator.YitIdHelper.NextId();
wplog.WorkPieceID = item["鎵撴爣鍐呭"].ToString();
wplog.OfflineTime = Convert.ToDateTime(dataTime);
wplog.Remarks = item["鏃堕棿"].ToString() + "|" + item["鎵撴爣鍐呭"].ToString() + "|" + item["鎵撴爣鍐呭"].ToString() + "|" + item["鎵爜绛夌骇"].ToString() + "|" + item["鎵爜缁撴灉"].ToString();
+ //杞崲
+ WorkPieceLog newLog = EntityPropHelper.Mapper<WorkPieceLog, WorkPieceLog>(wplog);
+ wplogs.Add(newLog);
+ }
+ //鏌ヨ鏁版嵁锛岃繃婊�
+ var queryList = wplogs.Select(x => x.WorkPieceID).ToList();
+ List<WorkPieceProcess> new_exist_WorkPieceProcess = new List<WorkPieceProcess>();
+ using (DbModel db = new DbModel())
+ {
+ //鎵惧埌鏁版嵁搴撲腑宸叉湁杩欎釜宸ュ簭鐨勬暟鎹�
+ new_exist_WorkPieceProcess = db.WorkPieceProcess.Where(o => queryList.Contains(o.WorkPieceID)
+ && o.WorkingProcedureCurrent == _dataCaptureConfig.WorkingProcedure).ToList();
+ }
+ var querynew__exist_WorkPieceProcessList = new_exist_WorkPieceProcess.Select(x => x.WorkPieceID).ToList();
+ //鎵惧埌闇�瑕佹柊澧炵殑鏁版嵁
+ wplogs = wplogs.Where(x => !querynew__exist_WorkPieceProcessList.Contains(x.WorkPieceID)).ToList();
+ foreach (var item in wplogs)
+ {
+ Log4NetHelper.WriteInfoLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure),
+ $"{_dataCaptureConfig.WorkingProcedure}宸ュ簭璇诲彇宸ユ帶鏈轰腑浜岀淮鐮佷俊鎭�,璇诲彇宸ヤ欢浜岀淮鐮�:{item.WorkPieceID.ToString()}");
+
WorkPieceInfoManager.ReadQRcode(wplog, PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), null, _dataCaptureConfig.IsFeedback);
threadStatusMonitor.Threadstatue = 1;
}
-
+ //璁板綍涓嬫渶鍚庝竴涓爜
+ lastHandlerWorkPileIDForOP0501 = Convert.ToString(dt.Rows[dt.Rows.Count - 1]["鎵撴爣鍐呭"]);
}
}
@@ -314,7 +343,7 @@
//Log4NetHelper.WriteInfoLog(LogType.PLCOP05, $"鎵弿瀹屾垚锛屽叡鎵弿鍒帮細锛坽fileCount.Count()}锛変釜鏂囦欢");
}
//SystemValue.value_OP0501 = value.ToString();
- }
+ }
}
catch (Exception ex)
{
@@ -343,7 +372,7 @@
SystemValue.lbl_Alert_OP0501 = $"{_dataCaptureConfig.WorkingProcedure}宸ュ簭鎵撴爣瀹屾垚鏍囪锛岃鍙栧伐鎺ф満涓墦鍗颁簩缁寸爜淇℃伅锛屼笉鍋氭牎楠岋紝璇风‘璁ら厤缃俊鎭紒";
Log4NetHelper.WriteInfoLog(LogType.PLCOP05, $"{_dataCaptureConfig.WorkingProcedure}宸ュ簭鎵撴爣瀹屾垚鏍囪锛岃鍙栧伐鎺ф満涓墦鍗颁簩缁寸爜淇℃伅锛屼笉鍋氭牎楠岋紝璇风‘璁ら厤缃紓甯�");
}
-
+
}
}
--
Gitblit v1.9.3