From 18e77f1d86d72d256624a73a0017d7c65dc4b561 Mon Sep 17 00:00:00 2001 From: liao Date: Tue, 24 Oct 2023 16:38:09 +0800 Subject: [PATCH] =?UTF-8?q?add=20=E6=96=87=E6=A1=A3=E6=8B=86=E5=88=86?= =?UTF-8?q?=E5=AF=B9=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/LawsAsmsOpenApiServiceImpl.java | 90 +++++++++++++++++++ .../split/entity/SarFileSplitInfoEO.java | 3 + 2 files changed, 93 insertions(+) diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/LawsAsmsOpenApiServiceImpl.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/LawsAsmsOpenApiServiceImpl.java index 4b4c8280..df0462ef 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/LawsAsmsOpenApiServiceImpl.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/LawsAsmsOpenApiServiceImpl.java @@ -11,6 +11,8 @@ import com.jero.modules.docking.asms.mapper.LawsAsmsOpenApiMapper; import com.jero.modules.docking.asms.service.ILawsAsmsDomesticService; import com.jero.modules.docking.asms.service.ILawsAsmsOpenApiService; import com.jero.modules.docking.asms.util.AsmsPostUtil; +import com.jero.modules.laws.documenttool.entity.LawsDocumentSplit; +import com.jero.modules.laws.documenttool.mapper.LawsDocumentSplitMapper; import com.jero.modules.laws.standard.entity.LawsDomesticStandard; import com.jero.modules.laws.standard.service.ILawsDomesticStandardService; import com.jero.modules.laws.standard.service.ILawsReplacedStandardService; @@ -18,6 +20,8 @@ import com.jero.modules.laws.standardization.entity.LawsStandardization; import com.jero.modules.laws.standardization.service.ILawsStandardizationService; import com.jero.modules.oss.entity.OSSFile; import com.jero.modules.oss.service.IOSSFileService; +import com.jero.modules.split.entity.SarFileSplitInfoEO; +import com.jero.modules.split.service.ISarFileSplitInfoService; import com.jero.modules.system.entity.SysDictItem; import com.jero.modules.system.service.ISysDictItemService; import com.spire.ms.System.Collections.ArrayList; @@ -73,6 +77,10 @@ public class LawsAsmsOpenApiServiceImpl extends ServiceImpl> mapList = asmsPostUtil.sendGetReq(lawsAsmsOpenApi.getApiUrl(), map); + mapList.forEach(eMap -> { + String code = eMap.get("code"); + + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(LawsDomesticStandard::getStandardNumber, code); + LawsDomesticStandard lawsDomesticStandard = lawsDomesticStandardService.getOne(queryWrapper); + + LambdaQueryWrapper queryWrapper1 = new LambdaQueryWrapper<>(); + queryWrapper1.eq(OSSFile::getStandardId, lawsDomesticStandard.getId()); + queryWrapper1.eq(OSSFile::getStandardFileType, "publish_of_original"); + queryWrapper1.like(OSSFile::getFileName, ".docx"); + OSSFile ossFile = ossFileService.getOne(queryWrapper1); + + SarFileSplitInfoEO sarFileSplitInfoEO = new SarFileSplitInfoEO(); + sarFileSplitInfoEO.setStandardId(lawsDomesticStandard.getId()); + sarFileSplitInfoEO.setSerialNumber(lawsDomesticStandard.getStandardNumber()); + sarFileSplitInfoEO.setTitle(lawsDomesticStandard.getStandardName()); + sarFileSplitInfoEO.setFileType("publish_of_original"); + sarFileSplitInfoEO.setFileId(ossFile.getId()); + sarFileSplitInfoEO.setFileName(ossFile.getFileName()); + sarFileSplitInfoEO.setSplitStatus("1"); + sarFileSplitInfoEO.setCreateTime(getSimpleDate2(eMap.get("createTime"))); + sarFileSplitInfoEO.setUpdateTime(getSimpleDate2(eMap.get("updateTime"))); + sarFileSplitInfoEO.setIsAsmsImport("1"); + + sarFileSplitInfoService.save(sarFileSplitInfoEO); + }); + // 状态设置为已同步 + lawsAsmsOpenApi.setStatus("1"); + log.info("{}同步成功{}条数据", lawsAsmsOpenApi.getApiName(), mapList.size()); + } else if ("3".equals(lawsAsmsOpenApi.getApiType()) && "xiaobodata/openApi/article/details".equals(lawsAsmsOpenApi.getApiUrl())) { + // 单个法规的条文列表 + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(SarFileSplitInfoEO::getIsAsmsImport, "1"); + List sarFileSplitInfoEOList = sarFileSplitInfoService.list(queryWrapper); + Map paramMap = new HashMap<>(); + Map paramMap2 = new HashMap<>(); + Map paramMap3 = new HashMap<>(); + sarFileSplitInfoEOList.forEach(sarFileSplitInfoEO -> { + paramMap.put("standardCode", sarFileSplitInfoEO.getSerialNumber()); + List> mapList = asmsPostUtil.sendGetReq(lawsAsmsOpenApi.getApiUrl(), paramMap); + mapList.forEach(eMap -> { + // 单个法规的条文解读详情 + paramMap2.put("standardCode", sarFileSplitInfoEO.getSerialNumber()); + paramMap2.put("termsCode", eMap.get("termsNum")); + Map objectMap = asmsPostUtil.sendGetReq2("xiaobodata/openApi/article/interpretation/details", paramMap2); + + // 单个法规的条文标签详情 + paramMap3.put("standardCode", sarFileSplitInfoEO.getSerialNumber()); + paramMap3.put("termsCode", eMap.get("termsNum")); + Map objectMap2 = asmsPostUtil.sendGetReq2("xiaobodata/openApi/article/label/details", paramMap3); + + LawsDocumentSplit lawsDocumentSplit = new LawsDocumentSplit(); + lawsDocumentSplit.setInfoId(sarFileSplitInfoEO.getId()); + lawsDocumentSplit.setItemNum(eMap.get("termsNum")); + lawsDocumentSplit.setItemTitle(eMap.get("termsName")); + lawsDocumentSplit.setItemContent(eMap.get("articleContent")); + lawsDocumentSplit.setCreateTime(getSimpleDate2(eMap.get("createTime"))); + lawsDocumentSplit.setUpdateTime(getSimpleDate2(eMap.get("updateTime"))); + + lawsDocumentSplit.setInterpretationArticles((String) objectMap.get("termsInterpretation")); + + lawsDocumentSplit.setFunctionClassification((String) objectMap2.get("functionClassification")); + lawsDocumentSplit.setFunctionProfessional((String) objectMap2.get("functionProfession")); + lawsDocumentSplit.setFunctionGroupName((String) objectMap2.get("groupingName")); + lawsDocumentSplit.setFunctionGroupName((String) objectMap2.get("groupingNum")); + lawsDocumentSplit.setCerImplementDate((String) objectMap2.get("implementDateCertified")); + lawsDocumentSplit.setNewCerImplementDate((String) objectMap2.get("implementDateNewCer")); + lawsDocumentSplit.setNewRegisterImplementDate((String) objectMap2.get("implementDateNewRegister")); + lawsDocumentSplit.setLawsRequireType((String) objectMap2.get("lawsRequireType")); + lawsDocumentSplit.setApplications((String) objectMap2.get("modelsType")); + lawsDocumentSplit.setDynamicType((String) objectMap2.get("powerType")); + + lawsDocumentSplitMapper.insert(lawsDocumentSplit); + }); + }); + // 状态设置为已同步 + lawsAsmsOpenApi.setStatus("1"); + log.info("{}同步成功{}条数据", lawsAsmsOpenApi.getApiName(), sarFileSplitInfoEOList.size()); } }); // 同步接口的状态 diff --git a/laws-modules/src/main/java/com/jero/modules/split/entity/SarFileSplitInfoEO.java b/laws-modules/src/main/java/com/jero/modules/split/entity/SarFileSplitInfoEO.java index 8ce20c9f..4483ad39 100644 --- a/laws-modules/src/main/java/com/jero/modules/split/entity/SarFileSplitInfoEO.java +++ b/laws-modules/src/main/java/com/jero/modules/split/entity/SarFileSplitInfoEO.java @@ -122,6 +122,9 @@ public class SarFileSplitInfoEO implements Serializable { @ApiModelProperty(value = "发布前id") private String publishBeforeId; + /**是否asms导入(1是)*/ + private String isAsmsImport; + @TableField(exist = false) private String flag;