BarberBot Software BarberBotDocumentação Técnica Visão geral
DOCUMENTAÇÃO DE MÓDULO

Agenda e Agendamentos

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

  1. Criar um agendamento em dia e horário válidos.
  2. Tentar repetir o mesmo horário e confirmar a rejeição.
  3. Testar um dia sem expediente, horário de almoço e data bloqueada.
  4. Concluir o atendimento e conferir status do agendamento e lançamentos financeiros.
  5. 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.

Evidências principais: agenda.php • agenda/inserir.php • agenda/listar-horarios.php • agenda/inserir-servico.php

10
REFERÊNCIA COMPLETA

Documentação detalhada existente