Projeto

Geral

Perfil

Ações

Padrão #14

Aberta

Component de listagem do Plano de Contas

Adicionado por Redmine Admin 4 meses atrás. Atualizado 4 meses atrás.

Situação:
teste
Prioridade:
normal
Atribuído para:
matheus Oliveira
Início:
07/09/2025
Data prevista:
% Terminado:

0%

Tempo estimado:
1:00 h
Sprint:
1012
Sprint Inicial:
1012
Critério de Validação:

Descrição

Replique o component de fornecedor que fica em apoema/frontend/src/app/components/ui/FornecedorAutocomplete.tsx ele pode ser igual ao component de fornecedor, mas ao invés de listar fornecedores, vai listar as contas contábeis

Não temos tabela para plano de contas ainda, então vou deixar em anexo um dump de como dev ser

CREATE TABLE plano_contas (
    id SERIAL PRIMARY KEY,
    codigo VARCHAR(20) NOT NULL UNIQUE,
    nome VARCHAR(255) NOT NULL,
    conta_pai_id INTEGER REFERENCES plano_contas(id),
    tipo_conta VARCHAR(20) NOT NULL CHECK (tipo_conta IN ('ATIVO', 'PASSIVO', 'PATRIMONIO_LIQUIDO', 'RECEITA', 'DESPESA')),
    natureza VARCHAR(10) NOT NULL CHECK (natureza IN ('DEBITO', 'CREDITO')),
    nivel INTEGER NOT NULL DEFAULT 1,
    aceita_lancamento BOOLEAN NOT NULL DEFAULT TRUE,
    permite_rateio VARCHAR(1) NOT NULL DEFAULT 'P' CHECK (permite_rateio IN ('S', 'N', 'O', 'P')), -- S=Sim, N=Não, O=Obrigatório, P=Permitido
    ativo BOOLEAN NOT NULL DEFAULT TRUE,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    
    -- Índices para performance
    INDEX idx_plano_contas_codigo (codigo),
    INDEX idx_plano_contas_conta_pai (conta_pai_id),
    INDEX idx_plano_contas_tipo (tipo_conta)
);

-- Inserção das contas principais (Nível 1)
INSERT INTO plano_contas (codigo, nome, conta_pai_id, tipo_conta, natureza, nivel, aceita_lancamento) VALUES
('1', 'ATIVO', NULL, 'ATIVO', 'DEBITO', 1, FALSE),
('2', 'PASSIVO', NULL, 'PASSIVO', 'CREDITO', 1, FALSE),
('3', 'PATRIMÔNIO LÍQUIDO', NULL, 'PATRIMONIO_LIQUIDO', 'CREDITO', 1, FALSE),
('4', 'RECEITAS', NULL, 'RECEITA', 'CREDITO', 1, FALSE),
('5', 'DESPESAS', NULL, 'DESPESA', 'DEBITO', 1, FALSE);

-- Inserção das contas de segundo nível (Nível 2)
INSERT INTO plano_contas (codigo, nome, conta_pai_id, tipo_conta, natureza, nivel, aceita_lancamento) VALUES
-- ATIVO
('1.1', 'ATIVO CIRCULANTE', (SELECT id FROM plano_contas WHERE codigo = '1'), 'ATIVO', 'DEBITO', 2, FALSE),
('1.2', 'ATIVO NÃO CIRCULANTE', (SELECT id FROM plano_contas WHERE codigo = '1'), 'ATIVO', 'DEBITO', 2, FALSE),

-- PASSIVO
('2.1', 'PASSIVO CIRCULANTE', (SELECT id FROM plano_contas WHERE codigo = '2'), 'PASSIVO', 'CREDITO', 2, FALSE),
('2.2', 'PASSIVO NÃO CIRCULANTE', (SELECT id FROM plano_contas WHERE codigo = '2'), 'PASSIVO', 'CREDITO', 2, FALSE),

