CampaignValueFilterAdapter.ktAnnotationen: param
Klassen: CampaignValueFilterAdapter
Obertyp(en): CustomResultFilter
Funktionen (1): match
Eigenschaften (3): addressFilter, address, tempList
Importe: 3 Pakete
Paket: org.projectforge.plugins.marketing.rest
package org.projectforge.plugins.marketing.rest
import org.projectforge.business.address.AddressDO
import org.projectforge.framework.persistence.api.impl.CustomResultFilter
import org.projectforge.plugins.marketing.AddressCampaignValueDO
/**
* Generischer Adapter, der jeden CustomResultFilter<AddressDO> umschließt, um mit AddressCampaignValueDO zu arbeiten.
* Dies ermöglicht die Wiederverwendung vorhandener Adressfilter (wie FavoritesResultFilter, DoubletsResultFilter)
* mit Adresskampagnenwerten, ohne die Filterlogik zu duplizieren.
*
* @param addressFilter Der zu umschließende Adressfilter
*/
class CampaignValueFilterAdapter(
private val addressFilter: CustomResultFilter<AddressDO>
) : CustomResultFilter<AddressCampaignValueDO> {
/**
* Delegiert die Entscheidung über die Übereinstimmung an den umschlossenen Adressfilter.
* Gibt false zurück, wenn der Kampagnenwert keine zugehörige Adresse hat.
*/
override fun match(list: MutableList<AddressCampaignValueDO>, element: AddressCampaignValueDO): Boolean {
val address = element.address ?: return false
val tempList = mutableListOf<AddressDO>()
return addressFilter.match(tempList, address)
}
}
868d6abb7 2025 -> 2026 594a957dc WIP: Adresskampagnenwerte