| | |
| | | package com.zy.acs.manager.common.utils; |
| | | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.zy.acs.manager.core.service.astart.WaveNodeType; |
| | | import com.zy.acs.framework.common.Cools; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | import java.util.Optional; |
| | | import java.util.stream.Collectors; |
| | | import java.util.*; |
| | | |
| | | /** |
| | | * Created by vincent on 8/7/2024 |
| | |
| | | return list; |
| | | } |
| | | |
| | | public static List<String> hasIntersection(List<String> l0, List<String> l1) { |
| | | if (Cools.isEmpty(l0, l1)) { |
| | | return new ArrayList<>(); |
| | | } |
| | | return l0.stream().filter(l1::contains).collect(Collectors.toList()); |
| | | } |
| | | |
| | | public static String generateWaveNode(String originStr, String waveNode) { |
| | | List<String> waveNodeList; |
| | | if (originStr.equals(WaveNodeType.ENABLE.val)) { |
| | | waveNodeList = new ArrayList<>(); |
| | | waveNodeList.add(waveNode); |
| | | } else { |
| | | waveNodeList = JSON.parseArray(originStr, String.class); |
| | | if (!waveNodeList.contains(waveNode)) { |
| | | waveNodeList.add(waveNode); |
| | | } |
| | | } |
| | | return JSON.toJSONString(waveNodeList); |
| | | List<String> originNode = JSON.parseArray(originStr, String.class); |
| | | Set<String> set = new HashSet<>(originNode); |
| | | set.add(waveNode); |
| | | return JSON.toJSONString(set); |
| | | } |
| | | |
| | | public static Double getVehicleWaveSafeDistance(Integer diameter, Double coe) { |
| | | public static Double getVehicleWaveSafeDistance(Integer diameter, Double factor) { |
| | | if (Cools.isEmpty(diameter)) { |
| | | return 0.0D; |
| | | } |
| | | coe = Optional.ofNullable(coe).orElse(1.0D); |
| | | return diameter * coe; |
| | | factor = Optional.ofNullable(factor).orElse(1.0D); |
| | | return diameter * factor; |
| | | } |
| | | |
| | | } |