CampaignValueFilterAdapter.ktAnnotations : param
Classes : CampaignValueFilterAdapter
Supertype(s) : CustomResultFilter
Fonctions (1) : match
Propriétés (3) : addressFilter, address, tempList
Importations : 3 paquetages
Paquetage : 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
/**
* Adaptateur générique qui encapsule tout CustomResultFilter<AddressDO> pour fonctionner avec AddressCampaignValueDO.
* Cela permet de réutiliser les filtres d'adresse existants (comme FavoritesResultFilter, DoubletsResultFilter)
* avec les valeurs de campagne d'adresse sans dupliquer la logique de filtrage.
*
* @param addressFilter Le filtre d'adresse à encapsuler
*/
class CampaignValueFilterAdapter(
private val addressFilter: CustomResultFilter<AddressDO>
) : CustomResultFilter<AddressCampaignValueDO> {
/**
* Délègue la décision de correspondance au filtre d'adresse encapsulé.
* Retourne false si la valeur de campagne n'a pas d'adresse associée.
*/
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 : Valeurs de campagne d'adresse