Ajustes na estrutura dos parametros

This commit is contained in:
Diego Freitas 2025-11-25 09:17:19 -03:00
parent abbd3386f3
commit 5e23a79fa3
90 changed files with 1976 additions and 1216 deletions

View File

@ -27,7 +27,7 @@ namespace AgroBase.Forms.Atuador
}
chbBicosAtuacao.Checked = Disp.Dados.BicosPulverizadores.Any(x => x.AtuacaoNivelAlto);
nudBicosQtd.Value = Variaveis.OperacaoEmAndamento.Parametros.QtdBicos;
nudBicosQtd.Value = Variaveis.OperacaoEmAndamento.Parametros.QtdBicos ?? VariaveisEquipamento.QuantidadeBicosPulverizadores;
txtDensidade.Text = Disp.Dados.DensidadeHerbicida.ToString("0.00");
nudCapMax.Value = Convert.ToInt32(Variaveis.OperacaoEmAndamento.Parametros.QtdCamerasSolo);
}

View File

@ -574,7 +574,7 @@ namespace AgroBase.Forms.Operacoes
int panelWidth = pnlAtuadores.Width;
int circleDiameter = 40; // Diâmetro dos círculos grandes
int spaceBetweenCircles = (panelWidth - (circleDiameter * Variaveis.OperacaoEmAndamento.Parametros.QtdBicos)) / (Variaveis.OperacaoEmAndamento.Parametros.QtdBicos + 1);
int spaceBetweenCircles = (panelWidth - (circleDiameter * (Variaveis.OperacaoEmAndamento.Parametros.QtdBicos ?? VariaveisEquipamento.QuantidadeBicosPulverizadores))) / ((Variaveis.OperacaoEmAndamento.Parametros.QtdBicos ?? VariaveisEquipamento.QuantidadeBicosPulverizadores) + 1);
int yPosition = (pnlAtuadores.Height - circleDiameter) / 3; // Centralizado verticalmente

View File

@ -66,8 +66,8 @@ namespace AgroBase.Forms.Operacoes
nudAnguloMinimo.Value = Convert.ToInt32(-_Parametros.Controle.DirAnguloMaximo);
nudVelocidadeMP.Value = Convert.ToInt32(_Parametros.Controle.DirVelocidadeMovimento);
nudTemposalvarlog.Value = (decimal)Variaveis.OperacaoEmAndamento.tmrLogsInterval / 1000;
nudQtdBicos.Value = _Parametros.QtdBicos;
nudQtdCameras.Value = _Parametros.QtdCamerasSolo;
nudQtdBicos.Value = _Parametros.QtdBicos ?? VariaveisEquipamento.QuantidadeBicosPulverizadores;
nudQtdCameras.Value = _Parametros.QtdCamerasSolo ?? VariaveisEquipamento.QuantidadeCamerasSolo;
nudCapacidadereservatorio.Value = Convert.ToInt32(_Parametros.CapacidadeReservatorio);
txtDensidadeherbicida.Text = Variaveis.OperacaoEmAndamento.DispAtu.Dados.DensidadeHerbicida.ToString("0.00");
nudAtuarem.Value = Convert.ToInt32(_Parametros.Controle.AtuPercentualInicioPulverizacao);

View File

@ -90,7 +90,7 @@ namespace AgroBase.Models.Modules
{
get
{
return VolumeReservatorio / Variaveis.OperacaoEmAndamento.Parametros.CapacidadeReservatorio * 100.0;
return VolumeReservatorio / (Variaveis.OperacaoEmAndamento.Parametros.CapacidadeReservatorio ?? VariaveisEquipamento.CapacidadeReservatorio) * 100.0;
}
}
#endregion

View File

