CCCPaste

Paciente.java

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());
	}
}