Criado método para preencher a barra superior
This commit is contained in:
parent
a3590bd224
commit
1ff65eeb67
|
|
@ -4,6 +4,7 @@ using Brush = System.Windows.Media.Brush;
|
||||||
using Brushes = System.Windows.Media.Brushes;
|
using Brushes = System.Windows.Media.Brushes;
|
||||||
using ColorConverter = System.Windows.Media.ColorConverter;
|
using ColorConverter = System.Windows.Media.ColorConverter;
|
||||||
using Color = System.Windows.Media.Color;
|
using Color = System.Windows.Media.Color;
|
||||||
|
using static AgroBase.Models.Enums;
|
||||||
|
|
||||||
namespace OperationControl.ViewModels.Views.Operacao
|
namespace OperationControl.ViewModels.Views.Operacao
|
||||||
{
|
{
|
||||||
|
|
@ -86,54 +87,76 @@ namespace OperationControl.ViewModels.Views.Operacao
|
||||||
set { _corTextoBadge = value; OnPropertyChanged(nameof(CorTextoBadge)); }
|
set { _corTextoBadge = value; OnPropertyChanged(nameof(CorTextoBadge)); }
|
||||||
}
|
}
|
||||||
|
|
||||||
public void MockarNormal()
|
|
||||||
{
|
|
||||||
ContextoSelecionado = "ROVER 01";
|
|
||||||
TituloStatus = "ROVER OPERANDO NORMALMENTE";
|
|
||||||
MotivoPrincipal = "Todos os módulos obrigatórios e regras de controle estão OK.";
|
|
||||||
BadgeTexto = "NORMAL";
|
|
||||||
ResumoCurto = "Sistema saudável";
|
|
||||||
|
|
||||||
CorFundo = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#153D2C"));
|
public void AtualizarStatus(StatusModulo status, string titulo, string linha1, string linha2, string status_str, string resumo)
|
||||||
CorBorda = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#2C7A57"));
|
{
|
||||||
CorAccent = Brushes.LightGreen;
|
ContextoSelecionado = titulo;
|
||||||
CorBadge = Brushes.LightGreen;
|
TituloStatus = linha1;
|
||||||
CorTexto = Brushes.White;
|
MotivoPrincipal = linha2;
|
||||||
CorTextoBadge = Brushes.Black;
|
BadgeTexto = status_str;
|
||||||
|
ResumoCurto = resumo;
|
||||||
|
|
||||||
|
AplicarPaletaStatus(status);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void MockarParadoPorInclinacao()
|
private void AplicarPaletaStatus(StatusModulo status)
|
||||||
{
|
{
|
||||||
ContextoSelecionado = "ROVER 01";
|
switch (status)
|
||||||
TituloStatus = "ROVER PARADO POR SEGURANÇA";
|
{
|
||||||
MotivoPrincipal = "Inclinação lateral acima do limite permitido.";
|
case StatusModulo.Desconectado:
|
||||||
BadgeTexto = "PARADO";
|
CorFundo = BrushFromHex("#2A2F36");
|
||||||
ResumoCurto = "Verificar IMU";
|
CorBorda = BrushFromHex("#4B5563");
|
||||||
|
CorAccent = BrushFromHex("#9CA3AF");
|
||||||
|
CorBadge = BrushFromHex("#9CA3AF");
|
||||||
|
CorTexto = Brushes.White;
|
||||||
|
CorTextoBadge = BrushFromHex("#111827");
|
||||||
|
break;
|
||||||
|
|
||||||
CorFundo = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#4A1F1F"));
|
case StatusModulo.Conectado:
|
||||||
CorBorda = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#9B3A3A"));
|
CorFundo = BrushFromHex("#15324A");
|
||||||
CorAccent = Brushes.OrangeRed;
|
CorBorda = BrushFromHex("#2563EB");
|
||||||
CorBadge = Brushes.OrangeRed;
|
CorAccent = BrushFromHex("#60A5FA");
|
||||||
CorTexto = Brushes.White;
|
CorBadge = BrushFromHex("#60A5FA");
|
||||||
CorTextoBadge = Brushes.Black;
|
CorTexto = Brushes.White;
|
||||||
|
CorTextoBadge = BrushFromHex("#0B1220");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case StatusModulo.Falha:
|
||||||
|
CorFundo = BrushFromHex("#4A1D1D");
|
||||||
|
CorBorda = BrushFromHex("#DC2626");
|
||||||
|
CorAccent = BrushFromHex("#F87171");
|
||||||
|
CorBadge = BrushFromHex("#F87171");
|
||||||
|
CorTexto = Brushes.White;
|
||||||
|
CorTextoBadge = BrushFromHex("#1F0A0A");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case StatusModulo.Alerta:
|
||||||
|
CorFundo = BrushFromHex("#4A3A12");
|
||||||
|
CorBorda = BrushFromHex("#D97706");
|
||||||
|
CorAccent = BrushFromHex("#FBBF24");
|
||||||
|
CorBadge = BrushFromHex("#FBBF24");
|
||||||
|
CorTexto = Brushes.White;
|
||||||
|
CorTextoBadge = BrushFromHex("#1F1400");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case StatusModulo.Operante:
|
||||||
|
default:
|
||||||
|
CorFundo = BrushFromHex("#153D2C");
|
||||||
|
CorBorda = BrushFromHex("#2C7A57");
|
||||||
|
CorAccent = BrushFromHex("#86EFAC");
|
||||||
|
CorBadge = BrushFromHex("#86EFAC");
|
||||||
|
CorTexto = Brushes.White;
|
||||||
|
CorTextoBadge = BrushFromHex("#052E16");
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void MockarObstaculo()
|
private SolidColorBrush BrushFromHex(string hex)
|
||||||
{
|
{
|
||||||
ContextoSelecionado = "ROVER 01";
|
return new SolidColorBrush((Color)ColorConverter.ConvertFromString(hex));
|
||||||
TituloStatus = "MOVIMENTO BLOQUEADO PREVENTIVAMENTE";
|
|
||||||
MotivoPrincipal = "Obstáculo detectado no corredor à frente.";
|
|
||||||
BadgeTexto = "ATENÇÃO";
|
|
||||||
ResumoCurto = "Inspecionar caminho";
|
|
||||||
|
|
||||||
CorFundo = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#4A3315"));
|
|
||||||
CorBorda = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#B7791F"));
|
|
||||||
CorAccent = Brushes.Orange;
|
|
||||||
CorBadge = Brushes.Orange;
|
|
||||||
CorTexto = Brushes.White;
|
|
||||||
CorTextoBadge = Brushes.Black;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public event PropertyChangedEventHandler? PropertyChanged;
|
public event PropertyChangedEventHandler? PropertyChanged;
|
||||||
private void OnPropertyChanged(string nome)
|
private void OnPropertyChanged(string nome)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,7 @@ using AgroBase.Models.Operacoes;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using OperationControl.ViewModels.Views.Operacao;
|
using OperationControl.ViewModels.Views.Operacao;
|
||||||
using OperationControl.Controls;
|
using OperationControl.Controls;
|
||||||
|
using static AgroBase.Models.Enums;
|
||||||
|
|
||||||
namespace OperationControl.ViewModels
|
namespace OperationControl.ViewModels
|
||||||
{
|
{
|
||||||
|
|
@ -345,6 +346,7 @@ namespace OperationControl.ViewModels
|
||||||
BottomContent = _viewOperacaoBottom;
|
BottomContent = _viewOperacaoBottom;
|
||||||
CriarMarcadorBase(_viewOperacaoCenter?.Mapa);
|
CriarMarcadorBase(_viewOperacaoCenter?.Mapa);
|
||||||
AtualizarDadosMapa(null);
|
AtualizarDadosMapa(null);
|
||||||
|
AtualizarBarraSuperior(StatusModulo.Conectado, "BASE", "VISÃO GERAL", "Selecione um equipamento na lista à direita para configurá-lo", "NORMAL", "Aguardando");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -360,6 +362,13 @@ namespace OperationControl.ViewModels
|
||||||
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nome));
|
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nome));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void AtualizarBarraSuperior(StatusModulo status, string titulo, string linha1, string linha2, string status_str, string resumo)
|
||||||
|
{
|
||||||
|
System.Windows.Application.Current.Dispatcher.BeginInvoke(new Action(() =>
|
||||||
|
{
|
||||||
|
_viewOperacaoTop?._vm.AtualizarStatus(status, titulo, linha1, linha2, status_str, resumo);
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
|
||||||
public void AtualizarDadosGnss(AgroBase.Models.GPSModel dados)
|
public void AtualizarDadosGnss(AgroBase.Models.GPSModel dados)
|
||||||
{
|
{
|
||||||
|
|
@ -639,15 +648,6 @@ namespace OperationControl.ViewModels
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void AtualizarTopOperacaoRover(string nomeRover, bool modoManual)
|
|
||||||
{
|
|
||||||
System.Windows.Application.Current.Dispatcher.BeginInvoke(new Action(() =>
|
|
||||||
{
|
|
||||||
_viewOperacaoTop?._vm.MockarNormal();
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private void AbrirDiagnosticoPeloAlerta(AlertaModel alerta)
|
private void AbrirDiagnosticoPeloAlerta(AlertaModel alerta)
|
||||||
{
|
{
|
||||||
if (alerta == null)
|
if (alerta == null)
|
||||||
|
|
@ -693,7 +693,7 @@ namespace OperationControl.ViewModels
|
||||||
|
|
||||||
_viewOperacaoCenter?._vm?.SelecionarRoverLista(rover);
|
_viewOperacaoCenter?._vm?.SelecionarRoverLista(rover);
|
||||||
|
|
||||||
AtualizarTopOperacaoRover(VariaveisControleOperacao.SelectedRoverId, true);
|
AtualizarBarraSuperior(StatusModulo.Conectado, "BASE", "VISÃO GERAL", "Selecione um equipamento na lista à direita para configurá-lo", "NORMAL", "Aguardando");
|
||||||
_viewOperacaoLeft?._vm?.DefinirSemRover();
|
_viewOperacaoLeft?._vm?.DefinirSemRover();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
@ -711,7 +711,7 @@ namespace OperationControl.ViewModels
|
||||||
|
|
||||||
AtualizarDadosMapa(VariaveisControleOperacao.RoverEmFoco);
|
AtualizarDadosMapa(VariaveisControleOperacao.RoverEmFoco);
|
||||||
|
|
||||||
AtualizarTopOperacaoRover(VariaveisControleOperacao.SelectedRoverId, ModoOperacaoAtual == ModoOperacao.Manual);
|
AtualizarBarraSuperior(rover.Status, rover.NumeroSerie, "VISÃO GERAL", VariaveisControleOperacao.RoverEmFoco?.DadosLeitura?.Operacao?.ImpedimentoErro ?? "Sistema operante", rover.Status.ToString(), (VariaveisControleOperacao.RoverEmFoco?.DadosLeitura?.Operacao?.Status ?? StatusOperacao.NaoIniciado).ToString());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
private void OnSecaoSelecionadaChanged(SecaoRightBar secao)
|
private void OnSecaoSelecionadaChanged(SecaoRightBar secao)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue