package com.estate.expert.admin.service; import com.estate.expert.admin.domain.common.EntityRef; import com.estate.expert.admin.domain.common.request.PageReq; import com.estate.expert.admin.domain.common.response.PageResp; import com.estate.expert.admin.domain.standard.problem.Problem; import com.estate.expert.admin.domain.standard.problem.ProblemDto; import com.estate.expert.admin.service.common.CrudServiceBase; import java.util.List; /** * 问题服务 */ public interface ProblemService extends CrudServiceBase { /** * 获取问题列表 * @param hierarchyId 体系ID * @param hierarchyPaths 体系路径列表 * @param keyword 关键词 * @param pageReq 分页请求 * @return 问题列表 */ PageResp list(Integer hierarchyId, List hierarchyPaths, String keyword, PageReq pageReq); /** * 获取问题列表 * @param hierarchyId 体系ID * @param hierarchyPaths 体系路径列表 * @param keyword 关键词 * @param pageReq 分页请求 * @return 问题列表 */ PageResp listAbstracts(Integer hierarchyId, List hierarchyPaths, String keyword, PageReq pageReq); /** * 获取问题列表 * @param hierarchyId 体系ID * @param hierarchyPaths 体系路径列表 * @return 问题列表 */ List listIds(Integer hierarchyId, List hierarchyPaths); /** * 获取问题列表 * @param hierarchyId 体系ID * @return 问题列表 */ List findAllProblemIds(Integer hierarchyId); /** * 克隆问题 * @param hierarchyId 体系ID * @param newHierarchyId 新体系ID */ void cloneProblems(Integer hierarchyId, Integer newHierarchyId); /** * 获取问题列表 * @param hierarchyId 体系ID * @param hierarchyPaths 体系路径列表 * @param problemIds 问题ID列表 * @return 问题列表 */ List findProblems(Integer hierarchyId, List hierarchyPaths, List problemIds); /** * 删除问题 * @param hierarchyId 体系ID * @param hierarchyPaths 体系路径列表 */ void deleteByHierarchy(Integer hierarchyId, List hierarchyPaths); /** * 获取问题列表 * @param problem 问题 * @return 问题列表 */ List getHierarchyNames(Problem problem); }