Ajustes camera e carregamento de parametros operacao padrao
This commit is contained in:
parent
88d5ac701e
commit
286e5a62c4
|
|
@ -44,7 +44,7 @@ namespace AgroBase.Forms.IHM
|
||||||
});
|
});
|
||||||
FuncoesGlobais.DefinirEventosPicBtn(picManual, "Erro ao carregar modo de controle manual!", async () =>
|
FuncoesGlobais.DefinirEventosPicBtn(picManual, "Erro ao carregar modo de controle manual!", async () =>
|
||||||
{
|
{
|
||||||
OperacaoModel.CarregarParametrosOperacaoPadrao(ModoOperacao.Manual);
|
OperacaoModel.CarregarParametrosOperacaoPadrao(ModoOperacao.Manual, true);
|
||||||
if (Variaveis.OperacaoEmAndamento.OperacaoLiberada)
|
if (Variaveis.OperacaoEmAndamento.OperacaoLiberada)
|
||||||
{
|
{
|
||||||
frmDialogoMapa frm = new frmDialogoMapa();
|
frmDialogoMapa frm = new frmDialogoMapa();
|
||||||
|
|
|
||||||
|
|
@ -206,7 +206,7 @@ namespace AgroBase
|
||||||
|
|
||||||
private void cmbModoOperacao_SelectedIndexChanged(object sender, EventArgs e)
|
private void cmbModoOperacao_SelectedIndexChanged(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
OperacaoModel.CarregarParametrosOperacaoPadrao((ModoOperacao)cmbModoOperacao.SelectedIndex);
|
OperacaoModel.CarregarParametrosOperacaoPadrao((ModoOperacao)cmbModoOperacao.SelectedIndex, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void btnIniciarOperacao_Click(object sender, EventArgs e)
|
private void btnIniciarOperacao_Click(object sender, EventArgs e)
|
||||||
|
|
|
||||||
|
|
@ -291,7 +291,7 @@ namespace AgroBase.Models
|
||||||
|
|
||||||
if (Parametros.Modo == null) return (false, new List<string>());
|
if (Parametros.Modo == null) return (false, new List<string>());
|
||||||
|
|
||||||
CarregarParametrosOperacaoPadrao((ModoOperacao)Parametros.Modo);
|
CarregarParametrosOperacaoPadrao((ModoOperacao)Parametros.Modo, true);
|
||||||
|
|
||||||
Variaveis.OperacaoEmAndamento.Parametros = Parametros;
|
Variaveis.OperacaoEmAndamento.Parametros = Parametros;
|
||||||
|
|
||||||
|
|
@ -333,14 +333,26 @@ namespace AgroBase.Models
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public static void CarregarParametrosOperacaoPadrao(ModoOperacao Modo)
|
public static OperacaoParametrosModel CarregarParametrosOperacaoPadrao(ModoOperacao Modo, bool isagrobase)
|
||||||
|
{
|
||||||
|
OperacaoParametrosModel p = new OperacaoParametrosModel()
|
||||||
|
{
|
||||||
|
Modo = Modo,
|
||||||
|
QtdCamerasSolo = VariaveisEquipamento.QuantidadeCamerasSolo,
|
||||||
|
QtdBicos = VariaveisEquipamento.QuantidadeBicosPulverizadores,
|
||||||
|
CapacidadeReservatorio = VariaveisEquipamento.CapacidadeReservatorio,
|
||||||
|
RoverId = VariaveisEquipamento.Parametros.serial_number,
|
||||||
|
RuasPercorrer = null,
|
||||||
|
Mapa = null,
|
||||||
|
DadosLeitura = new OperacaoParametrosDadosModel(),
|
||||||
|
};
|
||||||
|
|
||||||
|
if (isagrobase)
|
||||||
{
|
{
|
||||||
var SenConectado = (DispositivosService<SensoriamentoModel>)Variaveis.DispositivosConectados.FirstOrDefault(x => x.Dispositivo == T_Code.Sen);
|
var SenConectado = (DispositivosService<SensoriamentoModel>)Variaveis.DispositivosConectados.FirstOrDefault(x => x.Dispositivo == T_Code.Sen);
|
||||||
var AtuConectado = (DispositivosService<AtuadorModel>)Variaveis.DispositivosConectados.FirstOrDefault(x => x.Dispositivo == T_Code.Atu);
|
var AtuConectado = (DispositivosService<AtuadorModel>)Variaveis.DispositivosConectados.FirstOrDefault(x => x.Dispositivo == T_Code.Atu);
|
||||||
var MvdConectado = (DispositivosService<MovimentacaoUnificadaModel>)Variaveis.DispositivosConectados.FirstOrDefault(x => x.Dispositivo == T_Code.Mvd);
|
var MvdConectado = (DispositivosService<MovimentacaoUnificadaModel>)Variaveis.DispositivosConectados.FirstOrDefault(x => x.Dispositivo == T_Code.Mvd);
|
||||||
|
|
||||||
tmrLogs?.Stop();
|
tmrLogs?.Stop();
|
||||||
|
|
||||||
Variaveis.OperacaoEmAndamento = new OperacaoModel(Modo)
|
Variaveis.OperacaoEmAndamento = new OperacaoModel(Modo)
|
||||||
{
|
{
|
||||||
Iniciado = false,
|
Iniciado = false,
|
||||||
|
|
@ -350,30 +362,31 @@ namespace AgroBase.Models
|
||||||
DispSen = SenConectado,
|
DispSen = SenConectado,
|
||||||
DispMvd = MvdConectado,
|
DispMvd = MvdConectado,
|
||||||
};
|
};
|
||||||
|
}
|
||||||
|
|
||||||
switch (Modo)
|
switch (Modo)
|
||||||
{
|
{
|
||||||
case ModoOperacao.Manual:
|
case ModoOperacao.Manual:
|
||||||
Variaveis.OperacaoEmAndamento.Parametros = new OperacaoParametrosModel()
|
p.Controle = new OperacaoParametrosControleModel()
|
||||||
{
|
|
||||||
Modo = Modo,
|
|
||||||
QtdCamerasSolo = VariaveisEquipamento.QuantidadeCamerasSolo,
|
|
||||||
QtdBicos = VariaveisEquipamento.QuantidadeBicosPulverizadores,
|
|
||||||
CapacidadeReservatorio = VariaveisEquipamento.CapacidadeReservatorio,
|
|
||||||
RoverId = VariaveisEquipamento.Parametros.serial_number,
|
|
||||||
RuasPercorrer = null,
|
|
||||||
Mapa = null,
|
|
||||||
Controle = new OperacaoParametrosControleModel()
|
|
||||||
{
|
{
|
||||||
|
RegistrarDadosPosProcessamento = false,
|
||||||
|
|
||||||
MovimentoAutomatico = false,
|
MovimentoAutomatico = false,
|
||||||
DirecionalAutomatico = false,
|
DirecionalAutomatico = false,
|
||||||
PulverizadorAutomatico = false,
|
PulverizadorAutomatico = false,
|
||||||
FrenagemAutomaticaAoParar = true,
|
|
||||||
|
SonarAtivado = false,
|
||||||
|
FrenagemAutomaticaAoParar = false,
|
||||||
|
ImuParadaPorInclinacao = false,
|
||||||
|
OakParadaPorObstaculo = false,
|
||||||
|
MpcMatrizCusto = false,
|
||||||
|
MpcHorizonte = 4.0,
|
||||||
|
|
||||||
MovVelocidadeSErvasPercent = 100,
|
MovVelocidadeSErvasPercent = 100,
|
||||||
MovVelocidadeCErvasPercent = 15,
|
MovVelocidadeCErvasPercent = 15,
|
||||||
DirAnguloMaximo = 25,
|
DirAnguloMaximo = 25,
|
||||||
DirVelocidadeMovimento = 40,
|
DirVelocidadeMovimento = 40,
|
||||||
SonarAtivado = false,
|
|
||||||
DirTipoMovimento = TiposControladorDirecional.Manual,
|
DirTipoMovimento = TiposControladorDirecional.Manual,
|
||||||
|
|
||||||
AtuAlturaAreaPulverizacao = 10,
|
AtuAlturaAreaPulverizacao = 10,
|
||||||
|
|
@ -382,8 +395,8 @@ namespace AgroBase.Models
|
||||||
AtuPercentualErvasBicoOn = 1,
|
AtuPercentualErvasBicoOn = 1,
|
||||||
AtuPercentualInicioPulverizacao = 70,
|
AtuPercentualInicioPulverizacao = 70,
|
||||||
AtuPressaoLinha = 85,
|
AtuPressaoLinha = 85,
|
||||||
},
|
};
|
||||||
ModulosMandatorios = new List<OperacaoModulosMandatoriosModel>()
|
p.ModulosMandatorios = new List<OperacaoModulosMandatoriosModel>()
|
||||||
{
|
{
|
||||||
new OperacaoModulosMandatoriosModel()
|
new OperacaoModulosMandatoriosModel()
|
||||||
{
|
{
|
||||||
|
|
@ -403,8 +416,8 @@ namespace AgroBase.Models
|
||||||
Mandatorio = false,
|
Mandatorio = false,
|
||||||
Utilizar = true,
|
Utilizar = true,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
ParametrosMandatorios = new List<OperacaoParametrosMandatoriosModel>()
|
p.ParametrosMandatorios = new List<OperacaoParametrosMandatoriosModel>()
|
||||||
{
|
{
|
||||||
new OperacaoParametrosMandatoriosModel()
|
new OperacaoParametrosMandatoriosModel()
|
||||||
{
|
{
|
||||||
|
|
@ -412,14 +425,9 @@ namespace AgroBase.Models
|
||||||
Mandatorio = false,
|
Mandatorio = false,
|
||||||
Utilizar = true,
|
Utilizar = true,
|
||||||
},
|
},
|
||||||
//new OperacaoParametrosMandatoriosModel()
|
|
||||||
//{
|
|
||||||
// Parametro = ParametrosOperacao.LoRa,
|
|
||||||
// Mandatorio = false,
|
|
||||||
// Utilizar = true,
|
|
||||||
//},
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
if (isagrobase)
|
||||||
|
{
|
||||||
Variaveis.OperacaoEmAndamento.frmOperacao = new frmOperacaoManual();
|
Variaveis.OperacaoEmAndamento.frmOperacao = new frmOperacaoManual();
|
||||||
Variaveis.OperacaoEmAndamento.ControleAnterior = new OperacaoControleModel();
|
Variaveis.OperacaoEmAndamento.ControleAnterior = new OperacaoControleModel();
|
||||||
Variaveis.OperacaoEmAndamento.Controle = new OperacaoControleModel()
|
Variaveis.OperacaoEmAndamento.Controle = new OperacaoControleModel()
|
||||||
|
|
@ -461,28 +469,29 @@ namespace AgroBase.Models
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case ModoOperacao.MapaGPS:
|
case ModoOperacao.MapaGPS:
|
||||||
Variaveis.OperacaoEmAndamento.Parametros = new OperacaoParametrosModel()
|
p.Controle = new OperacaoParametrosControleModel()
|
||||||
{
|
|
||||||
Modo = Modo,
|
|
||||||
QtdCamerasSolo = VariaveisEquipamento.QuantidadeCamerasSolo,
|
|
||||||
QtdBicos = VariaveisEquipamento.QuantidadeBicosPulverizadores,
|
|
||||||
CapacidadeReservatorio = VariaveisEquipamento.CapacidadeReservatorio,
|
|
||||||
RoverId = VariaveisEquipamento.Parametros.serial_number,
|
|
||||||
RuasPercorrer = null,
|
|
||||||
Mapa = null,
|
|
||||||
Controle = new OperacaoParametrosControleModel()
|
|
||||||
{
|
{
|
||||||
|
RegistrarDadosPosProcessamento = false,
|
||||||
|
|
||||||
MovimentoAutomatico = true,
|
MovimentoAutomatico = true,
|
||||||
DirecionalAutomatico = true,
|
DirecionalAutomatico = true,
|
||||||
PulverizadorAutomatico = true,
|
PulverizadorAutomatico = true,
|
||||||
|
|
||||||
|
SonarAtivado = false,
|
||||||
FrenagemAutomaticaAoParar = true,
|
FrenagemAutomaticaAoParar = true,
|
||||||
|
ImuParadaPorInclinacao = true,
|
||||||
|
OakParadaPorObstaculo = true,
|
||||||
|
MpcMatrizCusto = false,
|
||||||
|
MpcHorizonte = 4.0,
|
||||||
|
|
||||||
MovVelocidadeSErvasPercent = 50,
|
MovVelocidadeSErvasPercent = 50,
|
||||||
MovVelocidadeCErvasPercent = 20,
|
MovVelocidadeCErvasPercent = 20,
|
||||||
DirAnguloMaximo = 30,
|
DirAnguloMaximo = 30,
|
||||||
DirVelocidadeMovimento = 50,
|
DirVelocidadeMovimento = 50,
|
||||||
SonarAtivado = true,
|
|
||||||
DirTipoMovimento = TiposControladorDirecional.MPC,
|
DirTipoMovimento = TiposControladorDirecional.MPC,
|
||||||
|
|
||||||
AtuAlturaAreaPulverizacao = 10,
|
AtuAlturaAreaPulverizacao = 10,
|
||||||
|
|
@ -491,8 +500,8 @@ namespace AgroBase.Models
|
||||||
AtuPercentualErvasBicoOn = 1,
|
AtuPercentualErvasBicoOn = 1,
|
||||||
AtuPercentualInicioPulverizacao = 70,
|
AtuPercentualInicioPulverizacao = 70,
|
||||||
AtuPressaoLinha = 85,
|
AtuPressaoLinha = 85,
|
||||||
},
|
};
|
||||||
ModulosMandatorios = new List<OperacaoModulosMandatoriosModel>()
|
p.ModulosMandatorios = new List<OperacaoModulosMandatoriosModel>()
|
||||||
{
|
{
|
||||||
new OperacaoModulosMandatoriosModel()
|
new OperacaoModulosMandatoriosModel()
|
||||||
{
|
{
|
||||||
|
|
@ -533,44 +542,21 @@ namespace AgroBase.Models
|
||||||
new OperacaoModulosMandatoriosModel()
|
new OperacaoModulosMandatoriosModel()
|
||||||
{
|
{
|
||||||
Dispositivo = T_Code.Snr,
|
Dispositivo = T_Code.Snr,
|
||||||
Mandatorio = false,
|
Mandatorio = true,
|
||||||
Utilizar = true,
|
Utilizar = true,
|
||||||
},
|
},
|
||||||
new OperacaoModulosMandatoriosModel()
|
};
|
||||||
|
p.ParametrosMandatorios = new List<OperacaoParametrosMandatoriosModel>()
|
||||||
{
|
{
|
||||||
Dispositivo = T_Code.Lvx,
|
|
||||||
Mandatorio = false,
|
|
||||||
Utilizar = true,
|
|
||||||
}
|
|
||||||
},
|
|
||||||
ParametrosMandatorios = new List<OperacaoParametrosMandatoriosModel>()
|
|
||||||
{
|
|
||||||
//new OperacaoParametrosMandatoriosModel()
|
|
||||||
//{
|
|
||||||
// Parametro = ParametrosOperacao.CameraSolo,
|
|
||||||
// Mandatorio = true,
|
|
||||||
// Utilizar = true,
|
|
||||||
//},
|
|
||||||
//new OperacaoParametrosMandatoriosModel()
|
|
||||||
//{
|
|
||||||
// Parametro = ParametrosOperacao.Sonar,
|
|
||||||
// Mandatorio = false,
|
|
||||||
// Utilizar = true,
|
|
||||||
//},
|
|
||||||
new OperacaoParametrosMandatoriosModel()
|
new OperacaoParametrosMandatoriosModel()
|
||||||
{
|
{
|
||||||
Parametro = ParametrosOperacao.Mapa,
|
Parametro = ParametrosOperacao.Mapa,
|
||||||
Mandatorio = true,
|
Mandatorio = true,
|
||||||
Utilizar = true,
|
Utilizar = true,
|
||||||
},
|
},
|
||||||
//new OperacaoParametrosMandatoriosModel()
|
|
||||||
//{
|
|
||||||
// Parametro = ParametrosOperacao.LoRa,
|
|
||||||
// Mandatorio = true,
|
|
||||||
// Utilizar = true,
|
|
||||||
//}
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
if (isagrobase)
|
||||||
|
{
|
||||||
Variaveis.OperacaoEmAndamento.frmOperacao = new frmOperacaoMapaGPS();
|
Variaveis.OperacaoEmAndamento.frmOperacao = new frmOperacaoMapaGPS();
|
||||||
Variaveis.OperacaoEmAndamento.ControleAnterior = new OperacaoControleModel();
|
Variaveis.OperacaoEmAndamento.ControleAnterior = new OperacaoControleModel();
|
||||||
Variaveis.OperacaoEmAndamento.Controle = new OperacaoControleModel()
|
Variaveis.OperacaoEmAndamento.Controle = new OperacaoControleModel()
|
||||||
|
|
@ -612,28 +598,28 @@ namespace AgroBase.Models
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case ModoOperacao.TreinamentoIA:
|
case ModoOperacao.TreinamentoIA:
|
||||||
Variaveis.OperacaoEmAndamento.Parametros = new OperacaoParametrosModel()
|
p.Controle = new OperacaoParametrosControleModel()
|
||||||
{
|
|
||||||
Modo = Modo,
|
|
||||||
QtdCamerasSolo = VariaveisEquipamento.QuantidadeCamerasSolo,
|
|
||||||
QtdBicos = VariaveisEquipamento.QuantidadeBicosPulverizadores,
|
|
||||||
CapacidadeReservatorio = VariaveisEquipamento.CapacidadeReservatorio,
|
|
||||||
RoverId = VariaveisEquipamento.Parametros.serial_number,
|
|
||||||
RuasPercorrer = null,
|
|
||||||
Mapa = null,
|
|
||||||
Controle = new OperacaoParametrosControleModel()
|
|
||||||
{
|
{
|
||||||
|
RegistrarDadosPosProcessamento = false,
|
||||||
|
|
||||||
MovimentoAutomatico = true,
|
MovimentoAutomatico = true,
|
||||||
DirecionalAutomatico = true,
|
DirecionalAutomatico = true,
|
||||||
PulverizadorAutomatico = false,
|
PulverizadorAutomatico = false,
|
||||||
|
|
||||||
|
SonarAtivado = false,
|
||||||
FrenagemAutomaticaAoParar = false,
|
FrenagemAutomaticaAoParar = false,
|
||||||
|
ImuParadaPorInclinacao = false,
|
||||||
|
OakParadaPorObstaculo = false,
|
||||||
|
MpcMatrizCusto = false,
|
||||||
|
MpcHorizonte = 4.0,
|
||||||
|
|
||||||
MovVelocidadeSErvasPercent = 50,
|
MovVelocidadeSErvasPercent = 50,
|
||||||
MovVelocidadeCErvasPercent = 20,
|
MovVelocidadeCErvasPercent = 20,
|
||||||
DirAnguloMaximo = 30,
|
DirAnguloMaximo = 30,
|
||||||
DirVelocidadeMovimento = 50,
|
DirVelocidadeMovimento = 50,
|
||||||
SonarAtivado = false,
|
|
||||||
DirTipoMovimento = TiposControladorDirecional.IA,
|
DirTipoMovimento = TiposControladorDirecional.IA,
|
||||||
|
|
||||||
AtuAlturaAreaPulverizacao = 10,
|
AtuAlturaAreaPulverizacao = 10,
|
||||||
|
|
@ -642,8 +628,8 @@ namespace AgroBase.Models
|
||||||
AtuPercentualErvasBicoOn = 1,
|
AtuPercentualErvasBicoOn = 1,
|
||||||
AtuPercentualInicioPulverizacao = 70,
|
AtuPercentualInicioPulverizacao = 70,
|
||||||
AtuPressaoLinha = 85,
|
AtuPressaoLinha = 85,
|
||||||
},
|
};
|
||||||
ModulosMandatorios = new List<OperacaoModulosMandatoriosModel>()
|
p.ModulosMandatorios = new List<OperacaoModulosMandatoriosModel>()
|
||||||
{
|
{
|
||||||
new OperacaoModulosMandatoriosModel()
|
new OperacaoModulosMandatoriosModel()
|
||||||
{
|
{
|
||||||
|
|
@ -685,8 +671,8 @@ namespace AgroBase.Models
|
||||||
Dispositivo = T_Code.Lra,
|
Dispositivo = T_Code.Lra,
|
||||||
Mandatorio = true,
|
Mandatorio = true,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
ParametrosMandatorios = new List<OperacaoParametrosMandatoriosModel>()
|
p.ParametrosMandatorios = new List<OperacaoParametrosMandatoriosModel>()
|
||||||
{
|
{
|
||||||
new OperacaoParametrosMandatoriosModel()
|
new OperacaoParametrosMandatoriosModel()
|
||||||
{
|
{
|
||||||
|
|
@ -703,8 +689,9 @@ namespace AgroBase.Models
|
||||||
Parametro = ParametrosOperacao.Mapa,
|
Parametro = ParametrosOperacao.Mapa,
|
||||||
Mandatorio = true,
|
Mandatorio = true,
|
||||||
}
|
}
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
if (isagrobase)
|
||||||
|
{
|
||||||
Variaveis.OperacaoEmAndamento.ControleAnterior = new OperacaoControleModel();
|
Variaveis.OperacaoEmAndamento.ControleAnterior = new OperacaoControleModel();
|
||||||
Variaveis.OperacaoEmAndamento.Controle = new OperacaoControleModel()
|
Variaveis.OperacaoEmAndamento.Controle = new OperacaoControleModel()
|
||||||
{
|
{
|
||||||
|
|
@ -744,28 +731,29 @@ namespace AgroBase.Models
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case ModoOperacao.MapeamentoVisual:
|
case ModoOperacao.MapeamentoVisual:
|
||||||
Variaveis.OperacaoEmAndamento.Parametros = new OperacaoParametrosModel()
|
p.Controle = new OperacaoParametrosControleModel()
|
||||||
{
|
|
||||||
Modo = Modo,
|
|
||||||
QtdCamerasSolo = VariaveisEquipamento.QuantidadeCamerasSolo,
|
|
||||||
QtdBicos = VariaveisEquipamento.QuantidadeBicosPulverizadores,
|
|
||||||
CapacidadeReservatorio = VariaveisEquipamento.CapacidadeReservatorio,
|
|
||||||
RoverId = VariaveisEquipamento.Parametros.serial_number,
|
|
||||||
RuasPercorrer = null,
|
|
||||||
Mapa = null,
|
|
||||||
Controle = new OperacaoParametrosControleModel()
|
|
||||||
{
|
{
|
||||||
|
RegistrarDadosPosProcessamento = false,
|
||||||
|
|
||||||
MovimentoAutomatico = true,
|
MovimentoAutomatico = true,
|
||||||
DirecionalAutomatico = true,
|
DirecionalAutomatico = true,
|
||||||
PulverizadorAutomatico = false,
|
PulverizadorAutomatico = false,
|
||||||
|
|
||||||
|
SonarAtivado = false,
|
||||||
FrenagemAutomaticaAoParar = true,
|
FrenagemAutomaticaAoParar = true,
|
||||||
|
ImuParadaPorInclinacao = true,
|
||||||
|
OakParadaPorObstaculo = true,
|
||||||
|
MpcMatrizCusto = false,
|
||||||
|
MpcHorizonte = 4.0,
|
||||||
|
|
||||||
MovVelocidadeSErvasPercent = 40,
|
MovVelocidadeSErvasPercent = 40,
|
||||||
MovVelocidadeCErvasPercent = 20,
|
MovVelocidadeCErvasPercent = 20,
|
||||||
DirAnguloMaximo = 30,
|
DirAnguloMaximo = 30,
|
||||||
DirVelocidadeMovimento = 50,
|
DirVelocidadeMovimento = 50,
|
||||||
SonarAtivado = true,
|
|
||||||
DirTipoMovimento = TiposControladorDirecional.PID,
|
DirTipoMovimento = TiposControladorDirecional.PID,
|
||||||
|
|
||||||
AtuAlturaAreaPulverizacao = 10,
|
AtuAlturaAreaPulverizacao = 10,
|
||||||
|
|
@ -774,8 +762,8 @@ namespace AgroBase.Models
|
||||||
AtuPercentualErvasBicoOn = 1,
|
AtuPercentualErvasBicoOn = 1,
|
||||||
AtuPercentualInicioPulverizacao = 70,
|
AtuPercentualInicioPulverizacao = 70,
|
||||||
AtuPressaoLinha = 85,
|
AtuPressaoLinha = 85,
|
||||||
},
|
};
|
||||||
ModulosMandatorios = new List<OperacaoModulosMandatoriosModel>()
|
p.ModulosMandatorios = new List<OperacaoModulosMandatoriosModel>()
|
||||||
{
|
{
|
||||||
new OperacaoModulosMandatoriosModel()
|
new OperacaoModulosMandatoriosModel()
|
||||||
{
|
{
|
||||||
|
|
@ -789,8 +777,8 @@ namespace AgroBase.Models
|
||||||
Mandatorio = true,
|
Mandatorio = true,
|
||||||
Utilizar = true,
|
Utilizar = true,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
ParametrosMandatorios = new List<OperacaoParametrosMandatoriosModel>()
|
p.ParametrosMandatorios = new List<OperacaoParametrosMandatoriosModel>()
|
||||||
{
|
{
|
||||||
new OperacaoParametrosMandatoriosModel()
|
new OperacaoParametrosMandatoriosModel()
|
||||||
{
|
{
|
||||||
|
|
@ -798,8 +786,9 @@ namespace AgroBase.Models
|
||||||
Mandatorio = true,
|
Mandatorio = true,
|
||||||
Utilizar = true,
|
Utilizar = true,
|
||||||
}
|
}
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
if (isagrobase)
|
||||||
|
{
|
||||||
Variaveis.OperacaoEmAndamento.ControleAnterior = new OperacaoControleModel();
|
Variaveis.OperacaoEmAndamento.ControleAnterior = new OperacaoControleModel();
|
||||||
Variaveis.OperacaoEmAndamento.Controle = new OperacaoControleModel()
|
Variaveis.OperacaoEmAndamento.Controle = new OperacaoControleModel()
|
||||||
{
|
{
|
||||||
|
|
@ -830,26 +819,28 @@ namespace AgroBase.Models
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
Variaveis.OperacaoEmAndamento.Parametros.RoverId = VariaveisEquipamento.Parametros.serial_number;
|
p.ModulosMandatorios.Add(new OperacaoModulosMandatoriosModel() { Dispositivo = T_Code.Npc, Mandatorio = true, Utilizar = true });
|
||||||
Variaveis.OperacaoEmAndamento.Parametros.ModulosMandatorios.Add(new OperacaoModulosMandatoriosModel() { Dispositivo = T_Code.Npc, Mandatorio = true, Utilizar = true });
|
p.ModulosMandatorios.Add(new OperacaoModulosMandatoriosModel() { Dispositivo = T_Code.Can, Mandatorio = true, Utilizar = true });
|
||||||
Variaveis.OperacaoEmAndamento.Parametros.ModulosMandatorios.Add(new OperacaoModulosMandatoriosModel() { Dispositivo = T_Code.Can, Mandatorio = true, Utilizar = true });
|
p.ModulosMandatorios.Add(new OperacaoModulosMandatoriosModel() { Dispositivo = T_Code.Ipb, Mandatorio = true, Utilizar = true });
|
||||||
Variaveis.OperacaoEmAndamento.Parametros.ModulosMandatorios.Add(new OperacaoModulosMandatoriosModel() { Dispositivo = T_Code.Ipb, Mandatorio = true, Utilizar = true });
|
p.ModulosMandatorios.Add(new OperacaoModulosMandatoriosModel() { Dispositivo = T_Code.Bat, Mandatorio = true, Utilizar = true });
|
||||||
Variaveis.OperacaoEmAndamento.Parametros.ModulosMandatorios.Add(new OperacaoModulosMandatoriosModel() { Dispositivo = T_Code.Bat, Mandatorio = true, Utilizar = true });
|
p.ModulosMandatorios.ForEach(m => m.ComponentesEmUso = Variaveis.OperacaoEmAndamento.PreencherComponentesEmUso(m.Dispositivo));
|
||||||
|
|
||||||
Variaveis.OperacaoEmAndamento.Parametros.ModulosMandatorios.ForEach(m => m.ComponentesEmUso = Variaveis.OperacaoEmAndamento.PreencherComponentesEmUso(m.Dispositivo));
|
|
||||||
|
|
||||||
|
if (isagrobase)
|
||||||
|
{
|
||||||
|
Variaveis.OperacaoEmAndamento.Parametros = p;
|
||||||
Variaveis.OperacaoEmAndamento.Trajetoria = new TrajetoriaMapaOperacaoModel(new List<List<GPSModel>>());
|
Variaveis.OperacaoEmAndamento.Trajetoria = new TrajetoriaMapaOperacaoModel(new List<List<GPSModel>>());
|
||||||
Variaveis.OperacaoEmAndamento.Parametros.DadosLeitura = new OperacaoParametrosDadosModel();
|
|
||||||
Variaveis.OperacaoEmAndamento.Sensoriamento = new OperacaoSensoriamentoLogModel();
|
Variaveis.OperacaoEmAndamento.Sensoriamento = new OperacaoSensoriamentoLogModel();
|
||||||
|
|
||||||
RedisService.AtualizarCampos(CtxKey.DadosOperacao, ("configurado", false));
|
RedisService.AtualizarCampos(CtxKey.DadosOperacao, ("configurado", false));
|
||||||
|
|
||||||
Variaveis.OperacaoEmAndamento.Sensoriamento.AtualizarDados();
|
Variaveis.OperacaoEmAndamento.Sensoriamento.AtualizarDados();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return p;
|
||||||
|
}
|
||||||
|
|
||||||
private Dictionary<string, (bool, bool)> PreencherComponentesEmUso(T_Code Modulo)
|
private Dictionary<string, (bool, bool)> PreencherComponentesEmUso(T_Code Modulo)
|
||||||
{
|
{
|
||||||
Dictionary<string, (bool, bool)> d = new Dictionary<string, (bool, bool)>();
|
Dictionary<string, (bool, bool)> d = new Dictionary<string, (bool, bool)>();
|
||||||
|
|
@ -980,7 +971,7 @@ namespace AgroBase.Models
|
||||||
{
|
{
|
||||||
if (Parametros.Modo == null) return (false, new List<string>());
|
if (Parametros.Modo == null) return (false, new List<string>());
|
||||||
|
|
||||||
CarregarParametrosOperacaoPadrao((ModoOperacao)Parametros.Modo);
|
CarregarParametrosOperacaoPadrao((ModoOperacao)Parametros.Modo, true);
|
||||||
|
|
||||||
Variaveis.OperacaoEmAndamento.Parametros = Parametros;
|
Variaveis.OperacaoEmAndamento.Parametros = Parametros;
|
||||||
Variaveis.OperacaoEmAndamento.Parametros.RoverId = VariaveisEquipamento.Parametros.serial_number;
|
Variaveis.OperacaoEmAndamento.Parametros.RoverId = VariaveisEquipamento.Parametros.serial_number;
|
||||||
|
|
|
||||||
|
|
@ -379,7 +379,7 @@ namespace AgroBase.Services
|
||||||
});
|
});
|
||||||
if (PrimeiraExecucao)
|
if (PrimeiraExecucao)
|
||||||
{
|
{
|
||||||
OperacaoModel.CarregarParametrosOperacaoPadrao(ModoOperacao.MapaGPS);
|
OperacaoModel.CarregarParametrosOperacaoPadrao(ModoOperacao.MapaGPS, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
//DispositivosMapeados.ForEach(d => d.AtualizarDados());
|
//DispositivosMapeados.ForEach(d => d.AtualizarDados());
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,7 @@ class CameraManager:
|
||||||
def __init__(self, mostrar_log):
|
def __init__(self, mostrar_log):
|
||||||
self.mostrar_log = mostrar_log
|
self.mostrar_log = mostrar_log
|
||||||
self.mx_id = None
|
self.mx_id = None
|
||||||
|
self.model_svc = None
|
||||||
self.reiniciar_status()
|
self.reiniciar_status()
|
||||||
|
|
||||||
def reiniciar_status(self):
|
def reiniciar_status(self):
|
||||||
|
|
@ -151,6 +152,7 @@ class CameraManager:
|
||||||
def get_selected_frame(self, _frame_type: TipoFrameCamera):
|
def get_selected_frame(self, _frame_type: TipoFrameCamera):
|
||||||
_frame = None
|
_frame = None
|
||||||
if (_frame_type in [TipoFrameCamera.Rgb, TipoFrameCamera.Segmentacao, TipoFrameCamera.Overlay, TipoFrameCamera.Debug]):
|
if (_frame_type in [TipoFrameCamera.Rgb, TipoFrameCamera.Segmentacao, TipoFrameCamera.Overlay, TipoFrameCamera.Debug]):
|
||||||
|
if self.model_svc is not None:
|
||||||
rgb_frame, seg_frame, overlay_frame, _, _ = self.model_svc.preview_infer_cached(self._ultimo_raw_input, self._ultimo_predictions, alpha=0.5)
|
rgb_frame, seg_frame, overlay_frame, _, _ = self.model_svc.preview_infer_cached(self._ultimo_raw_input, self._ultimo_predictions, alpha=0.5)
|
||||||
if _frame_type == TipoFrameCamera.Rgb:
|
if _frame_type == TipoFrameCamera.Rgb:
|
||||||
_frame = rgb_frame
|
_frame = rgb_frame
|
||||||
|
|
|
||||||
|
|
@ -198,7 +198,7 @@ namespace OperationControl.Models
|
||||||
}
|
}
|
||||||
((App)Application.Current).Shell.Main?.AtualizarDadosTela_ParametrosOperacao(obj.Controle);
|
((App)Application.Current).Shell.Main?.AtualizarDadosTela_ParametrosOperacao(obj.Controle);
|
||||||
((App)Application.Current).Shell.Main?.MAP?.CarregarDadosMapa(obj.Mapa, obj.RuasPercorrer);
|
((App)Application.Current).Shell.Main?.MAP?.CarregarDadosMapa(obj.Mapa, obj.RuasPercorrer);
|
||||||
((App)Application.Current).Shell.Dock?._vm?.AtualizarDadosMapa(obj);
|
((App)Application.Current).Shell.Dock?._vm?.AtualizarParametrosRover(obj);
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
using AgroBase.Models.Operacoes;
|
using AgroBase.Models;
|
||||||
|
using AgroBase.Models.Operacoes;
|
||||||
using OperationControl.Helpers;
|
using OperationControl.Helpers;
|
||||||
using OperationControl.Models;
|
using OperationControl.Models;
|
||||||
using OperationControl.Models.Operacao;
|
using OperationControl.Models.Operacao;
|
||||||
|
|
@ -17,7 +18,20 @@ namespace OperationControl.ViewModels.Views.Operacao
|
||||||
private bool _isCollapsed;
|
private bool _isCollapsed;
|
||||||
private RoverCardModel _roverSelecionado;
|
private RoverCardModel _roverSelecionado;
|
||||||
public ResumoOperacionalModel Resumo { get; } = new ResumoOperacionalModel();
|
public ResumoOperacionalModel Resumo { get; } = new ResumoOperacionalModel();
|
||||||
public OperacaoParametrosModel Parametros { get; } = new OperacaoParametrosModel();
|
|
||||||
|
private OperacaoParametrosModel _parametros = new OperacaoParametrosModel();
|
||||||
|
public OperacaoParametrosModel Parametros
|
||||||
|
{
|
||||||
|
get => _parametros;
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (_parametros != value)
|
||||||
|
{
|
||||||
|
_parametros = value;
|
||||||
|
OnPropertyChanged(nameof(Parametros));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public OperacaoRightViewModel()
|
public OperacaoRightViewModel()
|
||||||
{
|
{
|
||||||
|
|
@ -33,6 +47,7 @@ namespace OperationControl.ViewModels.Views.Operacao
|
||||||
SelecionarSecao(secaoParseada);
|
SelecionarSecao(secaoParseada);
|
||||||
});
|
});
|
||||||
AcaoBotaoTopoCommand = new RelayCommand(_ => ExecutarAcaoBotaoTopo());
|
AcaoBotaoTopoCommand = new RelayCommand(_ => ExecutarAcaoBotaoTopo());
|
||||||
|
CarregarParametrosPadraoCommand = new RelayCommand(p => CarregarParametrosPadrao((AgroBase.Models.Enums.ModoOperacao)p));
|
||||||
LerParametrosCommand = new RelayCommand(_ => LerParametrosSolicitado?.Invoke());
|
LerParametrosCommand = new RelayCommand(_ => LerParametrosSolicitado?.Invoke());
|
||||||
SalvarParametrosCommand = new RelayCommand(_ => SalvarParametrosSolicitado?.Invoke(Parametros));
|
SalvarParametrosCommand = new RelayCommand(_ => SalvarParametrosSolicitado?.Invoke(Parametros));
|
||||||
}
|
}
|
||||||
|
|
@ -51,6 +66,7 @@ namespace OperationControl.ViewModels.Views.Operacao
|
||||||
public ICommand AcaoBotaoTopoCommand { get; }
|
public ICommand AcaoBotaoTopoCommand { get; }
|
||||||
public ICommand LerParametrosCommand { get; }
|
public ICommand LerParametrosCommand { get; }
|
||||||
public ICommand SalvarParametrosCommand { get; }
|
public ICommand SalvarParametrosCommand { get; }
|
||||||
|
public ICommand CarregarParametrosPadraoCommand { get; }
|
||||||
|
|
||||||
public bool IsCollapsed
|
public bool IsCollapsed
|
||||||
{
|
{
|
||||||
|
|
@ -115,6 +131,8 @@ namespace OperationControl.ViewModels.Views.Operacao
|
||||||
|
|
||||||
public string TextoBotaoTopo => BotaoTopoEhVoltar ? "◀ Voltar" : "Trocar Rover";
|
public string TextoBotaoTopo => BotaoTopoEhVoltar ? "◀ Voltar" : "Trocar Rover";
|
||||||
|
|
||||||
|
public Array ModosOperacaoDisponiveis { get; } = Enum.GetValues(typeof(AgroBase.Models.Enums.ModoOperacao));
|
||||||
|
|
||||||
private void ExecutarAcaoBotaoTopo()
|
private void ExecutarAcaoBotaoTopo()
|
||||||
{
|
{
|
||||||
if (BotaoTopoEhVoltar)
|
if (BotaoTopoEhVoltar)
|
||||||
|
|
@ -127,6 +145,12 @@ namespace OperationControl.ViewModels.Views.Operacao
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void CarregarParametrosPadrao(AgroBase.Models.Enums.ModoOperacao modo)
|
||||||
|
{
|
||||||
|
var p = OperacaoModel.CarregarParametrosOperacaoPadrao(modo, false);
|
||||||
|
p.Descricao = $"{p.Modo} - Padrão";
|
||||||
|
Parametros = p;
|
||||||
|
}
|
||||||
|
|
||||||
public void ToggleCollapse()
|
public void ToggleCollapse()
|
||||||
{
|
{
|
||||||
|
|
@ -226,45 +250,7 @@ namespace OperationControl.ViewModels.Views.Operacao
|
||||||
public void AtualizarParametros(OperacaoParametrosModel origem)
|
public void AtualizarParametros(OperacaoParametrosModel origem)
|
||||||
{
|
{
|
||||||
if (origem == null) return;
|
if (origem == null) return;
|
||||||
|
Parametros = origem;
|
||||||
Parametros.Modo = origem.Modo;
|
|
||||||
Parametros.Descricao = origem.Descricao;
|
|
||||||
Parametros.QtdBicos = origem.QtdBicos;
|
|
||||||
Parametros.QtdCamerasSolo = origem.QtdCamerasSolo;
|
|
||||||
Parametros.CapacidadeReservatorio = origem.CapacidadeReservatorio;
|
|
||||||
|
|
||||||
var controle_o = origem.Controle;
|
|
||||||
if (controle_o == null) return;
|
|
||||||
if (Parametros.Controle == null) Parametros.Controle = new OperacaoParametrosControleModel();
|
|
||||||
var controle_p = Parametros.Controle;
|
|
||||||
|
|
||||||
controle_p.MovimentoAutomatico = controle_o.MovimentoAutomatico;
|
|
||||||
controle_p.DirecionalAutomatico = controle_o.DirecionalAutomatico;
|
|
||||||
controle_p.PulverizadorAutomatico = controle_o.PulverizadorAutomatico;
|
|
||||||
controle_p.SonarAtivado = controle_o.SonarAtivado;
|
|
||||||
controle_p.OakParadaPorObstaculo = controle_o.OakParadaPorObstaculo;
|
|
||||||
controle_p.ImuParadaPorInclinacao = controle_o.ImuParadaPorInclinacao;
|
|
||||||
controle_p.FrenagemAutomaticaAoParar = controle_o.FrenagemAutomaticaAoParar;
|
|
||||||
controle_p.RegistrarDadosPosProcessamento = controle_o.RegistrarDadosPosProcessamento;
|
|
||||||
|
|
||||||
controle_p.MovVelocidadeSErvasPercent = controle_o.MovVelocidadeSErvasPercent;
|
|
||||||
controle_p.MovVelocidadeCErvasPercent = controle_o.MovVelocidadeCErvasPercent;
|
|
||||||
|
|
||||||
controle_p.DirAnguloMaximo = controle_o.DirAnguloMaximo;
|
|
||||||
controle_p.DirVelocidadeMovimento = controle_o.DirVelocidadeMovimento;
|
|
||||||
controle_p.DirTipoMovimento = controle_o.DirTipoMovimento;
|
|
||||||
|
|
||||||
controle_p.AtuPressaoLinha = controle_o.AtuPressaoLinha;
|
|
||||||
controle_p.AtuDuracaoAtuacao = controle_o.AtuDuracaoAtuacao;
|
|
||||||
controle_p.AtuPercentualInicioPulverizacao = controle_o.AtuPercentualInicioPulverizacao;
|
|
||||||
controle_p.AtuAlturaAreaPulverizacao = controle_o.AtuAlturaAreaPulverizacao;
|
|
||||||
controle_p.AtuPercentualErvasBicoOn = controle_o.AtuPercentualErvasBicoOn;
|
|
||||||
controle_p.AtuPercentualErvasBicoOff = controle_o.AtuPercentualErvasBicoOff;
|
|
||||||
|
|
||||||
controle_p.MpcMatrizCusto = controle_o.MpcMatrizCusto;
|
|
||||||
controle_p.MpcHorizonte = controle_o.MpcHorizonte;
|
|
||||||
|
|
||||||
OnPropertyChanged(nameof(Parametros));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnPropertyChanged(string nome)
|
private void OnPropertyChanged(string nome)
|
||||||
|
|
|
||||||
|
|
@ -614,6 +614,12 @@ namespace OperationControl.ViewModels
|
||||||
Mapa?.markers?.UpdateMarkerPosition(VariaveisControleOperacao.BaseMarkerID, lat: dados?.Latitude, lon: dados?.Longitude, heading: dados?.OrientacaoReal);
|
Mapa?.markers?.UpdateMarkerPosition(VariaveisControleOperacao.BaseMarkerID, lat: dados?.Latitude, lon: dados?.Longitude, heading: dados?.OrientacaoReal);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void AtualizarParametrosRover(OperacaoParametrosModel? rover)
|
||||||
|
{
|
||||||
|
_viewOperacaoRight?._vm?.AtualizarParametros(rover);
|
||||||
|
AtualizarDadosMapa(rover);
|
||||||
|
}
|
||||||
|
|
||||||
public void AtualizarDadosMapa(OperacaoParametrosModel? dados)
|
public void AtualizarDadosMapa(OperacaoParametrosModel? dados)
|
||||||
{
|
{
|
||||||
_viewOperacaoCenter?.Mapa?.LoadMapFile(_ultimoMapaCarregado);
|
_viewOperacaoCenter?.Mapa?.LoadMapFile(_ultimoMapaCarregado);
|
||||||
|
|
@ -956,8 +962,6 @@ namespace OperationControl.ViewModels
|
||||||
return;
|
return;
|
||||||
|
|
||||||
VariaveisControleOperacao.RequisitarParametrosOperacao();
|
VariaveisControleOperacao.RequisitarParametrosOperacao();
|
||||||
|
|
||||||
_viewOperacaoRight?._vm?.AtualizarParametros(VariaveisControleOperacao.RoverEmFoco);
|
|
||||||
}
|
}
|
||||||
private void OnSalvarParametrosSolicitado(OperacaoParametrosModel parametros)
|
private void OnSalvarParametrosSolicitado(OperacaoParametrosModel parametros)
|
||||||
{
|
{
|
||||||
|
|
@ -968,7 +972,7 @@ namespace OperationControl.ViewModels
|
||||||
|
|
||||||
var novosParametros = new OperacaoParametrosModel()
|
var novosParametros = new OperacaoParametrosModel()
|
||||||
{
|
{
|
||||||
Modo = parametros.Modo ?? AgroBase.Models.Enums.ModoOperacao.NaoDefinido,
|
Modo = parametros.Modo,
|
||||||
Descricao = parametros.Descricao,
|
Descricao = parametros.Descricao,
|
||||||
QtdCamerasSolo = parametros.QtdCamerasSolo,
|
QtdCamerasSolo = parametros.QtdCamerasSolo,
|
||||||
QtdBicos = parametros.QtdBicos,
|
QtdBicos = parametros.QtdBicos,
|
||||||
|
|
@ -976,8 +980,8 @@ namespace OperationControl.ViewModels
|
||||||
|
|
||||||
Controle = parametros.Controle,
|
Controle = parametros.Controle,
|
||||||
|
|
||||||
ModulosMandatorios = rover?.ModulosMandatorios,
|
ModulosMandatorios = parametros?.ModulosMandatorios,
|
||||||
ParametrosMandatorios = rover?.ParametrosMandatorios,
|
ParametrosMandatorios = parametros?.ParametrosMandatorios,
|
||||||
|
|
||||||
RuasPercorrer = _viewOperacaoCenter?.Mapa?.RuasMapaCarregado?.Where(x => x.Selected)?.Select(x => x.Id)?.ToList(),
|
RuasPercorrer = _viewOperacaoCenter?.Mapa?.RuasMapaCarregado?.Where(x => x.Selected)?.Select(x => x.Id)?.ToList(),
|
||||||
Mapa = _viewOperacaoCenter?.Mapa?.CriarDadosMapa()
|
Mapa = _viewOperacaoCenter?.Mapa?.CriarDadosMapa()
|
||||||
|
|
@ -990,9 +994,22 @@ namespace OperationControl.ViewModels
|
||||||
VariaveisControleOperacao.RoverEmFoco.QtdCamerasSolo = novosParametros.QtdCamerasSolo;
|
VariaveisControleOperacao.RoverEmFoco.QtdCamerasSolo = novosParametros.QtdCamerasSolo;
|
||||||
VariaveisControleOperacao.RoverEmFoco.QtdBicos = novosParametros.QtdBicos;
|
VariaveisControleOperacao.RoverEmFoco.QtdBicos = novosParametros.QtdBicos;
|
||||||
VariaveisControleOperacao.RoverEmFoco.CapacidadeReservatorio = novosParametros.CapacidadeReservatorio;
|
VariaveisControleOperacao.RoverEmFoco.CapacidadeReservatorio = novosParametros.CapacidadeReservatorio;
|
||||||
|
|
||||||
VariaveisControleOperacao.RoverEmFoco.Controle = novosParametros.Controle;
|
VariaveisControleOperacao.RoverEmFoco.Controle = novosParametros.Controle;
|
||||||
|
|
||||||
|
VariaveisControleOperacao.RoverEmFoco.ModulosMandatorios = novosParametros.ModulosMandatorios;
|
||||||
|
VariaveisControleOperacao.RoverEmFoco.ParametrosMandatorios = novosParametros.ParametrosMandatorios;
|
||||||
|
|
||||||
VariaveisControleOperacao.RoverEmFoco.RuasPercorrer = novosParametros.RuasPercorrer;
|
VariaveisControleOperacao.RoverEmFoco.RuasPercorrer = novosParametros.RuasPercorrer;
|
||||||
VariaveisControleOperacao.RoverEmFoco.Mapa = novosParametros.Mapa;
|
VariaveisControleOperacao.RoverEmFoco.Mapa = novosParametros.Mapa;
|
||||||
|
|
||||||
|
VariaveisControleOperacao.RequisitarParametrosOperacao();
|
||||||
|
|
||||||
|
Task.Run(async () =>
|
||||||
|
{
|
||||||
|
await Task.Delay(1000);
|
||||||
|
_viewOperacaoRight?._vm?.SelecionarSecao(SecaoRightBar.Diagnostico);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,9 @@
|
||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||||
|
xmlns:sys="clr-namespace:System;assembly=mscorlib"
|
||||||
xmlns:local="clr-namespace:OperationControl.Views.Operacao"
|
xmlns:local="clr-namespace:OperationControl.Views.Operacao"
|
||||||
|
xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
|
||||||
mc:Ignorable="d">
|
mc:Ignorable="d">
|
||||||
<UserControl.Resources>
|
<UserControl.Resources>
|
||||||
<BooleanToVisibilityConverter x:Key="BoolToVisibilityConverter"/>
|
<BooleanToVisibilityConverter x:Key="BoolToVisibilityConverter"/>
|
||||||
|
|
@ -360,6 +362,8 @@
|
||||||
<StackPanel>
|
<StackPanel>
|
||||||
<TextBlock Text="Operação" Foreground="White" FontSize="15" FontWeight="SemiBold" Margin="0,0,0,12"/>
|
<TextBlock Text="Operação" Foreground="White" FontSize="15" FontWeight="SemiBold" Margin="0,0,0,12"/>
|
||||||
|
|
||||||
|
<TextBlock Text="Modo" Style="{StaticResource ParamLabelStyle}"/>
|
||||||
|
<ComboBox ItemsSource="{Binding ModosOperacaoDisponiveis}" SelectedItem="{Binding Parametros.Modo, Mode=TwoWay}" SelectionChanged="cmbModoOperacao_SelectionChanged" />
|
||||||
<TextBlock Text="Descrição" Style="{StaticResource ParamLabelStyle}"/>
|
<TextBlock Text="Descrição" Style="{StaticResource ParamLabelStyle}"/>
|
||||||
<TextBox Text="{Binding Parametros.Descricao}" Style="{StaticResource ParamTextBoxStyle}" Margin="0,0,0,0"/>
|
<TextBox Text="{Binding Parametros.Descricao}" Style="{StaticResource ParamTextBoxStyle}" Margin="0,0,0,0"/>
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
|
|
|
||||||
|
|
@ -36,5 +36,14 @@ namespace OperationControl.Views.Operacao
|
||||||
_vm = vm;
|
_vm = vm;
|
||||||
DataContext = _vm;
|
DataContext = _vm;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void cmbModoOperacao_SelectionChanged(object sender, SelectionChangedEventArgs e)
|
||||||
|
{
|
||||||
|
if (DataContext is OperacaoRightViewModel vm && sender is System.Windows.Controls.ComboBox combo && combo.SelectedItem is AgroBase.Models.Enums.ModoOperacao modo)
|
||||||
|
{
|
||||||
|
if (vm.CarregarParametrosPadraoCommand?.CanExecute(modo) == true)
|
||||||
|
vm.CarregarParametrosPadraoCommand.Execute(modo);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue