diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/controller/LawsAsmsDomesticController.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/controller/LawsAsmsDomesticController.java index c44234d9..e8f2c796 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/controller/LawsAsmsDomesticController.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/controller/LawsAsmsDomesticController.java @@ -150,4 +150,16 @@ public class LawsAsmsDomesticController extends JeroController cleanData() { + lawsAsmsDomesticService.cleanData(); + return Result.OK("清理成功!"); + } } diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/ILawsAsmsDomesticService.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/ILawsAsmsDomesticService.java index a39c5442..fb11ce1f 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/ILawsAsmsDomesticService.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/ILawsAsmsDomesticService.java @@ -73,4 +73,9 @@ public interface ILawsAsmsDomesticService extends IService { * @return */ LawsAsmsDomestic queryById(String id); + + /** + * 清理同步进来的脏数据 + */ + void cleanData(); } diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/LawsAsmsDomesticServiceImpl.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/LawsAsmsDomesticServiceImpl.java index 50e57a1b..ef5b6812 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/LawsAsmsDomesticServiceImpl.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/LawsAsmsDomesticServiceImpl.java @@ -1,16 +1,28 @@ package com.jero.modules.docking.asms.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.jero.modules.docking.asms.entity.LawsAsmsDomestic; import com.jero.modules.docking.asms.mapper.LawsAsmsDomesticMapper; import com.jero.modules.docking.asms.service.ILawsAsmsDomesticService; +import com.jero.modules.laws.standard.entity.LawsDomesticStandard; +import com.jero.modules.laws.standard.entity.LawsOverseasStandard; +import com.jero.modules.laws.standard.service.ILawsDomesticStandardService; +import com.jero.modules.laws.standard.service.ILawsOverseasStandardService; +import org.hibernate.validator.constraints.pl.REGON; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.jero.common.exception.JeroBootException; + +import java.util.Arrays; import java.util.List; import java.util.Date; +import java.util.stream.Collectors; + import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.system.query.QueryGenerator; + +import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -26,6 +38,11 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @Transactional(rollbackFor = JeroBootException.class) public class LawsAsmsDomesticServiceImpl extends ServiceImpl implements ILawsAsmsDomesticService { + @Resource + private ILawsDomesticStandardService lawsDomesticStandardService; + + @Resource + private ILawsOverseasStandardService lawsOverseasStandardService; /** * 分页查询 @@ -110,4 +127,75 @@ public class LawsAsmsDomesticServiceImpl extends ServiceImpl gblist = lawsDomesticStandardService.list(); + List fblist = lawsOverseasStandardService.list(); + // 遍历所有国标数据,清理新车型实施日期 在产车实施日期两个字段中的脏数据 + for (LawsDomesticStandard standard : gblist) { + String newModelImplementationDate = standard.getNewModelImplementationDate(); + String onTheProductionDate = standard.getOnTheProductionDate(); + if (StrUtil.isBlank(newModelImplementationDate) && StrUtil.isBlank(onTheProductionDate)) { + continue; + } + + if (StrUtil.isNotBlank(newModelImplementationDate)) { + if (newModelImplementationDate.equals(",")) { + standard.setNewModelImplementationDate(""); + } else { + List dateList = Arrays.asList(newModelImplementationDate.split(",")); + // 去重 + standard.setNewModelImplementationDate(dateList.stream() + .distinct().collect(Collectors.joining(","))); + } + } + + if (StrUtil.isNotBlank(onTheProductionDate)) { + if (onTheProductionDate.equals(",")) { + standard.setOnTheProductionDate(""); + } else { + List dateList = Arrays.asList(onTheProductionDate.split(",")); + // 去重 + standard.setOnTheProductionDate(dateList.stream() + .distinct().collect(Collectors.joining(","))); + } + } + lawsDomesticStandardService.updateById(standard); + } + + for (LawsOverseasStandard standard : fblist) { + String newModelImplementationDate = standard.getNewModelImplementationDate(); + String onTheProductionDate = standard.getOnTheProductionDate(); + if (StrUtil.isBlank(newModelImplementationDate) && StrUtil.isBlank(onTheProductionDate)) { + continue; + } + + if (StrUtil.isNotBlank(newModelImplementationDate)) { + if (newModelImplementationDate.equals(",")) { + standard.setNewModelImplementationDate(""); + } else { + List dateList = Arrays.asList(newModelImplementationDate.split(",")); + // 去重 + standard.setNewModelImplementationDate(dateList.stream() + .distinct().collect(Collectors.joining(","))); + } + } + + if (StrUtil.isNotBlank(onTheProductionDate)) { + if (onTheProductionDate.equals(",")) { + standard.setOnTheProductionDate(""); + } else { + List dateList = Arrays.asList(onTheProductionDate.split(",")); + // 去重 + standard.setOnTheProductionDate(dateList.stream() + .distinct().collect(Collectors.joining(","))); + } + } + lawsOverseasStandardService.updateById(standard); + } + } }