Oie estou fazendo um cadastro de produtos.
E preciso colocar um critério para o produto não ser inserido na mesma empresa novamente.
Estou tentando fazer, mas não está funcionando!
ProdutoEmpresaDAO.
//Verifica se o produto já pertence aquela empresa
public boolean existeProduto(ProdutoEmpresa produtoEmpresa) {
ProdutoEmpresa encontrado = (ProdutoEmpresa) session.createCriteria(ProdutoEmpresa.class)
.createCriteria("produto")
.add(Restrictions.eq("id", produtoEmpresa.getProduto().getId()))
.uniqueResult();
return encontrado != null;
}
Meu controller
// Adicionar
@Audit
@Business
@Post("/produtoEmpresa")
public void adiciona(ProdutoEmpresa produtoEmpresa) {
if (dao.existeProduto(produtoEmpresa)) {
validator.add(new ValidationMessage("Produto Já existe",
"produtoEmpresa.produto.id"));
validator.onErrorUsePageOf(ProdutoEmpresaController.class);
//dao.salva(produtoEmpresa);
result.redirectTo(ProdutoEmpresaController.class).lista();
}else{
dao.salva(produtoEmpresa);
// Colocando o ProdutoEmpresa na Sessão
ProdutoEmpresaEmProgresso.setSprodutoEmpresa(produtoEmpresa);
// Redireciona para a página de administração
result.redirectTo(AdministracaoController.class).empresa();
}
}