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 ColorConverter = System.Windows.Media.ColorConverter;
|
||||
using Color = System.Windows.Media.Color;
|
||||
using static AgroBase.Models.Enums;
|
||||
|
||||
namespace OperationControl.ViewModels.Views.Operacao
|
||||
{
|
||||
|
|
@ -86,54 +87,76 @@ namespace OperationControl.ViewModels.Views.Operacao
|
|||
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"));
|
||||
CorBorda = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#2C7A57"));
|
||||
CorAccent = Brushes.LightGreen;
|
||||
CorBadge = Brushes.LightGreen;
|
||||
CorTexto = Brushes.White;
|
||||
CorTextoBadge = Brushes.Black;
|
||||
public void AtualizarStatus(StatusModulo status, string titulo, string linha1, string linha2, string status_str, string resumo)
|
||||
{
|
||||
ContextoSelecionado = titulo;
|
||||
TituloStatus = linha1;
|
||||
MotivoPrincipal = linha2;
|
||||
BadgeTexto = status_str;
|
||||
ResumoCurto = resumo;
|
||||
|
||||
AplicarPaletaStatus(status);
|
||||
}
|
||||
|
||||
public void MockarParadoPorInclinacao()
|
||||
private void AplicarPaletaStatus(StatusModulo status)
|
||||
{
|
||||
ContextoSelecionado = "ROVER 01";
|
||||
TituloStatus = "ROVER PARADO POR SEGURANÇA";
|
||||
MotivoPrincipal = "Inclinação lateral acima do limite permitido.";
|
||||
BadgeTexto = "PARADO";
|
||||
ResumoCurto = "Verificar IMU";
|
||||
switch (status)
|
||||
{
|
||||
case StatusModulo.Desconectado:
|
||||
CorFundo = BrushFromHex("#2A2F36");
|
||||
CorBorda = BrushFromHex("#4B5563");
|
||||
CorAccent = BrushFromHex("#9CA3AF");
|
||||
CorBadge = BrushFromHex("#9CA3AF");
|
||||
CorTexto = Brushes.White;
|
||||
CorTextoBadge = BrushFromHex("#111827");
|
||||
break;
|
||||
|
||||
CorFundo = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#4A1F1F"));
|
||||
CorBorda = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#9B3A3A"));
|
||||
CorAccent = Brushes.OrangeRed;
|
||||
CorBadge = Brushes.OrangeRed;
|
||||
CorTexto = Brushes.White;
|
||||
CorTextoBadge = Brushes.Black;
|
||||
case StatusModulo.Conectado:
|
||||
CorFundo = BrushFromHex("#15324A");
|
||||
CorBorda = BrushFromHex("#2563EB");
|
||||
CorAccent = BrushFromHex("#60A5FA");
|
||||
CorBadge = BrushFromHex("#60A5FA");
|
||||
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";
|
||||
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;
|
||||
return new SolidColorBrush((Color)ColorConverter.ConvertFromString(hex));
|
||||
}
|
||||
|
||||
|
||||
public event PropertyChangedEventHandler? PropertyChanged;
|
||||
private void OnPropertyChanged(string nome)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ using AgroBase.Models.Operacoes;
|
|||
using Newtonsoft.Json.Linq;
|
||||
using OperationControl.ViewModels.Views.Operacao;
|
||||
using OperationControl.Controls;
|
||||
using static AgroBase.Models.Enums;
|
||||
|
||||
namespace OperationControl.ViewModels
|
||||
{
|
||||
|
|
@ -345,6 +346,7 @@ namespace OperationControl.ViewModels
|
|||
BottomContent = _viewOperacaoBottom;
|
||||
CriarMarcadorBase(_viewOperacaoCenter?.Mapa);
|
||||
AtualizarDadosMapa(null);
|
||||
AtualizarBarraSuperior(StatusModulo.Conectado, "BASE", "VISÃO GERAL", "Selecione um equipamento na lista à direita para configurá-lo", "NORMAL", "Aguardando");
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
@ -360,6 +362,13 @@ namespace OperationControl.ViewModels
|
|||
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)
|
||||
{
|
||||
|
|
@ -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)
|
||||
{
|
||||
if (alerta == null)
|
||||
|
|
@ -693,7 +693,7 @@ namespace OperationControl.ViewModels
|
|||
|
||||
_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();
|
||||
}
|
||||
else
|
||||
|
|
@ -711,7 +711,7 @@ namespace OperationControl.ViewModels
|
|||
|
||||
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)
|
||||
|
|
|
|||
Loading…
Reference in New Issue