Browse Source

add report test data success or fail

Robert 3 years ago
parent
commit
a87684c8ee

+ 8 - 6
AwInitilizer/MainWindow.xaml.cs

@@ -341,7 +341,8 @@ namespace AwInitilizer
 
             MesErrorCode mesErrorCode = MesErrorCode.None;
 
-            Dictionary<string, string> logPairs = new Dictionary<string, string>();
+            //Dictionary<string, string> logPairs = new Dictionary<string, string>();
+            ValueReportDatas reportDatas = new ValueReportDatas();
             //logPairs.Add("ModelName", ViewModel.SystemID.ModelName.ToString());
             //logPairs.Add("SerialNumber", ViewModel.SystemID.SerialNumber);
 
@@ -350,7 +351,7 @@ namespace AwInitilizer
             int procedureIndex;
             for (procedureIndex = 0; procedureIndex < procedureList.Count; procedureIndex++)
             {
-                procedureList[procedureIndex].LogPair.Clear();
+                procedureList[procedureIndex].MesLogData.Clear();
                 procedureList[procedureIndex].Reset();
             }
 
@@ -362,9 +363,10 @@ namespace AwInitilizer
 
                 var result = await procedureList[procedureIndex].DoWork();
 
-                foreach (var procedureLog in procedureList[procedureIndex].LogPair)
+                foreach (var procedureLog in procedureList[procedureIndex].MesLogData)
                 {
-                    logPairs[procedureLog.Key] = procedureLog.Value;
+                    //logPairs[procedureLog.Key] = procedureLog.Val;
+                    reportDatas.Add(procedureLog);
                 }
 
                 if (!result)
@@ -375,7 +377,7 @@ namespace AwInitilizer
             }
 
             //report MES result
-            ReportMESLog(logPairs);
+            ReportMESLog(reportDatas);
 
             if (procedureIndex == procedureList.Count)
             {
@@ -403,7 +405,7 @@ namespace AwInitilizer
             ViewModel.IsInputCheckpassed = false;
         }
 
