| | |
| | | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.alibaba.nacos.common.utils.StringUtils; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.vci.ubcs.code.dto.CodeDeleteBatchDTO; |
| | | import com.vci.ubcs.code.dto.CodeOrderDTO; |
| | | import com.vci.ubcs.code.dto.CodeOrderSecDTO; |
| | |
| | | import com.vci.ubcs.code.service.MdmEngineService; |
| | | import com.vci.ubcs.code.service.MdmIOService; |
| | | import com.vci.ubcs.code.vo.pagemodel.*; |
| | | import com.vci.ubcs.omd.vo.BtmTypeVO; |
| | | import com.vci.ubcs.starter.annotation.VciBusinessLog; |
| | | import com.vci.ubcs.starter.revision.model.BaseModel; |
| | | import com.vci.ubcs.starter.revision.model.TreeQueryObject; |
| | | import com.vci.ubcs.starter.util.LocalFileUtil; |
| | | import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject; |
| | | import com.vci.ubcs.starter.web.pagemodel.DataGrid; |
| | | import com.vci.ubcs.starter.web.pagemodel.Tree; |
| | | import com.vci.ubcs.starter.web.pagemodel.*; |
| | | import com.vci.ubcs.starter.web.util.ControllerUtil; |
| | | import com.vci.ubcs.starter.web.util.LangBaseUtil; |
| | | import com.vci.ubcs.starter.web.util.VciBaseUtil; |
| | |
| | | ControllerUtil.writeDataToResponse(response,msg.getBytes(StandardCharsets.UTF_8),null); |
| | | } |
| | | } |
| | | /** |
| | | * 下载批量申请的导入模板 |
| | | * @param codeClassifyOid 分类的主键 |
| | | * @param response 响应对象 |
| | | * @throws IOException 抛出异常 |
| | | */ |
| | | @GetMapping("/downloadTopImportExcel") |
| | | @VciBusinessLog(operateName = "下载批量申请编码的导入模板") |
| | | public void downloadTopImportExcel(String codeClassifyOid,HttpServletResponse response) throws IOException{ |
| | | String excelName = mdmIOService.downloadTopImportExcel(codeClassifyOid); |
| | | try { |
| | | ControllerUtil.writeFileToResponse(response,excelName); |
| | | } catch (Throwable e) { |
| | | //如果出错,把错误信息写到text |
| | | String msg = LangBaseUtil.getErrorMsg(e); |
| | | if(StringUtils.isBlank(msg)){ |
| | | msg = "未知错误"; |
| | | } |
| | | ControllerUtil.writeDataToResponse(response,msg.getBytes(StandardCharsets.UTF_8),null); |
| | | } |
| | | |
| | | |
| | | } |
| | | |
| | | /** |
| | | * 下载历史数据导入模板 |
| | | * @param codeClassifyOid 分类的主键 |
| | | * @param response 响应对象 |
| | | * @throws IOException 抛出异常 |
| | | */ |
| | | @GetMapping("/downloadImportExcelHistory") |
| | | @VciBusinessLog(operateName = "下载历史数据导入模板") |
| | | public void downloadImportExcelHistory(String codeClassifyOid,HttpServletResponse response) throws IOException{ |
| | | String excelName = mdmIOService.createImportExcel(codeClassifyOid,true); |
| | | //String excelName = mdmIOService.downloadTopImportExcel(codeClassifyOid); |
| | | try { |
| | | ControllerUtil.writeFileToResponse(response,excelName); |
| | | } catch (Throwable e) { |
| | | //如果出错,把错误信息写到text |
| | | String msg = LangBaseUtil.getErrorMsg(e); |
| | | if(StringUtils.isBlank(msg)){ |
| | | msg = "未知错误"; |
| | | } |
| | | ControllerUtil.writeDataToResponse(response,msg.getBytes(StandardCharsets.UTF_8),null); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 批量申请编码的信息 |
| | |
| | | // return null; |
| | | } |
| | | |
| | | /** |
| | | * 导入历史数据 |
| | | * @param codeClassifyOid 分类的主键 |
| | | * @param classifyAttr 分类路径使用的属性 |
| | | * @param file 文件的内容 |
| | | */ |
| | | @VciBusinessLog(operateName = "导入编码的历史数据") |
| | | @PostMapping("/batchImportHistoryData") |
| | | public R batchImportHistoryData(String codeClassifyOid, String classifyAttr,MultipartFile file,HttpServletResponse response) throws Throwable { |
| | | String excelFileName = LocalFileUtil.getDefaultTempFolder() + File.separator + file.getOriginalFilename(); |
| | | File file1 = new File(excelFileName); |
| | | try { |
| | | file.transferTo(new File(excelFileName)); |
| | | CodeImProtRusultVO codeImProtRusultVO =mdmIOService.batchImportHistoryData(codeClassifyOid, classifyAttr,file1); |
| | | if(StringUtils.isNotBlank(codeImProtRusultVO.getFilePath())||StringUtils.isNotBlank(codeImProtRusultVO.getRedisUuid())){ |
| | | //放到map里 |
| | | R result = R.fail("导入失败"); |
| | | if(StringUtils.isNotBlank(codeImProtRusultVO.getFilePath())) { |
| | | String filedUUid = ControllerUtil.putErrorFile(codeImProtRusultVO.getFilePath()); |
| | | codeImProtRusultVO.setFileOid(filedUUid); |
| | | } |
| | | result.setData(codeImProtRusultVO); |
| | | return result; |
| | | }else { |
| | | return R.success("操作成功!"); |
| | | } |
| | | }catch (Throwable e) { |
| | | logger.error("导入错误",e); |
| | | String errorFile = LocalFileUtil.getDefaultTempFolder() + File.separator + "错误.txt"; |
| | | LocalFileUtil.writeContentToFile(LangBaseUtil.getErrorMsg(e),errorFile); |
| | | String uuid=ControllerUtil.putErrorFile(errorFile); |
| | | CodeImProtRusultVO codeImProtRusultVO =new CodeImProtRusultVO(); |
| | | codeImProtRusultVO.setRedisUuid(""); |
| | | codeImProtRusultVO.setFileOid(uuid); |
| | | codeImProtRusultVO.setFilePath(errorFile); |
| | | R r = R.fail("导入失败"); |
| | | r.setData(codeImProtRusultVO); |
| | | |
| | | |
| | | return r; |
| | | }finally { |
| | | file1.delete(); |
| | | } |
| | | } |
| | | /** |
| | | * 导入历史数据 |
| | | * @param codeClassifyOid 分类的主键 |
| | | * @param classifyAttr 分类路径使用的属性 |
| | | * @param file 文件的内容 |
| | | */ |
| | | @VciBusinessLog(operateName = "批量申请编码的信息") |
| | | @PostMapping("/batchTopImportCode") |
| | | public R batchTopImportCode(String codeClassifyOid, String classifyAttr,MultipartFile file,HttpServletResponse response) throws Throwable { |
| | | String excelFileName = LocalFileUtil.getDefaultTempFolder() + File.separator + file.getOriginalFilename(); |
| | | File file1 = new File(excelFileName); |
| | | try { |
| | | file.transferTo(new File(excelFileName)); |
| | | CodeImProtRusultVO codeImProtRusultVO =mdmIOService.batchTopImportCode(codeClassifyOid, classifyAttr,file1); |
| | | if(StringUtils.isNotBlank(codeImProtRusultVO.getFilePath())||StringUtils.isNotBlank(codeImProtRusultVO.getRedisUuid())){ |
| | | //放到map里 |
| | | R r = R.fail("导入失败!"); |
| | | if(StringUtils.isNotBlank(codeImProtRusultVO.getFilePath())) { |
| | | String filedUUid = ControllerUtil.putErrorFile(codeImProtRusultVO.getFilePath()); |
| | | codeImProtRusultVO.setFileOid(filedUUid); |
| | | r = R.success("导入成功!"); |
| | | } |
| | | r.setData(codeImProtRusultVO); |
| | | return r; |
| | | }else { |
| | | return R.success("导入成功!"); |
| | | } |
| | | }catch (Throwable e) { |
| | | e.printStackTrace(); |
| | | logger.error("导入错误",e); |
| | | String errorFile = LocalFileUtil.getDefaultTempFolder() + File.separator + "错误.txt"; |
| | | LocalFileUtil.writeContentToFile(LangBaseUtil.getErrorMsg(e),errorFile); |
| | | String uuid=ControllerUtil.putErrorFile(errorFile); |
| | | CodeImProtRusultVO codeImProtRusultVO =new CodeImProtRusultVO(); |
| | | codeImProtRusultVO.setRedisUuid(""); |
| | | codeImProtRusultVO.setFileOid(uuid); |
| | | codeImProtRusultVO.setFilePath(errorFile); |
| | | |
| | | R r = R.fail("导入失败"); |
| | | r.setData(codeImProtRusultVO); |
| | | |
| | | |
| | | return r; |
| | | }finally { |
| | | file1.delete(); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 修改状态 |
| | |
| | | } |
| | | |
| | | /*** |
| | | * 从redis缓存里获取到导入正确的数据 |
| | | * 从redis缓存里获取到导入行相似项的数据 |
| | | * @param dataOid |
| | | * @param redisOid |
| | | * @return |
| | |
| | | public DataGrid<Map<String,String>> gridResemble(String codeClassifyOid,String redisOid){ |
| | | return mdmIOService.gridDatas(codeClassifyOid,redisOid); |
| | | } |
| | | /*** |
| | | * 导入数据 |
| | | * @param codeImprotSaveDatVO//数据对象 |
| | | * @return |
| | | */ |
| | | @PostMapping("/batchImportData") |
| | | public R batchImportData(@RequestBody CodeImprotParmaDatVO codeImprotSaveDatVO){ |
| | | return mdmIOService.batchImportData(codeImprotSaveDatVO.getCodeImprotSaveDatVOList(),codeImprotSaveDatVO.getClassifyAttr(),codeImprotSaveDatVO.getImprot()); |
| | | } |
| | | |
| | | /*** |
| | | *根据数据oid从缓存中移除数据 |
| | | * @param redisOid redisid |
| | | * @param codeClassifyOid 存储规则的oid |
| | | * @param dataOids 所需删除的数据 |
| | | * @return |
| | | */ |
| | | @GetMapping("/deleteDatas") |
| | | public R deleteDatas(String redisOid,String codeClassifyOid,String dataOids){ |
| | | return mdmIOService.deleteDatas(redisOid,codeClassifyOid,dataOids); |
| | | } |
| | | /** |
| | | * 批量保存流程执行页面修改的内容 |
| | | * @param orderDTOList 编码相关的信息,不需要码段的信息 |
| | |
| | | // return engineService.updateBatchByBaseModel("wupin", models); |
| | | // return engineService.getUIInfoByClassifyOid(codeClassifyOid,functionId); |
| | | } |
| | | |
| | | /** |
| | | * 默认的参照列表 |
| | | * @param referConfigVO 参照的配置信息 |
| | | * @return 执行的结果 |
| | | */ |
| | | @GetMapping("/defaultReferDataGrid") |
| | | public DataGrid<BaseModel> defaultReferDataGrid(UIFormReferVO referConfigVO, BaseQueryObject baseQueryObject){ |
| | | return engineService.referDataGrid(referConfigVO,baseQueryObject); |
| | | } |
| | | |
| | | /** |
| | | * 默认的树形参照列表 |
| | | * @param referConfigVO 参照的配置信息 |
| | | * @return 执行的结果 |
| | | */ |
| | | @GetMapping("/defaultReferTree") |
| | | public List<Tree> defaultReferTree(UIFormReferVO referConfigVO, TreeQueryObject queryObject){ |
| | | return engineService.referTree(referConfigVO,queryObject); |
| | | } |
| | | |
| | | } |