Bom dia!
Como que eu faço para fazer um select com where com valor cnpj = a um valor, estou tentando usar os Filters.eq("cnpj", "valor"); dentro de colecoes.find() porém não está retornando o valor do cnpj que está gravado n base
@PostMapping(value = "/consultarCodigoBarrasPorCnpj", produces = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)
public List<CodigoBarraOutput> consultarCodigoBarrasPorCnpj(@RequestBody CodigoBarraInput codigoBarra) {
LOGGER.info("Chamando método consultarCodigoBarrasPorCnpj");
ResponseEntity<Mensagem> mensagem = null;
List<CodigoBarraOutput> lista = new ArrayList<>();
try {
if(codigoBarra != null) {
Codec<Document> codec = MongoClient.getDefaultCodecRegistry().get(Document.class);
CodigoBarraOutputCodec codigoBarraOutputCodec = new CodigoBarraOutputCodec(codec);
CodecRegistry registro = CodecRegistries.fromRegistries(MongoClient.getDefaultCodecRegistry(),
CodecRegistries.fromCodecs(codigoBarraOutputCodec));
CodecRegistry pojoCodecRegistry = org.bson.codecs.configuration.CodecRegistries.fromRegistries(MongoClientSettings.getDefaultCodecRegistry(), org.bson.codecs.configuration.CodecRegistries.fromProviders(PojoCodecProvider.builder().automatic(true).build()));
MongoClientOptions opcoes = MongoClientOptions.builder().codecRegistry(registro).build();
MongoDatabase database = obterConexao(opcoes).withCodecRegistry(pojoCodecRegistry);
MongoCollection<CodigoBarraOutput> colecao = database.getCollection(CODIGO_BARRAS, CodigoBarraOutput.class);
CodigoBarraOutput saida = colecao.find(eq("cnpj", codigoBarra.getCnpj())).first();
System.out.println(saida);
//MongoCursor<CodigoBarraOutput> cursor = colecao.find(new Document("cnpj", new Document("$eq", codigoBarra.getCnpj()))).iterator();
// if (cursor.hasNext()) {
// CodigoBarraOutput saida = cursor.next();
// lista.add(saida);
// }
}
if(lista.isEmpty()) {
mensagem = ResponseEntity.status(HttpStatus.OK).body(obterMensagem(-1, "Não há registros!"));
}
else {
mensagem = ResponseEntity.status(HttpStatus.OK).body(obterMensagem(0, "Sucesso!"));
}
LOGGER.info("Finalizado método consultarCodigoBarrasPorCnpj");
}
catch(Exception e) {
LOGGER.error(e);
mensagem = ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR)
.body(obterMensagem(-1, "Falha no servidor!"));
}
finally {
fecharConexao();
}
return lista;
}
Att,