xiangpei
2024-08-02 1fc5877f61c9b15f5daa5f328f9deae2e8a50e84
ycl-server/src/main/java/com/ycl/factory/IndexCalculationFactory.java
@@ -1,7 +1,7 @@
package com.ycl.factory;
import com.ycl.calculate.CalculationStrategy;
import com.ycl.calculate.CarSiteOnlineCalculation;
import com.ycl.calculate.*;
import constant.CalculationStrategyConstants;
import java.util.HashMap;
import java.util.Map;
@@ -10,7 +10,21 @@
    private static final Map<String, CalculationStrategy> calculators = new HashMap<>();
    static {
        calculators.put("siteOnline", new CarSiteOnlineCalculation());
        //点位在线、视图库对接稳定性
        calculators.put(CalculationStrategyConstants.Car_SiteOnline_ViewStability, new CarSnapshopDataCalculation());
        calculators.put(CalculationStrategyConstants.Face_SiteOnline_ViewStability, new FaceSnapshotDataCalculation());
        //信息准确率
        calculators.put(CalculationStrategyConstants.Car_InfoAccuracy, new CarInFoAccuracyCalculation());
        calculators.put(CalculationStrategyConstants.Face_InfoAccuracy, new FaceInFoAccuracyCalculation());
        //抓拍数据上传延迟
        calculators.put(CalculationStrategyConstants.Car_SnapshotDelay, new CarSnapshotDelayCalculation());
        calculators.put(CalculationStrategyConstants.Face_SnapshotDelay, new FaceSnapshotDelayCalculation());
        //车辆数据抓拍完整性
        calculators.put(CalculationStrategyConstants.Car_DataIntegrity,new CarDataIntegrityCalculation());
        //车辆数据抓拍准确性
        calculators.put(CalculationStrategyConstants.Car_DataAccuracy,new CarDeviceSampleCalculation());
        //车辆时钟准确性
        calculators.put(CalculationStrategyConstants.Car_ClockAccuracy,new CarClockAccuracyCalculation());
    }
    public static CalculationStrategy getCalculator(String indexName) {