fix: ordenacao numerica natural para marca de pecas (1, 2, 3... 10 em vez de alfabetica)
This commit is contained in:
@@ -157,11 +157,11 @@ export const SeletorItensOtimizado: React.FC<SeletorItensOtimizadoProps> = ({
|
||||
peca.marca.toLowerCase().includes(filtroNumeroPeca.toLowerCase())
|
||||
);
|
||||
}
|
||||
return pecasFiltradas.sort((a, b) => a.marca.localeCompare(b.marca));
|
||||
return pecasFiltradas.sort((a, b) => a.marca.localeCompare(b.marca, undefined, { numeric: true, sensitivity: 'base' }));
|
||||
}, [pecasDisponiveis, filtroNumeroPeca]);
|
||||
|
||||
const componentesOrdenados = useMemo(() => {
|
||||
return componentesDisponiveis.sort((a, b) => a.marca.localeCompare(b.marca));
|
||||
return componentesDisponiveis.sort((a, b) => a.marca.localeCompare(b.marca, undefined, { numeric: true, sensitivity: 'base' }));
|
||||
}, [componentesDisponiveis]);
|
||||
|
||||
const fetchPecas = useCallback(async (term: string) => {
|
||||
|
||||
@@ -303,7 +303,7 @@ export const ItensRomaneioModal: React.FC<ItensRomaneioModalProps> = ({
|
||||
return parseInt(aNum[0]) - parseInt(bNum[0]);
|
||||
}
|
||||
|
||||
return a.marca.localeCompare(b.marca);
|
||||
return a.marca.localeCompare(b.marca, undefined, { numeric: true, sensitivity: 'base' });
|
||||
});
|
||||
}, [pecasDisponiveis, faseFilter, marcaFilter]);
|
||||
|
||||
|
||||
@@ -88,7 +88,7 @@ export const RomaneioReportModal: React.FC<RomaneioReportModalProps> = ({
|
||||
if (typeof marcaA === 'number' && typeof marcaB === 'number') {
|
||||
return marcaA - marcaB;
|
||||
}
|
||||
return String(marcaA).localeCompare(String(marcaB));
|
||||
return String(marcaA).localeCompare(String(marcaB), undefined, { numeric: true, sensitivity: 'base' });
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user