Dict.java 8.77 KB
package com.sitech.ismp.coll.busi.e2e.base;

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashMap;
import java.util.Map;

import org.apache.log4j.Logger;

import com.sitech.base.AgentProperties;

public class Dict {
	private static  Logger error = Logger.getLogger("ERROR");
	private static Map<String,String> CRM_BUREAU_DICT = new HashMap<String, String>();
	private static Map<String,String> IBP_BUREAU_DICT = new HashMap<String, String>();
	private static Map<String,String> CA_BUREAU_DICT = new HashMap<String, String>();
	private static Map<String,String> CA_STATUS_DICT = new HashMap<String, String>();
	private static Map<String,String> CA_ACCESS_TYPE_DICT = new HashMap<String, String>();
	private static Map<String,String> CA_VERSION_TYPE_DICT = new HashMap<String, String>();
	private static Map<String,String> CA_PRODUCT_TYPE_DICT = new HashMap<String, String>();
	private static Map<String,String> CA_OPER_TYPE_DICT = new HashMap<String, String>();
	private static Map<String,String> CA_SUB_OPER_TYPE_DICT = new HashMap<String, String>();

	static{
		CA_SUB_OPER_TYPE_DICT.put("U01", "用户要求复机");
		CA_SUB_OPER_TYPE_DICT.put("U05", "欠费复机");
		CA_SUB_OPER_TYPE_DICT.put("X01", "改性能");
		CA_SUB_OPER_TYPE_DICT.put("X02", "改地址");
		CA_SUB_OPER_TYPE_DICT.put("X05", "改号");
		CA_SUB_OPER_TYPE_DICT.put("X09", "过户装机");
		CA_SUB_OPER_TYPE_DICT.put("X10", "改装装机");		
		CA_SUB_OPER_TYPE_DICT.put("X13", "续约互转变更");
		CA_SUB_OPER_TYPE_DICT.put("Y02", "取消营销活动");		
		CA_SUB_OPER_TYPE_DICT.put("Z01", "新装");
		CA_SUB_OPER_TYPE_DICT.put("X17", "铜转光平移");		
		CA_SUB_OPER_TYPE_DICT.put("C03", "欠费拆机");
		CA_SUB_OPER_TYPE_DICT.put("V01", "直改中");		
		CA_SUB_OPER_TYPE_DICT.put("V02", "中改直");
		CA_SUB_OPER_TYPE_DICT.put("C01", "用户要求拆机");		
		CA_SUB_OPER_TYPE_DICT.put("C02", "违章拆机");
		CA_SUB_OPER_TYPE_DICT.put("I08", "分帐");
		CA_SUB_OPER_TYPE_DICT.put("I28", "押金与普通互改");		
		CA_SUB_OPER_TYPE_DICT.put("I29", "移后装");
		CA_SUB_OPER_TYPE_DICT.put("I31", "移先装");		
		CA_SUB_OPER_TYPE_DICT.put("I42", "宅内变更");
		CA_SUB_OPER_TYPE_DICT.put("I44", "转帐");
	}
	