@ -250,7 +250,9 @@ namespace AgroBase.Models
var Parametros = JsonConvert.DeserializeObject<OperacaoParametrosModel>(ParametrosJson);
CarregarParametrosOperacaoPadrao(Parametros.Modo);
if (Parametros.Modo == null) return (false, new List<string>());
CarregarParametrosOperacaoPadrao((ModoOperacao)Parametros.Modo);
Variaveis.OperacaoEmAndamento.Parametros = Parametros;
@ -806,7 +808,9 @@ namespace AgroBase.Models
public (bool, List<string>) CarregarParamerosOperacaoBase(OperacaoParametrosModel Parametros)
{
CarregarParametrosOperacaoPadrao(Parametros.Modo);
if (Parametros.Modo == null) return (false, new List<string>());
CarregarParametrosOperacaoPadrao((ModoOperacao)Parametros.Modo);
Variaveis.OperacaoEmAndamento.Parametros = Parametros;
@ -1315,30 +1319,47 @@ namespace AgroBase.Models
{
if (controleBase.Dispositivo == T_Code.Mod)
{
Task.Run(async () =>
var _Parametros = controleBase.Parametros;
switch (controleBase.Tecla)
{
if (controleBase.Tecla == BotoesJoystick.PS)
{
case BotoesJoystick.Share: // Requisitar parametros da operacao
var topico = Variaveis.MqttServiceBase.Topicos.FirstOrDefault(x => x.Topico == VariaveisEquipamento.TopicoMqttParametros.Replace("<id>", VariaveisEquipamento.Parametros.serial_number));
var msg = JsonConvert.SerializeObject(Variaveis.OperacaoEmAndamento.Parametros);
Task.Run(async () => await Variaveis.MqttServiceBase.PublishAsync(topico, msg));
break;
case BotoesJoystick.Options: // Operacao nao iniciada, carrega todos os parametros compeltos
Variaveis.OperacaoEmAndamento.CarregarParamerosOperacaoBase(_Parametros);
break;
case BotoesJoystick.Touchpad: // Operacao em andamento, atualiza apenas os dados de controle
if (_Parametros.Modo != null) Variaveis.OperacaoEmAndamento.Parametros.Modo = _Parametros.Modo;
if (_Parametros.QtdBicos != null) Variaveis.OperacaoEmAndamento.Parametros.QtdBicos = _Parametros.QtdBicos;
if (_Parametros.Descricao != null) Variaveis.OperacaoEmAndamento.Parametros.Descricao = _Parametros.Descricao;
if (_Parametros.QtdCamerasSolo != null) Variaveis.OperacaoEmAndamento.Parametros.QtdCamerasSolo = _Parametros.QtdCamerasSolo;
if (_Parametros.CapacidadeReservatorio != null) Variaveis.OperacaoEmAndamento.Parametros.CapacidadeReservatorio = _Parametros.CapacidadeReservatorio;
if (_Parametros.Controle != null) Variaveis.OperacaoEmAndamento.Parametros.Controle = _Parametros.Controle;
if (_Parametros.ModulosMandatorios != null) Variaveis.OperacaoEmAndamento.Parametros.ModulosMandatorios = _Parametros.ModulosMandatorios;
if (_Parametros.ParametrosMandatorios != null) Variaveis.OperacaoEmAndamento.Parametros.ParametrosMandatorios = _Parametros.ParametrosMandatorios;
HealthWorkerService.AtualizarDadosOperacao();
break;
case BotoesJoystick.L1: // Inicia o modo simulador
if (!Variaveis.OperacaoEmAndamento.Iniciado)
await Variaveis.OperacaoEmAndamento.IniciarOperacao();
}
else if (controleBase.Tecla == BotoesJoystick.Share)
{
Task.Run(async () => await Variaveis.OperacaoEmAndamento.IniciarSimulacao());
break;
case BotoesJoystick.L2: // Inicia a operacao
if (!Variaveis.OperacaoEmAndamento.Iniciado)
await Variaveis.OperacaoEmAndamento.IniciarSimulacao();
}
else
{
Task.Run(async () => await Variaveis.OperacaoEmAndamento.IniciarOperacao());
break;
case BotoesJoystick.L3: // Finaliza a operacao
if (Variaveis.OperacaoEmAndamento.Iniciado)
await Variaveis.OperacaoEmAndamento.FinalizarOperacao();
}
});
Task.Run(async () => await Variaveis.OperacaoEmAndamento.FinalizarOperacao());
break;
}
return;
}
Variaveis.OperacaoEmAndamento.Emergencia = controleBase.Emergencia;
if (Variaveis.OperacaoEmAndamento.Emergencia) return;
if (controleBase.Dispositivo == T_Code.Gps)
{
VariaveisEquipamento.LeverArmFrontal = controleBase.LeverArmFrontal;
@ -1347,7 +1368,7 @@ namespace AgroBase.Models
return;
}
if (controleBase.Dispositivo == T_Code.Snr)
if (controleBase.Dispositivo == T_Code.Snr && Variaveis.OperacaoEmAndamento.DispSen?.Dados?.CameraCaminho?.Id != null)
{
RedisService.AtualizarCampos(
RedisService.CamKey(Variaveis.OperacaoEmAndamento.DispSen.Dados.CameraCaminho.Id),
@ -1356,35 +1377,17 @@ namespace AgroBase.Models
return;
}
if (controleBase.Dispositivo == T_Code.Cam)
if (controleBase.Dispositivo == T_Code.Cam && (Variaveis.OperacaoEmAndamento.DispSen?.Dados?.CamerasSolo?.Any(x => !string.IsNullOrEmpty(x.Id)) ?? false))
{
RedisService.AtualizarCampos(
RedisService.CamKey(Variaveis.OperacaoEmAndamento.DispSen.Dados.CamerasSolo.FirstOrDefault().Id),
RedisService.CamKey(Variaveis.OperacaoEmAndamento.DispSen.Dados.CamerasSolo.FirstOrDefault(x => !string.IsNullOrEmpty(x.Id)).Id),
("streaming", controleBase.Tecla == BotoesJoystick.L1)
);
return;
}
var _Parametros = controleBase.Parametros;
if (_Parametros != null)
{
if (controleBase.Tecla == BotoesJoystick.Options) // Parametrizando, carrega operacao completa
{
Variaveis.OperacaoEmAndamento.CarregarParamerosOperacaoBase(_Parametros);
}
else if (controleBase.Tecla == BotoesJoystick.Share) // Requisita dados da operacao
{
var topico = Variaveis.MqttServiceBase.Topicos.FirstOrDefault(x => x.Topico == VariaveisEquipamento.TopicoMqttParametros.Replace("<id>", VariaveisEquipamento.Parametros.serial_number));
var msg = JsonConvert.SerializeObject(Variaveis.OperacaoEmAndamento.Parametros);
Task.Run(async () => await Variaveis.MqttServiceBase.PublishAsync(topico, msg));
}
else if (_Parametros.Controle != null) // Operacao em andamento, envia apenas dados de controle
{
Variaveis.OperacaoEmAndamento.Parametros.Controle = _Parametros.Controle;
}
HealthWorkerService.AtualizarDadosOperacao();
return;
}
Variaveis.OperacaoEmAndamento.Emergencia = controleBase.Emergencia;
if (Variaveis.OperacaoEmAndamento.Emergencia) return;
Variaveis.OperacaoEmAndamento.Pausa = controleBase.Pausa;
if (Variaveis.OperacaoEmAndamento.Pausa) return;
@ -1393,26 +1396,12 @@ namespace AgroBase.Models
var _Controle = Variaveis.OperacaoEmAndamento.Controle;
// Salvar estado anterior
//double oldPercentualVelocidade = _Controle.PercentualVelocidadeSP;
//double oldAngulo = _Controle.Angulo;
//double oldVelocidadeMP = _Controle.VelocidadeMP;
//TipoMovimentoDirecional oldTipoMovimento = _Controle.TipoMovimento;
// Atualizar estado atual com os valores do controleBase
_Controle.PercentualVelocidadeSP = controleBase.Controle.PercentualVelocidadeSP;
_Controle.Angulo = controleBase.Controle.AnguloSP;
_Controle.TipoMovimento = controleBase.Controle.TipoMovimentoDirecional;
// Enviar comando
Keys tecla = GeneralJoystick.DeParaComandos.FirstOrDefault(x => x.botaoJoy == controleBase.Tecla)?.key ?? Keys.Escape;
GeneralJoystick.EnviaComandoMotor(tecla, controleBase.Dispositivo, ForcarComando: true);
// Restaurar estado anterior
//_Controle.PercentualVelocidadeSP = oldPercentualVelocidade;
//_Controle.Angulo = oldAngulo;
//_Controle.VelocidadeMP = oldVelocidadeMP;
//_Controle.TipoMovimento = oldTipoMovimento;
}
private async Task tmrComunicacao_Tick()
@ -1538,7 +1527,7 @@ namespace AgroBase.Models
VazaoFluxoMLpSInstantanea = Variaveis.OperacaoEmAndamento.DispAtu.Dados.VazaoFluxoMLpSInstantanea,
VazaoFluxoMLpSMedia = Variaveis.OperacaoEmAndamento.DispAtu.Dados.VazaoFluxoMLpSMedia,
VolumeVazaoML = Variaveis.OperacaoEmAndamento.DispAtu.Dados.VolumeVazaoML,
QuantidadeBicos = Variaveis.OperacaoEmAndamento.Parametros.QtdBicos,
QuantidadeBicos = Variaveis.OperacaoEmAndamento.Parametros.QtdBicos ?? VariaveisEquipamento.QuantidadeBicosPulverizadores,
TempoPulverizadorAtuado = Variaveis.OperacaoEmAndamento.DispAtu.Dados.TempoAtuado,
Bicos = Variaveis.OperacaoEmAndamento.DispAtu.Dados.BicosPulverizadores.Select(Bico => new AtuBicoSensoriamentoLogModel()
{

View File

@ -8,11 +8,11 @@ namespace AgroBase.Models.Operacoes
public string RoverId { get; set; }
public bool Alive { get; set; }
public bool Configurado { get; set; }
public ModoOperacao Modo { get; set; }
public ModoOperacao? Modo { get; set; }
public string Descricao { get; set; }
public int QtdCamerasSolo { get; set; }
public int QtdBicos { get; set; }
public double CapacidadeReservatorio { get; set; }
public int? QtdCamerasSolo { get; set; }
public int? QtdBicos { get; set; }
public double? CapacidadeReservatorio { get; set; }
public List<OperacaoModulosMandatoriosModel> ModulosMandatorios { get; set; }
public List<OperacaoParametrosMandatoriosModel> ParametrosMandatorios { get; set; }
public OperacaoParametrosControleModel Controle { get; set; }

View File

@ -147,13 +147,20 @@ public class MqttService
if (_client.IsConnected)
{
var payload = Encoding.UTF8.GetBytes(message);
var mqttMessage = new MqttApplicationMessageBuilder()
.WithTopic(topic.Topico)
.WithPayload(payload)
.Build();
try
{
var payload = Encoding.UTF8.GetBytes(message);
var mqttMessage = new MqttApplicationMessageBuilder()
.WithTopic(topic.Topico)
.WithPayload(payload)
.Build();
await _client.PublishAsync(mqttMessage);
await _client.PublishAsync(mqttMessage);
}
catch (Exception ex)
{
_logDebug(ex.Message);
}
}
}
@ -166,12 +173,19 @@ public class MqttService
if (_client.IsConnected)
{
var mqttMessage = new MqttApplicationMessageBuilder()
.WithTopic(topic.Topico)
.WithPayload(payloadBytes)
.Build();
try
{
var mqttMessage = new MqttApplicationMessageBuilder()
.WithTopic(topic.Topico)
.WithPayload(payloadBytes)
.Build();
await _client.PublishAsync(mqttMessage);
await _client.PublishAsync(mqttMessage);
}
catch (Exception ex)
{
_logDebug(ex.Message);
}
}
}

View File

@ -144,7 +144,8 @@ namespace OperationControl.Models
var rover = RoversNaRede.FirstOrDefault(x => x.RoverId == device_id);
if (rover != null)
{
rover = obj;
RoversNaRede.Remove(rover);
RoversNaRede.Add(obj);
}
}
((App)Application.Current).Shell.Main?.AtualizarDadosTela_ParametrosOperacao(obj.Controle);
@ -245,7 +246,7 @@ namespace OperationControl.Models
{
Momento = DateTime.Now,
Dispositivo = AgroBase.Models.Enums.T_Code.Mod,
Tecla = simulador ? AgroBase.Models.Enums.BotoesJoystick.Share : iniciar ? AgroBase.Models.Enums.BotoesJoystick.PS : AgroBase.Models.Enums.BotoesJoystick.Vazio
Tecla = simulador ? AgroBase.Models.Enums.BotoesJoystick.L1 : iniciar ? AgroBase.Models.Enums.BotoesJoystick.L2 : AgroBase.Models.Enums.BotoesJoystick.L3
});
}
@ -292,8 +293,9 @@ namespace OperationControl.Models
EnviarDadosControle(SelectedRoverId, new OperacaoComandoBaseModel()
{
Momento = DateTime.Now,
Dispositivo = AgroBase.Models.Enums.T_Code.Mod,
Parametros = parametros,
Tecla = (!(RoverEmFoco.DadosLeitura?.OperacaoIniciada ?? false) ? AgroBase.Models.Enums.BotoesJoystick.Options : AgroBase.Models.Enums.BotoesJoystick.Vazio)
Tecla = (!(RoverEmFoco?.DadosLeitura?.OperacaoIniciada ?? false) ? AgroBase.Models.Enums.BotoesJoystick.Options : AgroBase.Models.Enums.BotoesJoystick.Touchpad)
});
}
@ -302,6 +304,7 @@ namespace OperationControl.Models
EnviarDadosControle(SelectedRoverId, new OperacaoComandoBaseModel()
{
Momento = DateTime.Now,
Dispositivo = AgroBase.Models.Enums.T_Code.Mod,
Tecla = AgroBase.Models.Enums.BotoesJoystick.Share
});
}