-        private void ReportMESLog(Dictionary<string, string> logPairs)
+        private void ReportMESLog(ValueReportDatas logPairs)
         {
             //report value
             var reportResult = SajetConnect.SajetTransReport(logPairs);

+ 18 - 15
AwInitilizer/Procedure/BasicInfoUpdateProcedure.cs

@@ -84,7 +84,7 @@ namespace AwInitilizer.Procedure.BasicInfoUpdate
         {
             if (!await base.CheckAndCreateSocket())
             {
-                LogWriter.Report(LogEvent.EvseConnect, "fail");
+                LogWriter.Report(LogEvent.EvseConnect, "fail", isError: true);
                 Error = ErrorType.EvseConnectFail;
 
                 return false;
@@ -93,7 +93,7 @@ namespace AwInitilizer.Procedure.BasicInfoUpdate
             //base.serialPortocol.OnMsgReceived += SerialPortocol_OnMsgReceived; 
             if (!await serialPortocol.SetModelName(UpdateData.ModelName))
             {
-                LogWriter.Report(LogEvent.ModelNameWrite, "fail");
+                LogWriter.Report(LogEvent.ModelNameWrite, "fail", isError: true);
                 Error = ErrorType.ModelNameWriteFail;
 
                 return false;
@@ -105,7 +105,7 @@ namespace AwInitilizer.Procedure.BasicInfoUpdate
 
             if (!await serialPortocol.SetSerialNumber(UpdateData.SerialNumber))
             {
-                LogWriter.Report(LogEvent.SerialNumberWrite, "fail");
+                LogWriter.Report(LogEvent.SerialNumberWrite, "fail", isError: true);
                 Error = ErrorType.SerialNumberWriteFail;
 
                 return false;
@@ -119,7 +119,7 @@ namespace AwInitilizer.Procedure.BasicInfoUpdate
 
             if (!await serialPortocol.SetUTCTime(setDateTime))
             {
-                LogWriter.Report(LogEvent.RtcWrite, "fail");
+                LogWriter.Report(LogEvent.RtcWrite, "fail", isError: true);
                 Error = ErrorType.RtcUpdateFail;
 
                 return false;
@@ -131,7 +131,7 @@ namespace AwInitilizer.Procedure.BasicInfoUpdate
 
             if (!await serialPortocol.SettingChangeConfirm())
             {
-                LogWriter.Report(LogEvent.SettingSave, "fail");
+                LogWriter.Report(LogEvent.SettingSave, "fail", isError: true);
                 Error = ErrorType.SettingSaveFail;
 
                 return false;
@@ -148,21 +148,21 @@ namespace AwInitilizer.Procedure.BasicInfoUpdate
 
             if (!await base.CheckAndCreateSocket())
             {
-                LogWriter.Report(LogEvent.RestartConnect, "fail");
+                LogWriter.Report(LogEvent.RestartConnect, "fail", isError: true);
                 Error = ErrorType.RestartConnectFail;
 
                 return false;
             }
 
             var receivedModelName = await serialPortocol.GetModelName();
-            LogWriter.Report(LogEvent.ModelNameRead, receivedModelName);
+            //LogWriter.Report(LogEvent.ModelNameRead, receivedModelName);
 
             if (string.IsNullOrEmpty(receivedModelName))
             {
                 LogWriter.Log("Model name get failed after reboot");
                 LogWriter.Log(serialPortocol.LatestErrorMessage, isDebugLog: true);
                 Error = ErrorType.ModelNameGetFail;
-
+                LogWriter.Report(LogEvent.ModelNameRead, "empty" , isError: true);
                 return false;
             }
             else
@@ -172,14 +172,15 @@ namespace AwInitilizer.Procedure.BasicInfoUpdate
                 if (receivedModelName != UpdateData.ModelName)
                 {
                     Error = ErrorType.ModelNameMismach;
-
+                    LogWriter.Report(LogEvent.ModelNameRead, receivedModelName, isError: true);
                     return false;
                 }
+                LogWriter.Report(LogEvent.ModelNameRead, receivedModelName);
                 LogWriter.Log("Model Name update Success");
             }
 
             var receivedSerialNumber = await serialPortocol.GetSerialNumber();
-            LogWriter.Report(LogEvent.SerialNumberRead, receivedSerialNumber);
+            //LogWriter.Report(LogEvent.SerialNumberRead, receivedSerialNumber);
 
             if (string.IsNullOrEmpty(receivedSerialNumber))
             {
@@ -187,7 +188,7 @@ namespace AwInitilizer.Procedure.BasicInfoUpdate
                 LogWriter.Log(serialPortocol.LatestErrorMessage, isDebugLog: true);
 
                 Error = ErrorType.SerialNumberGetFail;
-
+                LogWriter.Report(LogEvent.SerialNumberRead, "empty" , isError: true);
                 return false;
             }
             else
@@ -197,20 +198,21 @@ namespace AwInitilizer.Procedure.BasicInfoUpdate
                 if (receivedSerialNumber != UpdateData.SerialNumber)
                 {
                     Error = ErrorType.SerialNumberMismach;
-
+                    LogWriter.Report(LogEvent.SerialNumberRead, receivedSerialNumber, isError: true);
                     return false;
                 }
+                LogWriter.Report(LogEvent.SerialNumberRead, receivedSerialNumber);
                 LogWriter.Log("Serial Number update Success");
             }
 
             var receivedDateTime = await serialPortocol.GetUTCTime();
-            LogWriter.Report(LogEvent.RtcRead, receivedDateTime?.ToString("yyyyMMddHHmmss"));
+            //LogWriter.Report(LogEvent.RtcRead, receivedDateTime?.ToString("yyyyMMddHHmmss"));
 
             if (receivedDateTime == null)
             {
                 LogWriter.Log("UTC Time receive failed");
                 Error = ErrorType.EvseConnectFail;
-
+                LogWriter.Report(LogEvent.RtcRead, "empty", isError: true);
                 return false;
             }
             else
@@ -221,9 +223,10 @@ namespace AwInitilizer.Procedure.BasicInfoUpdate
                 if (Math.Abs(diff.TotalSeconds) > 10)
                 {
                     Error = ErrorType.UtcTimeMismatch;
-
+                    LogWriter.Report(LogEvent.RtcRead, receivedDateTime?.ToString("yyyyMMddHHmmss"), isError: true);
                     return false;
                 }
+                LogWriter.Report(LogEvent.RtcRead, receivedDateTime?.ToString("yyyyMMddHHmmss"), isError: false);
                 LogWriter.Log("UTC Time update Success");
             }
 

+ 6 - 2
AwInitilizer/Procedure/ButtonStatusCheckPorcedure.cs

@@ -110,7 +110,7 @@ namespace AwInitilizer.Procedure.ButtonStatusCheck
                 return false;
             }
 
-            LogWriter.Report(LogEvent.UnpressButtonTest, string.Format("{0}{1}{2}", status.Button1, status.Button2, status.EmergencyButton));
+            //LogWriter.Report(LogEvent.UnpressButtonTest, string.Format("{0}{1}{2}", status.Button1, status.Button2, status.EmergencyButton));
 
             LogWriter.Log(string.Format("Button unpress test result : {0}{1}{2}, Expect:000",
                 status.Button1, status.Button2, status.EmergencyButton));
@@ -149,16 +149,19 @@ namespace AwInitilizer.Procedure.ButtonStatusCheck
                 if (isAllMatched)
                 {
                     LogWriter.Log("Unpress Check passed");
+                    LogWriter.Report(LogEvent.UnpressButtonTest, string.Format("{0}{1}{2}", status.Button1, status.Button2, status.EmergencyButton));
                     return true;
                 }
                 else
                 {
+                    LogWriter.Report(LogEvent.UnpressButtonTest, string.Format("{0}{1}{2}", status.Button1, status.Button2, status.EmergencyButton), isError: true);
                     return false;
                 }
             }
             else
             {
                 LogWriter.Log("Unpress Check: Get button press status Failed", isError: true);
+                LogWriter.Report(LogEvent.UnpressButtonTest, "empty", isError: true);
                 return false;
             }
         }
@@ -177,7 +180,7 @@ namespace AwInitilizer.Procedure.ButtonStatusCheck
                 return false;
             }
 
