Added missing boolean values to dialectProvider

This commit is contained in:
Jan 2026-01-27 10:43:40 +01:00
parent 5b2018c9e0
commit 48ce77dad3
5 changed files with 22 additions and 13 deletions

View file

@ -294,11 +294,11 @@ public class NodeRepository {
} }
if (nodeType.equals(NodeType.SOURCE)) { if (nodeType.equals(NodeType.SOURCE)) {
queryBuilder.append("is_source = true"); queryBuilder.append("is_source = ").append(dialectProvider.getBooleanTrue());
} else if (nodeType.equals(NodeType.DESTINATION)) { } else if (nodeType.equals(NodeType.DESTINATION)) {
queryBuilder.append("is_destination = true"); queryBuilder.append("is_destination = ").append(dialectProvider.getBooleanTrue());
} else if (nodeType.equals(NodeType.INTERMEDIATE)) { } else if (nodeType.equals(NodeType.INTERMEDIATE)) {
queryBuilder.append("is_intermediate = true"); queryBuilder.append("is_intermediate = ").append(dialectProvider.getBooleanTrue());
} }
} }
@ -309,10 +309,12 @@ public class NodeRepository {
} else { } else {
queryBuilder.append(" AND "); queryBuilder.append(" AND ");
} }
queryBuilder.append("is_deprecated = false"); queryBuilder.append("is_deprecated = ").append(dialectProvider.getBooleanFalse());
} }
queryBuilder.append(" ").append(dialectProvider.buildPaginationClause(limit, 0)); // MSSQL requires ORDER BY before OFFSET
queryBuilder.append(" ORDER BY id ");
queryBuilder.append(dialectProvider.buildPaginationClause(limit, 0));
Object[] paginationParams = dialectProvider.getPaginationParameters(limit, 0); Object[] paginationParams = dialectProvider.getPaginationParameters(limit, 0);
parameters.add(paginationParams[0]); parameters.add(paginationParams[0]);
parameters.add(paginationParams[1]); parameters.add(paginationParams[1]);
@ -323,7 +325,7 @@ public class NodeRepository {
public List<Node> listAllNodes(boolean onlySources) { public List<Node> listAllNodes(boolean onlySources) {
StringBuilder queryBuilder = new StringBuilder("SELECT * FROM node"); StringBuilder queryBuilder = new StringBuilder("SELECT * FROM node");
if (onlySources) { if (onlySources) {
queryBuilder.append(" WHERE is_source = true"); queryBuilder.append(" WHERE is_source = ").append(dialectProvider.getBooleanTrue());
} }
queryBuilder.append(" ORDER BY id"); queryBuilder.append(" ORDER BY id");

View file

@ -145,7 +145,7 @@ public class CountryPropertyRepository {
@Transactional @Transactional
public List<PropertyDTO> listPropertiesByCountryId(Integer id) { public List<PropertyDTO> listPropertiesByCountryId(Integer id) {
String query = """ String query = """
SELECT type.name as name, type.data_type as dataType, SELECT type.name as name, type.data_type as dataType,
type.external_mapping_id as externalMappingId, type.external_mapping_id as externalMappingId,
type.validation_rule as validationRule, type.validation_rule as validationRule,
@ -160,7 +160,8 @@ public class CountryPropertyRepository {
LEFT JOIN country_property AS cp ON cp.country_property_type_id = type.id AND cp.country_id = ? LEFT JOIN country_property AS cp ON cp.country_property_type_id = type.id AND cp.country_id = ?
LEFT JOIN property_set AS ps ON ps.id = cp.property_set_id AND ps.state IN ('DRAFT', 'VALID') LEFT JOIN property_set AS ps ON ps.id = cp.property_set_id AND ps.state IN ('DRAFT', 'VALID')
GROUP BY type.id, type.name, type.data_type, type.external_mapping_id, type.validation_rule GROUP BY type.id, type.name, type.data_type, type.external_mapping_id, type.validation_rule
HAVING draftValue IS NOT NULL OR validValue IS NOT NULL; HAVING MAX(CASE WHEN ps.state = 'DRAFT' THEN cp.property_value END) IS NOT NULL
OR MAX(CASE WHEN ps.state = 'VALID' THEN cp.property_value END) IS NOT NULL;
"""; """;

View file

@ -29,11 +29,12 @@ public class PackagingDimensionRepository {
@Transactional @Transactional
public Optional<PackagingDimension> getById(Integer id) { public Optional<PackagingDimension> getById(Integer id) {
String query = """ String query = String.format("""
SELECT id, displayed_dimension_unit, displayed_weight_unit, width, length, height, SELECT id, displayed_dimension_unit, displayed_weight_unit, width, length, height,
weight, content_unit_count, type, is_deprecated weight, content_unit_count, type, is_deprecated
FROM packaging_dimension FROM packaging_dimension
WHERE packaging_dimension.id = ? AND packaging_dimension.is_deprecated = false"""; WHERE packaging_dimension.id = ? AND packaging_dimension.is_deprecated = %s""",
dialectProvider.getBooleanFalse());
//TODO: what if i need to get deprecated materials? //TODO: what if i need to get deprecated materials?

View file

@ -360,7 +360,7 @@ public class PremiseRepository {
} }
String placeholders = String.join(",", Collections.nCopies(premiseIds.size(), "?")); String placeholders = String.join(",", Collections.nCopies(premiseIds.size(), "?"));
String query = "UPDATE premise SET material_cost = null, is_fca_enabled = false, oversea_share = null WHERE id IN (" + placeholders + ")"; String query = "UPDATE premise SET material_cost = null, is_fca_enabled = " + dialectProvider.getBooleanFalse() + ", oversea_share = null WHERE id IN (" + placeholders + ")";
jdbcTemplate.update(query, premiseIds.toArray()); jdbcTemplate.update(query, premiseIds.toArray());
} }

View file

@ -105,10 +105,15 @@ public class PropertyRepository {
LEFT JOIN system_property AS sp ON sp.system_property_type_id = type.id LEFT JOIN system_property AS sp ON sp.system_property_type_id = type.id
LEFT JOIN property_set AS ps ON ps.id = sp.property_set_id AND ps.state IN (?, ?) LEFT JOIN property_set AS ps ON ps.id = sp.property_set_id AND ps.state IN (?, ?)
GROUP BY type.id, type.name, type.data_type, type.external_mapping_id, type.validation_rule, type.description, type.property_group, type.sequence_number GROUP BY type.id, type.name, type.data_type, type.external_mapping_id, type.validation_rule, type.description, type.property_group, type.sequence_number
HAVING draftValue IS NOT NULL OR validValue IS NOT NULL ORDER BY type.property_group , type.sequence_number; HAVING MAX(CASE WHEN ps.state = ? THEN sp.property_value END) IS NOT NULL
OR MAX(CASE WHEN ps.state = ? THEN sp.property_value END) IS NOT NULL
ORDER BY type.property_group , type.sequence_number;
"""; """;
return jdbcTemplate.query(query, new PropertyMapper(), ValidityPeriodState.DRAFT.name(), ValidityPeriodState.VALID.name(), ValidityPeriodState.DRAFT.name(), ValidityPeriodState.VALID.name()); return jdbcTemplate.query(query, new PropertyMapper(),
ValidityPeriodState.DRAFT.name(), ValidityPeriodState.VALID.name(),
ValidityPeriodState.DRAFT.name(), ValidityPeriodState.VALID.name(),
ValidityPeriodState.DRAFT.name(), ValidityPeriodState.VALID.name());
} }