zm
2020-05-18 a18bfacbf56b401f6e0fdae8710fbca4df8cff77
commit | author | age
a18bfa 1 package com.changhong.epc.parsing.service.autosubmit.info;
Z 2
3 import java.util.List;
4 import java.util.Map;
5
6 import com.changhong.epc.bean.count.format.CpnType;
7 import com.changhong.epc.bean.count.format.FormCpnInfo;
8
9 /**
10  * 表单控件
11  * @author WangYX
12  *
13  */
14 public interface FormCpn extends Map<Object, Object>, Cloneable{
15
16     /**
17      * 表单        (in,out)
18      */
19     String FORM_KEY     = "form";
20     
21     /**
22      * 表单子控件    (in)
23      */
24     String CHILD_CPN     = "child";
25
26     /**
27      * 表单子控件值    (in)
28      */
29     String CHILD_CPN_VAL= "childCpnVal";
30     
31     /**
32      * 触发事件
33      */
34     String FORMULA_KEY    = "formula";
35     
36     /**
37      * 获得表单别名
38      * @return
39      */
40     String getFieldId();
41     
42     /**
43      * 更新表单别名
44      * @param fieldId
45      */
46     void setFieldId(String fieldId);
47     
48     /**
49      * 获得属性
50      * Attribute
51      * 获得子控件
52      * FormCpn
53      */
54     @Override
55     Object get(Object key);
56     
57     /**
58      * 初始化控件
59      * @param formFieldEntity
60      */
61     void init(FormCpnInfo formCpnInfo);
62     
63     /**
64      * 获得属性
65      * @param key
66      * @param row
67      * @return
68      */
69     default Object get(Object key, Integer row){
70         return get(key);
71     }
72
73     /**
74      * 添加属性
75      * key:Attribute
76      * 添加子控件
77      * key:FormCpn
78      * 添加表单
79      * key:Form
80      */
81     @Override
82     Object put(Object key, Object value);    
83     
84     /**
85      * 添加属性
86      * @param key
87      * @param value
88      * @param row
89      * @return
90      */
91     default Object put(Object key, Object value, Integer row){
92         return put(key, value);
93     }
94
95     /**
96      * 添加表单控件监听
97      */
98     void setFormCpnListener(FormCpnListener formCpnListener);
99     
100     /**
101      * 获得表单控件监听器
102      * @return
103      */
104     FormCpnListener getFormCpnListener();
105     
106     /**
107      * 获得控件类型
108      * @return
109      */
110     CpnType getCpnType();
111     
112     /**
113      * 获得父控件
114      * @return
115      */
116     FormCpn getParentCpn();
117     
118     /**
119      * 获得在子表单中的行号
120      * @return
121      */
122     Integer getIndex();
123
124     /**
125      * 获得控件公式
126      * @return
127      */
128     List<FormulaInfo> getFormulas();
129
130     /**
131      * 更新控件公式
132      * @param formulas
133      */
134     void setFormulas(List<FormulaInfo> formulas);
135     
136     /**
137      * 获得控件值
138      * @return
139      */
140     Object getValue();
141 }