ajustes para modo producao

This commit is contained in:
Diego Freitas 2026-07-30 15:09:41 -03:00
parent 81b94dc646
commit 566e49c844
6 changed files with 763 additions and 231 deletions

View File

@ -496,7 +496,7 @@ namespace AgroBase.Forms.IHM
// ========================================================= // =========================================================
// TEMPERATURA // TEMPERATURA
// ========================================================= // =========================================================
double temperatura = operacao?.Sensoriamento?.CoolerControl?.Temperatura ?? 0; double temperatura = operacao?.Sensoriamento?.DadosPerformance?.Temperatura ?? 0;
var temperaturaSaude = ObterSaudeModulo(saudeModulos, Enums.T_Code.Npc); var temperaturaSaude = ObterSaudeModulo(saudeModulos, Enums.T_Code.Npc);
Color corTemperatura = FuncoesIHM.CorTemperatura(temperatura, temperaturaSaude.saude); Color corTemperatura = FuncoesIHM.CorTemperatura(temperatura, temperaturaSaude.saude);
AtualizarTemperatura($"{temperatura:0.#} °C", corTemperatura); AtualizarTemperatura($"{temperatura:0.#} °C", corTemperatura);

View File

@ -387,7 +387,7 @@ namespace AgroBase.Forms
try try
{ {
Environment.Exit(1); Environment.Exit(Variaveis.ExitShutdownCode);
} }
catch { } catch { }
} }

View File

@ -5045,7 +5045,7 @@ namespace AgroBase.Models
_Reservatorio?.AtualizarAgitadorCalda(op.Parametros?.Controle?.AtuAgitadorModo ?? ModoAgitadorCalda.SemAgitacao); _Reservatorio?.AtualizarAgitadorCalda(op.Parametros?.Controle?.AtuAgitadorModo ?? ModoAgitadorCalda.SemAgitacao);
var _Cooler = _DispSen?.Dados?.CoolerControl; var _Cooler = _DispSen?.Dados?.CoolerControl;
_Cooler?.Atualizar(Math.Max(DadosPerformance?.GPU_temp ?? 0, DadosPerformance?.CPU_temp ?? 0), agora); _Cooler?.Atualizar(DadosPerformance?.Temperatura ?? 0, agora);
// Clones // Clones

View File

@ -123,6 +123,8 @@ namespace AgroBase.Models
? 0 ? 0
: 100.0f * ThreadPool_used_completion_port_threads / ThreadPool_max_completion_port_threads; : 100.0f * ThreadPool_used_completion_port_threads / ThreadPool_max_completion_port_threads;
public double Temperatura => Math.Max(GPU_temp_core_c ?? 0, CPU_temp_package_c ?? 0);
public string PerformanceStr => $"CPU={Fmt(CPU_load_percent)}% CPU_T={Fmt(CPU_temp_package_c)}C RAM={Fmt(RAM_usage_percent)}% " + public string PerformanceStr => $"CPU={Fmt(CPU_load_percent)}% CPU_T={Fmt(CPU_temp_package_c)}C RAM={Fmt(RAM_usage_percent)}% " +
$"GPU={Fmt(GPU_load_percent)}% GPU_Core={Fmt(GPU_core_load_percent)}% GPU_Mem={Fmt(GPU_memory_load_percent)}% " + $"GPU={Fmt(GPU_load_percent)}% GPU_Core={Fmt(GPU_core_load_percent)}% GPU_Mem={Fmt(GPU_memory_load_percent)}% " +
$"VRAM={Fmt(GPU_vram_used_mb)}/{Fmt(GPU_vram_total_mb)}MB GPU_T={Fmt(GPU_temp_core_c)}C " + $"VRAM={Fmt(GPU_vram_used_mb)}/{Fmt(GPU_vram_total_mb)}MB GPU_T={Fmt(GPU_temp_core_c)}C " +

View File

@ -31,6 +31,7 @@ namespace AgroBase.Models
public static readonly bool IniciarWorkers = true; public static readonly bool IniciarWorkers = true;
public static readonly bool UsarIHM = true; public static readonly bool UsarIHM = true;
public static readonly bool Producao = true; public static readonly bool Producao = true;
public static readonly int ExitShutdownCode = 100;
public static bool DebugMode { get; set; } = false; public static bool DebugMode { get; set; } = false;
public static bool Fechando { get; set; } = false; public static bool Fechando { get; set; } = false;
@ -2173,10 +2174,44 @@ namespace AgroBase.Models
public static DateTime UnixToDateTime(string unixTime) public static DateTime UnixToDateTime(string unixTime)
{ {
double time = Convert.ToDouble(unixTime.Replace(".", ",")); if (string.IsNullOrWhiteSpace(unixTime))
var dateTime = DateTimeOffset.FromUnixTimeMilliseconds((long)(time * 1000)).ToLocalTime(); return DateTime.MinValue;
DateTime momento = dateTime.DateTime;
return momento; if (!decimal.TryParse(unixTime, System.Globalization.NumberStyles.Float, System.Globalization.CultureInfo.InvariantCulture, out decimal timestamp))
{
return DateTime.MinValue;
}
try
{
// Unix em segundos, inclusive com fração:
// 1785431515.93917
if (timestamp >= -62135596800m && timestamp <= 253402300799.999m)
{
long milliseconds = decimal.ToInt64(decimal.Truncate(timestamp * 1000m));
return DateTimeOffset.FromUnixTimeMilliseconds(milliseconds).LocalDateTime;
}
// Unix em milissegundos:
// 1785431515939
if (timestamp >= -62135596800000m && timestamp <= 253402300799999m)
{
long milliseconds = decimal.ToInt64(decimal.Truncate(timestamp));
return DateTimeOffset.FromUnixTimeMilliseconds(milliseconds).LocalDateTime;
}
return DateTime.MinValue;
}
catch (ArgumentOutOfRangeException)
{
return DateTime.MinValue;
}
catch (OverflowException)
{
return DateTime.MinValue;
}
} }
} }

File diff suppressed because it is too large Load Diff