sistema/painel/paginas/agenda.php + sistema/painel/paginas/agenda/).
Inclui listagem, inserção, exclusão, horários disponíveis e vincular serviço/pagamento.
Este documento é baseado no código-fonte do módulo de agenda do BarberBot. A ideia é deixar claro o que cada arquivo faz, quais tabelas ele toca, quais retornos o front espera e quais pontos merecem atenção em manutenção/segurança.
sistema/painel/paginas/
├─ agenda.php
└─ agenda/
├─ listar.php
├─ inserir.php
├─ excluir.php
├─ inserir-servico.php
└─ listar-horarios.php
agenda.php – tela do módulo (UI + modais + scripts de interação).agenda/listar.php – monta a listagem do dia/período (HTML injetado via AJAX).agenda/inserir.php – cria agendamento e registra horários associados.agenda/excluir.php – exclui agendamento e limpa referências (ex.: horarios_agd).agenda/inserir-servico.php – vincula serviço ao agendamento e processa rotinas financeiras (receber/caixa/comissão).agenda/listar-horarios.php – calcula horários disponíveis conforme dia, funcionário e regras de bloqueio.agenda.php) dos endpoints (subpasta com listar.php, inserir.php, etc.).
Isso facilita manter o JavaScript da tela simples (apenas chamando os endpoints).
agenda.php)listar() (AJAX).usuarios (funcionários) e servicos_func (serviços por funcionário) para os selects.cliente, funcionario, servico, data, hora, obs e recorrência (quando habilitada).agenda/inserir.php e depois recarrega a listagem.receber, comissões, movimento de caixa).id_agendamento, servico, funcionario, pgto, data_pgto, descontos/observações.agenda/inserir-servico.php.agenda.php) e se o name/id do input bate com o que os endpoints esperam.
agenda/listar.phpagenda/inserir.phpagenda/excluir.phphorarios_agd).agenda/inserir-servico.phpreceber e (quando aplicável) pagar, atualiza status.agenda/listar-horarios.phpdias, bloqueios e ocupação (horarios_agd).dias para o funcionário.servicos_func.receber e registra comissão (pagar) quando aplicável.inserir-servico.php existe para concluir atendimento sem abrir outra tela (atalho operacional).
agendamentos, horarios_agd, dias, dias_bloqueio, dias_bloqueio_funcusuarios, clientes, servicos, servicos_funcformas_pgto, receber, caixas, pagarOs endpoints retornam strings que o JavaScript usa para decidir se mostra “sucesso” ou “erro”. Manter esses textos é importante para não quebrar a UI.
agenda/inserir.php: Salvo com Sucesso, Esse horário já está reservado!, O Funcionário não trabalha nesse dia!, Erro ao Salvar.agenda/inserir-servico.php: sucesso observado Salvo com Sucesso.agenda/excluir.php: geralmente Excluído com Sucesso (e possíveis retornos de integração).prepare().inserir.php, inserir-servico.php, excluir.php).
Salvo com Sucesso).Esse horário já está reservado!).O Funcionário não trabalha nesse dia!).listar-horarios.php).receber e comissão em pagar.agendamentos e horarios_agd.