LicenseDao.javaPaquetage : org.projectforge.plugins.licensemanagement
Classes : LicenseDao
Étend : BaseDao
Méthodes (4) : setOwners, getSortedOwners, getSortedOwnernames, newInstance
Champs (1) : usersProvider
Importations : 9 paquetages
package org.projectforge.plugins.licensemanagement;
import org.apache.commons.collections4.CollectionUtils;
import org.projectforge.business.user.UserDao;
import org.projectforge.common.StringHelper;
import org.projectforge.framework.persistence.api.BaseDao;
import org.projectforge.framework.persistence.user.entities.PFUserDO;
import org.projectforge.web.user.UsersProvider;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Collection;
/**
*
* @author Kai Reinhard (k.reinhard@micromata.de)
*
*/
@Service
public class LicenseDao extends BaseDao<LicenseDO>
{
private final UsersProvider usersProvider;
@Autowired
UserDao userDao;
public LicenseDao()
{
super(LicenseDO.class);
userRightId = LicensemanagementPluginUserRightsId.PLUGIN_LICENSE_MANAGEMENT;
usersProvider = new UsersProvider(userDao);
}
/**
* Veuillez noter : seule la chaîne license.owners sera modifiée (mais pas sauvegardée) !
*
* @param license
* @param owners Liste complète de tous les propriétaires (identifiants utilisateur) assignés à cette licence.
* @return
*/
public void setOwners(final LicenseDO license, final Collection<PFUserDO> owners)
{
license.setOwnerIds(usersProvider.getUserIds(owners));
}
public Collection<PFUserDO> getSortedOwners(final LicenseDO license)
{
return usersProvider.getSortedUsers(license.getOwnerIds());
}
public String getSortedOwnernames(final LicenseDO license)
{
final Collection<PFUserDO> sortedOwners = getSortedOwners(license);
if (CollectionUtils.isEmpty(sortedOwners)) {
return "";
}
final StringBuilder buf = new StringBuilder();
boolean first = true;
for (final PFUserDO owner : sortedOwners) {
first = StringHelper.append(buf, first, owner.getFullname(), ", ");
}
return buf.toString();
}
@Override
public LicenseDO newInstance()
{
return new LicenseDO();
}
}
868d6abb7 2025 -> 2026 63081666f En-têtes des fichiers source : 2024 -> 2025. a72903e36 *.java, *.kt : StringBuffer -> StringBuilder. 5bafe7941 @Repository -> @Service. @Transactional-Annotations supprimées. b6092df09 Copyright 2023 -> 2024