update 国内法规对接

This commit is contained in:
liao
2023-10-20 11:03:38 +08:00
parent 249ee12690
commit 2acf6e224a
3 changed files with 41 additions and 3 deletions
@@ -131,10 +131,10 @@ public class LawsAsmsDomestic implements Serializable {
private java.lang.String subcommittee;
/**创建时间*/
@ApiModelProperty(value = "创建时间")
private java.lang.String createTime;
private java.lang.String createTimeString;
/**更新时间*/
@ApiModelProperty(value = "更新时间")
private java.lang.String updateTime;
private java.lang.String updateTimeString;
/**同步标识*/
@Excel(name = "同步标识", width = 15)
@ApiModelProperty(value = "同步标识")
@@ -1,10 +1,13 @@
package com.jero.modules.docking.asms.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.jero.modules.docking.asms.entity.LawsAsmsDomestic;
import com.jero.modules.docking.asms.entity.LawsAsmsOpenApi;
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.system.entity.SysDictItem;
@@ -46,6 +49,8 @@ public class LawsAsmsOpenApiServiceImpl extends ServiceImpl<LawsAsmsOpenApiMappe
@Autowired
private ISysDictItemService sysDictItemService;
@Autowired
private ILawsAsmsDomesticService lawsAsmsDomesticService;
@Autowired
private LawsAsmsOpenApiMapper lawsAsmsOpenApiMapper;
/**
@@ -152,7 +157,7 @@ public class LawsAsmsOpenApiServiceImpl extends ServiceImpl<LawsAsmsOpenApiMappe
List<Map<String, String>> mapList = asmsPostUtil.sendGetReq(lawsAsmsOpenApi.getApiUrl(), map);
if ("1".equals(lawsAsmsOpenApi.getApiType())
&& StringUtils.isNotBlank(lawsAsmsOpenApi.getDictId()) && !Objects.isNull(mapList)) {
&& StringUtils.isNotBlank(lawsAsmsOpenApi.getDictId()) && CollectionUtils.isNotEmpty(mapList)) {
// 如果是下拉字典(普通)、字典id不为空、返回的数据不为空,则进行数据字典同步操作
// 查询该字典全部数据项
LambdaQueryWrapper<SysDictItem> queryWrapper = new LambdaQueryWrapper<>();
@@ -222,8 +227,38 @@ public class LawsAsmsOpenApiServiceImpl extends ServiceImpl<LawsAsmsOpenApiMappe
}
// 状态设置为已同步
lawsAsmsOpenApi.setStatus("1");
} else if ("2".equals(lawsAsmsOpenApi.getApiType()) && !Objects.isNull(mapList)) {
// 如果是分标委
} else if ("3".equals(lawsAsmsOpenApi.getApiType())
&& "xiaobodata/openApi/domesticLaws/list".equals(lawsAsmsOpenApi.getApiUrl())) {
// 如果是国内法规,并且url为国内法规标准检索列表
Integer pageNo;
Integer pageSize;
if (CollectionUtils.isNotEmpty(mapList)) {
// 不为空则增加查询的分页
pageNo = Integer.valueOf(map.get("pageNo")) + 1;
List<LawsAsmsDomestic> lawsAsmsDomesticList = new ArrayList();
mapList.forEach(eMap -> {
LawsAsmsDomestic lawsAsmsDomestic = JSONObject.parseObject(JSONObject.toJSONString(eMap), LawsAsmsDomestic.class);
lawsAsmsDomestic.setId(lawsAsmsDomestic.getCode());
lawsAsmsDomestic.setCreateTimeString(eMap.get("createTime"));
lawsAsmsDomestic.setUpdateTimeString(eMap.get("updateTime"));
lawsAsmsDomestic.setSyncFlag("A");
lawsAsmsDomesticList.add(lawsAsmsDomestic);
});
lawsAsmsDomesticService.saveOrUpdateBatch(lawsAsmsDomesticList);
} else {
// 为空则全部置0
pageNo = 1;
// 已同步
lawsAsmsOpenApi.setStatus("1");
}
map.put("pageNo", pageNo.toString());
String jsonString = JSON.toJSONString(map);
lawsAsmsOpenApi.setQueryParamJson(jsonString);
}
log.info("{}同步成功{}条数据", lawsAsmsOpenApi.getApiName(), mapList.size());
});
// 同步接口的状态
updateBatchById(lawsAsmsOpenApiList);
@@ -116,6 +116,9 @@ public class AsmsPostUtil {
if (CollectionUtils.isEmpty(mapList)) {
mapList = new ArrayList<>();
Map<String, String> result = (Map<String, String>) responseEntity.getBody().getResult();
if (result.containsKey("records")) {
return new ArrayList<>();
}
mapList.add(result);
}
log.info("返回{}条数据", mapList.size());