Galera é o seguinte, tenho as seguintes entidades no banco de dados:
paciente={id,nome,endereco,nome_mae,data_nasc}
vacina={id,nome}
doses={id,descricao}
historico={fk_vacina,fk_doses,fk_paciente,data)
a relação paciente x vacina =NxN
a relação vacina x doses= NxN
obs: vale lembrar que que essas duas relações NxN são tabela historico conforme mapeamento abaixo:
[code]
public class Paciente{
//bi-directional many-to-one association to Historico
@OneToMany(mappedBy=“paciente”)
private List historicos;
//bi-directional many-to-many association to Vacina
@ManyToMany(cascade={CascadeType.MERGE})
@JoinTable(
name="historico"
, joinColumns={
@JoinColumn(name="fk_paciente")
}
, inverseJoinColumns={
@JoinColumn(name="fk_vacina")
}
)
private List<Vacina> vacinas;
}[/code]
public class Vacina{
//bi-directional many-to-one association to Historico
@OneToMany(mappedBy="vacina")
private List<Historico> historicos;
//bi-directional many-to-many association to Paciente
@ManyToMany(mappedBy="vacinas", cascade={CascadeType.MERGE})
private List<Paciente> pacientes;
//bi-directional many-to-many association to Dose
@ManyToMany
@JoinTable(
name="historico"
, joinColumns={
@JoinColumn(name="fk_vacina")
}
, inverseJoinColumns={
@JoinColumn(name="fk_doses")
}
)
private List<Dose> doses;
}
public class Dose{
//bi-directional many-to-one association to Historico
@OneToMany(mappedBy="dos")
private List<Historico> historicos;
//bi-directional many-to-many association to Vacina
@ManyToMany(mappedBy="doses")
private List<Vacina> vacinas;
}
public class historico{
//bi-directional many-to-one association to Dose
@ManyToOne(fetch=FetchType.LAZY)
@JoinColumn(name="fk_doses")
private Dose dos;
//bi-directional many-to-one association to Paciente
@ManyToOne(fetch=FetchType.LAZY)
@JoinColumn(name="fk_paciente")
private Paciente paciente;
//bi-directional many-to-one association to Vacina
@ManyToOne(fetch=FetchType.LAZY)
@JoinColumn(name="fk_vacina")
private Vacina vacina;
}
Minha dúvida é a seguinte, uma tabela de doses tem a seguinte descrição (primeira dose, segunda dose, terceira dose, quarta dose,dose unica)
Não sei o que fazer quando tiver que persistir por exemplo primeira e segunda dose de uma mesma vacina para um mesmo paciente, em uma determinada data, não sei se fui claro.
quem puder me ajudar eu agradeço, isso pra minha monografia q eu tenho q apresentar em junho.