yangys
2025-11-18 8e944cfabb253fc2556588e308e282586043f7b0
smart-man-boot/src/main/java/com/qianwen/smartman/modules/mdc/utils/FilterOffUtils.java
@@ -12,9 +12,9 @@
public class FilterOffUtils {
   /**
    * 过滤休息日?
    * 过滤数据
    * @param <R>
    * @param data 状态数据列表
    * @param data 聚合状态数据列表
    * @param openTypeEnums RUNNING/ALARM/OEE等
    * @return
    */
@@ -22,13 +22,15 @@
        if (Func.isEmpty(data)) {
            return data;
        }
        boolean filterType = whetherToFilter(OpenTypeEnums.PARAM_KEY_TYPE, openTypeEnums);//mdc_open_type
        boolean filterShift = whetherToFilter(OpenTypeEnums.PARAM_KEY_SHIFT, openTypeEnums);//mdc_open_shift
        //获取"分析设置"界面中的过滤配置,没有设置数据则返回false(不过滤)
        boolean filterType = whetherToFilter(OpenTypeEnums.PARAM_KEY_TYPE, openTypeEnums);//mdc_open_type,是否过滤掉休息时段(shiftTimeType=2)
        boolean filterShift = whetherToFilter(OpenTypeEnums.PARAM_KEY_SHIFT, openTypeEnums);//mdc_open_shift,是否过滤班制(shiftIndex>0的数据保留)
        if (!filterType && !filterShift) {
            return data;
        }
        return data.stream().filter(item -> {
            return (filterType && item.getShiftTimeType().equals(2)) ? false : true;
            return (filterType && item.getShiftTimeType().equals(2)) ? false : true;//2:休息时间段,这里是去掉休息的状态数据
        }).filter(item2 -> {
            return !filterShift || item2.getShiftIndex().intValue() > 0;
        }).collect(Collectors.toList());
@@ -41,6 +43,12 @@
        return data;
    }
    /**
     * 是否过滤数据(根据系统参数中的json数据,open==1就过滤)
     * @param typeEnums 过滤分类(班制/或类型) mdc_open_shift/mdc_open_type
     * @param enums 过滤的项目TIME_USED_ANALYSIS/ALARM_ANALYSIS ...
     * @return
     */
    public static boolean whetherToFilter(OpenTypeEnums typeEnums, OpenTypeEnums enums) {
        String value = ParamCache.getValue(typeEnums.getMsg());
        if (Func.isNull(value)) {