-- PATRIMÔNIO LÍQUIDO
('3.1', 'CAPITAL SOCIAL', (SELECT id FROM plano_contas WHERE codigo = '3'), 'PATRIMONIO_LIQUIDO', 'CREDITO', 2, TRUE),
('3.2', 'RESERVAS', (SELECT id FROM plano_contas WHERE codigo = '3'), 'PATRIMONIO_LIQUIDO', 'CREDITO', 2, FALSE),
('3.3', 'LUCROS/PREJUÍZOS ACUMULADOS', (SELECT id FROM plano_contas WHERE codigo = '3'), 'PATRIMONIO_LIQUIDO', 'CREDITO', 2, TRUE),

-- RECEITAS
('4.1', 'RECEITA OPERACIONAL', (SELECT id FROM plano_contas WHERE codigo = '4'), 'RECEITA', 'CREDITO', 2, FALSE),
('4.2', 'RECEITAS NÃO OPERACIONAIS', (SELECT id FROM plano_contas WHERE codigo = '4'), 'RECEITA', 'CREDITO', 2, FALSE),

-- DESPESAS
('5.1', 'DESPESAS OPERACIONAIS', (SELECT id FROM plano_contas WHERE codigo = '5'), 'DESPESA', 'DEBITO', 2, FALSE),
('5.2', 'DESPESAS NÃO OPERACIONAIS', (SELECT id FROM plano_contas WHERE codigo = '5'), 'DESPESA', 'DEBITO', 2, FALSE);

-- Inserção das contas de terceiro nível (Nível 3) - ATIVO
INSERT INTO plano_contas (codigo, nome, conta_pai_id, tipo_conta, natureza, nivel, aceita_lancamento, permite_rateio) VALUES
-- ATIVO CIRCULANTE
('1.1.1', 'DISPONÍVEL', (SELECT id FROM plano_contas WHERE codigo = '1.1'), 'ATIVO', 'DEBITO', 3, FALSE, 'N'),
('1.1.2', 'DIREITOS REALIZÁVEIS', (SELECT id FROM plano_contas WHERE codigo = '1.1'), 'ATIVO', 'DEBITO', 3, FALSE, 'P'),
('1.1.3', 'ESTOQUES', (SELECT id FROM plano_contas WHERE codigo = '1.1'), 'ATIVO', 'DEBITO', 3, FALSE, 'O'),

-- ATIVO NÃO CIRCULANTE
('1.2.1', 'REALIZÁVEL A LONGO PRAZO', (SELECT id FROM plano_contas WHERE codigo = '1.2'), 'ATIVO', 'DEBITO', 3, FALSE, 'P'),
('1.2.2', 'INVESTIMENTOS', (SELECT id FROM plano_contas WHERE codigo = '1.2'), 'ATIVO', 'DEBITO', 3, FALSE, 'P'),
('1.2.3', 'IMOBILIZADO', (SELECT id FROM plano_contas WHERE codigo = '1.2'), 'ATIVO', 'DEBITO', 3, FALSE, 'O'),
('1.2.4', 'INTANGÍVEL', (SELECT id FROM plano_contas WHERE codigo = '1.2'), 'ATIVO', 'DEBITO', 3, FALSE, 'P');

-- Inserção das contas de terceiro nível (Nível 3) - PASSIVO
INSERT INTO plano_contas (codigo, nome, conta_pai_id, tipo_conta, natureza, nivel, aceita_lancamento, permite_rateio) VALUES
-- PASSIVO CIRCULANTE
('2.1.1', 'FORNECEDORES', (SELECT id FROM plano_contas WHERE codigo = '2.1'), 'PASSIVO', 'CREDITO', 3, TRUE, 'O'),
('2.1.2', 'EMPRÉSTIMOS E FINANCIAMENTOS', (SELECT id FROM plano_contas WHERE codigo = '2.1'), 'PASSIVO', 'CREDITO', 3, TRUE, 'P'),
('2.1.3', 'OBRIGAÇÕES TRABALHISTAS', (SELECT id FROM plano_contas WHERE codigo = '2.1'), 'PASSIVO', 'CREDITO', 3, FALSE, 'O'),
('2.1.4', 'OBRIGAÇÕES TRIBUTÁRIAS', (SELECT id FROM plano_contas WHERE codigo = '2.1'), 'PASSIVO', 'CREDITO', 3, FALSE, 'O'),

