EN · DE · RU · FR · ES

#443: KostZuweisungDao.java

projectforge-business/src/main/java/org/projectforge/business/fibu/kost/KostZuweisungDao.java Type: Java · Role: Data Access Object · Source: projectforge-business/src/main/java/org/projectforge/business/fibu/kost/KostZuweisungDao.java 109 lines · 52 code · 46 comments · 11 blank
Data Access Object for KostZuweisung entities. Extends BaseDao to provide CRUD operations, Hibernate Search queries, and business-logic-level data access.

Code Structure

Package: org.projectforge.business.fibu.kost

Classes: KostZuweisungDao

Extends: BaseDao

Methods (6): hasUserSelectAccess, hasUserSelectAccess, hasAccess, setKost1, setKost2, newInstance

Fields (2): kost1Dao, kost2Dao

Imports: 6 packages

Source Code (abridged)

package org.projectforge.business.fibu.kost;

import org.projectforge.business.user.ProjectForgeGroup;
import org.projectforge.framework.access.OperationType;
import org.projectforge.framework.persistence.api.BaseDao;
import org.projectforge.framework.persistence.user.entities.PFUserDO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class KostZuweisungDao extends BaseDao<KostZuweisungDO>
{
  @Autowired
  private Kost1Dao kost1Dao;

  @Autowired
  private Kost2Dao kost2Dao;

  public KostZuweisungDao()
  {
    super(KostZuweisungDO.class);
  }

  /**
   * User must member of group finance or controlling.
   *
   * @see org.projectforge.framework.persistence.api.BaseDao#hasSelectAccess()
   */
  @Override
  public boolean hasUserSelectAccess(final PFUserDO user, final boolean throwException)
  {
    return accessChecker.isUserMemberOfGroup(user, throwException, ProjectForgeGroup.FINANCE_GROUP,
        ProjectForgeGroup.CONTROLLING_GROUP);
  }

  /**
   * @see org.projectforge.framework.persistence.api.BaseDao#hasSelectAccess(PFUserDO,
   *      org.projectforge.core.ExtendedBaseDO, boolean)
   * @see #hasUserSelectAccess(PFUserDO, boolean)
   */
  @Override
  public boolean hasUserSelectAccess(final PFUserDO user, final KostZuweisungDO obj, final boolean throwException)
  {
    return hasUserSelectAccess(user, throwException);
  }

  /**
   * User must member of group finance.
   *
   * @see org.projectforge.framework.persistence.api.BaseDao#hasAccess(Object, OperationType)
   */
  @Override
  public boolean hasAccess(final PFUserDO user, final KostZuweisungDO obj, final KostZuweisungDO oldObj,
      final OperationType operationType,
      final boolean throwException)
  {
    return accessChecker.isUserMemberOfGroup(user, throwException, ProjectForgeGroup.FINANCE_GROUP);
  }

  /**
   * @param kostZuweisung
   * @param kost1Id If null, then kost1 will be set to null;
   * @see BaseDao#findOrLoad(Long)
   */
  public void setKost1(final KostZuweisungDO kostZuweisung, Long kost1Id)
  {
    Kost1DO kost1 = kost1Dao.findOrLoad(kost1Id);
    kostZuweisung.setKost1(kost1);
  }

  /**
   * @param kostZuweisung
   * @see BaseDao#findOrLoad(Long)
   */
  public void setKost2(final KostZuweisungDO kostZuweisung, Long kost2Id)
  {
    Kost2DO kost2 = kost2Dao.findOrLoad(kost2Id);
    kostZuweisung.setKost2(kost2);
  }

  @Override
  public KostZuweisungDO newInstance()
  {
    return new KostZuweisungDO();
  }
}

Git History

868d6abb7 2025 -> 2026
63081666f Source file headers: 2024-> 2025.
1b50060c3 BaseDao: renamed: get -> find, save -> insert, getList -> select, load -> select
4c04cfd65 MAJOR-CHANGE! Migration of integer id's to Long id's (including fk's etc.)
5bafe7941 @Repository -> @Service. @Transactional-Annotations removed.