У меня есть построитель запросов вроде этого:
@Override
public List<ComplementoMaterial> findSomething(String codigoPrestador, String documentoPrestador, String numeroLote, String codDocumento, List<String> codigosServicos) {
return builder().query(sqlComplementos())
.set("codPrestador", codigoPrestador)
.set("docPrestador", documentoPrestador)
.set("numeroLote", numeroLote)
.set("codDocumento", codDocumento)
.set("codServicos", codigosServicos)
.mapper(new RowMapper<ComplementoMaterial>() {
@Override
public ComplementoMaterial mapRow(ResultSet rs, int rowNum) throws SQLException {
ComplementoMaterial c = new ComplementoMaterial();
c.setCodigoServico(rs.getLong("COD_SERVICO"));
c.setRegistroAnvisa(rs.getString("COD_MATERIAL"));
c.setReferencia(rs.getString("COD_REF_MATERIAL"));
c.setAutorizacaoFuncionamento(rs.getString("NUM_AUT_FAT"));
return c;
}
}).executeQuery();
}
Когда я устанавливаю codigosServicos , я sh применяю к нему подстроку, поэтому для каждого индекса мне нужно взять сразу после 4-го символа этой строки. Например:
Если в codigoServicos у меня есть следующий список [«Майкл», «Джексон», «Леброн»], мне нужно, чтобы запрос принимал только [«аэль», «сын», «на "].
Я уже пытался добавить только codigoServicos.substring (4), но поскольку он установлен как List, это невозможно. И я также не могу сломать набор, чтобы добавить для l oop.
Любая идея мне поможет?
Tks