update service

This commit is contained in:
kochetkov 2024-09-25 09:29:13 +03:00
parent d109deed13
commit 5603208f3c

View file

@ -143,11 +143,12 @@ public class RequestService {
}
private String buildSqlQuery(SqlRequest request, String ids) {
StringBuilder extraConditionsBuilder = new StringBuilder();
String endpointArguments = " (" + Arrays.stream(ids.split(","))
.map(id -> "'" + id.trim() + "'")
.collect(Collectors.joining(", ")) + ")";
String requestURL = request.getRequestURL();
if (request.getRequestArguments() != null && !request.getRequestArguments().isEmpty()) {
for (RequestArgument argument : request.getRequestArguments()) {
@ -158,14 +159,11 @@ public class RequestService {
List<String> result = fetchFileListFromDatabaseSQL(connection, query);
if (result != null && !result.isEmpty()) {
String resultSet = String.join(", ", result.stream()
.map(s -> "'" + s + "'")
.toArray(String[]::new));
extraConditionsBuilder.append(" OR ")
.append(argument.getId())
.append(" IN (")
.append(resultSet)
.append(")");
String resultSet = " (" + result.stream()
.map(s -> "'" + s.trim() + "'")
.collect(Collectors.joining(", ")) + ")";
requestURL = requestURL.replace("${" + argument.getId() + "}", resultSet);
}
}
catch (SQLException e) {
@ -175,10 +173,8 @@ public class RequestService {
}
}
String extraConditions = extraConditionsBuilder.toString();
return request.getRequestURL()
return requestURL
.replace("${DB}", request.getSqlConnectionParams().getJdbcDatabase())
.replace("${extraConditions}", extraConditions)
.replace("${endpointArguments}", endpointArguments);
}