View File

@ -119,9 +119,9 @@
<Label x:Name="lblDiagnosticos_MOD" Content="NCP" Style="{StaticResource RoundedLabel}" Height="21" Width="40" Canvas.Left="202" Canvas.Top="214" HorizontalAlignment="Center" VerticalAlignment="Top"/>
<Label x:Name="lblDiagnosticos_ATU_BOMBA" Content="BMB" Style="{StaticResource RoundedLabel}" Height="21" Width="40" Canvas.Left="202" Canvas.Top="279" HorizontalAlignment="Center" VerticalAlignment="Top"/>
<Label x:Name="lblDiagnosticos_ATU" Content="ATU" Style="{StaticResource RoundedLabel}" Height="21" Width="40" Canvas.Left="202" Canvas.Top="319" HorizontalAlignment="Center" VerticalAlignment="Top"/>
<Label x:Name="lblDiagnosticos_ATU_PRS" Content="PRS" Style="{StaticResource RoundedLabel}" Height="21" Width="40" Canvas.Left="202" Canvas.Top="356" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<Label x:Name="lblDiagnosticos_ATU_FLX" Content="FLX" Style="{StaticResource RoundedLabel}" Height="21" Width="40" Canvas.Left="155" Canvas.Top="356" HorizontalAlignment="Left" VerticalAlignment="Center"/>
<Label x:Name="lblDiagnosticos_ATU_MAS" Content="MAS" Style="{StaticResource RoundedLabel}" Height="21" Width="40" Canvas.Left="249" Canvas.Top="356" HorizontalAlignment="Left" VerticalAlignment="Center"/>
<Label x:Name="lblDiagnosticos_ATU_PRSLN" Content="PRS" Style="{StaticResource RoundedLabel}" Height="21" Width="40" Canvas.Left="202" Canvas.Top="356" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<Label x:Name="lblDiagnosticos_ATU_FLXLN" Content="FLX" Style="{StaticResource RoundedLabel}" Height="21" Width="40" Canvas.Left="155" Canvas.Top="356" HorizontalAlignment="Left" VerticalAlignment="Center"/>
<Label x:Name="lblDiagnosticos_ATU_MASRS" Content="MAS" Style="{StaticResource RoundedLabel}" Height="21" Width="40" Canvas.Left="249" Canvas.Top="356" HorizontalAlignment="Left" VerticalAlignment="Center"/>
<Label x:Name="lblDiagnosticos_ATU_B01" Content="B01" Style="{StaticResource RoundedLabel}" Height="21" Width="40" Canvas.Left="75" Canvas.Top="381" HorizontalAlignment="Left" VerticalAlignment="Center"/>
<Label x:Name="lblDiagnosticos_ATU_B02" Content="B02" Style="{StaticResource RoundedLabel}" Height="21" Width="40" Canvas.Left="143" Canvas.Top="382" HorizontalAlignment="Left" VerticalAlignment="Center"/>
<Label x:Name="lblDiagnosticos_ATU_B03" Content="B03" Style="{StaticResource RoundedLabel}" Height="21" Width="40" Canvas.Left="254" Canvas.Top="382" HorizontalAlignment="Left" VerticalAlignment="Center"/>
@ -133,16 +133,16 @@
<Border x:Name="brdStatusModulo" BorderBrush="Black" BorderThickness="1" CornerRadius="8" Margin="10,605,1460,32">
<Canvas>
<Label Content="Saúde" HorizontalAlignment="Left" VerticalAlignment="Center" FontSize="10" Canvas.Top="-5" FontWeight="Bold"/>
<Label x:Name="lblSaude_Descricao" Content="Módulo MOV ET" HorizontalAlignment="Center" VerticalAlignment="Top" FontSize="9" Canvas.Left="39" Canvas.Top="4"/>
<Label x:Name="lblSaude_Versao" Content="Versão 20.1.0.6" HorizontalAlignment="Center" VerticalAlignment="Top" Canvas.Left="120" FontSize="9" Canvas.Top="4"/>
<Label x:Name="lblSaude_Status" Content="Operante (Saúde: 93%)" HorizontalAlignment="Center" VerticalAlignment="Top" Canvas.Left="194" FontSize="9" Canvas.Top="4"/>
<Label x:Name="lblSaude_CAN" Content="CAN 121 ms" HorizontalAlignment="Center" VerticalAlignment="Top" Canvas.Left="300" FontSize="9" Canvas.Top="4"/>
<Label x:Name="lblSaude_Latencia" Content="Latência 504 ms" HorizontalAlignment="Center" VerticalAlignment="Top" Canvas.Left="364" FontSize="9" Canvas.Top="4"/>
<Label x:Name="lblSaude_Descricao" Content="Módulo MOV ET" HorizontalAlignment="Left" VerticalAlignment="Center" FontSize="9" Canvas.Left="35" Canvas.Top="4"/>
<Label x:Name="lblSaude_Versao" Content="Versão 20.1.0.6" HorizontalAlignment="Left" VerticalAlignment="Center" Canvas.Left="124" FontSize="9" Canvas.Top="4"/>
<Label x:Name="lblSaude_Status" Content="Operante (Saúde: 93%)" HorizontalAlignment="Left" VerticalAlignment="Center" Canvas.Left="194" FontSize="9" Canvas.Top="4"/>
<Label x:Name="lblSaude_CAN" Content="CAN 121 ms" HorizontalAlignment="Left" VerticalAlignment="Top" Canvas.Left="313" FontSize="9" Canvas.Top="3"/>
<Label x:Name="lblSaude_Latencia" Content="Latência 504 ms" HorizontalAlignment="Left" VerticalAlignment="Center" Canvas.Left="372" FontSize="9" Canvas.Top="4"/>
<Label x:Name="lblSaude_Impedimento" Content="Impedimento: Nenhum" HorizontalAlignment="Center" VerticalAlignment="Top" FontSize="9" Canvas.Top="18" Height="35" Width="443"/>
<CheckBox x:Name="chbSaude_Mandatorio" Content="Mandatório" Canvas.Left="5" Canvas.Top="46" FontSize="10" HorizontalAlignment="Center" VerticalAlignment="Top" ToolTip="Define se o módulo é obrigatório para que a operação em andamento seja liberada"/>
<CheckBox x:Name="chbSaude_EmUso" Content="Em Uso" Canvas.Left="82" Canvas.Top="46" HorizontalAlignment="Left" VerticalAlignment="Top" FontSize="10" ToolTip="Define se o módulo deve ser usado durante a operação em andamento"/>
<Button x:Name="btnSaude_Salvar" Content="Salvar" Canvas.Left="155" Canvas.Top="45" FontSize="10" HorizontalAlignment="Left" VerticalAlignment="Top" Width="38" ToolTip="Salva ajustes realizados nos parametros do módulo em questão"/>
<Button x:Name="btnSaude_Salvar" Content="Salvar" Canvas.Left="155" Canvas.Top="45" FontSize="10" HorizontalAlignment="Left" VerticalAlignment="Top" Width="38" ToolTip="Salva os ajustes realizados nos parametros do módulo" Click="btnSaude_Salvar_Click"/>
<Border HorizontalAlignment="Center" BorderBrush="Black" BorderThickness="1" Height="299" Width="438" VerticalAlignment="Top" Canvas.Left="5" Canvas.Top="66">
<TabControl>

