Skip to content

accountingStore

Store Zustand para o módulo contábil completo.

Localização: frontend-react/src/stores/accountingStore.ts

Estado

CampoTipoDescrição
accountsChartAccount[]Plano de contas carregado
accountsLoadingbooleanLoading do plano de contas
journalEntriesJournalEntry[]Página atual do diário
journalLoadingbooleanLoading do diário
balanceteBalanceteRow[]Balancete do período
balanceteLoadingbooleanLoading do balancete
razaoRazaoLine[]Movimentos do razão
razaoLoadingbooleanLoading do razão
periodsPeriodClosing[]Períodos de fechamento
periodsLoadingbooleanLoading dos períodos
receivablesAccountsReceivable[]Contas a receber
receivablesLoadingbooleanLoading dos recebíveis
agingReportAgingReport | nullAging report
bankAccountsBankAccount[]Contas bancárias
bankAccountsLoadingbooleanLoading das contas bancárias
statementLinesBankStatementLine[]Linhas do extrato ativo
statementLoadingbooleanLoading do extrato

Ações

Plano de Contas

ts
fetchAccounts(slug: string): Promise<void>

Carrega todas as contas do plano (sistema + tenant).


Diário

ts
fetchJournalEntries(slug: string, params?: {
  page?: number;
  limit?: number;
  status?: JournalEntryStatus;
}): Promise<void>

Razão & Balancete

ts
fetchBalancete(slug: string, year: number, month: number): Promise<void>

fetchRazao(
  slug: string,
  accountId: string,
  startDate: string,
  endDate: string
): Promise<void>

Períodos

ts
fetchPeriods(slug: string): Promise<void>

Contas a Receber

ts
fetchReceivables(slug: string, params?: {
  status?: ReceivableStatus;
}): Promise<void>

fetchAgingReport(slug: string): Promise<void>

settleReceivable(
  slug: string,
  id: string,
  amount: number,
  paymentMethod: string
): Promise<void>

writeOffReceivable(
  slug: string,
  id: string,
  reason: string
): Promise<void>

Contas Bancárias

ts
fetchBankAccounts(slug: string): Promise<void>

createBankAccount(slug: string, data: Partial<BankAccount>): Promise<void>

fetchStatementLines(
  slug: string,
  bankAccountId: string,
  params?: { status?: string }
): Promise<void>

autoMatch(slug: string, bankAccountId: string): Promise<void>

Uso típico

tsx
const { accounts, accountsLoading, fetchAccounts } = useAccountingStore();

useEffect(() => {
  if (slug) fetchAccounts(slug);
}, [slug]);

Relacionados

Lançado sob a licença MIT.