add 文档拆分对接
This commit is contained in:
+90
@@ -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<LawsAsmsOpenApiMappe
|
||||
@Autowired
|
||||
private ILawsDomesticStandardService lawsDomesticStandardService;
|
||||
@Autowired
|
||||
private ISarFileSplitInfoService sarFileSplitInfoService;
|
||||
@Autowired
|
||||
private LawsDocumentSplitMapper lawsDocumentSplitMapper;
|
||||
@Autowired
|
||||
private ILawsReplacedStandardService lawsReplacedStandardService;
|
||||
@Autowired
|
||||
private IOSSFileService ossFileService;
|
||||
@@ -498,6 +506,88 @@ public class LawsAsmsOpenApiServiceImpl extends ServiceImpl<LawsAsmsOpenApiMappe
|
||||
// 状态设置为已同步
|
||||
lawsAsmsOpenApi.setStatus("1");
|
||||
log.info("{}同步成功{}条数据", lawsAsmsOpenApi.getApiName(), lawsAsmsDomesticList.size());
|
||||
} else if ("3".equals(lawsAsmsOpenApi.getApiType()) && "xiaobodata/openApi/article/search".equals(lawsAsmsOpenApi.getApiUrl())) {
|
||||
// 如果是国内法规,并且url为法规条文检索国内法规列表
|
||||
List<Map<String, String>> mapList = asmsPostUtil.sendGetReq(lawsAsmsOpenApi.getApiUrl(), map);
|
||||
mapList.forEach(eMap -> {
|
||||
String code = eMap.get("code");
|
||||
|
||||
LambdaQueryWrapper<LawsDomesticStandard> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(LawsDomesticStandard::getStandardNumber, code);
|
||||
LawsDomesticStandard lawsDomesticStandard = lawsDomesticStandardService.getOne(queryWrapper);
|
||||
|
||||
LambdaQueryWrapper<OSSFile> 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<SarFileSplitInfoEO> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(SarFileSplitInfoEO::getIsAsmsImport, "1");
|
||||
List<SarFileSplitInfoEO> sarFileSplitInfoEOList = sarFileSplitInfoService.list(queryWrapper);
|
||||
Map<String, String> paramMap = new HashMap<>();
|
||||
Map<String, String> paramMap2 = new HashMap<>();
|
||||
Map<String, String> paramMap3 = new HashMap<>();
|
||||
sarFileSplitInfoEOList.forEach(sarFileSplitInfoEO -> {
|
||||
paramMap.put("standardCode", sarFileSplitInfoEO.getSerialNumber());
|
||||
List<Map<String, String>> mapList = asmsPostUtil.sendGetReq(lawsAsmsOpenApi.getApiUrl(), paramMap);
|
||||
mapList.forEach(eMap -> {
|
||||
// 单个法规的条文解读详情
|
||||
paramMap2.put("standardCode", sarFileSplitInfoEO.getSerialNumber());
|
||||
paramMap2.put("termsCode", eMap.get("termsNum"));
|
||||
Map<String, Object> objectMap = asmsPostUtil.sendGetReq2("xiaobodata/openApi/article/interpretation/details", paramMap2);
|
||||
|
||||
// 单个法规的条文标签详情
|
||||
paramMap3.put("standardCode", sarFileSplitInfoEO.getSerialNumber());
|
||||
paramMap3.put("termsCode", eMap.get("termsNum"));
|
||||
Map<String, Object> 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());
|
||||
}
|
||||
});
|
||||
// 同步接口的状态
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user