Fix supply navigation and supplier loading
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 1m29s

This commit is contained in:
Cauê Faleiros
2026-08-26 13:28:42 -03:00
parent 3a0cc9ffe8
commit 94d4605f80
2 changed files with 6 additions and 3 deletions

View File

@@ -196,12 +196,16 @@ const listKnownSuppliers = async () => {
FROM ( FROM (
SELECT preferred_supplier AS supplier FROM supply_material_details SELECT preferred_supplier AS supplier FROM supply_material_details
UNION ALL UNION ALL
SELECT supplier FROM supply_lots SELECT supplier FROM supply_stock_lots
UNION ALL UNION ALL
SELECT supplier FROM supply_receipts SELECT supplier FROM supply_receipts
UNION ALL UNION ALL
SELECT supplier FROM supply_fabric_plans SELECT supplier FROM supply_fabric_plans
UNION ALL UNION ALL
SELECT supplier FROM supply_purchase_orders
UNION ALL
SELECT supplier FROM production_orders
UNION ALL
SELECT supplier FROM production_yield_supplier_recommendations SELECT supplier FROM production_yield_supplier_recommendations
) sources ) sources
WHERE NULLIF(BTRIM(supplier), '') IS NOT NULL WHERE NULLIF(BTRIM(supplier), '') IS NOT NULL

View File

@@ -414,7 +414,6 @@ const SuppliesHub = () => {
<ModuleCard title="Ordens de compra" description="Formalize pedidos de materiais, fornecedor, prazo e valor antes do recebimento." icon={ClipboardList} to="/supplies/purchase-orders" meta="Criar e acompanhar OCs" /> <ModuleCard title="Ordens de compra" description="Formalize pedidos de materiais, fornecedor, prazo e valor antes do recebimento." icon={ClipboardList} to="/supplies/purchase-orders" meta="Criar e acompanhar OCs" />
<ModuleCard title="Planejamento de malha" description="Organize a fila de matéria-prima para abastecer compras e corte." icon={Ruler} to="/supplies/fabric-planning" /> <ModuleCard title="Planejamento de malha" description="Organize a fila de matéria-prima para abastecer compras e corte." icon={Ruler} to="/supplies/fabric-planning" />
<ModuleCard title="Prioridades de estoque" description="Analise reposição, cobertura e itens que precisam de revisão de cadastro." icon={PackageSearch} to="/supplies/current-planning" /> <ModuleCard title="Prioridades de estoque" description="Analise reposição, cobertura e itens que precisam de revisão de cadastro." icon={PackageSearch} to="/supplies/current-planning" />
<ModuleCard title="Dados para revisar" description="Consulte exceções de estoque, composição e cadastro fora do cálculo atual." icon={ClipboardList} to="/planning-issues" meta="Abrir pendências" />
</div> </div>
</section> </section>
</div> </div>
@@ -2534,7 +2533,7 @@ const PurchaseNeedsScreen = () => {
return ( return (
<div className={pageClassName}> <div className={pageClassName}>
<div className="flex flex-col gap-4 lg:flex-row lg:items-end lg:justify-between"> <div className="flex flex-col gap-4 lg:flex-row lg:items-end lg:justify-between">
<Header title="Necessidade de Compra" subtitle="Materiais e serviços terceirizados para execução; pendências de cadastro ficam em Dados para revisar." backTo="/supplies" /> <Header title="Necessidade de Compra" subtitle="Materiais e serviços terceirizados para execução; pendências de cadastro ficam em Dados Pendentes." backTo="/supplies" />
<div className="flex flex-wrap gap-2"> <div className="flex flex-wrap gap-2">
<button type="button" onClick={loadSummary} className={buttonClassName}><RefreshCw className="h-4 w-4" /> Atualizar</button> <button type="button" onClick={loadSummary} className={buttonClassName}><RefreshCw className="h-4 w-4" /> Atualizar</button>
<button <button