-- PASSIVO NÃO CIRCULANTE
('2.2.1', 'EMPRÉSTIMOS E FINANCIAMENTOS LP', (SELECT id FROM plano_contas WHERE codigo = '2.2'), 'PASSIVO', 'CREDITO', 3, TRUE, 'P'),
('2.2.2', 'PROVISÕES', (SELECT id FROM plano_contas WHERE codigo = '2.2'), 'PASSIVO', 'CREDITO', 3, TRUE, 'P');

-- Inserção das contas de terceiro nível (Nível 3) - RECEITAS
INSERT INTO plano_contas (codigo, nome, conta_pai_id, tipo_conta, natureza, nivel, aceita_lancamento, permite_rateio) VALUES
-- RECEITA OPERACIONAL
('4.1.1', 'RECEITA BRUTA DE VENDAS', (SELECT id FROM plano_contas WHERE codigo = '4.1'), 'RECEITA', 'CREDITO', 3, FALSE, 'O'),
('4.1.2', 'RECEITA DE SERVIÇOS', (SELECT id FROM plano_contas WHERE codigo = '4.1'), 'RECEITA', 'CREDITO', 3, FALSE, 'O'),
('4.1.3', 'DEDUÇÕES DA RECEITA BRUTA', (SELECT id FROM plano_contas WHERE codigo = '4.1'), 'RECEITA', 'DEBITO', 3, FALSE, 'P'),

-- RECEITAS NÃO OPERACIONAIS
('4.2.1', 'RECEITAS FINANCEIRAS', (SELECT id FROM plano_contas WHERE codigo = '4.2'), 'RECEITA', 'CREDITO', 3, TRUE, 'P'),
('4.2.2', 'OUTRAS RECEITAS', (SELECT id FROM plano_contas WHERE codigo = '4.2'), 'RECEITA', 'CREDITO', 3, TRUE, 'P');

-- Inserção das contas de terceiro nível (Nível 3) - DESPESAS
INSERT INTO plano_contas (codigo, nome, conta_pai_id, tipo_conta, natureza, nivel, aceita_lancamento, permite_rateio) VALUES
-- DESPESAS OPERACIONAIS
('5.1.1', 'CUSTO DOS PRODUTOS VENDIDOS', (SELECT id FROM plano_contas WHERE codigo = '5.1'), 'DESPESA', 'DEBITO', 3, FALSE, 'O'),
('5.1.2', 'DESPESAS ADMINISTRATIVAS', (SELECT id FROM plano_contas WHERE codigo = '5.1'), 'DESPESA', 'DEBITO', 3, FALSE, 'O'),
('5.1.3', 'DESPESAS COMERCIAIS', (SELECT id FROM plano_contas WHERE codigo = '5.1'), 'DESPESA', 'DEBITO', 3, FALSE, 'O'),

-- DESPESAS NÃO OPERACIONAIS
('5.2.1', 'DESPESAS FINANCEIRAS', (SELECT id FROM plano_contas WHERE codigo = '5.2'), 'DESPESA', 'DEBITO', 3, TRUE, 'P'),
('5.2.2', 'OUTRAS DESPESAS', (SELECT id FROM plano_contas WHERE codigo = '5.2'), 'DESPESA', 'DEBITO', 3, TRUE, 'P');