-            LogWriter.Report($"{btn}PressTest", string.Format("{0}{1}{2}", btnStatus.Button1, btnStatus.Button2, btnStatus.EmergencyButton));
+            //LogWriter.Report($"{btn}PressTest", string.Format("{0}{1}{2}", btnStatus.Button1, btnStatus.Button2, btnStatus.EmergencyButton));
             LogWriter.Log($"Press check stage {btn} result:");
             LogWriter.Log(
                 string.Format("Button1:{0},Button2:{1},EmgerncyButton:{2}",
@@ -187,6 +190,7 @@ namespace AwInitilizer.Procedure.ButtonStatusCheck
 
             DismisDialog();
             var btnStatusIsMatchedRequred = CheckBtnStatus(btnInt,btnStatus);
+            LogWriter.Report($"{btn}PressTest", string.Format("{0}{1}{2}", btnStatus.Button1, btnStatus.Button2, btnStatus.EmergencyButton),isError: !btnStatusIsMatchedRequred);
             return btnStatusIsMatchedRequred;
         }
 

+ 5 - 5
AwInitilizer/Procedure/FirmwareBundleUploadProcedure.cs

@@ -73,7 +73,7 @@ namespace AwInitilizer.Procedure.FirmwareBundleUpload
             //timeout
             if (pollingCnt >= 56)
             {
-                LogWriter.Report(LogEvent.UploadStartWait, "fail");
+                LogWriter.Report(LogEvent.UploadStartWait, "fail", isError: true);
                 Error = ErrorType.StartWaitTimeout;
 
                 return false;
@@ -124,7 +124,7 @@ namespace AwInitilizer.Procedure.FirmwareBundleUpload
             catch (Exception e)
             {
                 InfoLog += $"create file stream failed";
-                LogPair.Add($"FirmwareUpload", "0");
+                MesLogData.Add($"FirmwareUpload", "0" , false);
                 return false;
             }
 
@@ -149,10 +149,10 @@ namespace AwInitilizer.Procedure.FirmwareBundleUpload
             catch
             {
                 InfoLog += $"file upload failed";
-                LogPair.Add($"FirmwareUpload", "0");
+                MesLogData.Add($"FirmwareUpload", "0", false);
             }
             Logger.Print("Firmware Upload Complete", isError: false);
-            LogPair.Add($"FirmwareUpload", "1");
+            MesLogData.Add($"FirmwareUpload", "1" , true);
             //release all
             foreach (var uploadFile in UploadFileList)
             {
@@ -201,7 +201,7 @@ namespace AwInitilizer.Procedure.FirmwareBundleUpload
             }
             else
             {
-                LogWriter.Report(LogEvent.FirmwareUpload, "fail");
+                LogWriter.Report(LogEvent.FirmwareUpload, "fail", isError: true);
                 if (response.ErrorException!= null)
                 {
                     LogWriter.Log(response.ErrorException.Message,isError:true,isDebugLog: true);

+ 2 - 2
AwInitilizer/Procedure/FirmwareCheckVersionProcedure.cs

@@ -122,7 +122,7 @@ namespace AwInitilizer.Procedure.FirmwareCheckVersion
                 }
                 else
                 {
-                    LogWriter.Report(logPairName, "fail");
+                    LogWriter.Report(logPairName, "fail", isError: true);
 
                     return false;
                 }
@@ -135,7 +135,7 @@ namespace AwInitilizer.Procedure.FirmwareCheckVersion
             else
             {
                 //model name not found
-                LogWriter.Report(logPairName, "fail");
+                LogWriter.Report(logPairName, "fail", isError: true);
                 LogWriter.Log($"Model {model.Module} version not found");
 
                 return false;

+ 6 - 3
AwInitilizer/Procedure/FirmwareUpdateProcedure.cs

@@ -40,7 +40,7 @@ namespace AwInitilizer.Procedure
         internal override async Task<bool> Run()
         {
             var oldVersion = await GetSpecificVersion();
-            LogPair.Add($"{module}OldVersion", oldVersion);
+            MesLogData.Add($"{module}OldVersion", oldVersion, true);
             if (string.IsNullOrEmpty(oldVersion))
             {
                 InfoLog += $"Get {Name} version failed\n";
@@ -54,7 +54,7 @@ namespace AwInitilizer.Procedure
             }
             Logger.Print("Firmware Uploading...");
             var uploadResult = await Uploadfiremware(fileName);
-            LogPair.Add($"{module}Upload", uploadResult.ToString());
+            MesLogData.Add($"{module}Upload", uploadResult.ToString(), true);
             if (uploadResult)
             {
                 //wait restart
@@ -85,11 +85,12 @@ namespace AwInitilizer.Procedure
                 return false;
             }
             var updatedVersion = await GetSpecificVersion();
-            LogPair.Add($"{module}NewVersion", updatedVersion);
+            //MesLogData.Add($"{module}NewVersion", updatedVersion);
             if (string.IsNullOrEmpty(updatedVersion))
             {
                 InfoLog += $"Get updated {Name} version failed\n";
                 Logger.Print($"Get updated {Name} version failed", isError: true);
+                MesLogData.Add($"{module}NewVersion", "empty" , false);
                 return false;
             }
             InfoLog += $"Get updated version : {updatedVersion}\n";
@@ -106,10 +107,12 @@ namespace AwInitilizer.Procedure
             {
                 InfoLog += $"{Name}:Updated Version mismatched\n";
                 Logger.Print($"{Name}:Updated Version mismatched", isError: true);
+                MesLogData.Add($"{module}NewVersion", updatedVersion, false);
                 return false;
             }
             else
             {
+                MesLogData.Add($"{module}NewVersion", updatedVersion, true);
                 Logger.Print($"{Name}:updated success");
             }
 

+ 1 - 1
AwInitilizer/Procedure/FirmwareUploadProcedure.cs

@@ -37,7 +37,7 @@ namespace AwInitilizer.Procedure
         {
             Logger.Print("Firmware Uploading...");
             var uploadResult = await Uploadfirmware(fileName);
-            LogPair.Add($"{module}Upload", uploadResult?"1":"0");
+            MesLogData.Add($"{module}Upload", uploadResult?"1":"0", uploadResult);
             return uploadResult;
         }
 

+ 29 - 14
AwInitilizer/Procedure/FourGenModuleCheckProcedure.cs

@@ -76,7 +76,7 @@ namespace AwInitilizer.Procedure.FourGenModuleCheck
             //Logger.Print("Connecting to EVSE");
             if (!await base.CheckAndCreateSocket())
             {
-                LogWriter.Report(LogEvent.FourgenSocketConnect,"fail");
+                LogWriter.Report(LogEvent.FourgenSocketConnect,"fail", isError: true);
                 Error = ErrorType.ConnectFail;
 
                 return false;
@@ -84,13 +84,13 @@ namespace AwInitilizer.Procedure.FourGenModuleCheck
             LogWriter.Report(LogEvent.FourgenSocketConnect, "success");
 
             var fourthGenModuleVersion = await serialPortocol.GetFourGenModuleVersion();
-            LogWriter.Report(LogEvent.FourgenModuleVersion, fourthGenModuleVersion);
+            //LogWriter.Report(LogEvent.FourgenModuleVersion, fourthGenModuleVersion);
             
             if (string.IsNullOrEmpty(fourthGenModuleVersion))
             {
                 Error = ErrorType.VersionReadFail;
                 LogWriter.Log("4G module version read error");
-
+                LogWriter.Report(LogEvent.FourgenModuleVersion, "empty" , isError: true);
                 return false;
             }
             else
@@ -100,30 +100,36 @@ namespace AwInitilizer.Procedure.FourGenModuleCheck
                 if (!fourthGenModuleVersion.ToLower().StartsWith(UpdateData.FourGenModuleVersion.ToLower()))
                 {
                     Error = ErrorType.VersionMismatch;
-
+                    LogWriter.Report(LogEvent.FourgenModuleVersion, fourthGenModuleVersion, isError: true);
                     return false;
                 }
+
+                LogWriter.Report(LogEvent.FourgenModuleVersion, fourthGenModuleVersion);
             }
 
             var simstatus = await serialPortocol.GetSimStatus();
+            string simstatusString;
 
-            if(simstatus == null)
+            if (simstatus == null)
             {
-                LogWriter.Report(LogEvent.SimStatus, "unknown");
+                simstatusString = "unknown";
+                //LogWriter.Report(LogEvent.SimStatus, "unknown");
             }
             else if(simstatus.IsInstalled)
             {
-                LogWriter.Report(LogEvent.SimStatus, "inserted");
+                simstatusString = "inserted";
+                //LogWriter.Report(LogEvent.SimStatus, "inserted");
             }
             else
             {
-                LogWriter.Report(LogEvent.SimStatus, "none");
+                simstatusString = "none";
+                //LogWriter.Report(LogEvent.SimStatus, "none");
             }
 
             if (simstatus == null)
             {
                 Error = ErrorType.SimStatusReadFail;
-
+                LogWriter.Report(LogEvent.SimStatus, simstatusString , isError: true);
                 return false;
             }
             else
@@ -133,11 +139,12 @@ namespace AwInitilizer.Procedure.FourGenModuleCheck
                 if (simstatus.IsInstalled != UpdateData.IsSimInsert)
                 {
                     Error = ErrorType.SimStatusMismatch;
-
+                    LogWriter.Report(LogEvent.SimStatus, simstatusString, isError: true);
                     return false;
                 }
                 else
                 {
+                    LogWriter.Report(LogEvent.SimStatus, simstatusString);
                     if (simstatus.IsInstalled)
                     {
                         var iccidByteList = simstatus.ICCID.ToList();
@@ -152,8 +159,8 @@ namespace AwInitilizer.Procedure.FourGenModuleCheck
                         var ICCIDstring = Encoding.ASCII.GetString(iccidBytes).Trim();
                         var IMSIstring = Encoding.ASCII.GetString(imsiBytes).Trim();
 
-                        LogWriter.Report(LogEvent.SimICCID, ICCIDstring);
-                        LogWriter.Report(LogEvent.SimIMSI, IMSIstring);
+                        //LogWriter.Report(LogEvent.SimICCID, ICCIDstring);
+                        //LogWriter.Report(LogEvent.SimIMSI, IMSIstring);
 
                         LogWriter.Log(string.Format("Get Sim ICCID : {0} , Expect:{1}", ICCIDstring, UpdateData.ICCID));
                         LogWriter.Log(string.Format("Get Sim IMSI : {0} , Expect:{1}", IMSIstring, UpdateData.IMSI));
@@ -162,17 +169,25 @@ namespace AwInitilizer.Procedure.FourGenModuleCheck
                         {
                             LogWriter.Log("Sim card ICCID not match");
                             Error = ErrorType.IccidMistach;
-
+                            LogWriter.Report(LogEvent.SimICCID, ICCIDstring, isError: true);
                             return false;
                         }
+                        else
+                        {
+                            LogWriter.Report(LogEvent.SimICCID, ICCIDstring);
+                        }
 
                         if (IMSIstring != UpdateData.IMSI)
                         {
                             LogWriter.Log("Sim card IMSI not match");
                             Error = ErrorType.ImsiMistach;
-
+                            LogWriter.Report(LogEvent.SimIMSI, IMSIstring, isError: true);
                             return false;
                         }
+                        else
+                        {
+                            LogWriter.Report(LogEvent.SimICCID, IMSIstring);
+                        }
                     }
                     else
                     {

+ 2 - 1
AwInitilizer/Procedure/ProcedureBase.cs

@@ -1,6 +1,7 @@
 using AwInitilizer.Assist;
 using AwInitilizer.Interface;
 using AwInitilizer.Model;
+using MesAdaptor;
 using Newtonsoft.Json;
 using System;
 using System.Collections.Generic;
@@ -31,7 +32,7 @@ namespace AwInitilizer.Procedure
         public static UpdateData UpdateData { get; set; }
         public static IIogger Logger { get; set; }
 
-        public Dictionary<string, string> LogPair { get; private set; } = new Dictionary<string, string>();
+        public ValueReportDatas MesLogData { get; private set; } = new ValueReportDatas();
         public List<string> ReportLog { get; private set; } = new List<string>();
 
         internal SerialPortocol serialPortocol { get; private set; }

+ 1 - 1
AwInitilizer/Procedure/RestarttoIdelProcedure.cs

@@ -73,7 +73,7 @@ namespace AwInitilizer.Procedure.RestarttoIdel
                 }
                 else
                 {
-                    LogWriter.Report(LogEvent.IdelCheck, "fail");
+                    LogWriter.Report(LogEvent.IdelCheck, "fail", isError: true);
                     Error = ErrorType.ConnectorNotIdel;
                     return false;
                 }

+ 6 - 1
AwInitilizer/Procedure/WifRssiCheckProcedure.cs

@@ -69,19 +69,24 @@ namespace AwInitilizer.Procedure.WifRssiCheck
         internal async Task<bool> CheckWifiRssi()
         {
             var rssi = await GetWifiRssi();
-            LogWriter.Report(LogEvent.WifiRssi, rssi.ToString());
+            //LogWriter.Report(LogEvent.WifiRssi, rssi.ToString());
             if (rssi == 0)
             {
+                LogWriter.Report(LogEvent.WifiRssi, rssi.ToString(), isError: true);
                 return false;
             }
             else
             {
                 var rssiCheckPass = rssi >= -80;
                 if (rssiCheckPass)
+                {
+                    LogWriter.Report(LogEvent.WifiRssi, rssi.ToString());
                     return true;
+                }
                 else
                 {
                     Error = ErrorType.WifiRssiLow;
+                    LogWriter.Report(LogEvent.WifiRssi, rssi.ToString(), isError: true);
                     return false;
                 }
             }

+ 5 - 4
AwInitilizer/ProcedureLog/LogWriter.cs

@@ -27,7 +27,7 @@ namespace AwInitilizer.ProcedureLog
 
             if (ReportPair != null && ReportPair.ContainsKey(logEvent))
             {
-                MesReport(ReportPair[logEvent], data);
+                MesReport(ReportPair[logEvent], data, !isError);
             }
         }
 
@@ -38,7 +38,7 @@ namespace AwInitilizer.ProcedureLog
 
             Log(log, isError);
 
-            MesReport(logEvent, data);
+            MesReport(logEvent, data, !isError);
         }
 
         public virtual void Log(string data, bool isError = false, bool isDebugLog = false)
@@ -66,9 +66,10 @@ namespace AwInitilizer.ProcedureLog
             return log;
         }
 
-        private void MesReport(string key,string value)
+        private void MesReport(string key,string value, bool isSuccess)
         {
-            source.LogPair[key] = value;
+            //source.MesLogData[key] = value;
+            source.MesLogData.Add(key,value,isSuccess);
         }
 
         private void WriteMyLog(string log)

+ 4 - 4
AwInitilizer/Properties/AssemblyInfo.cs

@@ -50,7 +50,7 @@ using System.Windows;
 //
 // You can specify all the values or you can default the Build and Revision Numbers
 // by using the '*' as shown below:
-// [assembly: AssemblyVersion("1.5.2.0")]
-[assembly: AssemblyVersion("1.5.2.0")]
-[assembly: AssemblyFileVersion("1.5.2.0")]
-[assembly: AssemblyInformationalVersion("10cda34")]
+// [assembly: AssemblyVersion("1.5.8.0")]
+[assembly: AssemblyVersion("1.5.8.0")]
+[assembly: AssemblyFileVersion("1.5.8.0")]
+[assembly: AssemblyInformationalVersion("28c22e0")]

+ 1 - 1
GitVersion.yml

@@ -1,6 +1,6 @@
 assembly-versioning-scheme: MajorMinorPatch
 assembly-informational-format: '{ShortSha}'
-next-version: 1.5.3
+next-version: 1.5.8
 branches: {}
 ignore:
   sha: []

+ 3 - 3
Initilizer/AssemblyInfo.cs

@@ -9,7 +9,7 @@
                                               // app, or any theme specific resource dictionaries)
 )]
 
-[assembly: AssemblyVersion("1.5.2.0")]
-[assembly: AssemblyFileVersion("1.5.2.0")]
-[assembly: AssemblyInformationalVersion("10cda34")]
+[assembly: AssemblyVersion("1.5.8.0")]
+[assembly: AssemblyFileVersion("1.5.8.0")]
+[assembly: AssemblyInformationalVersion("28c22e0")]
 

+ 1 - 1
MesAdaptor/ISajetConnect.cs

@@ -16,7 +16,7 @@ namespace MesAdaptor
         bool SajetTranFinishSuccess();
         bool SajetTranFinishFail(MesErrorCode errorCode);
         string SajetTransRegisterHeader(string model, string header);
-        bool SajetTransReport(Dictionary<string, string> reportPair);
+        bool SajetTransReport(ValueReportDatas reportPair);
         bool SajetTransLog(string data);
     }
 }

