From 6ac8c5f5a01cbe69a1a56333161d75349f139fbb Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周三, 26 6月 2024 11:15:25 +0800 Subject: [PATCH] 2 --- DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_Test/UnitTest1.cs | 36 ++++++++ DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs | 84 +++++++++++++++++++++ DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/DataCaptureHandler_02.cs | 85 -------------------- DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_Test/iWare_SCADA_Test.csproj | 11 ++ 4 files changed, 132 insertions(+), 84 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..eaae713 100644 --- a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs +++ b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs @@ -2197,6 +2197,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.OK) + { + qualityNoOkEnum = QualityNoOkEnum.OP10鍘氬害瓒呭樊; + } + return qualityState; + } + else if (logMiddle.WorkingProcedure == "OP20") + { + if (logMiddle.QualityState != (int)QualityState.OK) + { + qualityNoOkEnum = QualityNoOkEnum.OP20灏忓ご瀛旂洿寰勮秴宸�; + } + return qualityState; + } + else if (logMiddle.WorkingProcedure == "OP35") + { + if (logMiddle.QualityState != (int)QualityState.OK) + { + qualityNoOkEnum = QualityNoOkEnum.OP35婊氬帇鍔涗笉鍚堟牸; + } + return qualityState; + } + else if (logMiddle.WorkingProcedure == "OP40") + { + if (logMiddle.QualityState != (int)QualityState.OK) + { + qualityNoOkEnum = QualityNoOkEnum.OP40鍘氬害瓒呭樊; + } + return qualityState; + } + return qualityState; + } + + #endregion } } diff --git a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/DataCaptureHandler_02.cs b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/DataCaptureHandler_02.cs index 62e4b40..62b9489 100644 --- a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/DataCaptureHandler_02.cs +++ b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/DataCaptureHandler_02.cs @@ -610,7 +610,7 @@ //鏍规嵁璐ㄩ噺鏁版嵁鍒ゆ柇鏄惁鍚堟牸/涓嶅悎鏍� 銆怑ditby shaocx,2024-06-25銆� QualityNoOkEnum? qualityNoOkEnum = null; - QualityState qualityState = CalcQualityStateForOP(logMiddle, ref qualityNoOkEnum); + QualityState qualityState = WorkPieceInfoManager.CalcQualityStateForOP(logMiddle, ref qualityNoOkEnum); logMiddle.QualityState = (int)qualityState; if (qualityNoOkEnum != null) { @@ -874,87 +874,6 @@ } - /// <summary> - /// 璁$畻OP 璐ㄩ噺鏁版嵁鏄惁鍚堟牸 - /// </summary> - public 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.OK) - { - qualityNoOkEnum = QualityNoOkEnum.OP10鍘氬害瓒呭樊; - } - return qualityState; - } - else if (logMiddle.WorkingProcedure == "OP20") - { - if (logMiddle.QualityState != (int)QualityState.OK) - { - qualityNoOkEnum = QualityNoOkEnum.OP20灏忓ご瀛旂洿寰勮秴宸�; - } - return qualityState; - } - else if (logMiddle.WorkingProcedure == "OP35") - { - if (logMiddle.QualityState != (int)QualityState.OK) - { - qualityNoOkEnum = QualityNoOkEnum.OP35婊氬帇鍔涗笉鍚堟牸; - } - return qualityState; - } - else if (logMiddle.WorkingProcedure == "OP40") - { - if (logMiddle.QualityState != (int)QualityState.OK) - { - qualityNoOkEnum = QualityNoOkEnum.OP40鍘氬害瓒呭樊; - } - return qualityState; - } - return qualityState; - } - - + } } diff --git a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_Test/UnitTest1.cs b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_Test/UnitTest1.cs index 9095685..b8319e0 100644 --- a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_Test/UnitTest1.cs +++ b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_Test/UnitTest1.cs @@ -1,4 +1,5 @@ -锘縰sing iWare_SCADA_BusinessLogical.BLL; +锘縰sing iWare_SCADA_BusinessLogical; +using iWare_SCADA_BusinessLogical.BLL; using iWare_SCADA_BusinessLogical.Utils; using iWare_SCADA_Model; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -65,5 +66,38 @@ string cc = ""; } + + [TestMethod] + public void pp() + { + Yitter.IdGenerator.IdGeneratorOptions options = new Yitter.IdGenerator.IdGeneratorOptions(1); + Yitter.IdGenerator.YitIdHelper.SetIdGenerator(options); + + WorkPieceLogMiddle logMiddle = new WorkPieceLogMiddle( + ) + { + WorkingProcedure = "OP30", + WorkPieceID = "DZ045L2406240103521TAS", + UpdatedTime = DateTime.Now, + MonitoringPoint = "", + QualityStateStr="OK" + } + ; + string WorkingProcedure = logMiddle.WorkingProcedure; + //鏍规嵁璐ㄩ噺鏁版嵁鍒ゆ柇鏄惁鍚堟牸/涓嶅悎鏍� 銆怑ditby shaocx,2024-06-25銆� + QualityNoOkEnum? qualityNoOkEnum = null; + QualityState qualityState = WorkPieceInfoManager.CalcQualityStateForOP(logMiddle, ref qualityNoOkEnum); + logMiddle.QualityState = (int)qualityState; + if (qualityNoOkEnum != null) + { + logMiddle.QualityNoOk = (int)qualityNoOkEnum; + logMiddle.QualityNoOkReason = qualityNoOkEnum.ToString(); + } + //鏇存柊WorkPieceInfo琛ㄤ互鍙婃彃鍏orkPieceLog琛ㄥ拰WorkPieceInfoLog琛� + WorkPieceInfoManager.QualityInfoComplete(logMiddle, PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure)); + + + string cc = ""; + } } } diff --git a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_Test/iWare_SCADA_Test.csproj b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_Test/iWare_SCADA_Test.csproj index 1baa7cb..6a9f0ba 100644 --- a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_Test/iWare_SCADA_Test.csproj +++ b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_Test/iWare_SCADA_Test.csproj @@ -39,6 +39,13 @@ <WarningLevel>4</WarningLevel> </PropertyGroup> <ItemGroup> + <Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL"> + <SpecificVersion>False</SpecificVersion> + <HintPath>..\packages\EntityFramework.6.4.4\lib\net45\EntityFramework.dll</HintPath> + </Reference> + <Reference Include="EntityFramework.SqlServer"> + <HintPath>..\packages\EntityFramework.6.4.4\lib\net45\EntityFramework.SqlServer.dll</HintPath> + </Reference> <Reference Include="Microsoft.VisualStudio.TestPlatform.TestFramework, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"> <HintPath>..\packages\MSTest.TestFramework.2.2.7\lib\net45\Microsoft.VisualStudio.TestPlatform.TestFramework.dll</HintPath> </Reference> @@ -47,6 +54,10 @@ </Reference> <Reference Include="System" /> <Reference Include="System.Core" /> + <Reference Include="Yitter.IdGenerator.Net45, Version=1.0.0.4, Culture=neutral, processorArchitecture=MSIL"> + <SpecificVersion>False</SpecificVersion> + <HintPath>..\packages\Yitter.IdGenerator.Net45.1.0.0\lib\net452\Yitter.IdGenerator.Net45.dll</HintPath> + </Reference> </ItemGroup> <ItemGroup> <Compile Include="UnitTest1.cs" /> -- Gitblit v1.9.3