-- Inserção das contas analíticas (Nível 4) - DISPONÍVEL
INSERT INTO plano_contas (codigo, nome, conta_pai_id, tipo_conta, natureza, nivel, aceita_lancamento, permite_rateio) VALUES
('1.1.1.001', 'CAIXA GERAL', (SELECT id FROM plano_contas WHERE codigo = '1.1.1'), 'ATIVO', 'DEBITO', 4, TRUE, 'N'),
('1.1.1.002', 'BANCO DO BRASIL - CC', (SELECT id FROM plano_contas WHERE codigo = '1.1.1'), 'ATIVO', 'DEBITO', 4, TRUE, 'N'),
('1.1.1.003', 'CAIXA ECONÔMICA - CC', (SELECT id FROM plano_contas WHERE codigo = '1.1.1'), 'ATIVO', 'DEBITO', 4, TRUE, 'N'),
('1.1.1.004', 'ITAÚ - CC', (SELECT id FROM plano_contas WHERE codigo = '1.1.1'), 'ATIVO', 'DEBITO', 4, TRUE, 'N'),
('1.1.1.005', 'APLICAÇÕES FINANCEIRAS', (SELECT id FROM plano_contas WHERE codigo = '1.1.1'), 'ATIVO', 'DEBITO', 4, TRUE, 'N');

-- Inserção das contas analíticas (Nível 4) - DIREITOS REALIZÁVEIS
INSERT INTO plano_contas (codigo, nome, conta_pai_id, tipo_conta, natureza, nivel, aceita_lancamento, permite_rateio) VALUES
('1.1.2.001', 'DUPLICATAS A RECEBER', (SELECT id FROM plano_contas WHERE codigo = '1.1.2'), 'ATIVO', 'DEBITO', 4, TRUE, 'P'),
('1.1.2.002', 'CONTAS A RECEBER', (SELECT id FROM plano_contas WHERE codigo = '1.1.2'), 'ATIVO', 'DEBITO', 4, TRUE, 'P'),
('1.1.2.003', 'ADIANTAMENTOS A FORNECEDORES', (SELECT id FROM plano_contas WHERE codigo = '1.1.2'), 'ATIVO', 'DEBITO', 4, TRUE, 'P'),
('1.1.2.004', 'IMPOSTOS A RECUPERAR', (SELECT id FROM plano_contas WHERE codigo = '1.1.2'), 'ATIVO', 'DEBITO', 4, TRUE, 'P'),
('1.1.2.005', 'ADIANTAMENTOS DE SALÁRIOS', (SELECT id FROM plano_contas WHERE codigo = '1.1.2'), 'ATIVO', 'DEBITO', 4, TRUE, 'O');

-- Inserção das contas analíticas (Nível 4) - OBRIGAÇÕES TRABALHISTAS
INSERT INTO plano_contas (codigo, nome, conta_pai_id, tipo_conta, natureza, nivel, aceita_lancamento, permite_rateio) VALUES
('2.1.3.001', 'SALÁRIOS A PAGAR', (SELECT id FROM plano_contas WHERE codigo = '2.1.3'), 'PASSIVO', 'CREDITO', 4, TRUE, 'O'),
('2.1.3.002', 'FGTS A RECOLHER', (SELECT id FROM plano_contas WHERE codigo = '2.1.3'), 'PASSIVO', 'CREDITO', 4, TRUE, 'O'),
('2.1.3.003', 'INSS A RECOLHER', (SELECT id FROM plano_contas WHERE codigo = '2.1.3'), 'PASSIVO', 'CREDITO', 4, TRUE, 'O'),
('2.1.3.004', 'PROVISÃO DE FÉRIAS', (SELECT id FROM plano_contas WHERE codigo = '2.1.3'), 'PASSIVO', 'CREDITO', 4, TRUE, 'O'),
('2.1.3.005', 'PROVISÃO DE 13º SALÁRIO', (SELECT id FROM plano_contas WHERE codigo = '2.1.3'), 'PASSIVO', 'CREDITO', 4, TRUE, 'O');

