shayne_lo 5 달 전
부모
커밋
6d350b1421

+ 3 - 0
ApiTest/MainWindow.xaml

@@ -73,6 +73,9 @@
                 <Button Margin="5" Click="ReStart_Click">
                     <TextBlock Text="ReStart" />
                 </Button>
+                <Button Margin="5" Click="BtnStatus_Click">
+                    <TextBlock Text="BtnStatus" />
+                </Button>
             </StackPanel>
             <TextBox
                 x:Name="uxResult"

+ 8 - 0
ApiTest/MainWindow.xaml.cs

@@ -149,5 +149,13 @@ namespace ApiTest
             var result = await EvApi.Restart();
             uxResult.Text = JsonConvert.SerializeObject(result.Result);
         }
+
+        private async void BtnStatus_Click(object sender, RoutedEventArgs e)
+        {
+            TryUpdateConfig();
+
+            var result = await EvApi.GetButtonStatus();
+            uxResult.Text = JsonConvert.SerializeObject(result.Result);
+        }
     }
 }

+ 4 - 4
ApiTest/Properties/AssemblyInfo.cs

@@ -50,7 +50,7 @@ using System.Windows;
 //
 // 您可以指定所有的值,也可以使用 '*' 將組建和修訂編號
 // 設為預設,如下所示:
-// [assembly: AssemblyVersion("1.13.6.0")]
-[assembly: AssemblyVersion("1.13.6.0")]
-[assembly: AssemblyFileVersion("1.13.6.0")]
-[assembly: AssemblyInformationalVersion("bc04449")]
+// [assembly: AssemblyVersion("1.14.2.0")]
+[assembly: AssemblyVersion("1.14.2.0")]
+[assembly: AssemblyFileVersion("1.14.2.0")]
+[assembly: AssemblyInformationalVersion("d85d388")]

+ 9 - 0
AwInitilizer/Converter/MesErrorCodeMaper.cs

@@ -30,6 +30,8 @@ namespace AwInitilizer.Converter
                     return GetMesErrorCode((Procedure.RestarttoIdle.RestarttoIdleProcedure)procedure);
                 case "VersionLogProcedure":
                     return GetMesErrorCode((Procedure.VersionLog.VersionLogProcedure)procedure);
+                case "MacAddressLogProcedure":
+                    return GetMesErrorCode((Procedure.MacAddressLog.MacAddressLogProcedure)procedure);
                 default:
                     return MesErrorCode.None;
             }
@@ -150,5 +152,12 @@ namespace AwInitilizer.Converter
                 return MesErrorCode.ChargerConnectFail;
             return MesErrorCode.None;
         }
+
+        public static MesErrorCode GetMesErrorCode(Procedure.MacAddressLog.MacAddressLogProcedure procedure)
+        {
+            if (procedure.Error == Procedure.MacAddressLog.MacAddressLogProcedure.ErrorType.ReadNetworkFail)
+                return MesErrorCode.ChargerConnectFail;
+            return MesErrorCode.None;
+        }
     }
 }

+ 3 - 2
AwInitilizer/Initializer.csproj

@@ -68,8 +68,8 @@
     <Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
       <HintPath>..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
     </Reference>
-    <Reference Include="PhihongEv.Lib, Version=1.5.1.0, Culture=neutral, processorArchitecture=MSIL">
-      <HintPath>..\packages\PhihongEv.Lib.1.5.1\lib\net40\PhihongEv.Lib.dll</HintPath>
+    <Reference Include="PhihongEv.Lib, Version=1.6.0.0, Culture=neutral, processorArchitecture=MSIL">
+      <HintPath>..\packages\PhihongEv.Lib.1.6.0\lib\net40\PhihongEv.Lib.dll</HintPath>
     </Reference>
     <Reference Include="RestSharp, Version=106.15.0.0, Culture=neutral, PublicKeyToken=598062e77f915f75, processorArchitecture=MSIL">
       <HintPath>..\packages\RestSharp.106.15.0\lib\net452\RestSharp.dll</HintPath>
@@ -124,6 +124,7 @@
     <Compile Include="Procedure\FirmwareCheckVersionProcedure.cs" />
     <Compile Include="Procedure\FirmwareUploadProcedure.cs" />
     <Compile Include="Procedure\DsiableChargeAuthProcedure.cs" />
+    <Compile Include="Procedure\MacAddressLogProcedure.cs" />
     <Compile Include="Procedure\VersionLogProcedure.cs" />
     <Compile Include="Procedure\TelcomModemImeiRecordProcedure.cs" />
     <Compile Include="Procedure\WifRssiCheckProcedure.cs" />

+ 1 - 0
AwInitilizer/MainWindow.xaml.cs

@@ -764,6 +764,7 @@ namespace AwInitilizer
             procedures.Add(new Procedure.ButtonStatusCheck.ButtonStatusCheckPorcedure());
             procedures.Add(new Procedure.RestarttoIdle.RestarttoIdleProcedure());
             procedures.Add(new Procedure.VersionLog.VersionLogProcedure());
