package com.yxcheng.token.utils;

import com.google.common.collect.Lists;

import java.util.List;

/**
 * 代码长度为12位，首位为0，最后两位是13 ，增值税电子专用发票
 */
public class ZoneUtil {

	public static List<String> dqList = Lists.newArrayList();
    static {
		dqList.add("1100");
		dqList.add("1200");
		dqList.add("1300");
		dqList.add("1400");
		dqList.add("1500");
		dqList.add("2100");
		dqList.add("2102");
		dqList.add("2200");
		dqList.add("2300");
		dqList.add("3100");
		dqList.add("3200");
		dqList.add("3300");
		dqList.add("3302");
		dqList.add("3400");
		dqList.add("3500");
		dqList.add("3502");
		dqList.add("3600");
		dqList.add("3700");
		dqList.add("3702");
		dqList.add("4100");
		dqList.add("4200");
		dqList.add("4300");
		dqList.add("4400");
		dqList.add("4403");
		dqList.add("4500");
		dqList.add("4600");
		dqList.add("5000");
		dqList.add("5100");
		dqList.add("5200");
		dqList.add("5300");
		dqList.add("5400");
		dqList.add("6100");
		dqList.add("6200");
		dqList.add("6300");
		dqList.add("6400");
		dqList.add("6500");
		dqList.add("9999");
        dqList.add("0000");
		dqList.add("8888");
	}
	/**
	 * 根据发票代码获取所属地区
	 * @param fpdm
	 * @return
	 */
	public static String getDq(String fpdm) {
		String dqdm = null;
		if (fpdm.length() == 12) {
			dqdm = fpdm.substring(1, 5);
		} else {
			dqdm = fpdm.substring(0, 4);
		}
		if (!dqdm.equalsIgnoreCase("2102") && !dqdm.equalsIgnoreCase("3302")
				&& !dqdm.equalsIgnoreCase("3502")
				&& !dqdm.equalsIgnoreCase("3702")
				&& !dqdm.equalsIgnoreCase("4403")) {
			dqdm = dqdm.substring(0, 2) + "00";
		}
		return dqdm;
	}
	
	/**
	 * 根据税号获取所属地区
	 */
	public static String getDqByTaxno(String taxno) {
		String dqdm = null;
		if (taxno.length() == 18) {
			dqdm = taxno.substring(2, 6);
		} else {
			dqdm = taxno.substring(0, 4);
		}
		//System.out.println(dqdm);
		if (!dqdm.equalsIgnoreCase("2102") && !dqdm.equalsIgnoreCase("3302")
				&& !dqdm.equalsIgnoreCase("3502")
				&& !dqdm.equalsIgnoreCase("3702")
				&& !dqdm.equalsIgnoreCase("4403")) {
			dqdm = dqdm.substring(0, 2) + "00";
		}
		//System.out.println(dqdm);
		return dqdm;
	}
	public static void main(String[] args){
//		  Random rand = new Random();
//		  for(int i=0; i<100; i++) {
//		   System.out.println(rand.nextInt(60) + 1);
//		  }
		System.out.println(getDqByTaxno("91310110MA1G8DHB0T"));
	}
}
