package cn.flightfeather.thirdapp.activity; import android.content.Intent; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.widget.EditText; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.Spinner; import android.widget.TextView; import java.util.ArrayList; import java.util.List; import cn.flightfeather.thirdapp.CommonApplication; import cn.flightfeather.thirdapp.R; import cn.flightfeather.thirdapp.adapter.AllListViewAdapter; import cn.flightfeather.thirdapp.bean.entity.City; import cn.flightfeather.thirdapp.bean.entity.District; import cn.flightfeather.thirdapp.bean.entity.Province; import cn.flightfeather.thirdapp.bean.entity.Site; import cn.flightfeather.thirdapp.bean.entity.Town; import cn.flightfeather.thirdapp.httpservice.SiteDetailService; public class SiteDetailActivity extends AppCompatActivity { private boolean isSpinnerFirst = true; private CommonApplication application; private SiteDetailService siteDetailService; // private ScenceDetailService scenceDetailService; private int STARTLOCATION = 1; //界面标题 private String TITLE = "新建工地"; //工地 private Site site; //下拉框数据 private List allProvinceData = null;//所有省份 private List provinceData = new ArrayList<>();//省份 private List allCityData = new ArrayList<>();//所有城市 private List cityData = new ArrayList<>();//城市 private List allDistrictData = new ArrayList<>();//所有区县 private List districtData = new ArrayList<>();//区县 private List allTownData = new ArrayList<>();//所有街镇 private List townData = new ArrayList<>();//街镇 private List stageData = new ArrayList<>();//工期(桩基、基础、结构、封顶、总体施工) //下拉框数据适配器 private AllListViewAdapter provinceAdapter= null; private AllListViewAdapter cityAdapter= null; private AllListViewAdapter districtAdapter= null; private AllListViewAdapter townAdapter= null; private AllListViewAdapter stageAdapter= null; //*Linerlayout private LinearLayout ll_site_name; private LinearLayout ll_site_province; private LinearLayout ll_site_city; private LinearLayout ll_site_district; private LinearLayout ll_site_town; private LinearLayout ll_site_stage; private LinearLayout ll_site_duration; private LinearLayout ll_site_BuildLicenseNumber; private LinearLayout ll_site_address; private LinearLayout ll_site_OwnerCompanyName; private LinearLayout ll_site_OwnerCompanyAddress; private LinearLayout ll_site_BuildCompanyName; private LinearLayout ll_site_BuildTelephone; private LinearLayout ll_build_contact1; private LinearLayout ll_build_contact1_telephone; private LinearLayout ll_build_contact2; private LinearLayout ll_build_contact2_telephone; private LinearLayout ll_site_location; //*TextView private TextView TV_site_name; private TextView TV_site_province; private TextView TV_site_city; private TextView TV_site_district; private TextView TV_site_town; private TextView TV_site_stage; private TextView TV_site_start_date; private TextView TV_site_end_date; private TextView TV_site_BuildLicenseNumber; private TextView TV_site_address; private TextView TV_site_OwnerCompanyName; private TextView TV_site_OwnerCompanyAddress; private TextView TV_site_BuildCompanyName; private TextView TV_site_BuildTelephone; private TextView TV_build_contact1; private TextView TV_build_contact1_telephone; private TextView TV_build_contact2; private TextView TV_build_contact2_telephone; private TextView TV_save; private TextView TV_update; private TextView TV_site_SiteLongitude; private TextView TV_site_SiteLatitude; //*EditView private EditText ET_site_name; private EditText ET_site_BuildLicenseNumber; private EditText ET_site_address; private EditText ET_site_OwnerCompanyName; private EditText ET_site_OwnerCompanyAddress; private EditText ET_site_BuildCompanyName; private EditText ET_site_BuildTelephone; private EditText ET_build_contact1; private EditText ET_build_contact1_telephone; private EditText ET_build_contact2; private EditText ET_build_contact2_telephone; //*ImageView private ImageView IV_site_location; //*Spinner private Spinner SP_site_province; private Spinner SP_site_city; private Spinner SP_site_district; private Spinner SP_site_town; private Spinner SP_site_stage; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_site_detail); application = (CommonApplication) getApplication(); siteDetailService = application.getRetrofit().create(SiteDetailService.class); // scenceDetailService = application.getRetrofit().create(ScenceDetailService.class); Intent intent = getIntent(); site = (Site) intent.getSerializableExtra("updateSite"); if (site != null){ // setSiteDetail(site); TITLE = "修改工地信息"; } else { site = new Site(); } // initUI(); // initSpinnerData(); // initSpinner(); // initLocaton(); // initDatePicker(); // initSaveButton(); } // private void initUI() { // ((TextView)findViewById(R.id.actionbar_title)).setText(TITLE); // findViewById(R.id.img_left).setOnClickListener(this); // findViewById(R.id.img_right).setVisibility(View.GONE); // findViewById(R.id.spinner_topclass_task).setVisibility(View.GONE); // //// ET_site_name = (EditText) findViewById(R.id.ET_site_name); // ET_site_BuildLicenseNumber = (EditText) findViewById(R.id.ET_site_BuildLicenseNumber); //// ET_site_address = (EditText) findViewById(R.id.ET_site_address); // ET_site_OwnerCompanyName = (EditText) findViewById(R.id.ET_site_OwnerCompanyName); // ET_site_OwnerCompanyAddress = (EditText) findViewById(R.id.ET_site_OwnerCompanyAddress); // ET_site_BuildCompanyName = (EditText) findViewById(R.id.ET_site_BuildCompanyName); // ET_site_BuildTelephone = (EditText) findViewById(R.id.ET_site_BuildTelephone); // ET_build_contact1 = (EditText) findViewById(R.id.ET_scense_contact1); // ET_build_contact1_telephone = (EditText) findViewById(R.id.ET_scense_contact1_telephone); //// ET_build_contact2 = (EditText) findViewById(R.id.ET_build_contact2); //// ET_build_contact2_telephone = (EditText) findViewById(R.id.ET_build_contact2_telephone); // //// TV_site_SiteLongitude = (TextView) findViewById(R.id.TV_site_SiteLongitude); //// TV_site_SiteLatitude = (TextView) findViewById((R.id.TV_site_SiteLatitude)); // } // // /** // * 下拉框数据初始化 // */ // private void initSpinnerData(){ // ProvinceDao provinceDao = application.getDaoSession().getProvinceDao(); // CityDao cityDao = application.getDaoSession().getCityDao(); // DistrictDao districtDao = application.getDaoSession().getDistrictDao(); // TownDao townDao = application.getDaoSession().getTownDao(); // // allProvinceData = provinceDao.loadAll(); // allCityData = cityDao.loadAll(); // allDistrictData = districtDao.loadAll(); // allTownData = townDao.loadAll(); // // provinceData = provinceDao.loadAll(); // cityData = cityDao.loadAll(); // districtData = districtDao.loadAll(); // townData = townDao.loadAll(); // //// refreshData();//刷新地址级联数据 // //// stageData.add(Domain.DURATION1); //// stageData.add(Domain.DURATION2); //// stageData.add(Domain.DURATION3); //// stageData.add(Domain.DURATION4); //// stageData.add(Domain.DURATION5); // // } // // // /** // * 初始化下拉框(spinner) // */ // private void initSpinner(){ // //// SP_site_province = (Spinner) findViewById(R.id.SP_site_province); //// SP_site_city = (Spinner) findViewById(R.id.SP_site_city); //// SP_site_district = (Spinner) findViewById(R.id.SP_site_district); //// SP_site_town = (Spinner) findViewById(R.id.SP_site_town); // SP_site_stage = (Spinner) findViewById(R.id.SP_site_stage); // // //设置默认选项 // SP_site_province.setSelection(0); // SP_site_city.setSelection(0); // SP_site_district.setSelection(0); // SP_site_town.setSelection(0); // SP_site_stage.setSelection(0); // // initAdapter(); // initListener(); // } // // /** // * 初始化定位监听事件 // */ // private void initLocaton(){ //// ll_site_location = (LinearLayout) findViewById(R.id.ll_site_location); // ll_site_location.setOnClickListener(this); // } // // /** // * 初始化日期选择器(ChartData Picker) // */ // private void initDatePicker(){ // TV_site_start_date= (TextView) findViewById(R.id.TV_site_start_date); // TV_site_end_date = (TextView) findViewById(R.id.TV_site_end_date); // TV_site_start_date.setOnClickListener(this); // TV_site_end_date.setOnClickListener(this); // } // // /** // * 获取定位结果 // */ // @Override // protected void onActivityResult(int requestCode, int resultCode, Intent data) { // super.onActivityResult(requestCode, resultCode, data); // // if(requestCode == STARTLOCATION && resultCode == RESULT_OK) { // Double longitude = (Double) data.getSerializableExtra("Longitude"); // Double latitude = (Double) data.getSerializableExtra("Latitude"); // site.setSitelongitude(longitude); // site.setSitelatitude(latitude); // TV_site_SiteLongitude.setText(longitude.toString()); // TV_site_SiteLatitude.setText(latitude.toString()); // } // } // // /** // * 初始化保存按钮 // */ // private void initSaveButton(){ // TV_save = (TextView) findViewById(R.id.TV_save); // TV_save.setOnClickListener(this); // TV_update = (TextView) findViewById(R.id.TV_update); // TV_update.setOnClickListener(this); // TV_update.setVisibility(View.GONE); // } // // /** // * 设置适配器 // */ // private void initAdapter(){ // //****下面为设置适配器********************************************** // //省份 // provinceAdapter = new AllListViewAdapter((ArrayList)provinceData, R.layout.item_scense_detail_list) { // @Override // public void bindView(ViewHolder holder, Province obj) { // holder.setText(R.id.tv_item, obj.getProvincename()); // } // }; // SP_site_province.setAdapter(provinceAdapter); // //城市 // cityAdapter = new AllListViewAdapter((ArrayList)cityData, R.layout.item_scense_detail_list) { // @Override // public void bindView(ViewHolder holder, City obj) { // holder.setText(R.id.tv_item, obj.getCityname()); // } // }; // SP_site_city.setAdapter(cityAdapter); // //区县 // districtAdapter = new AllListViewAdapter((ArrayList)districtData, R.layout.item_scense_detail_list) { // @Override // public void bindView(ViewHolder holder, District obj) { // holder.setText(R.id.tv_item, obj.getDistrictname()); // } // }; // SP_site_district.setAdapter(districtAdapter); // //街镇 // townAdapter = new AllListViewAdapter((ArrayList)townData, R.layout.item_scense_detail_list) { // @Override // public void bindView(ViewHolder holder, Town obj) { // holder.setText(R.id.tv_item, obj.getTownname()); // } // }; // SP_site_town.setAdapter(townAdapter); // //工期 // stageAdapter = new AllListViewAdapter((ArrayList)stageData, R.layout.item_scense_detail_list) { // @Override // public void bindView(ViewHolder holder, String obj) { // holder.setText(R.id.tv_item, obj); // } // }; // SP_site_stage.setAdapter(stageAdapter); // //****上面为设置适配器********************************************** // } // // /** // * 设置选择监听事件 // */ // private void initListener(){ // //****下面为设置选择监听事件********************************************** // //省份 // SP_site_province.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { // @Override // public void onItemSelected(AdapterView adapterView, View view, int i, long l) { //// if(isSpinnerFirst){ //// view.setVisibility(View.INVISIBLE); //// } //// isSpinnerFirst = false; // cityData.clear(); // for (int y = 0; y < allCityData.size(); y++){ // if(Objects.equals(allCityData.get(y).getPronvinceid(), ((Province) SP_site_province.getSelectedItem()).getProvinceid())) // cityData.add(allCityData.get(y)); // } // // try { // site.setProvincecode(((Province) SP_site_province.getSelectedItem()).getProvincecode()); // site.setProvincename(((Province) SP_site_province.getSelectedItem()).getProvincename()); // }catch (NullPointerException e){ // e.printStackTrace(); // } // cityAdapter.notifyDataSetChanged(); // } // // @Override // public void onNothingSelected(AdapterView adapterView) { // // } // }); // //城市 // SP_site_city.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { // @Override // public void onItemSelected(AdapterView adapterView, View view, int i, long l) { // districtData.clear(); // for (int y = 0; y < allDistrictData.size(); y++){ // if(Objects.equals(allDistrictData.get(y).getCityid(), ((City) SP_site_city.getSelectedItem()).getCityId())) // districtData.add(allDistrictData.get(y)); // } // // try { // site.setCitycode(((City) SP_site_city.getSelectedItem()).getCitycode()); // site.setCityname(((City) SP_site_city.getSelectedItem()).getCityname()); // }catch (NullPointerException e){ // e.printStackTrace(); // } // districtAdapter.notifyDataSetChanged(); // } // // @Override // public void onNothingSelected(AdapterView adapterView) { // // } // }); // //区县 // SP_site_district.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { // @Override // public void onItemSelected(AdapterView parent, View view, int position, long id) { // townData.clear(); // Town emptytown = new Town(); // emptytown.setTownname(Constant.DEFAULTTEXTNULL); // townData.add(emptytown); // for (int y = 0; y < allTownData.size(); y++){ // if(Objects.equals(allTownData.get(y).getDistrictid(), ((District) SP_site_district.getSelectedItem()).getDistrictid())) // townData.add(allTownData.get(y)); // } // // try { // site.setDistrictcode(((District) SP_site_district.getSelectedItem()).getDistrictcode()); // site.setDistrictname(((District) SP_site_district.getSelectedItem()).getDistrictname()); // }catch (NullPointerException e){ // e.printStackTrace(); // } // townAdapter.notifyDataSetChanged(); // } // // @Override // public void onNothingSelected(AdapterView adapterView) { // // } // }); // //街镇 // SP_site_town.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { // @Override // public void onItemSelected(AdapterView parent, View view, int position, long id) { // try { // site.setTowncode(((Town) SP_site_town.getSelectedItem()).getTowncode()); // if (Objects.equals(((Town) SP_site_town.getSelectedItem()).getTownname(), Constant.DEFAULTTEXTNULL)) {site.setTownname(null);} // else {site.setTownname(((Town) SP_site_town.getSelectedItem()).getTownname());} // }catch (NullPointerException e){ // e.printStackTrace(); // } // } // // @Override // public void onNothingSelected(AdapterView parent) { // // } // }); // //工期 // SP_site_stage.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { // @Override // public void onItemSelected(AdapterView parent, View view, int position, long id) { // try { // site.setStatus(SP_site_stage.getSelectedItem().toString()); // }catch (NullPointerException e){ // e.printStackTrace(); // } // } // // @Override // public void onNothingSelected(AdapterView parent) { // // } // }); // // //****上面为设置选择监听事件********************************************** // } // // /** // * 保存数据 // * @return // */ // @RequiresApi(api = Build.VERSION_CODES.N) // private Site save(Site site ){ // try { // if (site.getGuid() == null) // site.setGuid(UUIDGenerator.generate16ShortUUID()); // // site.setName(ET_site_name.getText().toString()); //// site.setSguid(); // //下拉框选择时直接获取数据***** //// site.setProvincecode(); //// site.setProvincename(); //// site.setCitycode(); //// site.setCityname(); //// site.setDistrictcode(); //// site.setDistrictname(); //// site.setTowncode(); //// site.setTownname(); // //***************************** // site.setSiteaddress(ET_site_address.getText().toString()); // //定位完成时直接获取数据***** //// site.setSitelongitude(); //// site.setSitelatitude(); // //*************************** //// site.setOwnercompanyid(); // site.setOwnercompanyname(ET_site_OwnerCompanyName.getText().toString()); // site.setOwnercompanyaddress(ET_site_OwnerCompanyAddress.getText().toString()); //// site.setBuildcompanyid(); // site.setBuildcompanyname(ET_site_BuildCompanyName.getText().toString()); // site.setBuildtelephone(ET_site_BuildTelephone.getText().toString()); // site.setBuildcontact1(ET_build_contact1.getText().toString()); // site.setBuildcontact1tele(ET_build_contact1_telephone.getText().toString()); // site.setBuildcontact2(ET_build_contact2.getText().toString()); // site.setBuildcontact2tele(ET_build_contact2_telephone.getText().toString()); // site.setBuildlicensenumber(ET_site_BuildLicenseNumber.getText().toString()); //// site.setStatus(); // site.setBuildstarttime(DateFormater.dateFormat2.parse((String) TV_site_start_date.getText())); // site.setBuildendtime(DateFormater.dateFormat2.parse((String) TV_site_end_date.getText())); //// site.setExtension1(); //// site.setExtension2(); //// site.setTitle(); //// site.setRemark(); // }catch (NullPointerException | ParseException e){ // e.printStackTrace(); // } // // return site; // } // // @RequiresApi(api = Build.VERSION_CODES.N) // @Override // public void onClick(View view) { // // switch (view.getId()){ // //返回键 // case R.id.img_left: // this.finish(); // break; // //工地开始时间 // case R.id.TV_site_start_date: // Calendar calendar1 = Calendar.getInstance(); // new DatePickerDialog(SiteDetailActivity.this, new DatePickerDialog.OnDateSetListener(){ // // @Override // public void onDateSet(DatePicker datePicker, int year, int month, int day) { // String result = ""; // result += year + "-" + (month+1) + "-" + day; // Toast.makeText(SiteDetailActivity.this, result, Toast.LENGTH_SHORT).show(); // TV_site_start_date.setText(result); // } // } // ,calendar1.get(Calendar.YEAR) // ,calendar1.get(Calendar.MONTH) // ,calendar1.get(Calendar.DAY_OF_MONTH)).show(); // break; // //工地结束时间 // case R.id.TV_site_end_date: // Calendar calendar2 = Calendar.getInstance(); // new DatePickerDialog(SiteDetailActivity.this, new DatePickerDialog.OnDateSetListener(){ // // @Override // public void onDateSet(DatePicker datePicker, int year, int month, int day) { // String result = ""; // result += year + "-" + (month+1) + "-" + day; // Toast.makeText(SiteDetailActivity.this, result, Toast.LENGTH_SHORT).show(); // TV_site_end_date.setText(result); // } // } // ,calendar2.get(Calendar.YEAR) // ,calendar2.get(Calendar.MONTH) // ,calendar2.get(Calendar.DAY_OF_MONTH)).show(); // break; // //保存按钮 // case R.id.TV_save: // site = save(site); // AlertDialog.Builder choiceDialogSave = new AlertDialog.Builder(this); // choiceDialogSave.setTitle("确认提交"); // choiceDialogSave.setPositiveButton("确定", new DialogInterface.OnClickListener() { // @Override // public void onClick(DialogInterface dialog, int which) { // add(); // finish(); // } // }); // choiceDialogSave.setNegativeButton("取消", new DialogInterface.OnClickListener() { // @Override // public void onClick(DialogInterface dialog, int which) { // // } // }); // // choiceDialogSave.create().show(); // break; // //修改按钮 // case R.id.TV_update: // site = save(site); // AlertDialog.Builder choiceDialogUpdate = new AlertDialog.Builder(this); // choiceDialogUpdate.setTitle("确认提交"); // choiceDialogUpdate.setPositiveButton("确定", new DialogInterface.OnClickListener() { // @Override // public void onClick(DialogInterface dialog, int which) { // update(); // finish(); // } // }); // choiceDialogUpdate.setNegativeButton("取消", new DialogInterface.OnClickListener() { // @Override // public void onClick(DialogInterface dialog, int which) { // // } // }); // // choiceDialogUpdate.create().show(); // break; // //定位 //// case R.id.ll_site_location: ////// Log.e("定位sHA1值", sHA1(this)); ////// getLocation(); //// startActivityForResult(new Intent(this, MapActivity.class), STARTLOCATION); //// break; // } // } // //// provinceData.clear(); //// cityData.clear(); //// districtData.clear(); //// townData.clear(); //// //// for (int i = 0; i < allProvinceData.size(); i++){ //// provinceData.add(allProvinceData.get(i)); //// } //// for (int i = 0;i < allCityData.size(); i++){ //// //// } //// } //// private void refreshData(){ // // /** // * 新增工地 // */ // private void add(){ // // Call putSite = siteDetailService.putSite(site); // putSite.enqueue(new Callback() { // @Override // public void onResponse(Call call, Response response) { // if(response.body() != null){ //// Toast.makeText(SiteDetailActivity.this,"保存成功",Toast.LENGTH_SHORT).show(); // Toast.makeText(SiteDetailActivity.this,"保存成功,请退出程序,刷新数据",Toast.LENGTH_LONG).show(); // } // else{ // Toast.makeText(SiteDetailActivity.this,"保存失败",Toast.LENGTH_SHORT).show(); // } // } // // @Override // public void onFailure(Call call, Throwable t) { // Toast.makeText(SiteDetailActivity.this,"网络连接失败",Toast.LENGTH_SHORT).show(); // } // }); // // } // // /** // * 修改工地 // */ // private void update(){ // Call updateSite = siteDetailService.updateSite(site); // updateSite.enqueue(new Callback() { // @Override // public void onResponse(Call call, Response response) { // if (response.body() != null){ // Toast.makeText(SiteDetailActivity.this,"修改成功",Toast.LENGTH_LONG).show(); // } // else{ // Toast.makeText(SiteDetailActivity.this,"修改失败",Toast.LENGTH_SHORT).show(); // } // } // // @Override // public void onFailure(Call call, Throwable t) { // Toast.makeText(SiteDetailActivity.this,"网络连接失败",Toast.LENGTH_SHORT).show(); // } // }); // } // // private void setSiteDetail(Site site){ // if(site.getName() != null) ET_site_name.setText(site.getName()); // if(site.getBuildlicensenumber() != null) ET_site_BuildLicenseNumber.setText(site.getBuildlicensenumber()); // if(site.getSiteaddress() != null) ET_site_address.setText(site.getSiteaddress()); // if(site.getOwnercompanyname() != null) ET_site_OwnerCompanyName.setText(site.getOwnercompanyname()); // if(site.getOwnercompanyaddress() != null) ET_site_OwnerCompanyAddress.setText(site.getOwnercompanyaddress()); // if(site.getBuildcompanyname() != null) ET_site_BuildCompanyName.setText(site.getBuildcompanyname()); // if(site.getBuildtelephone() != null) ET_site_BuildTelephone.setText(site.getBuildtelephone()); // if(site.getBuildcontact1() != null) ET_build_contact1.setText(site.getBuildcontact1()); // if(site.getBuildcontact1tele() != null) ET_build_contact1_telephone.setText(site.getBuildcontact1tele()); // if(site.getBuildcontact2() != null) ET_build_contact2.setText(site.getBuildcontact2()); // if(site.getBuildcontact2tele() != null) ET_build_contact2_telephone.setText(site.getBuildcontact2tele()); // // if(site.getBuildstarttime() != null) TV_site_start_date.setText(DateFormater.dateFormat2.format(site.getBuildstarttime())); // if(site.getBuildendtime() != null) TV_site_end_date.setText(DateFormater.dateFormat2.format(site.getBuildendtime())); // // ll_site_location.setVisibility(View.GONE); // TV_save.setVisibility(View.GONE); // TV_update.setVisibility(View.VISIBLE); // } // //// interface ScenceDetailService{ //// @PUT("scene/") //// Call putScence (@Body Scense scense); //// } }