diff --git a/wizard-server/src/main/java/org/cobbzilla/wizard/dao/AbstractCRUDDAO.java b/wizard-server/src/main/java/org/cobbzilla/wizard/dao/AbstractCRUDDAO.java index 4a3c436..9afb58e 100644 --- a/wizard-server/src/main/java/org/cobbzilla/wizard/dao/AbstractCRUDDAO.java +++ b/wizard-server/src/main/java/org/cobbzilla/wizard/dao/AbstractCRUDDAO.java @@ -8,7 +8,6 @@ package org.cobbzilla.wizard.dao; import lombok.Getter; import lombok.NonNull; import lombok.extern.slf4j.Slf4j; -import org.apache.commons.collections4.map.SingletonMap; import org.cobbzilla.util.reflect.ReflectionUtil; import org.cobbzilla.wizard.api.CrudOperation; import org.cobbzilla.wizard.model.AuditLog; @@ -341,16 +340,19 @@ public abstract class AbstractCRUDDAO public static final String EX_UUID = "__exclude_uuid__"; private int bulkDelete(String field, Object value, boolean notUuid) { - if (value == null) return bulkDeleteWhere(field + " IS NULL", new HashMap<>()); + final var params = new HashMap(); + + if (value == null) return bulkDeleteWhere(field + " IS NULL", params); + + String condition = field + " = :" + field; + params.put(field, value); if (notUuid) { - final var params = new HashMap(); - params.put(field, value); + condition += " AND uuid != :" + EX_UUID; params.put(EX_UUID, value); - return bulkDeleteWhere(field + " = :" + field + " AND uuid != :" + EX_UUID, params); } - return bulkDeleteWhere(field + " = :" + field, new SingletonMap(field, value)); + return bulkDeleteWhere(condition, params); } public int bulkDeleteWhere(@NonNull final String whereClause, @NonNull final Map parameters) {