Files
SGF/resources/js/PurchasingHome.jsx
2026-11-04 09:37:20 +02:00

21 lines
3.7 KiB
React

import React from 'react';
export default function PurchasingHome({context,can,navigate}) {
const unit=context.unit?.id??null;
const budget=unit!==null&&can('purchasing_budget.view',unit);
const payables=unit!==null&&can('supplier_payables.view',unit);
const requisitions=unit!==null&&context.purchasing?.internal_requisitions===true&&can('purchasing_requisitions.view',unit);
const sourceRequests=unit!==null&&context.purchasing?.source_requests===true&&can('purchasing_requests.view',unit);
const suppliers=unit!==null&&context.purchasing?.suppliers===true&&can('purchasing_suppliers.view',unit);
const sourcing=unit!==null&&context.purchasing?.sourcing===true&&can('purchasing_sourcing.view',unit);
const orders=unit!==null&&context.purchasing?.orders===true&&can('purchasing_orders.view',unit);
const obligations=unit!==null&&context.purchasing?.supplier_obligations===true&&can('purchasing_obligations.view',unit);
const invoices=unit!==null&&context.purchasing?.supplier_invoices===true&&can('purchasing_invoices.view',unit);
const receipts=unit!==null&&context.purchasing?.receipts===true&&can('purchasing_receipts.view',unit);
return <><div className="page-title"><p className="eyebrow">COMPRAS</p><h1>Área de Compras</h1><p>{context.company.name}{context.unit?` / ${context.unit.name}`:''}</p></div>
<section className="panel"><h2>Aquisição, recepção e obrigação</h2><p>Compras acompanha as aquisições e os seus documentos. A recepção de mercadoria, o consumo, a obrigação ao fornecedor e o pagamento são factos distintos; cada efeito mantém um único responsável.</p><p>Compras e Stock têm entradas separadas. Separar a navegação não remove os percursos existentes nem concede acesso a operações de outra empresa ou composição.</p></section>
<section className="panel"><h2>Percursos disponíveis neste contexto</h2>{!context.unit&&<p>Seleccione uma unidade autorizada para verificar os percursos de trabalho.</p>}<div className="actions">{(sourceRequests||suppliers||sourcing||orders||receipts||invoices||obligations)&&<a href="/purchasing/workspace">Percurso de Compras</a>}{requisitions&&<a href="/purchasing/internal-requisitions">Requisições internas</a>}{sourceRequests&&<a href="/purchasing/requests">Requisições para compra</a>}{suppliers&&<a href="/purchasing/suppliers">Fornecedores e revisão</a>}{sourcing&&<a href="/purchasing/sourcing">Propostas e adjudicação</a>}{orders&&<a href="/purchasing/orders">Ordens de compra</a>}{receipts&&<a href="/purchasing/receipts">Recepção de mercadoria</a>}{obligations&&<a href="/purchasing/obligations">Reconhecimento de obrigações</a>}{invoices&&<a href="/purchasing/invoices">Facturas de fornecedor</a>}{budget&&<button onClick={()=>navigate('purchasing_budget')}>Controlo orçamental</button>}{payables&&<button onClick={()=>navigate('supplier_payables')}>Obrigações a fornecedores</button>}</div>{!requisitions&&!sourceRequests&&!suppliers&&!sourcing&&!orders&&!receipts&&!invoices&&!obligations&&!budget&&!payables&&<p>Esta composição ainda não apresenta percursos operacionais de Compras autorizados para a unidade actual. As demonstrações próprias de orçamento e obrigações conservam os seus dados e acessos; não foram eliminadas.</p>}</section>
<section className="panel"><h2>Compras autónomo e ERP</h2><p>O módulo autónomo conserva requisições, fornecedores, cotações, adjudicação, ordens e recepções. Os percursos disponíveis acima reutilizam os serviços de Compras e os mesmos documentos nesta instalação.</p><p>Orçamento e obrigações reutilizam o núcleo comum. A entrada neste mapa não permite pagamentos, movimentos de stock ou emissão fiscal.</p></section>
</>;
}