-- Inserção das contas analíticas (Nível 4) - OBRIGAÇÕES TRIBUTÁRIAS
INSERT INTO plano_contas (codigo, nome, conta_pai_id, tipo_conta, natureza, nivel, aceita_lancamento, permite_rateio) VALUES
('2.1.4.001', 'ICMS A RECOLHER', (SELECT id FROM plano_contas WHERE codigo = '2.1.4'), 'PASSIVO', 'CREDITO', 4, TRUE, 'P'),
('2.1.4.002', 'IPI A RECOLHER', (SELECT id FROM plano_contas WHERE codigo = '2.1.4'), 'PASSIVO', 'CREDITO', 4, TRUE, 'P'),
('2.1.4.003', 'ISS A RECOLHER', (SELECT id FROM plano_contas WHERE codigo = '2.1.4'), 'PASSIVO', 'CREDITO', 4, TRUE, 'P'),
('2.1.4.004', 'PIS A RECOLHER', (SELECT id FROM plano_contas WHERE codigo = '2.1.4'), 'PASSIVO', 'CREDITO', 4, TRUE, 'P'),
('2.1.4.005', 'COFINS A RECOLHER', (SELECT id FROM plano_contas WHERE codigo = '2.1.4'), 'PASSIVO', 'CREDITO', 4, TRUE, 'P'),
('2.1.4.006', 'IRPJ A RECOLHER', (SELECT id FROM plano_contas WHERE codigo = '2.1.4'), 'PASSIVO', 'CREDITO', 4, TRUE, 'P'),
('2.1.4.007', 'CSLL A RECOLHER', (SELECT id FROM plano_contas WHERE codigo = '2.1.4'), 'PASSIVO', 'CREDITO', 4, TRUE, 'P');

-- Inserção das contas analíticas (Nível 4) - RECEITAS DETALHADAS
INSERT INTO plano_contas (codigo, nome, conta_pai_id, tipo_conta, natureza, nivel, aceita_lancamento, permite_rateio) VALUES
('4.1.1.001', 'VENDAS DE PRODUTOS', (SELECT id FROM plano_contas WHERE codigo = '4.1.1'), 'RECEITA', 'CREDITO', 4, TRUE, 'O'),
('4.1.1.002', 'VENDAS DE MERCADORIAS', (SELECT id FROM plano_contas WHERE codigo = '4.1.1'), 'RECEITA', 'CREDITO', 4, TRUE, 'O'),
('4.1.2.001', 'PRESTAÇÃO DE SERVIÇOS', (SELECT id FROM plano_contas WHERE codigo = '4.1.2'), 'RECEITA', 'CREDITO', 4, TRUE, 'O'),
('4.1.2.002', 'RECEITA DE CONSULTORIA', (SELECT id FROM plano_contas WHERE codigo = '4.1.2'), 'RECEITA', 'CREDITO', 4, TRUE, 'O'),
('4.2.1.001', 'RECEITAS DE APLICAÇÕES FINANCEIRAS', (SELECT id FROM plano_contas WHERE codigo = '4.2.1'), 'RECEITA', 'CREDITO', 4, TRUE, 'P'),
('4.2.1.002', 'DESCONTOS OBTIDOS', (SELECT id FROM plano_contas WHERE codigo = '4.2.1'), 'RECEITA', 'CREDITO', 4, TRUE, 'P'),
('4.2.2.001', 'OUTRAS RECEITAS IPVA', (SELECT id FROM plano_contas WHERE codigo = '4.2.2'), 'RECEITA', 'CREDITO', 4, TRUE, 'P');

