/// <summary> /// Obtém o próximo atendimento. /// </summary> /// <returns></returns> public override Atendimento ObterPróximoAtendimento() { Visita visita; Funcionário atendente; Atendimento atendimento; visita = Visita.ObterPróximaVisitaEsperando(setor); atendente = ObterPróximoAtendenteDisponível(); if (visita != null && atendente != null) { atendimento = new Atendimento(visita, atendente); if (ConfirmarAtendimento(atendimento)) { /* Neste ponto, o atendente pode ter sido trocado * durante o tratamento de evento. * -- Júlio, 24/06/2006 */ atendente = atendimento.Atendente; IniciarAtendimento(visita, atendente); RealizarRodízio(atendente); } return atendimento; } else return null; }
public IniciarAtendimento(Atendimento atendimento) { // // Required for Windows Form Designer support // InitializeComponent(); // Mostrar dados txtCliente.Text = atendimento.Visita.ExtrairNomes(); txtAtendente.Pessoa = atendimento.Atendente; this.atendimento = atendimento; }
/// <summary> /// Retorna a aceitação do atendimento /// </summary> private bool ConfirmandoAtendimento(Atendimento atendimento) { using (IniciarAtendimento dlg = new IniciarAtendimento(atendimento)) { AguardeDB.Suspensão(true); dlg.ShowDialog(this.ParentForm); AguardeDB.Suspensão(false); return dlg.DialogResult == DialogResult.OK; } }
/// <summary> /// Confirma atendimento a ser realizado, podendo /// alterar contúdo do parâmetro. /// </summary> /// <returns> /// Se foi aceito o atendimento. /// </returns> /// <param name="atendimento">Atendimento a ser iniciado.</param> protected bool ConfirmarAtendimento(Atendimento atendimento) { if (ConfirmandoAtendimento != null) return ConfirmandoAtendimento(atendimento); return false; }