“mitao”
2026-01-21 adf2dbafcd4b1c049017371bdcfcf1cad6017abe
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
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<Problem, ProblemDto> {
 
    /**
     * 获取问题列表
     * @param hierarchyId 体系ID
     * @param hierarchyPaths 体系路径列表
     * @param keyword 关键词
     * @param pageReq 分页请求
     * @return 问题列表
     */
    PageResp<ProblemDto> list(Integer hierarchyId, List<String> hierarchyPaths, String keyword, PageReq pageReq);
 
    /**
     * 获取问题列表
     * @param hierarchyId 体系ID
     * @param hierarchyPaths 体系路径列表
     * @param keyword 关键词
     * @param pageReq 分页请求
     * @return 问题列表
     */
    PageResp<EntityRef> listAbstracts(Integer hierarchyId, List<String> hierarchyPaths, String keyword, PageReq pageReq);
 
    /**
     * 获取问题列表
     * @param hierarchyId 体系ID
     * @param hierarchyPaths 体系路径列表
     * @return 问题列表
     */
    List<Integer> listIds(Integer hierarchyId, List<String> hierarchyPaths);
 
    /**
     * 获取问题列表
     * @param hierarchyId 体系ID
     * @return 问题列表
     */
    List<Integer> 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<Problem> findProblems(Integer hierarchyId,
                              List<String> hierarchyPaths,
                              List<Integer> problemIds);
 
    /**
     * 删除问题
     * @param hierarchyId 体系ID
     * @param hierarchyPaths 体系路径列表
     */
    void deleteByHierarchy(Integer hierarchyId, List<String> hierarchyPaths);
 
    /**
     * 获取问题列表
     * @param problem 问题
     * @return 问题列表
     */
    List<String> getHierarchyNames(Problem problem);
}