-- Inserção das contas analíticas (Nível 4) - DESPESAS DETALHADAS
INSERT INTO plano_contas (codigo, nome, conta_pai_id, tipo_conta, natureza, nivel, aceita_lancamento, permite_rateio) VALUES
('5.1.2.001', 'SALÁRIOS E ORDENADOS', (SELECT id FROM plano_contas WHERE codigo = '5.1.2'), 'DESPESA', 'DEBITO', 4, TRUE, 'O'),
('5.1.2.002', 'ENCARGOS SOCIAIS', (SELECT id FROM plano_contas WHERE codigo = '5.1.2'), 'DESPESA', 'DEBITO', 4, TRUE, 'O'),
('5.1.2.003', 'ALUGUÉIS', (SELECT id FROM plano_contas WHERE codigo = '5.1.2'), 'DESPESA', 'DEBITO', 4, TRUE, 'O'),
('5.1.2.004', 'ENERGIA ELÉTRICA', (SELECT id FROM plano_contas WHERE codigo = '5.1.2'), 'DESPESA', 'DEBITO', 4, TRUE, 'O'),
('5.1.2.005', 'TELEFONE', (SELECT id FROM plano_contas WHERE codigo = '5.1.2'), 'DESPESA', 'DEBITO', 4, TRUE, 'O'),
('5.1.2.006', 'MATERIAL DE ESCRITÓRIO', (SELECT id FROM plano_contas WHERE codigo = '5.1.2'), 'DESPESA', 'DEBITO', 4, TRUE, 'O'),
('5.1.2.007', 'MATERIAL DE LIMPEZA', (SELECT id FROM plano_contas WHERE codigo = '5.1.2'), 'DESPESA', 'DEBITO', 4, TRUE, 'O'),
('5.1.2.008', 'COMBUSTÍVEIS', (SELECT id FROM plano_contas WHERE codigo = '5.1.2'), 'DESPESA', 'DEBITO', 4, TRUE, 'O'),
('5.1.2.009', 'MANUTENÇÃO E REPAROS', (SELECT id FROM plano_contas WHERE codigo = '5.1.2'), 'DESPESA', 'DEBITO', 4, TRUE, 'O'),
('5.1.2.010', 'SEGUROS', (SELECT id FROM plano_contas WHERE codigo = '5.1.2'), 'DESPESA', 'DEBITO', 4, TRUE, 'O'),
('5.1.2.011', 'DESPESAS COM VEÍCULOS', (SELECT id FROM plano_contas WHERE codigo = '5.1.2'), 'DESPESA', 'DEBITO', 4, TRUE, 'O'),
('5.1.2.012', 'DESPESAS BANCÁRIAS', (SELECT id FROM plano_contas WHERE codigo = '5.1.2'), 'DESPESA', 'DEBITO', 4, TRUE, 'P'),
('5.1.3.001', 'COMISSÕES DE VENDAS', (SELECT id FROM plano_contas WHERE codigo = '5.1.3'), 'DESPESA', 'DEBITO', 4, TRUE, 'O'),
('5.1.3.002', 'PROPAGANDA E PUBLICIDADE', (SELECT id FROM plano_contas WHERE codigo = '5.1.3'), 'DESPESA', 'DEBITO', 4, TRUE, 'O'),
('5.2.1.001', 'JUROS PAGOS', (SELECT id FROM plano_contas WHERE codigo = '5.2.1'), 'DESPESA', 'DEBITO', 4, TRUE, 'P'),
('5.2.1.002', 'DESCONTOS CONCEDIDOS', (SELECT id FROM plano_contas WHERE codigo = '5.2.1'), 'DESPESA', 'DEBITO', 4, TRUE, 'P'),
('5.2.1.003', 'MULTAS FISCAIS', (SELECT id FROM plano_contas WHERE codigo = '5.2.1'), 'DESPESA', 'DEBITO', 4, TRUE, 'P');

Tarefas relacionadas 2 (2 abertas0 fechada)

copiada Padrão #15: Auditoria: Rotina de Auditoria testematheus Oliveira07/09/2025

Ações
copiada Padrão #18: Component de listagem de clientestestematheus Oliveira07/09/2025

Ações
Ações #2

Atualizado por Redmine Admin4 meses

  • copiada Padrão #15: Auditoria: Rotina de Auditoria adicionado
Ações #3

Atualizado por Redmine Admin4 meses

  • Título alterado de Component de listagem do cliente para Component de listagem do Plano de Contas
  • Descrição atualizado(a) (diff)
  • Critério de Validação excluído (Todas as operações precisam estar funcionado)
Ações #4

Atualizado por Redmine Admin4 meses

  • copiada Padrão #18: Component de listagem de clientes adicionado
Ações #5

Atualizado por matheus Oliveira há 4 meses

  • Situação alterado de a fazer para teste
Ações

Exportar para Atom PDF