+ 1 - 0
MesAdaptor/MesAdaptor.csproj

@@ -53,6 +53,7 @@
     <Compile Include="SajetConnect.cs" />
     <Compile Include="SajetConnectAdapter.cs" />
     <Compile Include="SajetConnectShinewave.cs" />
+    <Compile Include="ValueReportData.cs" />
   </ItemGroup>
   <ItemGroup>
     <None Include="packages.config" />

+ 4 - 4
MesAdaptor/Properties/AssemblyInfo.cs

@@ -31,7 +31,7 @@ using System.Runtime.InteropServices;
 //
 // You can specify all the values or you can default the Build and Revision Numbers
 // by using the '*' as shown below:
-// [assembly: AssemblyVersion("1.5.2.0")]
-[assembly: AssemblyVersion("1.5.2.0")]
-[assembly: AssemblyFileVersion("1.5.2.0")]
-[assembly: AssemblyInformationalVersion("10cda34")]
+// [assembly: AssemblyVersion("1.5.8.0")]
+[assembly: AssemblyVersion("1.5.8.0")]
+[assembly: AssemblyFileVersion("1.5.8.0")]
+[assembly: AssemblyInformationalVersion("28c22e0")]

+ 9 - 9
MesAdaptor/SajectConnectSajet.cs

