package eVVM.apk.ui.login; import android.text.TextUtils; import android.util.Log; import android.view.View; import com.hjq.widget.SettingBar; import org.greenrobot.eventbus.EventBus; import java.util.ArrayList; import java.util.List; import butterknife.BindView; import butterknife.OnClick; import eVVM.apk.R; import eVVM.apk.helper.basepicker.DataPickerDialog; import eVVM.apk.mvp.MvpActivity; import eVVM.apk.ui.bean.CityBean; import eVVM.apk.ui.bean.CompanyBean; import eVVM.apk.ui.event.CompanyEvent; import eVVM.apk.ui.login.city.CityContract; import eVVM.apk.ui.login.city.CityPresenter; public class CompanyChooseActivity extends MvpActivity implements CityContract.View { @BindView(R.id.company_sheng) SettingBar companySheng; @BindView(R.id.company_shi) SettingBar companyShi; @BindView(R.id.company_xian) SettingBar companyXian; @BindView(R.id.company_cname) SettingBar companyCname; private int areaType = 0; private int parentId = 0; @Override protected int getLayoutId() { return R.layout.activity_company_choose; } @Override protected int getTitleId() { return R.id.tb_cpmpany_title; } @Override protected void initView() { } @Override protected void initData() { } @OnClick({R.id.company_sheng, R.id.company_shi, R.id.company_xian, R.id.company_cname}) public void onViewClicked(View view) { switch (view.getId()) { case R.id.company_sheng: areaType = 1; getCityDiago(1); //getCityDiago2(); break; case R.id.company_shi: areaType = 2; getCityDiago(2); break; case R.id.company_xian: areaType = 3; getCityDiago(3); break; case R.id.company_cname: if (TextUtils.isEmpty(companySheng.getLeftText()) || TextUtils.isEmpty(companyShi.getLeftText()) || TextUtils.isEmpty(companyXian.getLeftText())) { toast("请先选择地区"); } else { //toast("danwei"); getPresenter().getCompany(parentId); } break; } } private void getCityDiago(int type) { switch (type) { case 1: getPresenter().getCity(0); break; case 2: if (TextUtils.isEmpty(companySheng.getLeftText().toString())) { toast("请先选择省份"); return; } Log.e("CityparentId", "" + parentId); getPresenter().getCity(parentId); break; case 3: if (TextUtils.isEmpty(companySheng.getLeftText().toString())) { toast("请先选择省份"); return; } if (TextUtils.isEmpty(companyShi.getLeftText().toString())) { toast("请先选择城市"); } getPresenter().getCity(parentId); break; } } private void setCityText(String province, String city, String area) { companySheng.setLeftText(province); companyShi.setLeftText(city); companyXian.setLeftText(area); } @Override protected CityPresenter createPresenter() { return new CityPresenter(); } @Override public void getCityError(String msg) { toast(msg); } @Override public void getCitySuccess(CityBean data) { final List shengList = data.getData(); List namelist = new ArrayList<>(); for (int i = 0; i < shengList.size(); i++) { namelist.add(shengList.get(i).getAreaName()); } DataPickerDialog.Builder builder = new DataPickerDialog.Builder(this); DataPickerDialog dialog = builder.setData(namelist).setSelection(0).setTitle("区域选择") .setOnDataSelectedListener(new DataPickerDialog.OnDataSelectedListener() { @Override public void onDataSelected(String itemValue) { //toast(itemValue); parentId = 0; if (areaType == 1) { companySheng.setLeftText(itemValue); companyShi.setLeftText(""); companyXian.setLeftText(""); } else if (areaType == 2) { companyShi.setLeftText(itemValue); companyXian.setLeftText(""); } else if (areaType == 3) { companyXian.setLeftText(itemValue); } for (int i = 0; i < shengList.size(); i++) { if (shengList.get(i).getAreaName().equals(itemValue)) { parentId = shengList.get(i).getId(); } } } }).create(); dialog.show(); } @Override public void getCompanyError(String msg) { toast(msg); } @Override public void getCompanySuccess(CompanyBean data) { final List shengList = data.getData(); if (shengList.size() == 0) { toast("该地区暂无单位"); return; } List namelist = new ArrayList<>(); for (int i = 0; i < shengList.size(); i++) { namelist.add(shengList.get(i).getName()); } DataPickerDialog.Builder builder = new DataPickerDialog.Builder(this); DataPickerDialog dialog = builder.setData(namelist).setSelection(0).setTitle("单位选择") .setOnDataSelectedListener(new DataPickerDialog.OnDataSelectedListener() { @Override public void onDataSelected(String itemValue) { companyCname.setLeftText(itemValue); EventBus.getDefault().post(new CompanyEvent(itemValue)); finish(); } }).create(); dialog.show(); } }