Organizar agendamentos vinculando cliente, profissional, serviço, data e horário; calcular disponibilidade; reservar intervalos; concluir atendimentos e refletir o serviço no financeiro e no histórico do cliente.
MóduloAgenda e Agendamentos
Status
Produção
ResponsávelJacy Cordeiro
Última revisão02/08/2026
01
OBJETIVO
Finalidade do módulo
Organizar agendamentos vinculando cliente, profissional, serviço, data e horário; calcular disponibilidade; reservar intervalos; concluir atendimentos e refletir o serviço no financeiro e no histórico do cliente.
02
LOCALIZAÇÃO
Caminhos principais
sistema/painel/paginas/agenda.php
sistema/painel/paginas/agenda/listar.php
sistema/painel/paginas/agenda/inserir.php
sistema/painel/paginas/agenda/listar-horarios.php
sistema/painel/paginas/agenda/inserir-servico.php
sistema/painel/paginas/agenda/excluir.php
03
PERSISTÊNCIA
Tabelas relacionadas
agendamentos
horarios_agd
clientes
usuarios
servicos
servicos_func
dias
dias_bloqueio
receber
pagar
caixas
formas_pgto
04
FLUXO
Sequência operacional observada
1Selecionar cliente e serviço
→
2Informar data e consultar horários
→
3Validar jornada, almoço, bloqueios e conflitos
→
4Inserir agendamento e reservar intervalos
→
5Listar o compromisso
→
6Concluir serviço e atualizar financeiro/histórico
05
ENTRADAS
Dados recebidos
POST: cliente, servico, data, hora, obs e id.
Sessão: id do usuário/profissional autenticado.
Conclusão: cliente_agd, id_agd, funcionario_agd, servico_agd, valores, formas e datas de pagamento.
06
SAÍDAS
Resultados produzidos
Registro em agendamentos e intervalos em horarios_agd.
HTML de agenda e opções de horários disponíveis.
Mensagens de texto esperadas pelo JavaScript, como “Salvo com Sucesso”.
Ao concluir: atualização do status, lançamentos em receber/pagar, comissão e retorno do cliente.
07
REGRAS DE NEGÓCIO
Comportamentos comprovados no código
O horário é obrigatório antes de salvar.
O profissional precisa trabalhar no dia selecionado.
O serviço não pode ocupar horário já reservado, almoço ou período bloqueado.
A duração do serviço e o intervalo do profissional definem as reservas em horarios_agd.
A conclusão do atendimento altera o agendamento para “Concluído”.
08
PONTOS DE ATENÇÃO
Cuidados antes de alterar
Os endpoints legados misturam consultas preparadas e SQL com valores concatenados; revisar entradas antes de alterar.
O JavaScript depende de mensagens de retorno exatas.
O fluxo de conclusão está acoplado a receber, pagar, caixa, comissão, fidelidade e mensagens.
Testar sempre com um usuário autenticado e com agenda real de trabalho configurada.
09
TESTE MÍNIMO
Validação após manutenção
Criar um agendamento em dia e horário válidos.
Tentar repetir o mesmo horário e confirmar a rejeição.
Testar um dia sem expediente, horário de almoço e data bloqueada.
Concluir o atendimento e conferir status do agendamento e lançamentos financeiros.
Excluir um agendamento de teste e confirmar a limpeza dos horários reservados.
Fonte da documentação
Conteúdo conferido no snapshot agenda.barberbot(1).zip e no esquema barberbotcom_agenda(1).sql. Quando o código não comprova um comportamento, ele não é apresentado como regra.