ludc
2023-12-07 80da77d96adf4acbf25ea5c8614ae485bc02da2d
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
package com.vci.ubcs.code.service;
 
import com.google.protobuf.ServiceException;
import com.vci.ubcs.code.dto.CodeExportAttrDTO;
import com.vci.ubcs.code.dto.CodeOrderDTO;
import com.vci.ubcs.code.vo.pagemodel.CodeClassifyVO;
import com.vci.ubcs.code.vo.pagemodel.CodeImProtRusultVO;
import com.vci.ubcs.code.vo.pagemodel.CodeImportTemplateVO;
import com.vci.ubcs.code.vo.pagemodel.CodeImprotSaveDatVO;
import com.vci.ubcs.code.vo.webserviceModel.attrmap.DataObjectVO;
import com.vci.ubcs.code.vo.webserviceModel.result.xml.XMLResultDataObjectDetailDO;
import com.vci.ubcs.starter.web.pagemodel.DataGrid;
import org.springblade.core.tool.api.R;
 
import java.io.File;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
 
public interface MdmIOService {
    List<CodeImportTemplateVO> gridclassifys(String redisOid);
 
    /**
     * 生成导入的文件
     * @param codeClassifyOid 分类的主键
     * @param isHistory 是否历史数据导入
     * @return excel的文件地址
     */
    String createImportExcel(String codeClassifyOid,boolean isHistory);
 
    /**
     * 生成批量修改导入的文件
     * @param codeClassifyOid 分类的主键
     * @return excel的文件地址
     */
    String downloadImportExcelBatchEdit(String codeClassifyOid);
 
    /**
     * 生成导入的文件
     * @param codeClassifyOid 分类的主键
     * @return excel的文件地址
     */
    String downloadTopImportExcel(String codeClassifyOid);
 
    /**
     * 批量申请编码数据
     * @param orderDTO 编码申请信息,必须包含分类主键和码段的信息
     * @param file excel文件的信息
     * @return 有错误信息的excel
     */
    CodeImProtRusultVO batchImportCode(CodeOrderDTO orderDTO, File file) throws Exception;
 
    /***
     *批量申请编码数据
     * @param codeClassifyOid 分类的主键
     * @param classifyAttr 分类路径使用的属性
     * @param file excel文件的信息
     * @return 有错误信息的excel
     */
    CodeImProtRusultVO batchTopImportCode(String codeClassifyOid,String classifyAttr, File file);
 
    /**
     * 导入历史数据
     * @param codeClassifyOid 分类的主键
     * @param classifyAttr 分类路径使用的属性
     * @param file excel文件的信息
     * @return 有错误信息的excel
     */
    CodeImProtRusultVO batchImportHistoryData(String codeClassifyOid,String classifyAttr, File file) throws Throwable;
 
    /**
     * 导入批量编辑数据
     * @param codeClassifyOid 分类的主键
     * @param classifyAttr 分类路径使用的属性
     * @param file excel文件的信息
     * @return 有错误信息的excel
     */
    CodeImProtRusultVO batchImportEdit(String codeClassifyOid,String classifyAttr, File file) throws Throwable;
 
    /***
     * 从redis缓存里获取到导入的数据
     * @param codeClassifyOid
     * @param redisOid
     * @return
     */
    DataGrid<Map<String, String>> gridDatas(String codeClassifyOid, String redisOid);
 
    /***
     * 从redis缓存里获取到导入的数据
     * @param dataOid
     * @param redisOid
     * @return
     */
    DataGrid<Map<String, String>> gridRowResemble(String dataOid, String redisOid);
 
    /**
     * 导出主题库的数据
     * @param exportAttrDTO 导出相关的配置,必须要有主题库分类的主键
     * @return 导出的excel的文件
     */
    String exportCode(CodeExportAttrDTO exportAttrDTO);
 
    /**
     * 批量申请
     * @param codeImprotSaveDatVOList
     * @param isImprot
     * @return
     */
     R batchImportData(List<CodeImprotSaveDatVO> codeImprotSaveDatVOList, String classifyAttr, boolean isImprot);
 
    /***
     *
     * @param redisOid redisid
     * @param codeClassifyOid 存储规则的oid
     * @param dataOids  所需删除的数据
     * @return
     */
    R deleteDatas(String redisOid, String codeClassifyOid, String dataOids);
 
 
    void batchSyncEditDatas(CodeClassifyVO codeClassifyVO, DataObjectVO dataObjectVO, LinkedList<XMLResultDataObjectDetailDO> resultDataObjectDetailDOs,boolean isCodeOrGroupCode);
 
    /**
     * 集成批量申请数据
     * @param orderDTO 分类的主键
     * @param dataObjectVO 数据信息
     * @param resultDataObjectDetailDOs 错误信息
     * @return 有错误信息的excel
     */
    void batchSyncApplyCode(CodeOrderDTO orderDTO, DataObjectVO dataObjectVO, LinkedList<XMLResultDataObjectDetailDO> resultDataObjectDetailDOs,boolean isCodeOrGroupCode);
 
    /***
     * 申请集团码接口
     * @param idList 数据oid
     * @param btmName 业务类型
     * @param operationType
     */
    void sendApplyGroupcode(List<String> idList,String btmName,String operationType);
 
    /***
     * 导出集团码模板
     * @param classOid
     * @return
     */
    String exportGroupCodeExcel(String classOid) throws ServiceException;
 
    /**
     * 集团码导入
     * @param codeClassifyOid
     * @param file
     * @return
     * @throws ServiceException
     */
    public String importGroupCode(String codeClassifyOid, File file) throws Throwable;
}