package fi.arcusys.koku.common.service; import java.util.Date; import java.util.List; import fi.arcusys.koku.common.service.datamodel.Consent; import fi.arcusys.koku.common.service.datamodel.User; import fi.arcusys.koku.common.service.dto.ConsentDTOCriteria; import fi.arcusys.koku.common.service.dto.ConsentExtDtoCriteria; /** * DAO interface for CRUD operations with 'Consent' Entity * * @author Dmitry Kudinov (dmitry.kudinov@arcusys.fi) * Aug 23, 2011 */ public interface ConsentDAO extends AbstractEntityDAO<Consent> { /** * @param orCreateUser * @param startNum * @param maxNum * @return */ List<Consent> getAssignedConsents(final User user, final int startNum, final int maxNum); /** * @param orCreateUser * @return */ Long getTotalAssignedConsents(User user); /** * @param replier * @param startNum * @param i * @return */ List<Consent> getProcessedConsents(User user, ConsentDTOCriteria criteria, int startNum, int maxNum); /** * @param orCreateUser * @return */ Long getTotalProcessedConsents(final User user, ConsentDTOCriteria criteria); /** * @param dtoCriteria * @return */ List<Consent> searchConsents(ConsentExtDtoCriteria dtoCriteria); /** * @param date * @return */ List<Consent> getOpenConsentsByReplyTillDate(final Date replyTill); }