	public static String getCaSubOperType(String key) {
		if(key != null && !key.equals("")){
			String value = CA_SUB_OPER_TYPE_DICT.get(key);
			return value == null ? key : value;
		}else{
			return "";
		}
	}
	
	
	static{
		CA_OPER_TYPE_DICT.put("1", "新装");
		CA_OPER_TYPE_DICT.put("2", "拆机");
		CA_OPER_TYPE_DICT.put("3", "移先装");
		CA_OPER_TYPE_DICT.put("4", "移先拆");
		CA_OPER_TYPE_DICT.put("5", "停机");
		CA_OPER_TYPE_DICT.put("6", "复机");
		CA_OPER_TYPE_DICT.put("7", "修改");
		CA_OPER_TYPE_DICT.put("8", "移后装");
		CA_OPER_TYPE_DICT.put("9", "移后拆");
		CA_OPER_TYPE_DICT.put("10", "改性能");
		CA_OPER_TYPE_DICT.put("11", "移机");
		CA_OPER_TYPE_DICT.put("12", "中直互改");
		CA_OPER_TYPE_DICT.put("13", "拆直留宽");
		CA_OPER_TYPE_DICT.put("14", "拆宽留直");	
		CA_OPER_TYPE_DICT.put("16", "移先装(直线宽带同时移)");
		CA_OPER_TYPE_DICT.put("17", "移后装(直线宽带同时移)");
		CA_OPER_TYPE_DICT.put("18", "移先拆(直线宽带同时移)");
		CA_OPER_TYPE_DICT.put("19", "移后拆(直线宽带同时移)");
		CA_OPER_TYPE_DICT.put("20", "移先装(移宽留直)");
		CA_OPER_TYPE_DICT.put("21", "移后装(移宽留直)");
		CA_OPER_TYPE_DICT.put("22", "移先拆(移宽留直)");
		CA_OPER_TYPE_DICT.put("23", "移后拆(移宽留直)");
		CA_OPER_TYPE_DICT.put("24", "移先装(移直留宽)");
		CA_OPER_TYPE_DICT.put("25", "移后装(移直留宽)");
		CA_OPER_TYPE_DICT.put("26", "移先拆(移直留宽)");
		CA_OPER_TYPE_DICT.put("27", "移后拆(移直留宽)");
		CA_OPER_TYPE_DICT.put("28", "同区移机");
		CA_OPER_TYPE_DICT.put("29", "拆宽移直");
		CA_OPER_TYPE_DICT.put("30", "移先装(移直拆宽)");
		CA_OPER_TYPE_DICT.put("31", "移后装(移直拆宽)");
		CA_OPER_TYPE_DICT.put("32", "移先拆(移直拆宽)");
		CA_OPER_TYPE_DICT.put("33", "移后拆(移直拆宽)");		
		CA_OPER_TYPE_DICT.put("34", "移先装(移宽拆直)");
		CA_OPER_TYPE_DICT.put("35", "移后装(移宽拆直)");
		CA_OPER_TYPE_DICT.put("36", "移先拆(移宽拆直)");
		CA_OPER_TYPE_DICT.put("37", "移后拆(移宽拆直)");
	}
	
	public static String getCaOperType(String key) {
		if(key != null && !key.equals("")){
			String value = CA_OPER_TYPE_DICT.get(key);
			return value == null ? key : value;
		}else{
			return "";
		}
	}
	
	static{
		CA_PRODUCT_TYPE_DICT.put("0057420", "ADSL");
		CA_PRODUCT_TYPE_DICT.put("0057442", "普通直线");
		CA_PRODUCT_TYPE_DICT.put("0057440", "LAN");
		CA_PRODUCT_TYPE_DICT.put("0057432", "ADSL专线");
		CA_PRODUCT_TYPE_DICT.put("0057450", "VPDN分点");
	}
	
	public static String getCaProductType(String key) {
		if(key != null && !key.equals("")){
			String value = CA_PRODUCT_TYPE_DICT.get(key);
			return value == null ? key : value;
		}else{
			return "";
		}
	}

	static{
		CA_VERSION_TYPE_DICT.put("1", "正常单");
		CA_VERSION_TYPE_DICT.put("2", "修改单");
	}
	
	public static String getCaVersionType(String key) {
		if(key != null && !key.equals("")){
			String value = CA_VERSION_TYPE_DICT.get(key);
			return value == null ? key : value;
		}else{
			return "";
		}
	}
	
	static{
		CA_ACCESS_TYPE_DICT.put("0", "普通");
		CA_ACCESS_TYPE_DICT.put("1", "PON");
		CA_ACCESS_TYPE_DICT.put("2", "SIP语音");
		CA_ACCESS_TYPE_DICT.put("3", "VPN");
		CA_ACCESS_TYPE_DICT.put("4", "EPON");
	}
	
