diff --git a/jsowell-pile/src/main/java/com/jsowell/thirdparty/service/impl/ThirdpartySecretInfoServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/thirdparty/service/impl/ThirdpartySecretInfoServiceImpl.java index e68cf23cf..1f8d4d7fd 100644 --- a/jsowell-pile/src/main/java/com/jsowell/thirdparty/service/impl/ThirdpartySecretInfoServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/thirdparty/service/impl/ThirdpartySecretInfoServiceImpl.java @@ -20,7 +20,10 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; +import java.util.Map; import java.util.Objects; +import java.util.function.Function; +import java.util.stream.Collectors; /** * 对接三方平台配置Service业务层处理 @@ -156,27 +159,35 @@ public class ThirdpartySecretInfoServiceImpl implements ThirdpartySecretInfoServ @Override public String syncThirdpartyPlatformNameToDict() { - List sysDictData = sysDictDataMapper.selectDictDataByType(Constants.THIRD_PARTY_TYPE); + List existingDictData = sysDictDataMapper.selectDictDataByType(Constants.THIRD_PARTY_TYPE); + + Map dictDataMap = existingDictData.stream() + .collect(Collectors.toMap(SysDictData::getDictValue, Function.identity())); + for (ThirdPlatformTypeEnum platformType : ThirdPlatformTypeEnum.values()) { String typeCode = platformType.getTypeCode(); - for (SysDictData data : sysDictData) { - if (typeCode.equals(data.getDictValue())) { - break; - }else { - SysDictData dictData = new SysDictData(); - dictData.setDictSort(0L); - dictData.setDictLabel(platformType.getTypeLabel()); - dictData.setDictValue(platformType.getTypeCode()); - dictData.setDictType(Constants.THIRD_PARTY_TYPE); - dictData.setListClass("default"); - dictData.setIsDefault("N"); - dictData.setStatus("0"); - dictData.setCreateBy("thinkgem"); - dictData.setCreateTime(DateUtils.getNowDate()); - sysDictDataMapper.insertDictData(dictData); - } + if (!dictDataMap.containsKey(typeCode)) { + // 创建并保存新的字典数据 + SysDictData dictData = createDictData(platformType); + sysDictDataMapper.insertDictData(dictData); } } - return ""; + + return "同步完成"; } + + private SysDictData createDictData(ThirdPlatformTypeEnum platformType) { + SysDictData dictData = new SysDictData(); + dictData.setDictSort(0L); + dictData.setDictLabel(platformType.getTypeLabel()); + dictData.setDictValue(platformType.getTypeCode()); + dictData.setDictType(Constants.THIRD_PARTY_TYPE); + dictData.setListClass("default"); + dictData.setIsDefault("N"); + dictData.setStatus("0"); + dictData.setCreateBy("thinkgem"); + dictData.setCreateTime(DateUtils.getNowDate()); + return dictData; + } + }