package imc; import java.io.Serializable; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; import imc.Imc; public class Paciente implements Serializable{ private static final long serialVersionUID = 1L; private String nome; private String dtNascimento; private char sexo; private Imc imc; private String idade; private int id; public static int gerador; public Paciente(String nome, String dtNascimento, char sexo, float peso, float altura) { this.nome = nome; this.dtNascimento = dtNascimento; this.sexo = sexo; this.imc = new Imc(peso, altura, this); id = ++gerador; } public static void setGerador(int valor) { gerador = valor; } public int getId() { return id; } public float getPeso() { return imc.getPeso(); } public void setPeso(float peso) { this.imc.setPeso(peso); } public float getAltura() { return imc.getAltura(); } public void setAltura(float altura) { this.imc.setAltura(altura); } public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public String getDtNascimento() throws ParseException{ SimpleDateFormat formato = new SimpleDateFormat("dd/MM/yyyy"); Date dataFormatada = formato.parse(dtNascimento); dtNascimento = formato.format(dataFormatada); return dtNascimento; } public void setDtNascimento(String dtNascimento) { this.dtNascimento = dtNascimento; } public char getSexo() { return sexo; } public void setSexo(char sexo) { this.sexo = sexo; } public Imc getImc() { return imc; } public String diagnosticoImc() { return this.imc.diagnostico(); } public String toString() { return String.format("%04d %-20s %-11s %c %5.1f %4.2f %s", id, nome, dtNascimento, sexo, imc.getPeso(), imc.getAltura(), imc.diagnostico()); } }