完善配方下发功能
This commit is contained in:
parent
6f99477de4
commit
504216dfbd
|
@ -0,0 +1,21 @@
|
||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
|
<PropertyGroup>
|
||||||
|
<TargetFrameworks>net7.0</TargetFrameworks>
|
||||||
|
|
||||||
|
<IsPackable>false</IsPackable>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="JetBrains.Annotations" Version="2024.2.0" />
|
||||||
|
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.11.1" />
|
||||||
|
<PackageReference Include="MSTest.TestAdapter" Version="3.5.2" />
|
||||||
|
<PackageReference Include="MSTest.TestFramework" Version="3.5.2" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\MasstransferCommon\MasstransferCommon.csproj" />
|
||||||
|
<ProjectReference Include="..\MasstransferExporter\MasstransferExporter.csproj" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
</Project>
|
|
@ -0,0 +1,21 @@
|
||||||
|
using System.IO;
|
||||||
|
using JetBrains.Annotations;
|
||||||
|
using MasstransferCommon.Utils;
|
||||||
|
using MasstransferExporter.DataExporter.Model;
|
||||||
|
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||||
|
|
||||||
|
namespace MasstransferCommon.Tests.Utils;
|
||||||
|
|
||||||
|
[TestClass]
|
||||||
|
[TestSubject(typeof(JsonUtil))]
|
||||||
|
public class JsonUtilTest
|
||||||
|
{
|
||||||
|
[TestMethod]
|
||||||
|
public void Test()
|
||||||
|
{
|
||||||
|
var json = File.ReadAllText("C:\\Users\\huangxianguo\\Desktop\\formula.json");
|
||||||
|
|
||||||
|
var dto = JsonUtil.FromJson<FormulaDTO>(json);
|
||||||
|
Assert.IsNotNull(dto);
|
||||||
|
}
|
||||||
|
}
|
|
@ -49,6 +49,7 @@ public class JsonUtil
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
|
Console.WriteLine(e);
|
||||||
throw new ArgumentException($" 无效的json 字符串 {json} ");
|
throw new ArgumentException($" 无效的json 字符串 {json} ");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,7 +6,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MasstransferInfrastructure"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MasstransferCommon", "MasstransferCommon\MasstransferCommon.csproj", "{66C6D73C-BADB-4E28-9C83-E701B019626D}"
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MasstransferCommon", "MasstransferCommon\MasstransferCommon.csproj", "{66C6D73C-BADB-4E28-9C83-E701B019626D}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestProject1", "TestProject1\TestProject1.csproj", "{D26C3A44-62AF-4ACC-B454-51E1098C2C86}"
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MasstransferCommon.Tests", "MasstransferCommon.Tests\MasstransferCommon.Tests.csproj", "{DBEDC6E1-AEE6-47FA-A17A-2B412CE99C7C}"
|
||||||
EndProject
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
|
@ -26,9 +26,9 @@ Global
|
||||||
{66C6D73C-BADB-4E28-9C83-E701B019626D}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
{66C6D73C-BADB-4E28-9C83-E701B019626D}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
{66C6D73C-BADB-4E28-9C83-E701B019626D}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
{66C6D73C-BADB-4E28-9C83-E701B019626D}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
{66C6D73C-BADB-4E28-9C83-E701B019626D}.Release|Any CPU.Build.0 = Release|Any CPU
|
{66C6D73C-BADB-4E28-9C83-E701B019626D}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
{D26C3A44-62AF-4ACC-B454-51E1098C2C86}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
{DBEDC6E1-AEE6-47FA-A17A-2B412CE99C7C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
{D26C3A44-62AF-4ACC-B454-51E1098C2C86}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
{DBEDC6E1-AEE6-47FA-A17A-2B412CE99C7C}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
{D26C3A44-62AF-4ACC-B454-51E1098C2C86}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
{DBEDC6E1-AEE6-47FA-A17A-2B412CE99C7C}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
{D26C3A44-62AF-4ACC-B454-51E1098C2C86}.Release|Any CPU.Build.0 = Release|Any CPU
|
{DBEDC6E1-AEE6-47FA-A17A-2B412CE99C7C}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
EndGlobal
|
EndGlobal
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
|
||||||
|
<s:String x:Key="/Default/Environment/UnitTesting/CreateUnitTestDialog/TestProjectMapping/=66C6D73C_002DBADB_002D4E28_002D9C83_002DE701B019626D/@EntryIndexedValue">MasstransferCommon.Tests</s:String>
|
||||||
|
<s:String x:Key="/Default/Environment/UnitTesting/CreateUnitTestDialog/TestTemplateMapping/=MSTest/@EntryIndexedValue">d6790ab7-33c2-4425-b2c9-51480cd1a852</s:String>
|
||||||
|
<s:String x:Key="/Default/Environment/UnitTesting/UnitTestSessionStore/Sessions/=df21ed25_002D5064_002D4b51_002D96dd_002D1d6a1eb4ab6c/@EntryIndexedValue"><SessionState ContinuousTestingMode="0" IsActive="True" Name="Test" xmlns="urn:schemas-jetbrains-com:jetbrains-ut-session">
|
||||||
|
<TestAncestor>
|
||||||
|
<TestId>MSTest::DBEDC6E1-AEE6-47FA-A17A-2B412CE99C7C::net7.0::MasstransferCommon.Tests.Utils.JsonUtilTest.Test</TestId>
|
||||||
|
</TestAncestor>
|
||||||
|
</SessionState></s:String></wpf:ResourceDictionary>
|
|
@ -1,6 +1,8 @@
|
||||||
using MasstransferCommon.Atrributes;
|
using MasstransferCommon.Atrributes;
|
||||||
using MasstransferCommon.Events;
|
using MasstransferCommon.Events;
|
||||||
|
using MasstransferCommon.Model.Constant;
|
||||||
using MasstransferCommon.Utils;
|
using MasstransferCommon.Utils;
|
||||||
|
using MasstransferCommunicate.Mqtt.Client;
|
||||||
using MasstransferExporter.DataExporter.Model;
|
using MasstransferExporter.DataExporter.Model;
|
||||||
using Masuit.Tools;
|
using Masuit.Tools;
|
||||||
|
|
||||||
|
@ -16,7 +18,7 @@ public class ConfigService : Instant
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private static async Task ListenConfigIssuedEvent(EventType type, bool start)
|
private static async Task ListenConfigIssuedEvent(EventType type, bool start)
|
||||||
{
|
{
|
||||||
// await MessageQueueHelper.Subscribe(Topics.DownloadConfigData, HandleConfigIssuedEvent);
|
await MessageQueueHelper.Subscribe(Topics.DownloadConfigData, HandleConfigIssuedEvent);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -25,7 +27,7 @@ public class ConfigService : Instant
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="topic"></param>
|
/// <param name="topic"></param>
|
||||||
/// <param name="data"></param>
|
/// <param name="data"></param>
|
||||||
private static void HandleConfigIssuedEvent(string topic, ConfigData data)
|
private static void HandleConfigIssuedEvent(string topic, ConfigData<object> data)
|
||||||
{
|
{
|
||||||
if (data.IsNullOrEmpty()) return;
|
if (data.IsNullOrEmpty()) return;
|
||||||
|
|
||||||
|
@ -38,7 +40,12 @@ public class ConfigService : Instant
|
||||||
case "FORMULA":
|
case "FORMULA":
|
||||||
{
|
{
|
||||||
var param = data.Param;
|
var param = data.Param;
|
||||||
var formulaDto = JsonUtil.FromJson<FormulaDTO>(JsonUtil.ToJson(param));
|
var formulaDto = JsonUtil.FromJson<FormulaDTO>(param.ToString());
|
||||||
|
if (formulaDto != null)
|
||||||
|
{
|
||||||
|
formulaDto.Name = data.Name;
|
||||||
|
}
|
||||||
|
|
||||||
FormulaService.HandleFormulaIssuedEvent(formulaDto);
|
FormulaService.HandleFormulaIssuedEvent(formulaDto);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
@ -263,7 +263,7 @@ public class FormulaService
|
||||||
{
|
{
|
||||||
var formulaDto = GetFormulaById(formula.Id);
|
var formulaDto = GetFormulaById(formula.Id);
|
||||||
if (formulaDto == null) continue;
|
if (formulaDto == null) continue;
|
||||||
var data = new ConfigData()
|
var data = new ConfigData<FormulaDTO>()
|
||||||
{
|
{
|
||||||
Name = formulaDto.Name,
|
Name = formulaDto.Name,
|
||||||
Param = formulaDto,
|
Param = formulaDto,
|
||||||
|
|
|
@ -5,11 +5,11 @@ namespace MasstransferExporter.DataExporter.Model;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 配置数据
|
/// 配置数据
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class ConfigData
|
public class ConfigData<T>
|
||||||
{
|
{
|
||||||
[JsonProperty("name")] public string Name { get; set; }
|
[JsonProperty("name")] public string Name { get; set; }
|
||||||
|
|
||||||
[JsonProperty("type")] public string Type { get; set; }
|
[JsonProperty("type")] public string Type { get; set; }
|
||||||
|
|
||||||
[JsonProperty("param")] public object Param { get; set; }
|
[JsonProperty("param")] public T? Param { get; set; }
|
||||||
}
|
}
|
|
@ -19,12 +19,12 @@ public class SystemParamsService
|
||||||
/// 处理下发的系统配置参数
|
/// 处理下发的系统配置参数
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="data"></param>
|
/// <param name="data"></param>
|
||||||
public static void HandleSystemParamsIssuedEvent(ConfigData data)
|
public static void HandleSystemParamsIssuedEvent(ConfigData<object> data)
|
||||||
{
|
{
|
||||||
if (data.IsNullOrEmpty()) return;
|
if (data.IsNullOrEmpty()) return;
|
||||||
|
|
||||||
var name = data.Name;
|
var name = data.Name;
|
||||||
var param = JsonUtil.ToJson(data.Param);
|
var param = data?.Param?.ToString();
|
||||||
switch (name)
|
switch (name)
|
||||||
{
|
{
|
||||||
case "相机配置":
|
case "相机配置":
|
||||||
|
@ -125,55 +125,55 @@ public class SystemParamsService
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
var cameraParams = new ConfigData()
|
var cameraParams = new ConfigData<CameraParams>()
|
||||||
{
|
{
|
||||||
Name = "相机配置",
|
Name = "相机配置",
|
||||||
Param = GetCameraParams(),
|
Param = GetCameraParams(),
|
||||||
Type = "SYSTEM"
|
Type = "SYSTEM"
|
||||||
};
|
};
|
||||||
|
|
||||||
var substrateCameraInternalParams = new ConfigData()
|
var substrateCameraInternalParams = new ConfigData<CameraInternalParams>()
|
||||||
{
|
{
|
||||||
Name = "基板拍照相机内参",
|
Name = "基板拍照相机内参",
|
||||||
Param = GetSubstrateParams(),
|
Param = GetSubstrateParams(),
|
||||||
Type = "SYSTEM"
|
Type = "SYSTEM"
|
||||||
};
|
};
|
||||||
|
|
||||||
var waferCameraInternalParams = new ConfigData()
|
var waferCameraInternalParams = new ConfigData<CameraInternalParams>()
|
||||||
{
|
{
|
||||||
Name = "芯片拍照相机内参",
|
Name = "芯片拍照相机内参",
|
||||||
Param = GetWaferParams(),
|
Param = GetWaferParams(),
|
||||||
Type = "SYSTEM"
|
Type = "SYSTEM"
|
||||||
};
|
};
|
||||||
var logParams = new ConfigData()
|
var logParams = new ConfigData<LogParams>()
|
||||||
{
|
{
|
||||||
Name = "日志配置",
|
Name = "日志配置",
|
||||||
Param = GetLogParams(),
|
Param = GetLogParams(),
|
||||||
Type = "SYSTEM"
|
Type = "SYSTEM"
|
||||||
};
|
};
|
||||||
|
|
||||||
var systemParams = new ConfigData()
|
var systemParams = new ConfigData<SystemParams>()
|
||||||
{
|
{
|
||||||
Name = "系统配置",
|
Name = "系统配置",
|
||||||
Param = GetSystemParams(),
|
Param = GetSystemParams(),
|
||||||
Type = "SYSTEM"
|
Type = "SYSTEM"
|
||||||
};
|
};
|
||||||
|
|
||||||
var scannerParams = new ConfigData()
|
var scannerParams = new ConfigData<ScannerParams>()
|
||||||
{
|
{
|
||||||
Name = "扫描器配置",
|
Name = "扫描器配置",
|
||||||
Param = GetScannerParams(),
|
Param = GetScannerParams(),
|
||||||
Type = "SYSTEM"
|
Type = "SYSTEM"
|
||||||
};
|
};
|
||||||
|
|
||||||
var minioParams = new ConfigData()
|
var minioParams = new ConfigData<MinioParams>()
|
||||||
{
|
{
|
||||||
Name = "MinIO配置",
|
Name = "MinIO配置",
|
||||||
Param = GetMinioParams(),
|
Param = GetMinioParams(),
|
||||||
Type = "SYSTEM"
|
Type = "SYSTEM"
|
||||||
};
|
};
|
||||||
|
|
||||||
var mqttParams = new ConfigData()
|
var mqttParams = new ConfigData<MqttParams>()
|
||||||
{
|
{
|
||||||
Name = "MQTT配置",
|
Name = "MQTT配置",
|
||||||
Param = GetMqttConnectParams(),
|
Param = GetMqttConnectParams(),
|
||||||
|
|
Loading…
Reference in New Issue