🚀 Auto-deploy: TrackSteelAPP atualizado em 21/08/2026 18:49:15

This commit is contained in:
2026-08-21 18:49:15 +00:00
parent fa3408c238
commit 79c4c6c460
2 changed files with 17 additions and 4 deletions
@@ -177,6 +177,7 @@ export const GraficoMestre: React.FC<GraficoMestreProps> = ({
}); });
const datasOrdenadas = Array.from(todasAsDatas).sort(); const datasOrdenadas = Array.from(todasAsDatas).sort();
const ultimosValoresKg: Record<string, number> = {};
return datasOrdenadas.map(data => { return datasOrdenadas.map(data => {
const dataFormatada = format(parseISO(data), 'dd/MM', { locale: ptBR }); const dataFormatada = format(parseISO(data), 'dd/MM', { locale: ptBR });
@@ -187,7 +188,15 @@ export const GraficoMestre: React.FC<GraficoMestreProps> = ({
processosOrdenados.forEach(processo => { processosOrdenados.forEach(processo => {
const pontoProcesso = processo.dadosGrafico.find(p => p.data === data); const pontoProcesso = processo.dadosGrafico.find(p => p.data === data);
const valorKg = pontoProcesso ? pontoProcesso.realizado : 0;
let valorKg: number;
if (pontoProcesso && pontoProcesso.realizado > 0) {
valorKg = pontoProcesso.realizado;
ultimosValoresKg[processo.nome] = valorKg;
} else {
// Se não houver novo ponto ou for 0, mantém o acumulado anterior para a linha NUNCA cair
valorKg = ultimosValoresKg[processo.nome] || 0;
}
if (modoExibicao === 'percent') { if (modoExibicao === 'percent') {
const pesoTotal = processo.pesoTotal > 0 ? processo.pesoTotal : 1; const pesoTotal = processo.pesoTotal > 0 ? processo.pesoTotal : 1;
+7 -3
View File
@@ -429,9 +429,13 @@ export const useDashboardProducaoOtimizado = (ofNumber: string) => {
} }
// Antes do início planejado, o planejado fica 0 // Antes do início planejado, o planejado fica 0
// Calcular progresso real até esta data - soma dos pesos apontados // Calcular progresso real até esta data - soma dos pesos apontados
const apontamentosAteData = apontamentosProcesso.filter(a => a.data_apontamento <= dataStr); const apontamentosAteData = apontamentosProcesso.filter(a => {
let realizado = 0; if (!a.data_apontamento) return false;
const dataAptStr = typeof a.data_apontamento === 'string' ? a.data_apontamento.substring(0, 10) : '';
return dataAptStr <= dataStr;
});
let realizado = 0;
apontamentosAteData.forEach(a => { apontamentosAteData.forEach(a => {
let pesoUnitario = 0; let pesoUnitario = 0;