package edu.sjtu.infosec.ismp.manager.RAM.dao; import java.util.List; import edu.sjtu.infosec.ismp.manager.RAM.model.AsseInfoPape; import edu.sjtu.infosec.ismp.manager.RAM.model.AsseInfoProj; import edu.sjtu.infosec.ismp.manager.comm.model.page.Page; /** * 数据层 问卷Dao访问接口. * **/ public interface PapeDao { /** * 保存/更新问卷问题 * * @param question * 问卷问题 **/ void saveOrUpdate(AsseInfoPape question); /** * 批量保存/更新问卷问题 * * @param question * 问卷问题 **/ void batchSaveOrUpdate(List questions); /** * 删除问卷问题 * * @param question * 问卷问题 **/ void remove(AsseInfoPape question); /** * 批量删除问卷问题 * * @param questionList * 问卷问题对象列表 **/ void remove(List<AsseInfoPape> questionList); /** * 查询问卷问题 * * @param id * 问卷问题id * @return 问卷问题对象 **/ AsseInfoPape find(Integer id); AsseInfoPape findbySecuId(Integer projId,Integer id); /** * 查询问卷问题数量 * @param asseInfoProj * 测评项目 * @return 问卷问题数量 **/ int getCount(AsseInfoProj asseInfoProj); /** * 查询问卷问题分页记录 * @param page * 分页对象 * @param asseInfoProj * 测评项目 * @return 分页记录列表 **/ List<AsseInfoPape> listAsseInfoPape(Page page,AsseInfoProj asseInfoProj); /** * 查询下一题问题列表 * @param asseInfoPape * 当前问题 * @return 下一题问题列表 **/ List<AsseInfoPape> listNextPapes(AsseInfoPape asseInfoPape); /** * 查询下一题问题 * @param asseInfoPape * 有跳转点的当前问题 * @return 下一题问题 **/ AsseInfoPape getNextJumpAsseInfoPape(AsseInfoPape asseInfoPape); /** * 查询已答问题列表 * @param asseInfoProjId * 项目编号 * @return 已答问题列表 **/ List<AsseInfoPape> listAnsweredPapes(Integer asseInfoProjId); /** * 根据答案查询已答问题列表 * @param asseInfoProjId * 项目编号 * @param answer * 答案 * @return 已答问题列表 **/ List<AsseInfoPape> listPapesByAnswer(Integer asseInfoProjId, String answer); }