zjh
2025-02-21 2c785c3d4513daea9deb5c7edbb17a9f17111d25
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
84
85
86
87
88
package com.ltkj.tduck.domain;
 
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import lombok.Data;
import lombok.experimental.Accessors;
 
import javax.validation.constraints.NotBlank;
import java.util.List;
import java.util.Set;
 
/**
 * 表单逻辑(UserFormLogic)表实体类
 *
 * @author smalljop
 * @since 2020-05-01 13:36:27
 */
@Data
@Accessors(chain = true)
@TableName(value = "fm_user_form_logic", autoResultMap = true)
public class UserFormLogicEntity {
    /**
     * 表单key
     */
    @NotBlank(message = "formKey不能为空")
    private String formKey;
 
 
    @TableField(typeHandler = JacksonTypeHandler.class)
    private List<Definition> scheme;
 
    /**
     * 逻辑定义对象
     */
    @Data
    public static class Definition {
 
        /**
         * 触发内容
         */
        private Set<Trigger> triggerList;
        /**
         * 条件
         */
        private Set<Condition> conditionList;
    }
 
 
    @Data
    public static class Trigger {
        /**
         * 表单项Id
         */
        private String formItemId;
        /**
         * 类型
         */
        private String type = "show";
    }
 
    /**
     * 条件
     */
    @Data
    public static class Condition {
        /**
         * 表单项Id
         */
        private String formItemId;
        /**
         * 表达式
         */
        private String expression;
        /**
         * 选项
         */
        private Object optionValue;
 
 
        /**
         * AND OR
         */
        private String relation;
 
    }
 
}