package cn.com.basic.face.service; import cn.com.basic.face.dialog.CountryDialog; import cn.com.basic.face.dialog.SelectDialog; import cn.com.basic.face.fragment.RegisterFragment; import cn.com.basic.face.fragment.CheckInFragment; import cn.com.basic.face.util.AppApi; import org.xutils.http.RequestParams; import org.xutils.x; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import cn.com.basic.face.discern.common.BaseCommonCallBack; import cn.com.basic.face.discern.common.CommonVariables; import cn.com.basic.face.discern.entity.Dictionary; public class DictionaryMng extends BaseMng { public static DictionaryMng instance = new DictionaryMng(); public static DictionaryMng getInstance() { return instance; } public static List nationList = new ArrayList(); public static List mCredentialsList = new ArrayList(); public static List genderList = new ArrayList(); public static List uniqueFirstLetterList = new ArrayList(); public static HashMap> countriesGroupByFirstLetter = new HashMap>(); public static String[] countryWordData = new String[]{}; public static List visitReasonList = new ArrayList(); public void loadAllDictionaryData() { loadCountries(); loadIdTypeList(); loadGenderList(); loadVisitReasonList(); } public void loadCountries() { RequestParams params = new RequestParams(AppApi.BASEURL+AppApi.DICTIONARY_TYPE_LIST); params.addParameter(Dictionary.FieldNames.type, CommonVariables.DictionaryType.COUNTRY); x.http().get(params, new BaseCommonCallBack() { public void success() { List 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 firstLetter = item.getRemark(); List list = countriesGroupByFirstLetter.get(firstLetter); if (list == null) { list = new ArrayList(); countriesGroupByFirstLetter.put(firstLetter, list); uniqueFirstLetterList.add(0, firstLetter); } list.add(item.getName()); countryWordData[i] = item.getName(); i++; } CountryDialog.setCountries(uniqueFirstLetterList, countriesGroupByFirstLetter); } }); } public void loadIdTypeList() { RequestParams params = new RequestParams(AppApi.BASEURL+AppApi.DICTIONARY_TYPE_LIST); params.addParameter(Dictionary.FieldNames.type, CommonVariables.DictionaryType.ID_TYPE); x.http().get(params, new BaseCommonCallBack() { public void success() { SelectDialog.setIdTypeList(getDictionaryNameList(getList(Dictionary.class))); } }); } private void loadGenderList() { RequestParams params = new RequestParams(AppApi.BASEURL+AppApi.DICTIONARY_TYPE_LIST); params.addParameter(Dictionary.FieldNames.type, CommonVariables.DictionaryType.GENDER); x.http().get(params, new BaseCommonCallBack() { public void success() { SelectDialog.setGenderList(getDictionaryNameList(getList(Dictionary.class))); } }); } private void loadVisitReasonList() { RequestParams params = new RequestParams(AppApi.BASEURL+AppApi.DICTIONARY_TYPE_LIST); params.addParameter(Dictionary.FieldNames.type, CommonVariables.DictionaryType.VISIT_REASON); x.http().get(params, new BaseCommonCallBack() { public void success() { SelectDialog.setVisitReason(getDictionaryNameList(getList(Dictionary.class))); } }); } public List getDictionaryNameList(List dictionaryList) { List nameList = new ArrayList(); for (Dictionary dictionary : dictionaryList) { idMap.put(dictionary.getName(), dictionary.getId()+""); nameList.add(dictionary.getName()); } return nameList; } }