xuxiuxi
2017-03-22 daad95eefa884411112b2fe02b9b19acff25d3bf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
package com.bsk.zhangbo.demoforbsk.com.bsk.zhangbo.demoforbsk.service;
 
import com.bsk.zhangbo.demoforbsk.util.AppApi;
 
import net.sourceforge.pinyin4j.PinyinHelper;
 
import org.xutils.http.RequestParams;
import org.xutils.x;
 
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
 
import cn.com.basic.face.discern.common.BaseCommonCallBack;
import cn.com.basic.face.discern.common.CommonVariables;
import cn.com.basic.face.discern.entity.Dictionary;
import cn.com.basic.face.discern.query.item.VistorTypeQueryItem;
 
public class DictionaryService {
 
    public static List<String> nationList = new ArrayList<String>();
    public static List<String> mCredentialsList = new ArrayList<String>();
    public static List<String> mSexList = new ArrayList<String>();
    public static Map<String, String> idMap = new HashMap<String, String>();
    public static List<String> countryWordList = new ArrayList<String>();
    public static HashMap<String,List<String>> countryData = new HashMap<String,List<String>>();
    public static String[] countryWordData = new String[]{};
 
    public static void loadAllDictionaryData() {
        loadNation();
        loadCredentialsList();
        loadSexList();
    }
 
    public static String getPinYinFirstLetter(String str) {
        StringBuffer sb = new StringBuffer();
        try {
            sb.setLength(0);
            char c = str.charAt(0);
            String[] pinyinArray = PinyinHelper.toHanyuPinyinStringArray(c);
            if (pinyinArray != null) {
                sb.append(pinyinArray[0].charAt(0));
            } else {
                sb.append(c);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return sb.toString();
    }
 
    public static void loadNation() {
        RequestParams params = new RequestParams(AppApi.BASEURL+AppApi.DICTIONARY_TYPE_LIST);
        params.addParameter(Dictionary.FieldNames.type, CommonVariables.DictionaryType.NATION);
        x.http().get(params, new BaseCommonCallBack() {
            public void success() {
                List<Dictionary> items = getList(Dictionary.class);
                countryWordData = new String[items.size()];
                int i=0;
                for (Dictionary item : items) {
                    idMap.put(item.getName(), item.getId()+"");
                    nationList.add(item.getName());
                    String captialLetter = item.getRemark();//getPinYinFirstLetter(nation.getName()).toUpperCase();
                    List list = countryData.get(captialLetter);
                    if (list == null) {
                        list = new ArrayList();
                        countryData.put(captialLetter, list);
                        countryWordList.add(0, captialLetter);
                    }
                    list.add(item.getName());
                    countryWordData[i] = item.getName();
                    i++;
                }
            }
        });
    }
 
    public static void loadCredentialsList() {
        RequestParams params = new RequestParams(AppApi.BASEURL+AppApi.DICTIONARY_TYPE_LIST);
        params.addParameter(Dictionary.FieldNames.type, CommonVariables.DictionaryType.CREDENTIALS);
        x.http().get(params, new BaseCommonCallBack() {
            public void success() {
                List<Dictionary> items = getList(Dictionary.class);
                for (Dictionary item : items) {
                    idMap.put(item.getName(), item.getId()+"");
                    mCredentialsList.add(item.getName());
                }
            }
        });
    }
 
    private static void loadSexList() {
        RequestParams params = new RequestParams(AppApi.BASEURL+AppApi.DICTIONARY_TYPE_LIST);
        params.addParameter(Dictionary.FieldNames.type, CommonVariables.DictionaryType.SEX);
        x.http().get(params, new BaseCommonCallBack() {
            public void success() {
                List<Dictionary> items = getList(Dictionary.class);
                for (Dictionary item : items) {
                    idMap.put(item.getName(), item.getId()+"");
                    mSexList.add(item.getName());
                }
            }
        });
 
    }
 
    public static String getId(String name) {
        return idMap.get(name);
    }
 
}