package com.njcn.echarts.util;

import com.njcn.echarts.pojo.bo.TolerateData;

import java.util.ArrayList;
import java.util.List;

/**
 * 业务数据处理方法
 *
 * @author hongawen
 * @version 1.0.0
 * @date 2023年06月21日 11:04
 */
public class BusinessDataUtil {


    /***
     * 处理itic数据
     * @author hongawen
     * @date 2023/6/21 11:05
     */
    public static TolerateData dealIticData(List<List<Double>> originData) {
        List<List<Double>> tolerateData = new ArrayList<>();
        List<List<Double>> unTolerateData = new ArrayList<>();
        for (List<Double> list : originData) {
            //是否超过上限
            if (list.get(0) <= 0.003) {
                int line = 230 - 30000 * list.get(0).intValue();
                if (list.get(1) > line) {
                    unTolerateData.add(list);
                } else {
                    tolerateData.add(list);
                }
            } else if (list.get(0) <= 0.02) {
                if (list.get(1) > 120) {
                    unTolerateData.add(list);
                } else {
                    tolerateData.add(list);
                }
            } else if (list.get(0) <= 0.5) {
                if (list.get(1) > 120 || list.get(1) < 70) {
                    unTolerateData.add(list);
                } else {
                    tolerateData.add(list);
                }
            } else if (list.get(0) <= 10) {
                if (list.get(1) > 110 || list.get(1) < 80) {
                    unTolerateData.add(list);
                } else {
                    tolerateData.add(list);
                }
            } else {
                if (list.get(1) > 110 || list.get(1) < 90) {
                    unTolerateData.add(list);
                } else {
                    tolerateData.add(list);
                }
            }
        }
        return new TolerateData(tolerateData, unTolerateData);
    }


    /***
     * 处理F47数据
     * @author hongawen
     * @date 2023/6/21 11:05
     */
    public static TolerateData dealF47Data(List<List<Double>> originData) {
        List<List<Double>> tolerateData = new ArrayList<>();
        List<List<Double>> unTolerateData = new ArrayList<>();
        for (int i = 0; i < originData.size(); i++) {
            List<Double> list = originData.get(i);
            //是否超过上限
            if (list.get(0) < 0.05) {
                tolerateData.add(list);
            } else if (list.get(0) < 0.2) {
                if (list.get(1) > 50) {
                    tolerateData.add(list);
                } else {
                    unTolerateData.add(list);
                }
            } else if (list.get(0) < 0.5) {
                if (list.get(1) > 70) {
                    tolerateData.add(list);
                } else {
                    unTolerateData.add(list);
                }
            } else if (list.get(0) < 10) {
                if (list.get(1) > 80) {
                    tolerateData.add(list);
                } else {
                    unTolerateData.add(list);
                }
            } else {
                if (list.get(1) > 90) {
                    tolerateData.add(list);
                } else {
                    unTolerateData.add(list);
                }
            }
        }
        return new TolerateData(tolerateData, unTolerateData);
    }
}

