E ai galera, tenho uma dúvida, tenho uma classe administrador e abaixo dela tenho outra classe que chamo de distribuidor.
Apenas um administrador pode adicionar um outro administrador ou distribuidor, e somente um distribuidor pode listar usuários abaixo dele.
As regras estão aplicadas ao meu sistema e funcionam muito bem, entretanto, estou fazendo um login do usuário, mas preciso saber se ele é administrador ou distribuidor usando hibernate e criteria. Tenho pensado em colocar parametros para sinalizar isso, mas acredito que haja uma melhor maneira de fazer isso, caso contrário eu não precisaria usar herança.
@Entity
public class Administrator {
@Id
@GeneratedValue
private Integer id;
}
@Entity
public class Distributor extends Administrator{
@Id
@GeneratedValue
private Integer id;
@OneToMany
@JoinTable(name = "Distributor_Clients")
private List<User> clients;
@NotNull
@NotEmpty
@ManyToOne
private Administrator administrator;
}
No meu login não preciso de informações adicionais, apenas preciso saber o tipo que ele é.
Alguém me sugere uma maneira de fazer dessa maneira ou uma maneira melhor?