yangys
2024-05-19 9e5da8899bc21bb5b6b0a3c267108caa00199291
smart-man-boot/src/main/java/com/qianwen/smartman/modules/mdc/utils/EifficiencyUtils.java
@@ -10,7 +10,9 @@
import com.qianwen.smartman.modules.mdc.enums.ProductivityTypeEnum;
import com.qianwen.smartman.modules.mdc.enums.RpsTypeEnum;
/* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/mdc/utils/EifficiencyUtils.class */
/**
 * 效率计算
 */
public class EifficiencyUtils {
    public static Double openShiftTypeCalculationResults(List<SuperAggregateState> superAggregateStates, ProductivityTypeEnum productivityType) {
        Double v;
@@ -44,6 +46,11 @@
        return v;
    }
    /**
     * 计算运行率?
     * @param originalData
     * @return
     */
    public static Double calculationRunning(List<SuperAggregateState> originalData) {
        List<SuperAggregateState> originalData2 = FilterOffUtils.filterOffDay(originalData, OpenTypeEnums.RUNNING);
        double result = 0.0d;
@@ -61,23 +68,36 @@
        return Double.valueOf(result);
    }
    /**
     * 计算报警率
     * @param originalData
     * @return
     */
    public static Double calculationAlarm(List<SuperAggregateState> originalData) {
        List<SuperAggregateState> originalData2 = FilterOffUtils.filterOffDay(originalData, OpenTypeEnums.ALARM);
        double result = 0.0d;
        if (Func.isNotEmpty(originalData2)) {
           //总时间
            double sum = originalData2.stream().mapToDouble((v0) -> {
                return v0.getDurationCollect();
            }).sum();
            double running = originalData2.stream().filter(e -> e.getRps().equals(4)).collect(Collectors.toList()).stream().mapToDouble(SuperAggregateState::getDurationCollect).sum();
            /*
            double running = ((List) originalData2.stream().filter(e -> {
                return e.getRps().equals(4);
            }).collect(Collectors.toList())).stream().mapToDouble((v0) -> {
                return v0.getDurationCollect();
            }).sum();
            }).sum();*/
            result = sum != 0.0d ? Double.parseDouble(NumberUtil.decimalFormat(MdcConstant.RATE_FORMAT, running / sum)) : 0.0d;
        }
        return Double.valueOf(result);
    }
    /**
     * 计算OEE稼动率
     * @param originalData
     * @return
     */
    public static Double calculationOee(List<SuperAggregateState> originalData) {
        List<SuperAggregateState> originalData2 = FilterOffUtils.filterOffDay(originalData, OpenTypeEnums.OEE);
        double result = 0.0d;