@@ -138,27 +138,27 @@ namespace MesAdaptor
             return null;
         }
 
-        public bool SajetTransReport(Dictionary<string, string> reportPair)
+        public bool SajetTransReport(ValueReportDatas reportPair)
         {
             //build header
             Dictionary<string, int> valuePairs = new Dictionary<string, int>();
-            foreach (var pair in reportPair)
+            foreach (var data in reportPair)
             {
-                if (int.TryParse(pair.Value, out int val))
+                if (int.TryParse(data.Val, out int val))
                 {
-                    valuePairs.Add(pair.Key, val);
+                    valuePairs.Add(data.Key, val);
                 }
-                else if (pair.Value.ToLower().Contains("fail"))
+                else if (data.Val.ToLower().Contains("fail"))
                 {
-                    valuePairs.Add(pair.Key, 0);
+                    valuePairs.Add(data.Key, 0);
                 }
-                else if (pair.Value.ToLower().Contains("success"))
+                else if (data.Val.ToLower().Contains("success"))
                 {
-                    valuePairs.Add(pair.Key, 1);
+                    valuePairs.Add(data.Key, 1);
                 }
                 else
                 {
-                    valuePairs.Add(string.Format("{0}:{1}", pair.Key, pair.Value), 1);
+                    valuePairs.Add(string.Format("{0}:{1}", data.Key, data.Val), 1);
                 }
             }
             //register Header

+ 18 - 6
MesAdaptor/SajectConnectSajet2.cs

@@ -172,7 +172,7 @@ namespace MesAdaptor
             return "";
         }
 
