From 0bbeeaf8cc151c2b31ca81c3989a6c6b1c6e4163 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周日, 11 8月 2024 08:10:02 +0800
Subject: [PATCH] 修复 测量岛部分 数据要变更名称
---
DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs | 107 ++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 93 insertions(+), 14 deletions(-)
diff --git a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs
index 058cdcd..bd08eea 100644
--- a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs
+++ b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs
@@ -502,7 +502,7 @@
}
pieceInfo.WorkPieceinitOnlineTime = DateTimeHelper.GetDateTime();
pieceInfo.WorkingProcedurePlan = ConfigHelper.GetConfigString("WorkingProcedureAllStr") ?? "OP05OP10OP20OP30OP35OP40OP50OP60OP70OP80";
- pieceInfo.CreatedUserName = logMiddle.MonitoringPoint;
+ pieceInfo.CreatedUserName = ResetUpdatedUserName(logMiddle);
pieceInfo.CreatedTime = DateTime.SpecifyKind(DateTime.Now, DateTimeKind.Local);
pieceInfo.WorkingProcedureStartTime = DateTimeHelper.GetDateTime();//
pieceInfo.WorkingProcedureEndTime = null;
@@ -547,7 +547,7 @@
else
{//鏇存柊宸ヤ欢
equinfo.WorkPieceID = logMiddle.WorkPieceID;
- equinfo.UpdatedUserName = logMiddle.MonitoringPoint;
+ equinfo.UpdatedUserName = ResetUpdatedUserName(logMiddle);
equinfo.UpdatedTime = DateTime.Now;
equinfo.OnlineTime = DateTime.Now;
}
@@ -565,7 +565,7 @@
pieceInfo.QualityStateUpdateTime = logMiddle.UpdatedTime.Value.LocalDateTime;
pieceInfo.QualityStateUpdateMode = QualityStateUpdateMode.Auto.ToString();
pieceInfo.Remarks = pieceInfo.Remarks ?? "" + $"{logMiddle.WorkingProcedure}璐ㄩ噺妫�娴嬪畬鎴愪慨鏀�";
- pieceInfo.UpdatedUserName = logMiddle.MonitoringPoint;
+ pieceInfo.UpdatedUserName = ResetUpdatedUserName(logMiddle);
pieceInfo.UpdatedTime = DateTime.SpecifyKind(DateTime.Now, DateTimeKind.Local);
if (!(pieceInfo.WorkingProcedureStartTime.HasValue && pieceInfo.WorkingProcedureStartTime > DateTime.Parse("1900/01/01")))
{//宸ュ簭寮�濮嬫椂闂存病鏈夊垯璧嬪��
@@ -727,9 +727,9 @@
SetQualityNoOk_WorkPieceProcess(logMiddle, ref process);
process.Id = Yitter.IdGenerator.YitIdHelper.NextId();
- process.CreatedUserName = logMiddle.MonitoringPoint;
+ process.CreatedUserName = ResetUpdatedUserName(logMiddle);
process.CreatedTime = DateTime.SpecifyKind(DateTime.Now, DateTimeKind.Local);
- process.UpdatedUserName = logMiddle.MonitoringPoint;
+ process.UpdatedUserName = ResetUpdatedUserName(logMiddle);
process.UpdatedTime = DateTime.SpecifyKind(DateTime.Now, DateTimeKind.Local);
process.OperationType = OperationType.鐢熶骇.ToString();
process.QualityDataInfoID = qualityData.Id;
@@ -739,7 +739,7 @@
else
{//鍏朵粬鐨勯兘鍙槸淇敼
pro.QualityDataInfoID = qualityData.Id;
- pro.UpdatedUserName = logMiddle.MonitoringPoint;
+ pro.UpdatedUserName = ResetUpdatedUserName(logMiddle);
pro.UpdatedTime = DateTimeHelper.GetDateTime();
pro.QualityState = pieceInfo.QualityState.HasValue ? pieceInfo.QualityState.Value : 9;
//璧嬪�间笉鍚堟牸鍘熷洜
@@ -748,7 +748,7 @@
//TODO:鍒ゆ柇濡傛灉鏄�60宸ュ簭锛岄偅涔堝氨瑕佹洿鏂皃ro琛ㄧ殑鍒涘缓浜轰负loginfo.MonitoringPoint 銆怑ditby shaocx,2024-06-05銆�
if (logMiddle.WorkingProcedure == "OP60")
{
- pro.CreatedUserName = logMiddle.MonitoringPoint;
+ pro.CreatedUserName = ResetUpdatedUserName(logMiddle);
}
}
@@ -791,6 +791,21 @@
}
}
}
+
+ /// <summary>
+ /// 璧嬪�� 淇敼浜� 銆怑ditby shaocx,2024-07-05銆�
+ /// </summary>
+ /// <param name="logMiddle"></param>
+ /// <returns></returns>
+ public static string ResetUpdatedUserName(WorkPieceLogMiddle logMiddle)
+ {
+ if (logMiddle.MonitoringPoint.Equals("OP1003"))
+ {//鍥犱负OP10鍜孫P40鏄竴鍙版満鍣紝OP1003涓撻棬鏄疧P40娴嬮噺鐨勩��
+ return "OP4003";
+ }
+ return logMiddle.MonitoringPoint;
+ }
+
/// <summary>
/// 宸ヤ欢鎺ㄥ嚭NOOK
/// </summary>
@@ -2153,13 +2168,47 @@
public static void SetQualityNoOk_WorkPieceInfo(WorkPieceLogMiddle logMiddle, ref WorkPieceInfo pieceInfo)
{
+ if (!IsWirteQualityNoOk(logMiddle, pieceInfo.QualityNoOk)) return;
+
pieceInfo.QualityNoOk = logMiddle.QualityNoOk;
pieceInfo.QualityNoOkReason = logMiddle.QualityNoOkReason;
}
public static void SetQualityNoOk_WorkPieceProcess(WorkPieceLogMiddle logMiddle, ref WorkPieceProcess pieceProcess)
{
+ if (!IsWirteQualityNoOk(logMiddle, pieceProcess.QualityNoOk)) return;
+
pieceProcess.QualityNoOk = logMiddle.QualityNoOk;
pieceProcess.QualityNoOkReason = logMiddle.QualityNoOkReason;
+ }
+
+ /// <summary>
+ /// 鏄惁闇�瑕侀噸鍐� NOOK鍘熷洜
+ /// </summary>
+ /// <param name="logMiddle"></param>
+ /// <param name="pieceInfo"></param>
+ /// <returns></returns>
+ public static bool IsWirteQualityNoOk(WorkPieceLogMiddle logMiddle, int? qualityNoOk)
+ {
+ if (logMiddle.WorkingProcedure == (WorkingProcedureForHMI.OP30).ToString())
+ {
+ //鐗规畩閫昏緫锛氭寜鐓P30鐨勯『搴忓垽鏂�
+ if (logMiddle.QualityNoOk != null && qualityNoOk != null
+ && (
+ qualityNoOk == (int)QualityNoOkEnum.OP30鍘嬭‖濂楀伐浣嶅姏鐭╁ぇ
+ || qualityNoOk == (int)QualityNoOkEnum.OP30娑ㄦ柇宸ヤ綅鍔涚煩澶�
+ || qualityNoOk == (int)QualityNoOkEnum.OP30缁堟嫥绱у伐浣嶅姏鐭╁ぇ
+ || qualityNoOk == (int)QualityNoOkEnum.OP30棰勬嫥绱у伐浣嶅姏鐭╁ぇ
+ )
+ )
+ {
+ if ((int)logMiddle.QualityNoOk > (int)qualityNoOk)
+ {//涓嶉渶瑕侀噸鏂拌祴鍊�
+ return false;
+ }
+ }
+ }
+
+ return true;
}
@@ -2248,6 +2297,8 @@
public static void SetLogMiddleForQuality(ref WorkPieceLogMiddle logMiddle)
{
+ logMiddle.QualityState = (int)((logMiddle.QualityStateStr.Equals("OK") || logMiddle.QualityStateStr.Equals("0K")) ? QualityState.OK : QualityState.NG);
+
//鏍规嵁璐ㄩ噺鏁版嵁鍒ゆ柇鏄惁鍚堟牸/涓嶅悎鏍� 銆怑ditby shaocx,2024-06-25銆�
QualityNoOkEnum? qualityNoOkEnum = null;
QualityState qualityState = WorkPieceInfoManager.CalcQualityStateForOP(logMiddle, ref qualityNoOkEnum);
@@ -2267,7 +2318,7 @@
{
QualityState qualityState = QualityState.Suspected;
if (logMiddle.WorkingProcedure == "OP60")
- {
+ {//鍚堟牸/涓嶅悎鏍肩敱 WMS鑷鍒ゆ柇
decimal _QualityOP60To1 = SystemHelper.GetDecimal(logMiddle.QualityOP60To1);
decimal _QualityOP60To2 = SystemHelper.GetDecimal(logMiddle.QualityOP60To2);
var isPass_QualityOP60To1 = false;
@@ -2306,8 +2357,8 @@
}
return qualityState;
}
- if (logMiddle.WorkingProcedure == "OP80")
- {
+ else if (logMiddle.WorkingProcedure == "OP80")
+ {//鍚堟牸/涓嶅悎鏍肩敱 OP80 鍒ゆ柇锛孮ualityState 鍜� QualityStateStr 閮藉湪璋冪敤褰撳墠鏂规硶鍓� 鍐欏叆鍊间簡
if (logMiddle.QualityState == (int)QualityState.OK)
{
qualityState = QualityState.OK;
@@ -2396,35 +2447,63 @@
return qualityState;
}
else if (logMiddle.WorkingProcedure == "OP10")
- {
+ {//鍚堟牸/涓嶅悎鏍肩敱 QualityStateStr鍊煎垽鏂�
if (logMiddle.QualityState == (int)QualityState.NG)
{
qualityNoOkEnum = QualityNoOkEnum.OP10鍘氬害瓒呭樊;
}
+ else
+ {
+ qualityState = QualityState.OK;
+ }
return qualityState;
}
else if (logMiddle.WorkingProcedure == "OP20")
- {
+ {//鍚堟牸/涓嶅悎鏍肩敱 QualityStateStr鍊煎垽鏂�
if (logMiddle.QualityState == (int)QualityState.NG)
{
qualityNoOkEnum = QualityNoOkEnum.OP20灏忓ご瀛旂洿寰勮秴宸�;
}
+ else
+ {
+ qualityState = QualityState.OK;
+ }
+ return qualityState;
+ }
+ else if (logMiddle.WorkingProcedure == "OP30")
+ {//鍚堟牸/涓嶅悎鏍肩敱 QualityStateStr鍊煎垽鏂�
+ if (logMiddle.QualityStateStr.Equals("OK"))
+ {
+ qualityState = QualityState.OK;
+ }
+ else
+ {
+ qualityState = QualityState.NG;
+ }
return qualityState;
}
else if (logMiddle.WorkingProcedure == "OP35")
- {
+ {//鍚堟牸/涓嶅悎鏍肩敱 QualityStateStr鍊煎垽鏂�
if (logMiddle.QualityState == (int)QualityState.NG)
{
qualityNoOkEnum = QualityNoOkEnum.OP35婊氬帇鍔涗笉鍚堟牸;
}
+ else
+ {
+ qualityState = QualityState.OK;
+ }
return qualityState;
}
else if (logMiddle.WorkingProcedure == "OP40")
- {
+ {//鍚堟牸/涓嶅悎鏍肩敱 QualityStateStr鍊煎垽鏂�
if (logMiddle.QualityState == (int)QualityState.NG)
{
qualityNoOkEnum = QualityNoOkEnum.OP40鍘氬害瓒呭樊;
}
+ else
+ {
+ qualityState = QualityState.OK;
+ }
return qualityState;
}
return qualityState;
--
Gitblit v1.9.3