yangys
2024-04-04 ed4a5236bab800094be4a8378f5098eebe3de6ac
smart-man-boot/src/main/java/com/qianwen/smartman/modules/cps/utils/TelemetryDataUtils.java
@@ -26,6 +26,9 @@
import com.qianwen.smartman.modules.cps.message.event.TelemetryDataMessage;
/* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/cps/utils/TelemetryDataUtils.class */
/**
 * 遥测数据util
 */
public class TelemetryDataUtils {
    private static final Logger log = LoggerFactory.getLogger(TelemetryDataUtils.class);
@@ -94,17 +97,20 @@
        if (!checkResult.booleanValue()) {
            return null;
        }
        switch (AnonymousClass1.$SwitchMap$org$springblade$common$enums$WorkstationParamTypeEnum[WorkstationParamTypeEnum.of(workstationParam.getType(), WorkstationParamTypeEnum.OTHER).ordinal()]) {
            case 1:
        switch (WorkstationParamTypeEnum.of(workstationParam.getType(), WorkstationParamTypeEnum.OTHER)) {
            case STATE:
                handlerStatusUpdateValue(telemetryDataMessage, workstationParam);
                break;
            case 3:
            case 4:
            case ALARM:
            case ALARM_NO:
                packWorkStationAlarmMessageInfo(telemetryDataMessage, workstationParam.getWorkstationId());
                break;
            case RegionCache.VILLAGE_LEVEL /* 5 */:
            case ALARM_MSG:
                telemetryDataMessage = null;
                break;
            default:
               break;
        }
        return telemetryDataMessage;
    }
@@ -167,7 +173,20 @@
    }
    private static List<AlarmInfoDTO> handlerRepeatAlarmInfo(List<AlarmInfoDTO> alarmInfoDTOS) {
        ArrayList arrayList = new ArrayList(CommonConstant.ALARM_MAX_COUNT.intValue());
        ArrayList<AlarmInfoDTO>  arrayList = new ArrayList<>(CommonConstant.ALARM_MAX_COUNT.intValue());
        List<AlarmInfoDTO> alarmList = alarmInfoDTOS.stream().collect(
                Collectors.collectingAndThen(
                  Collectors.toCollection(() -> new TreeSet<AlarmInfoDTO>(Comparator.comparing(
                        alarm -> {
                           return alarm.getCode() + ";" + alarm.getMsg();
                        })//end of comparing
                       )//end new treeset
                        )//end toCollection
                , ArrayList::new)//collectingAndThen
                );
        alarmList = alarmList.stream().sorted(Comparator.comparing(AlarmInfoDTO::getTimestamp).reversed()).collect(Collectors.toList());
        /*
        List<AlarmInfoDTO> alarmList = (List) ((List) alarmInfoDTOS.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> {
            return new TreeSet(Comparator.comparing(alarm -> {
                return alarm.getCode() + ";" + alarm.getMsg();
@@ -177,6 +196,7 @@
        }))).stream().sorted(Comparator.comparing((v0) -> {
            return v0.getTimestamp();
        }).reversed()).collect(Collectors.toList());
        */
        for (int i = 0; i < alarmList.size() && arrayList.size() < CommonConstant.ALARM_MAX_COUNT.intValue(); i++) {
            arrayList.add(alarmList.get(i));
        }