🚀 Initial commit: Versão atual do TrackSteel APP

This commit is contained in:
2026-03-18 21:17:53 +00:00
commit bde410c9ad
633 changed files with 108150 additions and 0 deletions
+40
View File
@@ -0,0 +1,40 @@
import { useMemo } from 'react';
import { useEstoque } from './useEstoqueSimplificado';
export const useMateriaisCriticos = () => {
const { materiais, loading } = useEstoque();
const materiaisCriticos = useMemo(() => {
return materiais.filter(material => {
// Verificar se o tipo de material tem gestão de estoque crítico ativada
// Se gestao_estoque_critico for undefined ou null, considerar como true (padrão)
const temGestaoAtivada = material.tipos_materia_prima?.gestao_estoque_critico !== false;
// Debug log para verificar o filtro
console.log(`Material ${material.descricao}:`, {
gestao_estoque_critico: material.tipos_materia_prima?.gestao_estoque_critico,
temGestaoAtivada,
quantidade_disponivel: material.quantidade_disponivel,
quantidade_minima: material.quantidade_minima,
isCritico: material.quantidade_disponivel <= (material.quantidade_minima || 0) && material.quantidade_minima > 0
});
// Só considera crítico se:
// 1. Tem gestão de estoque crítico ativada no tipo
// 2. Quantidade disponível <= quantidade mínima
// 3. Quantidade mínima > 0
return temGestaoAtivada &&
material.quantidade_disponivel <= (material.quantidade_minima || 0) &&
(material.quantidade_minima || 0) > 0;
});
}, [materiais]);
console.log('Materiais críticos encontrados:', materiaisCriticos.length);
return {
materiaisCriticos,
loading,
totalCriticos: materiaisCriticos.length
};
};