private void CloseSelectedConnection(Atendimento atendimento) { atendimento.reader?.Close(); atendimento.writer?.Close(); atendimento.stream?.Close(); atendimento.socket?.Close(); }
private static void ExibirAtendimento(Atendimento atendimento) { var contador = 1; Console.WriteLine($"Atendimento: {atendimento.Id} \n" + $"Cliente: {atendimento.Cliente.Nome} - CPF: {atendimento.Cliente.CPF} - Idade: {atendimento.Cliente.Idade} \n" + $"Assuntos: {string.Join("", atendimento.Assuntos.Select(a => $"\n{contador++}. {a.Descricao} - Tipo: {a.TipoAssunto.Descricao}"))}"); Console.WriteLine("Pressione qualquer tecla para continuar"); Console.ReadKey(); }
private static void Recepcionar() { Console.WriteLine($"Informe o nome do cliente: "); var nomeCliente = Console.ReadLine(); Console.WriteLine($"Informe o CPF do cliente: "); var cpfCliente = Console.ReadLine(); Console.WriteLine($"Informe a idade do cliente: "); var idadeCliente = Convert.ToInt32(Console.ReadLine()); var cliente = new Cliente(cpfCliente, nomeCliente, idadeCliente); var assuntos = RegistrarAssuntos(null); var atendimento = new Atendimento(cliente, assuntos, StatusAtendimentoEnum.AguardandoAtendimento, DateTime.Now); Atendimentos.Add(atendimento); }
public void Run() { try { IPEndPoint ipEndPoint = new IPEndPoint(IPAddress.Parse(IP), PORT); tcpListener = new TcpListener(ipEndPoint); tcpListener.Start(); while (true) { Atendimento atendimento = new Atendimento(); atendimento.socket = tcpListener.AcceptSocket(); atendimento.stream = new NetworkStream(atendimento.socket); atendimento.writer = new BinaryWriter(atendimento.stream); atendimento.reader = new BinaryReader(atendimento.stream); atendimento.Consulta = ClinicaXmlUtils.FromXml <Consulta>(atendimento.reader.ReadString()); if (list.Any(n => n.Consulta.ID_Consulta == atendimento.Consulta.ID_Consulta)) { atendimento.writer.Write("Consulta já, existente."); } else { list.Add(atendimento); Invoke(new MethodInvoker(delegate() { ListViewItem linha = listView1.Items.Add(atendimento.Consulta.ID_Consulta.ToString()); linha.SubItems.Add(atendimento.Consulta.Medico.Nome); linha.SubItems.Add(atendimento.Consulta.Paciente.Nome); })); } atendimento.writer.Write("FIM"); } } catch (SocketException) { } catch (Exception ex) { MessageBox.Show(ex.Message); } finally { CloseConnection(); } }