dangsn
2024-12-03 d0ae279ff3b83358d1c07f4481a041c4ad335026
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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
package com.vci.web.service;
 
import com.vci.corba.common.PLException;
import com.vci.corba.omd.atm.AttributeDef;
import com.vci.dto.OsAttributeDTO;
import com.vci.pagemodel.OsAttributeVO;
import com.vci.starter.web.pagemodel.*;
 
import java.io.File;
import java.util.Collection;
import java.util.List;
import java.util.Map;
 
/**
 * 属性服务
 * @author weidy
 * @date 2021-2-15
 */
public interface OsAttributeServiceI extends OsBaseServiceI{
 
    /**
     * 获取树状
     * @param treeQueryObject
     * @return
     */
    List<Tree> getTreeAttributesByBtmName(TreeQueryObject treeQueryObject);
    /**
     * 获取默认的属性
     * @return 默认的属性列表
     */
    List<OsAttributeVO> getDefaultAttributeVOs();
 
    /**
     * 设置默认的属性
     * @param defaultAttributeVOs 默认的属性列表
     */
    void setDefaultAttributeVOs(List<OsAttributeVO> defaultAttributeVOs);
 
    /**
     * 获取的默认属性的映射
     * @return 默认的属性映射
     */
    Map<String, OsAttributeVO> getDefaultAttributeVOMap();
 
    /**
     * 设置默认的属性的映射
     * @param defaultAttributeVOMap 默认的属性映射
     */
    void setDefaultAttributeVOMap(Map<String, OsAttributeVO> defaultAttributeVOMap);
 
    /**
     * 查询所有的属性
     * @return 属性的显示对象
     */
    List<OsAttributeVO> selectAllAttribute();
 
    /**
     * 查询所有的属性映射
     * @return key是属性的英文名称小写,value是属性的显示对象
     */
    Map<String,OsAttributeVO> selectAllAttributeMap();
 
    /**
     * 根据多个属性名称查询属性
     * @param attrNames
     * @return
     */
    List<OsAttributeVO> getByAttributeNames(String[] attrNames) throws PLException;
 
    /**
     * 属性的数据对象转换为显示对象
     * @param attribItems 数据对象
     * @return 显示对象
     */
    List<OsAttributeVO> attributeDO2VOs(Collection<AttributeDef> attribItems);
 
    /**
     * 属性的数据对象转换为显示对象
     * @param attribItem 数据对象
     * @return 显示对象
     */
    OsAttributeVO attributeDO2VO(AttributeDef attribItem);
 
    /**
     * 属性的显示对象转换为数据对象
     * @param attributeVO 显示对象
     * @return 数据对象
     */
    AttributeDef attributeVO2DO(OsAttributeVO attributeVO);
 
    /**
     * 使用属性获取对象
     * @param attrCode 属性的英文名称
     * @return 属性的显示对象
     */
    OsAttributeVO getAttr(String attrCode);
 
    /**
     * 使用属性编号获取对象--批量
     * @param attrCodes 属性的英文名称
     * @return 属性的显示对象
     */
    List<OsAttributeVO> listAttrByIds(Collection<String> attrCodes);
 
    /**
     * 使用属性编号获取对象--批量
     * @param attrCodes 属性的英文名称
     * @param attributeVOMap 属性对象
     * @return 属性的显示对象
     */
    List<OsAttributeVO> listAttrByIds(Collection<String> attrCodes, Map<String, OsAttributeVO> attributeVOMap);
 
    /**
     * 批量添加属性
     * @param attribItemList 属性的列表
     */
    void batchAddAttribute(List<AttributeDef> attribItemList);
 
    /**
     * 批量编辑属性
     * @param editAttrList 属性的列表
     */
    void batchEditAttribute(List<AttributeDef> editAttrList);
 
    /**
     * 属性列表
     * @param baseQueryObject 查询对象
     * @return 属性的显示对象
     */
    DataGrid<OsAttributeVO> gridAttribute(BaseQueryObject baseQueryObject);
 
    /**
     * 添加单条属性
     * @param osAttributeDTO
     * @return true成功,false失败
     */
    boolean addAttribute(OsAttributeDTO osAttributeDTO) throws PLException;
 
    /**
     * 修改单条属性
     * @param osAttributeDTO
     * @return true成功,false失败
     */
    boolean updateAttribute(OsAttributeDTO osAttributeDTO) throws PLException;
 
    /**
     * 删除属性
     * @param osAttributeDTOS
     * @return true成功,false失败
     */
    boolean deleteAttributes(List<OsAttributeDTO> osAttributeDTOS) throws PLException;
 
    /**
     * 查看属性的使用范围
     * @param attributeName
     * @return key:属性 ,value使用该属性的业务类型
     */
    List<Map<String,String>> getUsedAttributeList(String attributeName) throws PLException;
 
    /**
     * 导出选中的属性
     * @param exportFileName 导出的文件名
     * @param attrNames 需要导出的属性名称
     * @param flag 控制导出的列名是否和导入模板一致
     * @return
     */
    String exportAttributes(String exportFileName,String attrNames,boolean flag/*控制导出的列名是否和导入模板一致*/) throws PLException;
 
    /**
     * 下载属性导入模板
     * @param exportFileName
     * @return
     * @throws PLException
     */
    String downloadAttributeTemplate(String exportFileName) throws Exception;
 
    /**
     * 导入属性
     * @param file
     * @param isContinue 系统中出现重复是否跳过报错继续执行
     * @return
     */
    BaseResult importAttributes(File file,boolean isContinue/*系统中出现重复是否跳过报错继续执行*/) throws Exception;
 
    /**
     * 是否默认的属性
     * @param attr 属性编号
     * @return true表示是默认属性
     */
    boolean isDefaultAttr(String attr);
 
    /**
     * 根据业务类型/链接类型获取属性信息
     * @param btName 业务类型/链接类型
     * @param typeFlag 0:业务类型,1:链接类型
     * @param isDefault 是否包含默认属性 true:包含,false 不包含
     * @return
     */
    List<OsAttributeVO> getOsAttributeVOSByBtName(String btName,int typeFlag,boolean isDefault)throws Exception;
 
}