package com.sw.mes.utils;

import org.apache.commons.lang3.StringUtils;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class NumberUtil {

    public static int getNumber(String numStr) {

        if (StringUtils.isEmpty(numStr)) {
            return 0;
        }
        int num;
        switch (numStr) {
            case "一":
                num = 1;
                break;
            case "二":
                num = 2;
                break;
            case "三":
                num = 3;
                break;
            case "四":
                num = 4;
                break;
            case "五":
                num = 5;
                break;
            case "六":
                num = 6;
                break;
            case "七":
                num = 7;
                break;
            case "八":
                num = 8;
                break;
            case "九":
                num = 9;
                break;
            default:
                num = 0;
        }
        return num;
    }

//    public  static String CompareListArryNew(List<BigDecimal> left,List<BigDecimal> right){
//        try{
//
//            BigDecimal maxLeft = Collections.max(left);
//            BigDecimal maxRight = Collections.max(right);
//            if(maxLeft.compareTo(maxRight)==1){
//                //左大于右
//                return Inspect.Head_Positon_Left;
//            }else {
//                return Inspect.Head_Positon_Right;
//            }
//        }
//        catch (Exception e){
//            e.printStackTrace();
//            return Inspect.Head_Positon_Right;
//        }
//    }

//    public static String CompareListArry(List<BigDecimal> left, List<BigDecimal> right) {
//        try {
//            if (left.size() != right.size()) {
//                return Inspect.Head_Positon_Right;
//            } else {
//                for (int i = left.size() - 1; i >= 0; i--) {
//                    if (left.get(i).compareTo(right.get(i)) == 1) {
//                        //左大于右
//                        return Inspect.Head_Positon_Left;
//                    } else if (left.get(i).compareTo(right.get(i)) == -1) {
//                        //左小于右
//                        return Inspect.Head_Positon_Right;
//                    } else {
//                        continue;
//                    }
//                }
//                return Inspect.Head_Positon_Right;
//            }
//        } catch (Exception e) {
//            e.printStackTrace();
//            return Inspect.Head_Positon_Right;
//        }
//    }

    /**
     * 正则表达式判断是否是非负数
     *
     * @param str
     * @return
     */
    public static boolean isNumeric(String str) {
        if (StringUtils.isBlank(str)) {
            return false;
        }
//        Pattern pattern = Pattern.compile("[0-9]+.*[0-9]*");
        Pattern pattern = Pattern.compile("[0-9]+\\.?[0-9]*");
        Matcher isNum = pattern.matcher(str);
        return isNum.matches();
    }

    /**
     * 正则表达式判断是否为非负数
     *
     * @param str
     * @return
     */
    public static boolean isInteger(String str) {
        if (StringUtils.isBlank(str)) {
            return false;
        }
        Pattern pattern = Pattern.compile("[0-9]*");
        Matcher isNum = pattern.matcher(str);
        return isNum.matches();
    }

}