	public static String getCaAccessType(String key) {
		if(key != null && !key.equals("")){
			String value = CA_ACCESS_TYPE_DICT.get(key);
			return value == null ? key : value;
		}else{
			return "";
		}
	}

	static{
		String crmBureauDataFile = AgentProperties.AGENT_HOME + "/config/crmBureau.data";
		BufferedReader br = null;
		try{
			br = new BufferedReader(new InputStreamReader(new FileInputStream(crmBureauDataFile),"UTF-8"));
			String line = null;
			while ((line = br.readLine()) != null) {
				if("".equals(line.trim())){
					continue;
				}
				
				String[] elem = line.split("#@&@#");
				CRM_BUREAU_DICT.put(elem[0], elem[1]);
			}
		}catch (Exception e) {
			error.error("Exception while init CRM_BUREAU_DICT", e);
		}finally{
			if(br != null){
				try {
					br.close();
				} catch (IOException e) {
				}
			}
		}
	}
	
	static{
		String caStatusDataFile = AgentProperties.AGENT_HOME + "/config/caOrderStatusDict.data";
		BufferedReader br = null;
		try{
			br = new BufferedReader(new InputStreamReader(new FileInputStream(caStatusDataFile),"UTF-8"));
			String line = null;
			while ((line = br.readLine()) != null) {
				if("".equals(line.trim())){
					continue;
				}
				
				String[] elem = line.split("#@&@#");
				CA_STATUS_DICT.put(elem[0], elem[1]);
				System.out.println(elem[0]+"\t"+elem[1]);
			}
		}catch (Exception e) {
			error.error("Exception while init CA_STATUS_DICT", e);
		}finally{
			if(br != null){
				try {
					br.close();
				} catch (IOException e) {
				}
			}
		}
	}
	
	
	static{
		String crmBureauDataFile = AgentProperties.AGENT_HOME + "/config/ibpBureau.data";
		BufferedReader br = null;
		try{
			br = new BufferedReader(new InputStreamReader(new FileInputStream(crmBureauDataFile),"UTF-8"));
			String line = null;
			while ((line = br.readLine()) != null) {
				if("".equals(line.trim())){
					continue;
				}
				
				String[] elem = line.split("#@&@#");
				IBP_BUREAU_DICT.put(elem[0], elem[1]);
			}
		}catch (Exception e) {
			error.error("Exception while init IBP_BUREAU_DICT", e);
		}finally{
			if(br != null){
				try {
					br.close();
				} catch (IOException e) {
				}
			}
		}
	}
	
	static{
		String caBureauDataFile = AgentProperties.AGENT_HOME + "/config/caBureau.data";
		BufferedReader br = null;
		try{
			br = new BufferedReader(new InputStreamReader(new FileInputStream(caBureauDataFile),"UTF-8"));
			String line = null;
			while ((line = br.readLine()) != null) {
				if("".equals(line.trim())){
					continue;
				}
				
				String[] elem = line.split("#@&@#");
				CA_BUREAU_DICT.put(elem[0], elem[1]);
			}
		}catch (Exception e) {
			error.error("Exception while init CA_BUREAU_DICT", e);
		}finally{
			if(br != null){
				try {
					br.close();
				} catch (IOException e) {
				}
			}
		}
	}
	
	
	public static String getCrmBureau(String key) {
		String value = CRM_BUREAU_DICT.get(key);
		return value == null ? key : value;
	}
	
	public static String getIbpBureau(String key) {
		String value = IBP_BUREAU_DICT.get(key);
		return value == null ? key : value;
	}

	public static String getCaBureau(String key) {
		String value = CA_BUREAU_DICT.get(key);
		return value == null ? key : value;
	}
	
	public static String getCaStatus(String key) {
		String value = CA_STATUS_DICT.get(key);
		return value == null ? key : value;
	}
}