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 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> gridDatas(String codeClassifyOid, String redisOid); /*** * 从redis缓存里获取到导入的数据 * @param dataOid * @param redisOid * @return */ DataGrid> gridRowResemble(String dataOid, String redisOid); /** * 导出主题库的数据 * @param exportAttrDTO 导出相关的配置,必须要有主题库分类的主键 * @return 导出的excel的文件 */ String exportCode(CodeExportAttrDTO exportAttrDTO); /** * 批量申请 * @param codeImprotSaveDatVOList * @param isImprot * @return */ R batchImportData(List 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 resultDataObjectDetailDOs,boolean isCodeOrGroupCode); /** * 集成批量申请数据 * @param orderDTO 分类的主键 * @param dataObjectVO 数据信息 * @param resultDataObjectDetailDOs 错误信息 * @return 有错误信息的excel */ void batchSyncApplyCode(CodeOrderDTO orderDTO, DataObjectVO dataObjectVO, LinkedList resultDataObjectDetailDOs,boolean isCodeOrGroupCode); /*** * 申请集团码接口 * @param idList 数据oid * @param btmName 业务类型 * @param operationType */ void sendApplyGroupcode(List idList,String btmName,String operationType); /*** * 导出集团码模板 * @param classOid * @return */ String exportGroupCodeExcel(String classOid) throws ServiceException; }