liusheng
2026-10-12 0c1f8c479065739f3c7a5126de8e667035d00b58
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
package com.ruoyi.satisfaction.domain.row;
 
import lombok.Data;
 
import java.util.List;
 
/**
 * 满意度统计取「满意度分类 / 模板问题」时的查询条件。
 * <p>
 * 为什么单独定义:原实现的入参复用了 smartor 的实体({@code IvrLibaScriptAssort} /
 * {@code SvyLibScriptCategory} / {@code IvrLibaTemplateScript} / {@code SvyLibTemplateScriptVO}),
 * 这些实体不能搬进本模块。满意度实际只用到下面这几个条件,故收敛为一个查询对象。
 * <p>
 * 各条件与原来逐字对应:
 * <ul>
 *   <li>{@code orgid} —— 按机构过滤分类({@code and orgid = #{orgid}});</li>
 *   <li>{@code type} —— 按分类类型过滤,原实现是 {@code like concat('%', type, '%')},
 *       满意度传 {@code "myd"};</li>
 *   <li>{@code scriptAssortids} —— 按语音分类 id 取问题({@code script_assortid in (...)});</li>
 *   <li>{@code scriptCategoryids} —— 按问卷分类 id 取问题({@code categoryid in (...)});</li>
 *   <li>{@code dimensionList} —— 按维度取问题。原实现:非空时 {@code dimension in (...)},
 *       <b>为空时</b>语音侧拼 {@code dimension IS NOT NULL}、问卷侧不拼该条件(口径不同,必须保留)。</li>
 * </ul>
 */
@Data
public class SatisfactionScriptQuery {
 
    /**
     * 机构 id
     */
    private String orgid;
 
    /**
     * 分类类型(满意度固定传 "myd")
     */
    private String type;
 
    /**
     * 语音分类 id 列表({@code ivr_liba_script_assort.id})
     */
    private List<Long> scriptAssortids;
 
    /**
     * 问卷分类 id 列表({@code svy_lib_script_category.id})
     */
    private List<Long> scriptCategoryids;
 
    /**
     * 维度列表
     */
    private List<String> dimensionList;
}