From 1a39670affcd0390ad20891e353d7d2d94e644d3 Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周三, 26 6月 2024 11:59:07 +0800 Subject: [PATCH] 2 --- DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs | 120 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 120 insertions(+), 0 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 fb0d3df..5ccf128 100644 --- a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs +++ b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs @@ -625,21 +625,57 @@ qualityData.OP30QualityFilePathCH3 = logMiddle.OP30QualityFilePathCH3; qualityData.OP30QualityStateCH3 = logMiddle.QualityState.HasValue ? logMiddle.QualityState.Value.ToString() : "3"; qualityData.OP30QualityReceiveTimeCH3 = DateTimeHelper.GetDateTime(); + + if (qualityData.OP30QualityStateCH3 == ((int)QualityState.NG).ToString()) + { + logMiddle.QualityNoOk = (int)QualityNoOkEnum.OP30娑ㄦ柇宸ヤ綅鍔涚煩澶�; + logMiddle.QualityNoOkReason = QualityNoOkEnum.OP30娑ㄦ柇宸ヤ綅鍔涚煩澶�.ToString(); + //璧嬪�间笉鍚堟牸鍘熷洜 + SetQualityNoOk_WorkPieceInfo(logMiddle, ref pieceInfo); + } + break; case "OP3002CH4": qualityData.OP30QualityFilePathCH4 = logMiddle.OP30QualityFilePathCH4; qualityData.OP30QualityStateCH4 = logMiddle.QualityState.HasValue ? logMiddle.QualityState.Value.ToString() : "3"; qualityData.OP30QualityReceiveTimeCH4 = DateTimeHelper.GetDateTime(); + + if (qualityData.OP30QualityStateCH4 == ((int)QualityState.NG).ToString()) + { + logMiddle.QualityNoOk = (int)QualityNoOkEnum.OP30棰勬嫥绱у伐浣嶅姏鐭╁ぇ; + logMiddle.QualityNoOkReason = QualityNoOkEnum.OP30棰勬嫥绱у伐浣嶅姏鐭╁ぇ.ToString(); + //璧嬪�间笉鍚堟牸鍘熷洜 + SetQualityNoOk_WorkPieceInfo(logMiddle, ref pieceInfo); + } + break; case "OP3002CH5": qualityData.OP30QualityFilePathCH5 = logMiddle.OP30QualityFilePathCH5; qualityData.OP30QualityStateCH5 = logMiddle.QualityState.HasValue ? logMiddle.QualityState.Value.ToString() : "3"; qualityData.OP30QualityReceiveTimeCH5 = DateTimeHelper.GetDateTime(); + + if (qualityData.OP30QualityStateCH5 == ((int)QualityState.NG).ToString()) + { + logMiddle.QualityNoOk = (int)QualityNoOkEnum.OP30缁堟嫥绱у伐浣嶅姏鐭╁ぇ; + logMiddle.QualityNoOkReason = QualityNoOkEnum.OP30缁堟嫥绱у伐浣嶅姏鐭╁ぇ.ToString(); + //璧嬪�间笉鍚堟牸鍘熷洜 + SetQualityNoOk_WorkPieceInfo(logMiddle, ref pieceInfo); + } + break; case "OP3002CH6": qualityData.OP30QualityFilePathCH6 = logMiddle.OP30QualityFilePathCH6; qualityData.OP30QualityStateCH6 = logMiddle.QualityState.HasValue ? logMiddle.QualityState.Value.ToString() : "3"; qualityData.OP30QualityReceiveTimeCH6 = DateTimeHelper.GetDateTime(); + + if (qualityData.OP30QualityStateCH6 == ((int)QualityState.NG).ToString()) + { + logMiddle.QualityNoOk = (int)QualityNoOkEnum.OP30鍘嬭‖濂楀伐浣嶅姏鐭╁ぇ; + logMiddle.QualityNoOkReason = QualityNoOkEnum.OP30鍘嬭‖濂楀伐浣嶅姏鐭╁ぇ.ToString(); + //璧嬪�间笉鍚堟牸鍘熷洜 + SetQualityNoOk_WorkPieceInfo(logMiddle, ref pieceInfo); + } + break; default: break; @@ -2197,6 +2233,90 @@ loginfo.WorkPieceIDTo7 = loginfo.WorkPieceID.Substring(20, 2); return loginfo; } + + + /// <summary> + /// 璁$畻OP 璐ㄩ噺鏁版嵁鏄惁鍚堟牸 + /// </summary> + public static QualityState CalcQualityStateForOP(WorkPieceLogMiddle logMiddle, ref QualityNoOkEnum? qualityNoOkEnum) + { + QualityState qualityState = QualityState.Suspected; + if (logMiddle.WorkingProcedure == "OP60") + { + decimal _QualityOP60To1 = SystemHelper.GetDecimal(logMiddle.QualityOP60To1); + decimal _QualityOP60To2 = SystemHelper.GetDecimal(logMiddle.QualityOP60To2); + var isPass_QualityOP60To1 = false; + var isPass_QualityOP60To2 = false; + + + if (_QualityOP60To1 >= (decimal)53.018 && _QualityOP60To1 <= (decimal)53.030) + { + isPass_QualityOP60To1 = true; + } + else + { + qualityNoOkEnum = QualityNoOkEnum.OP60澶уご瀛旂洿寰勮秴宸�; + } + if (_QualityOP60To2 >= (decimal)22.005 && _QualityOP60To2 <= (decimal)22.011) + { + isPass_QualityOP60To2 = true; + } + else + { + qualityNoOkEnum = QualityNoOkEnum.OP60灏忓ご瀛旂洿寰勮秴宸�; + } + + if (isPass_QualityOP60To1 && isPass_QualityOP60To2) + { + qualityState = QualityState.OK; + } + else + { + qualityState = QualityState.NG; + } + if (_QualityOP60To1 == 0 || _QualityOP60To2 == 0) + { + qualityState = QualityState.Suspected; + return qualityState; + } + return qualityState; + } + else if (logMiddle.WorkingProcedure == "OP10") + { + if (logMiddle.QualityState == (int)QualityState.NG) + { + qualityNoOkEnum = QualityNoOkEnum.OP10鍘氬害瓒呭樊; + } + return qualityState; + } + else if (logMiddle.WorkingProcedure == "OP20") + { + if (logMiddle.QualityState == (int)QualityState.NG) + { + qualityNoOkEnum = QualityNoOkEnum.OP20灏忓ご瀛旂洿寰勮秴宸�; + } + return qualityState; + } + else if (logMiddle.WorkingProcedure == "OP35") + { + if (logMiddle.QualityState == (int)QualityState.NG) + { + qualityNoOkEnum = QualityNoOkEnum.OP35婊氬帇鍔涗笉鍚堟牸; + } + return qualityState; + } + else if (logMiddle.WorkingProcedure == "OP40") + { + if (logMiddle.QualityState == (int)QualityState.NG) + { + qualityNoOkEnum = QualityNoOkEnum.OP40鍘氬害瓒呭樊; + } + return qualityState; + } + return qualityState; + } + + #endregion } } -- Gitblit v1.9.3