-        public bool SajetTransReport(Dictionary<string, string> reportPair)
+        public bool SajetTransReport(ValueReportDatas reportDatas)
         {
             if (string.IsNullOrEmpty(userId))
                 return false;
@@ -180,17 +180,29 @@ namespace MesAdaptor
                 return false;
 
             var totalResult = true;
-            foreach (var pair in reportPair)
+
+            foreach (var data in reportDatas)
             {
-                var key = pair.Key;
-                var value = pair.Value;
+                var key = data.Key;
+                var value = data.Val;
+                var isSuccess = data.IsSuccess;
+
+                value = value.Trim();
 
-                if (value.ToLower() == "fail")
+                if (string.IsNullOrEmpty(value))
+                {
+                    value = "empty";
+                }
+                else if (value.ToLower() == "fail")
+                {
                     value = "0";
+                }
                 else if (value.ToLower() == "success")
+                {
                     value = "1";
+                }
 
-                var msg = string.Format("{0};{1};{2};{3};{4}:{5};", userId, _MechineCode, systemID.ModelName.ToString(), systemID.ToString(), key, pair.Value);
+                var msg = string.Format("{0};{1};{2};{3};{4}:{5}:{6};", userId, _MechineCode, systemID.ModelName.ToString(), systemID.ToString(), key, value, isSuccess);
                 var result = SajetTransData(CMD.ValueReport, ref msg);
                 totalResult &= result;
             }

+ 1 - 1
MesAdaptor/SajectConnectTest.cs

@@ -18,7 +18,7 @@ namespace MesAdaptor
 
         public string SajetTransRegisterHeader(string model, string header) => "";
 
-        public bool SajetTransReport(Dictionary<string, string> reportPair) => true;
+        public bool SajetTransReport(ValueReportDatas reportPair) => true;
 
         public bool SajetTransSignIn(ref string data) => true;
 

+ 1 - 1
MesAdaptor/SajetConnect.cs

@@ -28,7 +28,7 @@ namespace MesAdaptor
         public static bool SajetTranFinishSuccess() => Instance.SajetTranFinishSuccess();
         public static bool SajetTranFinishFail(MesErrorCode errorCode) => Instance.SajetTranFinishFail(errorCode);
         public static string SajetTransRegisterHeader(string model, string header) => Instance.SajetTransRegisterHeader(model, header);
-        public static bool SajetTransReport(Dictionary<string, string> reportPair) => Instance.SajetTransReport(reportPair);
+        public static bool SajetTransReport(ValueReportDatas reportPair) => Instance.SajetTransReport(reportPair);
         public static bool SajetTransLog(string data) => Instance.SajetTransLog(data);
     }
 }

