|
|
@@ -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<E extends Identifiable> |
|
|
|
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<String, Object>(); |
|
|
|
|
|
|
|
if (value == null) return bulkDeleteWhere(field + " IS NULL", params); |
|
|
|
|
|
|
|
String condition = field + " = :" + field; |
|
|
|
params.put(field, value); |
|
|
|
|
|
|
|
if (notUuid) { |
|
|
|
final var params = new HashMap<String, Object>(); |
|
|
|
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<String, Object> parameters) { |
|
|
|