From 7c138d016b42fb8706e127ca37fe72d1ccfd2cad Mon Sep 17 00:00:00 2001 From: liao Date: Wed, 18 Oct 2023 15:53:00 +0800 Subject: [PATCH] =?UTF-8?q?add=20ASMS=E5=90=8C=E6=AD=A5=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/LawsAsmsOpenApiServiceImpl.java | 38 +++++++++++++------ 1 file changed, 26 insertions(+), 12 deletions(-) diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/service/impl/LawsAsmsOpenApiServiceImpl.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/service/impl/LawsAsmsOpenApiServiceImpl.java index 8160e65f..09212c52 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/service/impl/LawsAsmsOpenApiServiceImpl.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/service/impl/LawsAsmsOpenApiServiceImpl.java @@ -3,6 +3,7 @@ package com.jero.modules.docking.asms.api.service.impl; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.jero.common.api.vo.Result; import com.jero.modules.docking.asms.api.entity.LawsAsmsOpenApi; import com.jero.modules.docking.asms.api.mapper.LawsAsmsOpenApiMapper; @@ -12,6 +13,7 @@ import com.jero.modules.system.entity.SysDictItem; import com.jero.modules.system.service.ISysDictItemService; import com.spire.ms.System.Collections.ArrayList; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -22,6 +24,7 @@ import java.util.Arrays; import java.util.List; import java.util.Map; import java.util.Objects; +import java.util.stream.Collectors; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.system.query.QueryGenerator; @@ -152,15 +155,17 @@ public class LawsAsmsOpenApiServiceImpl extends ServiceImpl dictItemList = new ArrayList(); - - // 删除该字典的全部数据项 + // 查询该字典全部数据项 LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(SysDictItem::getDictId, lawsAsmsOpenApi.getDictId()); - sysDictItemService.remove(queryWrapper); - log.info("删除”{}“的全部字典数据项...", lawsAsmsOpenApi.getApiName()); - - // 封装数据 + List dictItemList = sysDictItemService.list(queryWrapper); + List codeList; + if (CollectionUtils.isNotEmpty(dictItemList)) { + codeList = dictItemList.stream().map(SysDictItem::getItemValue).collect(Collectors.toList()); + } else { + codeList = new ArrayList(); + } + // 遍历返回数据,封装字典数据项 for (int i = 0; i < mapList.size(); i++) { Map eMap = mapList.get(i); SysDictItem dictItem = new SysDictItem(); @@ -191,17 +196,26 @@ public class LawsAsmsOpenApiServiceImpl extends ServiceImpl + e.getItemValue().equals(dictItem.getItemValue())) + .collect(Collectors.toList()).get(0).getId()); + sysDictItemService.updateById(dictItem); + } else { + // 如果不存在则新增 + sysDictItemService.save(dictItem); + } } - // 保存到数据库 - sysDictItemService.saveBatch(dictItemList); // 状态设置为已同步 lawsAsmsOpenApi.setStatus("1"); - log.info("添加”{}“的字典数据项{}条数据...", lawsAsmsOpenApi.getApiName(), dictItemList.size()); } }); - + // 同步接口的状态 updateBatchById(lawsAsmsOpenApiList); } }