View File

@ -510,31 +510,70 @@ namespace OperationControl.Windows
Opacity = 0.9
};
(var modulo, var mod_label) = GetModuleData(lbl);
AbrirDetalhesModulo();
}
private void AbrirDetalhesModulo()
{
(var modulo, var label) = GetModuleData(_labelModuloSelecionado);
if (modulo == AgroBase.Models.Enums.T_Code.Vzo)
return;
// Aqui você chama o método que quiser:
AbrirDetalhesModulo(modulo, mod_label);
}
private void AbrirDetalhesModulo(AgroBase.Models.Enums.T_Code modulo, string label)
{
var rover = VariaveisControleOperacao.RoverEmFoco;
var saude = rover?.DadosLeitura?.ModulosSaude?.FirstOrDefault(x => x.modulo == modulo);
var dispositivo = rover?.DadosLeitura?.DispositivosMapeados?.FirstOrDefault(x => x.Dispositivo == modulo && x.Mod_ID == label);
if (dispositivo == null)
if (dispositivo == null && saude == null)
{
MessageBox.Show($"Sem dados para o módulo {modulo} ({label})");
return;
}
lblSaude_Descricao.Content = $"Módulo {dispositivo.Dispositivo} {dispositivo.Mod_ID}";
lblSaude_Versao.Content = $"Versão {dispositivo.Versao ?? "-"}";
lblSaude_Status.Content = $"{dispositivo.Status} (Saúde {dispositivo.Saude}%)";
lblSaude_CAN.Content = $"CAN {dispositivo.VelocidadeBarramento} ms";
lblSaude_Latencia.Content = $"Latência {dispositivo.Latencia} ms";
lblSaude_Impedimento.Content = $"Impedimento: {dispositivo.Erros ?? "Nenhum"}";
var individual = saude?.saude_individual?.FirstOrDefault(x => x.label == label);
var status = individual?.status ?? saude.status;
var motivos = string.Join(", ", (individual?.motivos ?? saude.motivos) ?? new List<string>());
lblSaude_Descricao.Content = $"Módulo {modulo} {label}";
lblSaude_Versao.Content = $"Versão {dispositivo?.Versao ?? "-"}";
lblSaude_Status.Content = $"{individual?.status ?? saude?.status ?? AgroBase.Models.Enums.StatusModulo.Desconectado} (Saúde {individual?.saude ?? saude?.saude ?? 0}%)";
lblSaude_CAN.Content = $"CAN {dispositivo?.VelocidadeBarramento ?? 0} ms";
lblSaude_Latencia.Content = $"Latência {dispositivo?.Latencia ?? 0} ms";
lblSaude_Impedimento.Content = $"Impedimento: {motivos ?? "Nenhum"}";
bool mandatorio = rover?.ModulosMandatorios?.Any(x => x.Dispositivo == modulo && x.Mandatorio) ?? false;
bool em_uso = individual?.em_uso ?? rover?.ModulosMandatorios?.Any(x => x.Dispositivo == modulo && x.Utilizar) ?? false;
chbSaude_Mandatorio.IsChecked = mandatorio;
chbSaude_EmUso.IsChecked = em_uso;
}
private void btnSaude_Salvar_Click(object sender, RoutedEventArgs e)
{
(var modulo, var label) = GetModuleData(_labelModuloSelecionado);
if (modulo == AgroBase.Models.Enums.T_Code.Vzo)
return;
var rover = VariaveisControleOperacao.RoverEmFoco;
var saude = rover?.DadosLeitura?.ModulosSaude?.FirstOrDefault(x => x.modulo == modulo);
if (rover == null || saude == null)
{
MessageBox.Show($"Sem dados para o módulo {modulo} ({label})");
return;
}
rover.ModulosMandatorios.First(x => x.Dispositivo == modulo).Mandatorio = chbSaude_Mandatorio.IsChecked ?? false;
var individual = saude?.saude_individual?.FirstOrDefault(x => x.label == label);
if (individual != null)
{
individual.em_uso = chbSaude_EmUso.IsChecked ?? false;
}
VariaveisControleOperacao.EnviarParametrosOperacao(new AgroBase.Models.Operacoes.OperacaoParametrosModel()
{
ModulosMandatorios = rover.ModulosMandatorios,
});
}
#endregion
@ -698,12 +737,14 @@ namespace OperationControl.Windows
{
var modo = (CTRL.TgManual.IsChecked ?? false) ? AgroBase.Models.Enums.ModoOperacao.Manual : AgroBase.Models.Enums.ModoOperacao.MapaGPS;
var rover = VariaveisControleOperacao.RoverEmFoco;
VariaveisControleOperacao.EnviarParametrosOperacao(new AgroBase.Models.Operacoes.OperacaoParametrosModel()
{
Modo = modo,
Descricao = "Operacao da base",
QtdCamerasSolo = 1,
QtdBicos = 3,
QtdBicos = 4,
CapacidadeReservatorio = 45,
Controle = new AgroBase.Models.Operacoes.OperacaoParametrosControleModel()
@ -727,8 +768,8 @@ namespace OperationControl.Windows
AtuPressaoLinha = double.Parse(txtParametros_PressaoLiha.Text),
},
ModulosMandatorios = new List<AgroBase.Models.OperacaoModulosMandatoriosModel>(),
ParametrosMandatorios = new List<AgroBase.Models.OperacaoParametrosMandatoriosModel>(),
ModulosMandatorios = rover?.ModulosMandatorios,
ParametrosMandatorios = rover?.ParametrosMandatorios,
RuasPercorrer = MAP.RuasMapaCarregado.Where(x => x.Selected).Select(x => x.Id).ToList(),
Mapa = MAP.CriarDadosMapa()
@ -942,6 +983,7 @@ namespace OperationControl.Windows
}));
}
#endregion

