完善系统参数下发功能
This commit is contained in:
parent
504216dfbd
commit
e5c23c26ef
|
@ -35,12 +35,16 @@ public class ConfigService : Instant
|
||||||
switch (type)
|
switch (type)
|
||||||
{
|
{
|
||||||
case "SYSTEM":
|
case "SYSTEM":
|
||||||
SystemParamsService.HandleSystemParamsIssuedEvent(data);
|
var systemParamsDto = JsonUtil.FromJson<SystemParamsDTO>(data.Param.ToString());
|
||||||
|
if (systemParamsDto != null)
|
||||||
|
{
|
||||||
|
SystemParamsService.HandleSystemParamsIssuedEvent(systemParamsDto);
|
||||||
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case "FORMULA":
|
case "FORMULA":
|
||||||
{
|
{
|
||||||
var param = data.Param;
|
var formulaDto = JsonUtil.FromJson<FormulaDTO>(data.Param.ToString());
|
||||||
var formulaDto = JsonUtil.FromJson<FormulaDTO>(param.ToString());
|
|
||||||
if (formulaDto != null)
|
if (formulaDto != null)
|
||||||
{
|
{
|
||||||
formulaDto.Name = data.Name;
|
formulaDto.Name = data.Name;
|
||||||
|
|
|
@ -5,19 +5,19 @@
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class SystemParamsDTO
|
public class SystemParamsDTO
|
||||||
{
|
{
|
||||||
public CameraParams CameraParams { get; set; }
|
public CameraParams? CameraParams { get; set; }
|
||||||
|
|
||||||
public SystemParams SystemParams { get; set; }
|
public SystemParams? SystemParams { get; set; }
|
||||||
|
|
||||||
public LogParams LogParams { get; set; }
|
public LogParams? LogParams { get; set; }
|
||||||
|
|
||||||
public ScannerParams ScannerParams { get; set; }
|
public ScannerParams? ScannerParams { get; set; }
|
||||||
|
|
||||||
public CameraInternalParams WaferCameraInternalParams { get; set; }
|
public CameraInternalParams? WaferCameraInternalParams { get; set; }
|
||||||
|
|
||||||
public CameraInternalParams SubstrateCameraInternalParams { get; set; }
|
public CameraInternalParams? SubstrateCameraInternalParams { get; set; }
|
||||||
|
|
||||||
public MinioParams MinioParams { get; set; }
|
public MinioParams? MinioParams { get; set; }
|
||||||
|
|
||||||
public MqttParams MqttParams { get; set; }
|
public MqttParams? MqttParams { get; set; }
|
||||||
}
|
}
|
|
@ -1,5 +1,4 @@
|
||||||
using MasstransferCommon.Model.Constant;
|
using MasstransferCommon.Model.Constant;
|
||||||
using MasstransferCommon.Utils;
|
|
||||||
using MasstransferCommunicate.Mqtt.Client;
|
using MasstransferCommunicate.Mqtt.Client;
|
||||||
using MasstransferExporter.DataExporter.Model;
|
using MasstransferExporter.DataExporter.Model;
|
||||||
using MasstransferInfrastructure.Database.Sqlite;
|
using MasstransferInfrastructure.Database.Sqlite;
|
||||||
|
@ -19,17 +18,14 @@ public class SystemParamsService
|
||||||
/// 处理下发的系统配置参数
|
/// 处理下发的系统配置参数
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="data"></param>
|
/// <param name="data"></param>
|
||||||
public static void HandleSystemParamsIssuedEvent(ConfigData<object> data)
|
public static void HandleSystemParamsIssuedEvent(SystemParamsDTO dto)
|
||||||
{
|
{
|
||||||
if (data.IsNullOrEmpty()) return;
|
if (dto.IsNullOrEmpty()) return;
|
||||||
|
|
||||||
var name = data.Name;
|
|
||||||
var param = data?.Param?.ToString();
|
if (dto?.CameraParams != null)
|
||||||
switch (name)
|
|
||||||
{
|
{
|
||||||
case "相机配置":
|
var cameraParams = dto.CameraParams;
|
||||||
var cameraParams = JsonUtil.FromJson<CameraParams>(param);
|
|
||||||
if (cameraParams == null) break;
|
|
||||||
var cameraParamsFromDb = GetCameraParams();
|
var cameraParamsFromDb = GetCameraParams();
|
||||||
if (cameraParamsFromDb != null)
|
if (cameraParamsFromDb != null)
|
||||||
{
|
{
|
||||||
|
@ -37,10 +33,11 @@ public class SystemParamsService
|
||||||
}
|
}
|
||||||
|
|
||||||
Db.SaveOrUpdate(cameraParams);
|
Db.SaveOrUpdate(cameraParams);
|
||||||
break;
|
}
|
||||||
case "日志配置":
|
|
||||||
var logParams = JsonUtil.FromJson<LogParams>(param);
|
if (dto?.LogParams != null)
|
||||||
if (logParams == null) break;
|
{
|
||||||
|
var logParams = dto.LogParams;
|
||||||
var logParamsFromDb = GetLogParams();
|
var logParamsFromDb = GetLogParams();
|
||||||
if (logParamsFromDb != null)
|
if (logParamsFromDb != null)
|
||||||
{
|
{
|
||||||
|
@ -48,32 +45,11 @@ public class SystemParamsService
|
||||||
}
|
}
|
||||||
|
|
||||||
Db.SaveOrUpdate(logParams);
|
Db.SaveOrUpdate(logParams);
|
||||||
break;
|
|
||||||
case "系统配置":
|
|
||||||
var systemParams = JsonUtil.FromJson<SystemParams>(param);
|
|
||||||
if (systemParams == null) break;
|
|
||||||
var systemParamsFromDb = GetSystemParams();
|
|
||||||
if (systemParamsFromDb != null)
|
|
||||||
{
|
|
||||||
systemParams.Id = systemParamsFromDb.Id;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Db.SaveOrUpdate(systemParams);
|
if (dto?.MinioParams != null)
|
||||||
break;
|
|
||||||
case "扫描器配置":
|
|
||||||
var scannerParams = JsonUtil.FromJson<ScannerParams>(param);
|
|
||||||
if (scannerParams == null) break;
|
|
||||||
var scannerParamsFromDb = GetScannerParams();
|
|
||||||
if (scannerParamsFromDb != null)
|
|
||||||
{
|
{
|
||||||
scannerParams.Id = scannerParamsFromDb.Id;
|
var minioParams = dto.MinioParams;
|
||||||
}
|
|
||||||
|
|
||||||
Db.SaveOrUpdate(scannerParams);
|
|
||||||
break;
|
|
||||||
case "MinIO配置":
|
|
||||||
var minioParams = JsonUtil.FromJson<MinioParams>(param);
|
|
||||||
if (minioParams == null) break;
|
|
||||||
var minioParamsFromDb = GetMinioParams();
|
var minioParamsFromDb = GetMinioParams();
|
||||||
if (minioParamsFromDb != null)
|
if (minioParamsFromDb != null)
|
||||||
{
|
{
|
||||||
|
@ -81,10 +57,11 @@ public class SystemParamsService
|
||||||
}
|
}
|
||||||
|
|
||||||
Db.SaveOrUpdate(minioParams);
|
Db.SaveOrUpdate(minioParams);
|
||||||
break;
|
}
|
||||||
case "MQTT配置":
|
|
||||||
var mqttParams = JsonUtil.FromJson<MqttParams>(param);
|
if (dto?.MqttParams != null)
|
||||||
if (mqttParams == null) break;
|
{
|
||||||
|
var mqttParams = dto.MqttParams;
|
||||||
var mqttParamsFromDb = GetMqttConnectParams();
|
var mqttParamsFromDb = GetMqttConnectParams();
|
||||||
if (mqttParamsFromDb != null)
|
if (mqttParamsFromDb != null)
|
||||||
{
|
{
|
||||||
|
@ -92,10 +69,23 @@ public class SystemParamsService
|
||||||
}
|
}
|
||||||
|
|
||||||
Db.SaveOrUpdate(mqttParams);
|
Db.SaveOrUpdate(mqttParams);
|
||||||
break;
|
}
|
||||||
case "基板拍照相机内参":
|
|
||||||
var waferCameraInternalParams = JsonUtil.FromJson<CameraInternalParams>(param);
|
if (dto?.ScannerParams != null)
|
||||||
if (waferCameraInternalParams == null) break;
|
{
|
||||||
|
var scannerParams = dto.ScannerParams;
|
||||||
|
var scannerParamsFromDb = GetScannerParams();
|
||||||
|
if (scannerParamsFromDb != null)
|
||||||
|
{
|
||||||
|
scannerParams.Id = scannerParamsFromDb.Id;
|
||||||
|
}
|
||||||
|
|
||||||
|
Db.SaveOrUpdate(scannerParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (dto?.WaferCameraInternalParams != null)
|
||||||
|
{
|
||||||
|
var waferCameraInternalParams = dto.WaferCameraInternalParams;
|
||||||
var waferCameraInternalParamsFromDb = GetWaferParams();
|
var waferCameraInternalParamsFromDb = GetWaferParams();
|
||||||
if (waferCameraInternalParamsFromDb != null)
|
if (waferCameraInternalParamsFromDb != null)
|
||||||
{
|
{
|
||||||
|
@ -103,10 +93,11 @@ public class SystemParamsService
|
||||||
}
|
}
|
||||||
|
|
||||||
Db.SaveOrUpdate(waferCameraInternalParams);
|
Db.SaveOrUpdate(waferCameraInternalParams);
|
||||||
break;
|
}
|
||||||
case "基板拍照相机外参":
|
|
||||||
var substrateCameraInternalParams = JsonUtil.FromJson<CameraInternalParams>(param);
|
if (dto?.SubstrateCameraInternalParams == null) return;
|
||||||
if (substrateCameraInternalParams == null) break;
|
|
||||||
|
var substrateCameraInternalParams = dto.SubstrateCameraInternalParams;
|
||||||
var substrateCameraInternalParamsFromDb = GetSubstrateParams();
|
var substrateCameraInternalParamsFromDb = GetSubstrateParams();
|
||||||
if (substrateCameraInternalParamsFromDb != null)
|
if (substrateCameraInternalParamsFromDb != null)
|
||||||
{
|
{
|
||||||
|
@ -114,80 +105,35 @@ public class SystemParamsService
|
||||||
}
|
}
|
||||||
|
|
||||||
Db.SaveOrUpdate(substrateCameraInternalParams);
|
Db.SaveOrUpdate(substrateCameraInternalParams);
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 系统参数上报
|
/// 系统参数上报
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static async Task SystemParamsExporter()
|
public static async Task ExportSystemParams()
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
var cameraParams = new ConfigData<CameraParams>()
|
var dto = new SystemParamsDTO()
|
||||||
{
|
{
|
||||||
Name = "相机配置",
|
CameraParams = GetCameraParams(),
|
||||||
Param = GetCameraParams(),
|
SubstrateCameraInternalParams = GetSubstrateParams(),
|
||||||
Type = "SYSTEM"
|
WaferCameraInternalParams = GetWaferParams(),
|
||||||
|
LogParams = GetLogParams(),
|
||||||
|
MinioParams = GetMinioParams(),
|
||||||
|
MqttParams = GetMqttConnectParams(),
|
||||||
|
ScannerParams = GetScannerParams(),
|
||||||
|
SystemParams = GetSystemParams(),
|
||||||
};
|
};
|
||||||
|
|
||||||
var substrateCameraInternalParams = new ConfigData<CameraInternalParams>()
|
var systemParams = new ConfigData<SystemParamsDTO>()
|
||||||
{
|
|
||||||
Name = "基板拍照相机内参",
|
|
||||||
Param = GetSubstrateParams(),
|
|
||||||
Type = "SYSTEM"
|
|
||||||
};
|
|
||||||
|
|
||||||
var waferCameraInternalParams = new ConfigData<CameraInternalParams>()
|
|
||||||
{
|
|
||||||
Name = "芯片拍照相机内参",
|
|
||||||
Param = GetWaferParams(),
|
|
||||||
Type = "SYSTEM"
|
|
||||||
};
|
|
||||||
var logParams = new ConfigData<LogParams>()
|
|
||||||
{
|
|
||||||
Name = "日志配置",
|
|
||||||
Param = GetLogParams(),
|
|
||||||
Type = "SYSTEM"
|
|
||||||
};
|
|
||||||
|
|
||||||
var systemParams = new ConfigData<SystemParams>()
|
|
||||||
{
|
{
|
||||||
Name = "系统配置",
|
Name = "系统配置",
|
||||||
Param = GetSystemParams(),
|
Param = dto,
|
||||||
Type = "SYSTEM"
|
Type = "SYSTEM"
|
||||||
};
|
};
|
||||||
|
|
||||||
var scannerParams = new ConfigData<ScannerParams>()
|
|
||||||
{
|
|
||||||
Name = "扫描器配置",
|
|
||||||
Param = GetScannerParams(),
|
|
||||||
Type = "SYSTEM"
|
|
||||||
};
|
|
||||||
|
|
||||||
var minioParams = new ConfigData<MinioParams>()
|
|
||||||
{
|
|
||||||
Name = "MinIO配置",
|
|
||||||
Param = GetMinioParams(),
|
|
||||||
Type = "SYSTEM"
|
|
||||||
};
|
|
||||||
|
|
||||||
var mqttParams = new ConfigData<MqttParams>()
|
|
||||||
{
|
|
||||||
Name = "MQTT配置",
|
|
||||||
Param = GetMqttConnectParams(),
|
|
||||||
Type = "SYSTEM"
|
|
||||||
};
|
|
||||||
|
|
||||||
await MessageQueueHelper.Publish(Topics.ReportConfigData, cameraParams);
|
|
||||||
await MessageQueueHelper.Publish(Topics.ReportConfigData, substrateCameraInternalParams);
|
|
||||||
await MessageQueueHelper.Publish(Topics.ReportConfigData, waferCameraInternalParams);
|
|
||||||
await MessageQueueHelper.Publish(Topics.ReportConfigData, logParams);
|
|
||||||
await MessageQueueHelper.Publish(Topics.ReportConfigData, systemParams);
|
await MessageQueueHelper.Publish(Topics.ReportConfigData, systemParams);
|
||||||
await MessageQueueHelper.Publish(Topics.ReportConfigData, scannerParams);
|
|
||||||
await MessageQueueHelper.Publish(Topics.ReportConfigData, minioParams);
|
|
||||||
await MessageQueueHelper.Publish(Topics.ReportConfigData, mqttParams);
|
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
using MasstransferCommon.Events;
|
using MasstransferCommon.Events;
|
||||||
using MasstransferCommon.Scheduler;
|
using MasstransferCommon.Scheduler;
|
||||||
using MasstransferCommunicate.Mqtt.Client;
|
using MasstransferCommunicate.Mqtt.Client;
|
||||||
|
using MasstransferExporter.DataExporter;
|
||||||
using MasstransferExporter.Init;
|
using MasstransferExporter.Init;
|
||||||
using MasstransferExporter.StatExporter;
|
using MasstransferExporter.StatExporter;
|
||||||
using MasstransferInfrastructure.Database.Sqlite;
|
using MasstransferInfrastructure.Database.Sqlite;
|
||||||
|
@ -38,8 +39,8 @@ class Program
|
||||||
// 启动完成后,广播启动通知
|
// 启动完成后,广播启动通知
|
||||||
EventBus<bool>.Publish(EventType.StartUp, true);
|
EventBus<bool>.Publish(EventType.StartUp, true);
|
||||||
|
|
||||||
// DelayScheduler.Delay(async () => await SystemStatExporter.ExportSystemStat(),
|
DelayScheduler.Delay(async () => await SystemParamsService.ExportSystemParams(),
|
||||||
// TimeSpan.FromSeconds(3));
|
TimeSpan.FromSeconds(3));
|
||||||
|
|
||||||
|
|
||||||
// 启动与主程序的通信
|
// 启动与主程序的通信
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
using MasstransferCommon.Utils;
|
using MasstransferCommon.Utils;
|
||||||
using MasstransferCommunicate.Mqtt.Model;
|
using MasstransferCommunicate.Mqtt.Model;
|
||||||
using MasstransferInfrastructure.Mqtt.Model;
|
using MasstransferInfrastructure.Mqtt.Model;
|
||||||
|
using Masuit.Tools;
|
||||||
using MQTTnet;
|
using MQTTnet;
|
||||||
using MQTTnet.Client;
|
using MQTTnet.Client;
|
||||||
using MQTTnet.Protocol;
|
using MQTTnet.Protocol;
|
||||||
|
@ -106,7 +107,7 @@ internal class MqttClient
|
||||||
|
|
||||||
var payload = JsonUtil.ToJson(message);
|
var payload = JsonUtil.ToJson(message);
|
||||||
|
|
||||||
Console.WriteLine(payload);
|
Console.WriteLine(message.ToJsonString());
|
||||||
|
|
||||||
var result = await _client.PublishAsync(new MqttApplicationMessageBuilder()
|
var result = await _client.PublishAsync(new MqttApplicationMessageBuilder()
|
||||||
.WithTopic(topic)
|
.WithTopic(topic)
|
||||||
|
|
Loading…
Reference in New Issue