+ 2 - 2
MesAdaptor/SajetConnectShinewave.cs

@@ -165,7 +165,7 @@ namespace MesAdaptor
             return null;
         }
 
-        public bool SajetTransReport(Dictionary<string, string> reportPairs)
+        public bool SajetTransReport(ValueReportDatas reportPairs)
         {
             if (string.IsNullOrEmpty(userId))
                 return false;
@@ -177,7 +177,7 @@ namespace MesAdaptor
 
             foreach (var report in reportPairs)
             {
-                msg = string.Format("{0},{1}:{2},", msgHeader, report.Key, report.Value);
+                msg = string.Format("{0},{1}:{2},", msgHeader, report.Key, report.Val);
                 var cmdResult = SajetTransData(CMD.StringValueReport, ref msg);
                 if (!cmdResult)
                     result = false;

+ 74 - 0
MesAdaptor/ValueReportData.cs

@@ -0,0 +1,74 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace MesAdaptor
+{
+    public class ValueReportDatas : IEnumerable<ValueReportData>
+    {
+        public ValueReportDatas()
+        {
+            _valueReportDatas = new List<ValueReportData>();
+        }
+
+        public void Add(string key,string val, bool success)
+        {
+            var data = new ValueReportData(key,val,success);
+            var sameKey = _valueReportDatas.FirstOrDefault(x => x.Key == data.Key);
+            _valueReportDatas.Remove(sameKey);
+            _valueReportDatas.Add(data);
+        }
+
+        public void Add(ValueReportData data)
+        {
+            var sameKey = _valueReportDatas.FirstOrDefault(x=>x.Key == data.Key);
+            _valueReportDatas.Remove(sameKey);
+            _valueReportDatas.Add(data);
+        }
+
+        public void Clear()
+        {
+            _valueReportDatas = new List<ValueReportData>();
+        }
+
+        public IEnumerator<ValueReportData> GetEnumerator()
+        {
+            return _valueReportDatas.GetEnumerator();
+        }
+
+        IEnumerator IEnumerable.GetEnumerator()
+        {
+            return _valueReportDatas.GetEnumerator();
+        }
+
+        public ValueReportData this[string index]
+        {
+            get
+            {
+                return _valueReportDatas.FirstOrDefault(x => x.Key == index);
+            }
+        }
+
+        private List<ValueReportData> _valueReportDatas;
+    }
+
+    public class ValueReportData
+    {
+        public ValueReportData(
+            string key,
+            string val,
+            bool isSuccess)
+        {
+            Key = key;
+            Val = val;
+            IsSuccess = isSuccess;
+        }
+
+        public string Key { get; private set; }
+        public string Val { get; private set; }
+        public bool IsSuccess { get; private set; }
+    }
+}