View File

@ -14,7 +14,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+672b7f79487d7a24855894d8295dc16d76ab23d7")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+abbd3386f3ab2cd63eb9bec4bb9fce188d3ce542")]
[assembly: System.Reflection.AssemblyProductAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyTitleAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View File

@ -1 +1 @@
43ec649b50fa667da5d23b3898a2c09154c6b00b6b401dea1dcaa89e4ac104a5
b95ee033888956fbf835d45c4eaa6ef3d07e336ce4e1556c901b0348e81b8049

View File

@ -0,0 +1,25 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+abbd3386f3ab2cd63eb9bec4bb9fce188d3ce542")]
[assembly: System.Reflection.AssemblyProductAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyTitleAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
[assembly: System.Runtime.Versioning.TargetPlatformAttribute("Windows7.0")]
[assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("Windows7.0")]
// Generated by the MSBuild WriteCodeFragment class.

View File

@ -0,0 +1 @@
b95ee033888956fbf835d45c4eaa6ef3d07e336ce4e1556c901b0348e81b8049

View File

@ -0,0 +1,19 @@
is_global = true
build_property.ApplicationManifest =
build_property.StartupObject =
build_property.ApplicationDefaultFont =
build_property.ApplicationHighDpiMode =
build_property.ApplicationUseCompatibleTextRendering =
build_property.ApplicationVisualStyles =
build_property.TargetFramework = net8.0-windows7.0
build_property.TargetPlatformMinVersion = 7.0
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = OperationControl_4inb14x3_wpftmp
build_property.ProjectDir = C:\ZendionInc\agrobot_base\AgroBase\OperationControl\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =

View File

@ -0,0 +1,8 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.Drawing;
global using global::System.Linq;
global using global::System.Threading;
global using global::System.Threading.Tasks;
global using global::System.Windows.Forms;

View File

@ -16,5 +16,5 @@ C:\ZendionInc\agrobot_base\AgroBase\OperationControl\App.xaml
269595801548
Controls\AttitudeIndicator.xaml;Controls\Bbox3DViewer.xaml;Controls\GstVideoView.xaml;Controls\HeadingIndicator.xaml;Controls\LabeledBar.xaml;Controls\ManualControlPad.xaml;Controls\MapViewControl.xaml;Controls\ProgressBarText.xaml;Controls\RiskMeter.xaml;Controls\TemperatureIndicator.xaml;Windows\MainWindow.xaml;
True
False

View File

@ -1,10 +0,0 @@
C:\ZendionInc\agrobot_base\AgroBase\OperationControl\obj\Debug\net8.0-windows7.0\GeneratedInternalTypeHelper.g.i.cs
FC:\ZendionInc\agrobot_base\AgroBase\OperationControl\Controls\AttitudeIndicator.xaml;;
FC:\ZendionInc\agrobot_base\AgroBase\OperationControl\Controls\GstVideoView.xaml;;
FC:\ZendionInc\agrobot_base\AgroBase\OperationControl\Controls\HeadingIndicator.xaml;;
FC:\ZendionInc\agrobot_base\AgroBase\OperationControl\Controls\LabeledBar.xaml;;
FC:\ZendionInc\agrobot_base\AgroBase\OperationControl\Controls\ManualControlPad.xaml;;
FC:\ZendionInc\agrobot_base\AgroBase\OperationControl\Controls\TemperatureIndicator.xaml;;
FC:\ZendionInc\agrobot_base\AgroBase\OperationControl\Windows\MainWindow.xaml;;

View File

@ -1,4 +1,4 @@

C:\ZendionInc\agrobot_base\AgroBase\OperationControl\obj\Debug\net8.0-windows7.0\GeneratedInternalTypeHelper.g.cs
FC:\ZendionInc\agrobot_base\AgroBase\OperationControl\Controls\AttitudeIndicator.xaml;;
FC:\ZendionInc\agrobot_base\AgroBase\OperationControl\Controls\GstVideoView.xaml;;

View File

@ -0,0 +1,25 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+abbd3386f3ab2cd63eb9bec4bb9fce188d3ce542")]
[assembly: System.Reflection.AssemblyProductAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyTitleAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
[assembly: System.Runtime.Versioning.TargetPlatformAttribute("Windows7.0")]
[assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("Windows7.0")]
// Generated by the MSBuild WriteCodeFragment class.

View File

@ -0,0 +1 @@
b95ee033888956fbf835d45c4eaa6ef3d07e336ce4e1556c901b0348e81b8049

View File

@ -0,0 +1,19 @@
is_global = true
build_property.ApplicationManifest =
build_property.StartupObject =
build_property.ApplicationDefaultFont =
build_property.ApplicationHighDpiMode =
build_property.ApplicationUseCompatibleTextRendering =
build_property.ApplicationVisualStyles =
build_property.TargetFramework = net8.0-windows7.0
build_property.TargetPlatformMinVersion = 7.0
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = OperationControl_bpmihg41_wpftmp
build_property.ProjectDir = C:\ZendionInc\agrobot_base\AgroBase\OperationControl\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =

View File

@ -0,0 +1,8 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.Drawing;
global using global::System.Linq;
global using global::System.Threading;
global using global::System.Threading.Tasks;
global using global::System.Windows.Forms;

View File

@ -0,0 +1,25 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+abbd3386f3ab2cd63eb9bec4bb9fce188d3ce542")]
[assembly: System.Reflection.AssemblyProductAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyTitleAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
[assembly: System.Runtime.Versioning.TargetPlatformAttribute("Windows7.0")]
[assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("Windows7.0")]
// Generated by the MSBuild WriteCodeFragment class.

View File

@ -0,0 +1 @@
b95ee033888956fbf835d45c4eaa6ef3d07e336ce4e1556c901b0348e81b8049

View File

@ -0,0 +1,19 @@
is_global = true
build_property.ApplicationManifest =
build_property.StartupObject =
build_property.ApplicationDefaultFont =
build_property.ApplicationHighDpiMode =
build_property.ApplicationUseCompatibleTextRendering =
build_property.ApplicationVisualStyles =
build_property.TargetFramework = net8.0-windows7.0
build_property.TargetPlatformMinVersion = 7.0
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = OperationControl_ht5woan5_wpftmp
build_property.ProjectDir = C:\ZendionInc\agrobot_base\AgroBase\OperationControl\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =

View File

@ -0,0 +1,8 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.Drawing;
global using global::System.Linq;
global using global::System.Threading;
global using global::System.Threading.Tasks;
global using global::System.Windows.Forms;

View File

@ -0,0 +1,25 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+abbd3386f3ab2cd63eb9bec4bb9fce188d3ce542")]
[assembly: System.Reflection.AssemblyProductAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyTitleAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
[assembly: System.Runtime.Versioning.TargetPlatformAttribute("Windows7.0")]
[assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("Windows7.0")]
// Generated by the MSBuild WriteCodeFragment class.

View File

@ -0,0 +1 @@
b95ee033888956fbf835d45c4eaa6ef3d07e336ce4e1556c901b0348e81b8049

View File

@ -0,0 +1,19 @@
is_global = true
build_property.ApplicationManifest =
build_property.StartupObject =
build_property.ApplicationDefaultFont =
build_property.ApplicationHighDpiMode =
build_property.ApplicationUseCompatibleTextRendering =
build_property.ApplicationVisualStyles =
build_property.TargetFramework = net8.0-windows7.0
build_property.TargetPlatformMinVersion = 7.0
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = OperationControl_spzwoeon_wpftmp
build_property.ProjectDir = C:\ZendionInc\agrobot_base\AgroBase\OperationControl\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =

View File

@ -0,0 +1,8 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.Drawing;
global using global::System.Linq;
global using global::System.Threading;
global using global::System.Threading.Tasks;
global using global::System.Windows.Forms;

View File

@ -0,0 +1,25 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+abbd3386f3ab2cd63eb9bec4bb9fce188d3ce542")]
[assembly: System.Reflection.AssemblyProductAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyTitleAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
[assembly: System.Runtime.Versioning.TargetPlatformAttribute("Windows7.0")]
[assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("Windows7.0")]
// Generated by the MSBuild WriteCodeFragment class.

View File

@ -0,0 +1 @@
b95ee033888956fbf835d45c4eaa6ef3d07e336ce4e1556c901b0348e81b8049

View File

@ -0,0 +1,19 @@
is_global = true
build_property.ApplicationManifest =
build_property.StartupObject =
build_property.ApplicationDefaultFont =
build_property.ApplicationHighDpiMode =
build_property.ApplicationUseCompatibleTextRendering =
build_property.ApplicationVisualStyles =
build_property.TargetFramework = net8.0-windows7.0
build_property.TargetPlatformMinVersion = 7.0
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = OperationControl_sxdf343w_wpftmp
build_property.ProjectDir = C:\ZendionInc\agrobot_base\AgroBase\OperationControl\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =

View File

@ -0,0 +1,8 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.Drawing;
global using global::System.Linq;
global using global::System.Threading;
global using global::System.Threading.Tasks;
global using global::System.Windows.Forms;

View File

@ -0,0 +1,25 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+abbd3386f3ab2cd63eb9bec4bb9fce188d3ce542")]
[assembly: System.Reflection.AssemblyProductAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyTitleAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
[assembly: System.Runtime.Versioning.TargetPlatformAttribute("Windows7.0")]
[assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("Windows7.0")]
// Generated by the MSBuild WriteCodeFragment class.

View File

@ -0,0 +1 @@
b95ee033888956fbf835d45c4eaa6ef3d07e336ce4e1556c901b0348e81b8049

View File

@ -0,0 +1,19 @@
is_global = true
build_property.ApplicationManifest =
build_property.StartupObject =
build_property.ApplicationDefaultFont =
build_property.ApplicationHighDpiMode =
build_property.ApplicationUseCompatibleTextRendering =
build_property.ApplicationVisualStyles =
build_property.TargetFramework = net8.0-windows7.0
build_property.TargetPlatformMinVersion = 7.0
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = OperationControl_v402uayr_wpftmp
build_property.ProjectDir = C:\ZendionInc\agrobot_base\AgroBase\OperationControl\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =

View File

@ -0,0 +1,8 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.Drawing;
global using global::System.Linq;
global using global::System.Threading;
global using global::System.Threading.Tasks;
global using global::System.Windows.Forms;

View File

@ -0,0 +1,25 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+abbd3386f3ab2cd63eb9bec4bb9fce188d3ce542")]
[assembly: System.Reflection.AssemblyProductAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyTitleAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
[assembly: System.Runtime.Versioning.TargetPlatformAttribute("Windows7.0")]
[assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("Windows7.0")]
// Generated by the MSBuild WriteCodeFragment class.

View File

@ -0,0 +1 @@
b95ee033888956fbf835d45c4eaa6ef3d07e336ce4e1556c901b0348e81b8049

View File

@ -0,0 +1,19 @@
is_global = true
build_property.ApplicationManifest =
build_property.StartupObject =
build_property.ApplicationDefaultFont =
build_property.ApplicationHighDpiMode =
build_property.ApplicationUseCompatibleTextRendering =
build_property.ApplicationVisualStyles =
build_property.TargetFramework = net8.0-windows7.0
build_property.TargetPlatformMinVersion = 7.0
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = OperationControl_v5g0shzs_wpftmp
build_property.ProjectDir = C:\ZendionInc\agrobot_base\AgroBase\OperationControl\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =

View File

@ -0,0 +1,8 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.Drawing;
global using global::System.Linq;
global using global::System.Threading;
global using global::System.Threading.Tasks;
global using global::System.Windows.Forms;

View File

@ -0,0 +1,25 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+abbd3386f3ab2cd63eb9bec4bb9fce188d3ce542")]
[assembly: System.Reflection.AssemblyProductAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyTitleAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
[assembly: System.Runtime.Versioning.TargetPlatformAttribute("Windows7.0")]
[assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("Windows7.0")]
// Generated by the MSBuild WriteCodeFragment class.

View File

@ -0,0 +1 @@
b95ee033888956fbf835d45c4eaa6ef3d07e336ce4e1556c901b0348e81b8049

View File

@ -0,0 +1,19 @@
is_global = true
build_property.ApplicationManifest =
build_property.StartupObject =
build_property.ApplicationDefaultFont =
build_property.ApplicationHighDpiMode =
build_property.ApplicationUseCompatibleTextRendering =
build_property.ApplicationVisualStyles =
build_property.TargetFramework = net8.0-windows7.0
build_property.TargetPlatformMinVersion = 7.0
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = OperationControl_wne1sjgc_wpftmp
build_property.ProjectDir = C:\ZendionInc\agrobot_base\AgroBase\OperationControl\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =

View File

@ -0,0 +1,8 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.Drawing;
global using global::System.Linq;
global using global::System.Threading;
global using global::System.Threading.Tasks;
global using global::System.Windows.Forms;

View File

@ -0,0 +1,25 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+abbd3386f3ab2cd63eb9bec4bb9fce188d3ce542")]
[assembly: System.Reflection.AssemblyProductAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyTitleAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
[assembly: System.Runtime.Versioning.TargetPlatformAttribute("Windows7.0")]
[assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("Windows7.0")]
// Generated by the MSBuild WriteCodeFragment class.

View File

@ -0,0 +1 @@
b95ee033888956fbf835d45c4eaa6ef3d07e336ce4e1556c901b0348e81b8049

View File

@ -0,0 +1,19 @@
is_global = true
build_property.ApplicationManifest =
build_property.StartupObject =
build_property.ApplicationDefaultFont =
build_property.ApplicationHighDpiMode =
build_property.ApplicationUseCompatibleTextRendering =
build_property.ApplicationVisualStyles =
build_property.TargetFramework = net8.0-windows7.0
build_property.TargetPlatformMinVersion = 7.0
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = OperationControl_zcktok3c_wpftmp
build_property.ProjectDir = C:\ZendionInc\agrobot_base\AgroBase\OperationControl\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =

View File

@ -0,0 +1,8 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.Drawing;
global using global::System.Linq;
global using global::System.Threading;
global using global::System.Threading.Tasks;
global using global::System.Windows.Forms;

View File

@ -0,0 +1,25 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+abbd3386f3ab2cd63eb9bec4bb9fce188d3ce542")]
[assembly: System.Reflection.AssemblyProductAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyTitleAttribute("OperationControl")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
[assembly: System.Runtime.Versioning.TargetPlatformAttribute("Windows7.0")]
[assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("Windows7.0")]
// Generated by the MSBuild WriteCodeFragment class.

View File

@ -0,0 +1 @@
b95ee033888956fbf835d45c4eaa6ef3d07e336ce4e1556c901b0348e81b8049

View File

@ -0,0 +1,19 @@
is_global = true
build_property.ApplicationManifest =
build_property.StartupObject =
build_property.ApplicationDefaultFont =
build_property.ApplicationHighDpiMode =
build_property.ApplicationUseCompatibleTextRendering =
build_property.ApplicationVisualStyles =
build_property.TargetFramework = net8.0-windows7.0
build_property.TargetPlatformMinVersion = 7.0
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = OperationControl_zt151jtu_wpftmp
build_property.ProjectDir = C:\ZendionInc\agrobot_base\AgroBase\OperationControl\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =

View File

@ -0,0 +1,8 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.Drawing;
global using global::System.Linq;
global using global::System.Threading;
global using global::System.Threading.Tasks;
global using global::System.Windows.Forms;

View File

@ -1,4 +1,4 @@
#pragma checksum "..\..\..\..\Windows\MainWindow.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "D35F1E12C4E76515F32C2CB9E46EE40C6AAC5C3C"
#pragma checksum "..\..\..\..\Windows\MainWindow.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "DDA477106870E6A43000E5283E29E6E43D1C28FE"
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
@ -487,7 +487,7 @@ namespace OperationControl.Windows {
#line 122 "..\..\..\..\Windows\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.Label lblDiagnosticos_ATU_PRS;
internal System.Windows.Controls.Label lblDiagnosticos_ATU_PRSLN;
#line default
#line hidden
@ -495,7 +495,7 @@ namespace OperationControl.Windows {
#line 123 "..\..\..\..\Windows\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.Label lblDiagnosticos_ATU_FLX;
internal System.Windows.Controls.Label lblDiagnosticos_ATU_FLXLN;
#line default
#line hidden
@ -503,7 +503,7 @@ namespace OperationControl.Windows {
#line 124 "..\..\..\..\Windows\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.Label lblDiagnosticos_ATU_MAS;
internal System.Windows.Controls.Label lblDiagnosticos_ATU_MASRS;
#line default
#line hidden
@ -557,6 +557,78 @@ namespace OperationControl.Windows {
#line hidden
#line 136 "..\..\..\..\Windows\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.Label lblSaude_Descricao;
#line default
#line hidden
#line 137 "..\..\..\..\Windows\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.Label lblSaude_Versao;
#line default
#line hidden
#line 138 "..\..\..\..\Windows\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.Label lblSaude_Status;
#line default
#line hidden
#line 139 "..\..\..\..\Windows\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.Label lblSaude_CAN;
#line default
#line hidden
#line 140 "..\..\..\..\Windows\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.Label lblSaude_Latencia;
#line default
#line hidden
#line 141 "..\..\..\..\Windows\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.Label lblSaude_Impedimento;
#line default
#line hidden
#line 143 "..\..\..\..\Windows\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.CheckBox chbSaude_Mandatorio;
#line default
#line hidden
#line 144 "..\..\..\..\Windows\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.CheckBox chbSaude_EmUso;
#line default
#line hidden
#line 145 "..\..\..\..\Windows\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.Button btnSaude_Salvar;
#line default
#line hidden
#line 160 "..\..\..\..\Windows\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal ScottPlot.WPF.WpfPlot Plot;
@ -1101,13 +1173,13 @@ namespace OperationControl.Windows {
this.lblDiagnosticos_ATU = ((System.Windows.Controls.Label)(target));
return;
case 57:
this.lblDiagnosticos_ATU_PRS = ((System.Windows.Controls.Label)(target));
this.lblDiagnosticos_ATU_PRSLN = ((System.Windows.Controls.Label)(target));
return;
case 58:
this.lblDiagnosticos_ATU_FLX = ((System.Windows.Controls.Label)(target));
this.lblDiagnosticos_ATU_FLXLN = ((System.Windows.Controls.Label)(target));
return;
case 59:
this.lblDiagnosticos_ATU_MAS = ((System.Windows.Controls.Label)(target));
this.lblDiagnosticos_ATU_MASRS = ((System.Windows.Controls.Label)(target));
return;
case 60:
this.lblDiagnosticos_ATU_B01 = ((System.Windows.Controls.Label)(target));
@ -1128,24 +1200,57 @@ namespace OperationControl.Windows {
this.brdStatusModulo = ((System.Windows.Controls.Border)(target));
return;
case 66:
this.Plot = ((ScottPlot.WPF.WpfPlot)(target));
this.lblSaude_Descricao = ((System.Windows.Controls.Label)(target));
return;
case 67:
this.brdGNSS = ((System.Windows.Controls.Border)(target));
this.lblSaude_Versao = ((System.Windows.Controls.Label)(target));
return;
case 68:
this.lblGNSS_Posicao = ((System.Windows.Controls.Label)(target));
this.lblSaude_Status = ((System.Windows.Controls.Label)(target));
return;
case 69:
this.lblGNSS_Correcao = ((System.Windows.Controls.Label)(target));
this.lblSaude_CAN = ((System.Windows.Controls.Label)(target));
return;
case 70:
this.lblGNSS_Satelites = ((System.Windows.Controls.Label)(target));
this.lblSaude_Latencia = ((System.Windows.Controls.Label)(target));
return;
case 71:
this.lblGNSS_Altitude = ((System.Windows.Controls.Label)(target));
this.lblSaude_Impedimento = ((System.Windows.Controls.Label)(target));
return;
case 72:
this.chbSaude_Mandatorio = ((System.Windows.Controls.CheckBox)(target));
return;
case 73:
this.chbSaude_EmUso = ((System.Windows.Controls.CheckBox)(target));
return;
case 74:
this.btnSaude_Salvar = ((System.Windows.Controls.Button)(target));
#line 145 "..\..\..\..\Windows\MainWindow.xaml"
this.btnSaude_Salvar.Click += new System.Windows.RoutedEventHandler(this.btnSaude_Salvar_Click);
#line default
#line hidden
return;
case 75:
this.Plot = ((ScottPlot.WPF.WpfPlot)(target));
return;
case 76:
this.brdGNSS = ((System.Windows.Controls.Border)(target));
return;
case 77:
this.lblGNSS_Posicao = ((System.Windows.Controls.Label)(target));
return;
case 78:
this.lblGNSS_Correcao = ((System.Windows.Controls.Label)(target));
return;
case 79:
this.lblGNSS_Satelites = ((System.Windows.Controls.Label)(target));
return;
case 80:
this.lblGNSS_Altitude = ((System.Windows.Controls.Label)(target));
return;
case 81:
this.sldGNSS_LeverArm = ((System.Windows.Controls.Slider)(target));
#line 180 "..\..\..\..\Windows\MainWindow.xaml"
@ -1154,10 +1259,10 @@ namespace OperationControl.Windows {
#line default
#line hidden
return;
case 73:
case 82:
this.lblGNSS_Progresso = ((System.Windows.Controls.Label)(target));
return;
case 74:
case 83:
this.btnGNSS_FixarBase = ((System.Windows.Controls.Button)(target));
#line 182 "..\..\..\..\Windows\MainWindow.xaml"
@ -1166,46 +1271,46 @@ namespace OperationControl.Windows {
#line default
#line hidden
return;
case 75:
case 84:
this.brdAjustesOperacao = ((System.Windows.Controls.Border)(target));
return;
case 76:
case 85:
this.txtParametros_VelCErvas = ((System.Windows.Controls.TextBox)(target));
return;
case 77:
case 86:
this.txtParametros_VelSErvas = ((System.Windows.Controls.TextBox)(target));
return;
case 78:
case 87:
this.txtParametros_AngMax = ((System.Windows.Controls.TextBox)(target));
return;
case 79:
case 88:
this.txtParametros_RoiAtuacao = ((System.Windows.Controls.TextBox)(target));
return;
case 80:
case 89:
this.txtParametros_AreaAtuacao = ((System.Windows.Controls.TextBox)(target));
return;
case 81:
case 90:
this.txtParametros_PressaoLiha = ((System.Windows.Controls.TextBox)(target));
return;
case 82:
case 91:
this.txtParametros_PctErvaOn = ((System.Windows.Controls.TextBox)(target));
return;
case 83:
case 92:
this.txtParametros_PctErvaOff = ((System.Windows.Controls.TextBox)(target));
return;
case 84:
case 93:
this.txtParametros_TempoOn = ((System.Windows.Controls.TextBox)(target));
return;
case 85:
case 94:
this.chbParametros_Sonar = ((System.Windows.Controls.CheckBox)(target));
return;
case 86:
case 95:
this.chbParametros_Frenagem = ((System.Windows.Controls.CheckBox)(target));
return;
case 87:
case 96:
this.chbParametros_Pulverizador = ((System.Windows.Controls.CheckBox)(target));
return;
case 88:
case 97:
this.btnParametros_Salvar = ((System.Windows.Controls.Button)(target));
#line 215 "..\..\..\..\Windows\MainWindow.xaml"
@ -1214,7 +1319,7 @@ namespace OperationControl.Windows {
#line default
#line hidden
return;
case 89:
case 98:
this.btnParametros_Atualizar = ((System.Windows.Controls.Button)(target));
#line 216 "..\..\..\..\Windows\MainWindow.xaml"
@ -1223,46 +1328,46 @@ namespace OperationControl.Windows {
#line default
#line hidden
return;
case 90:
case 99:
this.brdMapa = ((System.Windows.Controls.Border)(target));
return;
case 91:
case 100:
this.MAP = ((OperationControl.Controls.MapViewControl)(target));
return;
case 92:
case 101:
this.HDG = ((OperationControl.Controls.HeadingIndicator)(target));
return;
case 93:
case 102:
this.IMU = ((OperationControl.Controls.AttitudeIndicator)(target));
return;
case 94:
case 103:
this.brdControle = ((System.Windows.Controls.Border)(target));
return;
case 95:
case 104:
this.CTRL = ((OperationControl.Controls.ManualControlPad)(target));
return;
case 96:
case 105:
this.brdMapaInfo = ((System.Windows.Controls.Border)(target));
return;
case 97:
case 106:
this.lblMapaInfo_Debug = ((System.Windows.Controls.Label)(target));
return;
case 98:
case 107:
this.brdCameraFrontal = ((System.Windows.Controls.Border)(target));
return;
case 99:
case 108:
this.VideoFront = ((LibVLCSharp.WPF.VideoView)(target));
return;
case 100:
case 109:
this.brdCameraTraseira = ((System.Windows.Controls.Border)(target));
return;
case 101:
case 110:
this.VideoWeed = ((LibVLCSharp.WPF.VideoView)(target));
return;
case 102:
case 111:
this.brdBicos = ((System.Windows.Controls.Border)(target));
return;
case 103:
case 112:
this.btnB0 = ((System.Windows.Controls.Button)(target));
#line 257 "..\..\..\..\Windows\MainWindow.xaml"
@ -1271,16 +1376,16 @@ namespace OperationControl.Windows {
#line default
#line hidden
return;
case 104:
case 113:
this.brdLidar = ((System.Windows.Controls.Border)(target));
return;
case 105:
case 114:
this.BBoxes3D = ((OperationControl.Controls.Bbox3DViewer)(target));
return;
case 106:
case 115:
this.brdObstaculos = ((System.Windows.Controls.Border)(target));
return;
case 107:
case 116:
this.brdBottom = ((System.Windows.Controls.Border)(target));
return;
}