| | |
| | | |
| | | public class FilterOffUtils { |
| | | /** |
| | | * 过滤休息日? |
| | | * 过滤数据 |
| | | * @param <R> |
| | | * @param data 状态数据列表 |
| | | * @param data 聚合状态数据列表 |
| | | * @param openTypeEnums RUNNING/ALARM/OEE等 |
| | | * @return |
| | | */ |
| | |
| | | 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()); |
| | |
| | | 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)) { |