+            procedures.Add(new Procedure.MacAddressLog.MacAddressLogProcedure());
             if (ViewModel.IsDisableAuthRequired)
             {
                 procedures.Add(new Procedure.FactoryAssist.DsiableChargeAuthProcedure());

+ 16 - 9
AwInitilizer/Procedure/ButtonStatusCheckPorcedure.cs

@@ -282,17 +282,24 @@ namespace AwInitilizer.Procedure.ButtonStatusCheck
 
         private bool CheckBtnStatus(int btnInt, ButtonStatus buttonStatus)
         {
-            if (buttonStatus.Button1 == (btnInt == 0 ? 1 : 0) &&
-                buttonStatus.Button2 == (btnInt == 1 ? 1 : 0) &&
-                buttonStatus.EmergencyButton == (btnInt == 2 ? 1 : 0))
-            {
-                //Status correct
-                return true;
+            if (UpdateData.ButtonTestMode != ButtonTestModeType.SkipNormalButton)
+            {
+                if (buttonStatus.Button1 == (btnInt == 0 ? 0 : 1) ||
+                    buttonStatus.Button2 == (btnInt == 1 ? 0 : 1))
+                {
+                    return false; 
+                }
             }
-            else
-            {
-                return false;
+
+            if (UpdateData.ButtonTestMode != ButtonTestModeType.SkipEmergencyButton)
+            {
+                if (buttonStatus.EmergencyButton == (btnInt == 2 ? 0 : 1))
+                {
+                    return false;
+                }
             }
+
+            return true;
         }
 
         private void ShowEmergencyBtnPressRequestDialog(string imgUrl)

+ 88 - 0
AwInitilizer/Procedure/MacAddressLogProcedure.cs

@@ -0,0 +1,88 @@
+using AwInitilizer.Procedure.VersionLog;
+using AwInitilizer.ProcedureLog;
+using CsuWebApiLib;
+using Newtonsoft.Json;
+using PhihongEv.Lib;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace AwInitilizer.Procedure.MacAddressLog
+{
+    public class MacAddressLogProcedure : ProcedureBase
+    {
+        public MacAddressLogProcedure() : base()
+        {
+            Name = "MacAddress Logger";
+            Content = "Record MacAddress";
+
+            LogWriter = new ProcedureLog.LogWriter<MacAddressLogProcedure, LogEvent>(this);
+        }
+
+        public enum ErrorType
+        {
+            None,
+            ReadNetworkFail,
+        }
+
+        public enum LogEvent
+        {
+        }
+
+        public ErrorType Error { get; set; } = ErrorType.None;
+
+        private ProcedureLog.LogWriter<MacAddressLogProcedure, LogEvent> LogWriter;
+
+        internal override async Task<bool> Run()
+        {
+            var getNetwork = await EvHttpClient.GetQueryActionOpt3String();
+
+            if (getNetwork is null)
+            {
+                Error = ErrorType.ReadNetworkFail;
+                return false;
+            }
+
+            LogWriter.Log(getNetwork.Msg, isDebugLog: true);
+
+            if (!getNetwork.IsSuccess)
+            {
+                Error = ErrorType.ReadNetworkFail;
+                return false;
+            }
+
+            var getNetworkPairs = JsonConvert.DeserializeObject<Dictionary<string, object>>(getNetwork.Msg);
+
+            if (UpdateData.SystemID.ModelName.GetWiFiCnt() != 0)
+            {
+                string wifiMacAddressKey = "WifiMacAddress";
+                string wifiMacAddress = GetValueFromGetNetwork(wifiMacAddressKey, getNetworkPairs);
+                LogWriter.Report(wifiMacAddressKey, wifiMacAddress);
+            }
+
+            var ethernetCnt = UpdateData.SystemID.ModelName.GetEthernetCnt();
+            for (int ethernetIndex = 0; ethernetIndex < ethernetCnt; ethernetIndex++)
+            {
+                string ethernetMacAddressKey = $"Eth{ethernetIndex}MacAddress";
+                string wifiMacAddress = GetValueFromGetNetwork(ethernetMacAddressKey, getNetworkPairs);
+                LogWriter.Report(ethernetMacAddressKey, wifiMacAddress);
+            }
+
+            return true;
+        }
+
+        private string GetValueFromGetNetwork(string key, Dictionary<string, object> getNetwork)
+        {
+            if (getNetwork is null ||
+                !getNetwork.ContainsKey(key) ||
+                !(getNetwork[key] is string val))
+            {
+                return null;
+            }
+
+            return val;
+        }
+    }
+}

+ 4 - 4
AwInitilizer/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.13.6.0")]
-[assembly: AssemblyVersion("1.13.6.0")]
-[assembly: AssemblyFileVersion("1.13.6.0")]
-[assembly: AssemblyInformationalVersion("bc04449")]
+// [assembly: AssemblyVersion("1.14.2.0")]
+[assembly: AssemblyVersion("1.14.2.0")]
+[assembly: AssemblyFileVersion("1.14.2.0")]
+[assembly: AssemblyInformationalVersion("d85d388")]

+ 1 - 1
AwInitilizer/packages.config

@@ -4,7 +4,7 @@
   <package id="FluentModbus" version="5.2.0" targetFramework="net48" />
   <package id="Microsoft.Extensions.Logging.Abstractions" version="5.0.0" targetFramework="net48" />
   <package id="Newtonsoft.Json" version="13.0.3" targetFramework="net48" />
-  <package id="PhihongEv.Lib" version="1.5.1" targetFramework="net48" />
+  <package id="PhihongEv.Lib" version="1.6.0" targetFramework="net48" />
   <package id="RestSharp" version="106.15.0" targetFramework="net48" />
   <package id="System.Buffers" version="4.5.1" targetFramework="net48" />
   <package id="System.IO.Ports" version="5.0.0" targetFramework="net48" />

+ 4 - 4
ConfigEditor/Properties/AssemblyInfo.cs

@@ -50,7 +50,7 @@ using System.Windows;
 //
 // 您可以指定所有的值,也可以使用 '*' 將組建和修訂編號
 // 設為預設,如下所示:
-// [assembly: AssemblyVersion("1.13.6.0")]
-[assembly: AssemblyVersion("1.13.6.0")]
-[assembly: AssemblyFileVersion("1.13.6.0")]
-[assembly: AssemblyInformationalVersion("bc04449")]
+// [assembly: AssemblyVersion("1.14.2.0")]
+[assembly: AssemblyVersion("1.14.2.0")]
+[assembly: AssemblyFileVersion("1.14.2.0")]
+[assembly: AssemblyInformationalVersion("d85d388")]

+ 4 - 4
CsuWebApiLib/Properties/AssemblyInfo.cs

@@ -31,7 +31,7 @@ using System.Runtime.InteropServices;
 //
 // 您可以指定所有的值,也可以使用 '*' 將組建和修訂編號
 // 設為預設,如下所示:
-// [assembly: AssemblyVersion("1.13.6.0")]
-[assembly: AssemblyVersion("1.13.6.0")]
-[assembly: AssemblyFileVersion("1.13.6.0")]
-[assembly: AssemblyInformationalVersion("bc04449")]
+// [assembly: AssemblyVersion("1.14.2.0")]
+[assembly: AssemblyVersion("1.14.2.0")]
+[assembly: AssemblyFileVersion("1.14.2.0")]
+[assembly: AssemblyInformationalVersion("d85d388")]

+ 4 - 4
Editor/Properties/AssemblyInfo.cs

@@ -50,7 +50,7 @@ using System.Windows;
 //
 // 您可以指定所有的值,也可以使用 '*' 將組建和修訂編號
 // 設為預設,如下所示:
-// [assembly: AssemblyVersion("1.13.6.0")]
-[assembly: AssemblyVersion("1.13.6.0")]
-[assembly: AssemblyFileVersion("1.13.6.0")]
-[assembly: AssemblyInformationalVersion("bc04449")]
+// [assembly: AssemblyVersion("1.14.2.0")]
+[assembly: AssemblyVersion("1.14.2.0")]
+[assembly: AssemblyFileVersion("1.14.2.0")]
+[assembly: AssemblyInformationalVersion("d85d388")]

+ 1 - 1
GitVersion.yml

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

+ 4 - 4
InitializerModel/Properties/AssemblyInfo.cs

@@ -31,7 +31,7 @@ using System.Runtime.InteropServices;
 //
 // 您可以指定所有的值,也可以使用 '*' 將組建和修訂編號
 // 設為預設,如下所示:
-// [assembly: AssemblyVersion("1.13.6.0")]
-[assembly: AssemblyVersion("1.13.6.0")]
-[assembly: AssemblyFileVersion("1.13.6.0")]
-[assembly: AssemblyInformationalVersion("bc04449")]
+// [assembly: AssemblyVersion("1.14.2.0")]
+[assembly: AssemblyVersion("1.14.2.0")]
+[assembly: AssemblyFileVersion("1.14.2.0")]
+[assembly: AssemblyInformationalVersion("d85d388")]

+ 3 - 3
Initilizer/AssemblyInfo.cs

@@ -9,7 +9,7 @@
                                               // app, or any theme specific resource dictionaries)
 )]
 
-[assembly: AssemblyVersion("1.13.6.0")]
-[assembly: AssemblyFileVersion("1.13.6.0")]
-[assembly: AssemblyInformationalVersion("bc04449")]
+[assembly: AssemblyVersion("1.14.2.0")]
+[assembly: AssemblyFileVersion("1.14.2.0")]
+[assembly: AssemblyInformationalVersion("d85d388")]
 

+ 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.13.6.0")]
-[assembly: AssemblyVersion("1.13.6.0")]
-[assembly: AssemblyFileVersion("1.13.6.0")]
-[assembly: AssemblyInformationalVersion("bc04449")]
+// [assembly: AssemblyVersion("1.14.2.0")]
+[assembly: AssemblyVersion("1.14.2.0")]
+[assembly: AssemblyFileVersion("1.14.2.0")]
+[assembly: AssemblyInformationalVersion("d85d388")]