/**============================================================ * 版权: 久其软件 版权所有 (c) * 包: com.jiuqi.njt.ui * 修改记录: * 日期 作者 内容 * ============================================================= * 2013-6-28 liyue * ============================================================*/ package com.jiuqi.njt.ui; import java.util.HashMap; import android.app.AlertDialog; import android.content.DialogInterface; import android.content.Intent; import android.os.AsyncTask; import android.os.Bundle; import android.text.TextUtils; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewStub; import android.widget.Button; import com.jqyd.android.module.lbs.util.CheckState_interface; import com.jiuqi.mobile.nigo.comeclose.bean.base.AdminAreaBean; import com.jiuqi.mobile.nigo.comeclose.bean.base.DataDictionaryBean; import com.jiuqi.mobile.nigo.comeclose.bean.base.KindsOfCarBean; import com.jiuqi.mobile.nigo.comeclose.manager.app.SelectNewsKey; import com.jiuqi.njt.R; import com.jiuqi.njt.model.CModuleBean; import com.jiuqi.njt.model.ModuleType; import com.jiuqi.njt.util.Constants; import com.jiuqi.njt.util.TitleBarUtil; import com.jiuqi.njt.util.UIUtil; import com.jiuqi.njt.widget.DialogWithList; /** * <p> * 农机信息查询 * </p> * * <p> * Copyright: 版权所有 (c)<br> * Company: 久其 * </p> * * @author liyue * @version 2013-6-28 */ public class QueryMachinesActivity extends AbstractNjtActivity01 implements OnClickListener { private Button btnInfoCategory; private Button btnMachineCategory; private Button btnCropCategory; private Button btnPrice; private Button btnProvince; // private EditText etXianShi; private Button btnQuery; private DataDictionaryBean[] MACHINE_INFO_TYPE_DictionaryBeans; //private DataDictionaryBean[] MACHINE_TYPE_DictionaryBeans; private KindsOfCarBean[] MACHINE_TYPE_DictionaryNewBeans1; private DataDictionaryBean[] CROP_TYPE_dataDictionaryBeans; private CModuleBean moduleBean; @Override protected void onCreate(Bundle savedInstanceState) { isPostinfo = false; super.onCreate(savedInstanceState); } @Override protected void onQueryComplete(HashMap<Integer, DataDictionaryBean[]> result) { Log.v(Constants.TAG, "JobsQueryActivity onQueryComplete()"); if(null!=xzqh){ btnProvince.setText(xzqh.getFullName()); } MACHINE_INFO_TYPE_DictionaryBeans = result.get(MACHINE_INFO_TYPE_MARK); // MACHINE_TYPE_DictionaryBeans = result.get(MACHINE_TYPE_MARK); CROP_TYPE_dataDictionaryBeans = result.get(CROP_TYPE_MARK); MACHINE_TYPE_DictionaryNewBeans1 = MACHINE_TYPE_DictionaryNewBeans; final String[] strArrayContentA = getNames(result .get(MACHINE_INFO_TYPE_MARK)); final String[] strArrayContentB = getNames(result.get(CROP_TYPE_MARK)); // final String[] strArrayContentC = getNames(result // .get(MACHINE_TYPE_MARK)); final String[] strArrayContentC = getNamesNew(MACHINE_TYPE_DictionaryNewBeans1); if(null!=moduleBean&&moduleBean.getModuleFlag()!=ModuleType.njcx){ btnInfoCategory.setText(moduleBean.getModuleFlag().toString().replace("农机", "")); }else{ if (strArrayContentA.length > 0) { btnInfoCategory.setText(strArrayContentA[0]); } btnInfoCategory.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { DialogWithList.Builder dialog = new DialogWithList.Builder(QueryMachinesActivity.this); dialog.setTitle("信息类别"); dialog.setPositiveButton(Constants.CANCEL_TEXT, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub dialog.dismiss(); } }); dialog.setItems(strArrayContentA, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub btnInfoCategory.setText(strArrayContentA[which]); dialog.dismiss(); } }); dialog.create().show(); } }); } if (strArrayContentB.length > 0) { btnCropCategory.setText(strArrayContentB[0]); } btnCropCategory.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { DialogWithList.Builder dialog = new DialogWithList.Builder(QueryMachinesActivity.this); dialog.setTitle("作物种类"); dialog.setPositiveButton(Constants.CANCEL_TEXT, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub dialog.dismiss(); } }); dialog.setItems(strArrayContentB, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub btnCropCategory.setText(strArrayContentB[which]); dialog.dismiss(); } }); dialog.create().show(); } }); if (strArrayContentC.length > 0) { btnMachineCategory.setText(strArrayContentC[0]); } btnMachineCategory.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { DialogWithList.Builder dialog = new DialogWithList.Builder(QueryMachinesActivity.this); dialog.setTitle("农机类别"); dialog.setPositiveButton(Constants.CANCEL_TEXT, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub dialog.dismiss(); } }); dialog.setItems(strArrayContentC, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub btnMachineCategory.setText(strArrayContentC[which]); dialog.dismiss(); } }); dialog.create().show(); } }); } @Override protected void initParam() { // TODO Auto-generated method stub moduleBean = (CModuleBean) getIntent().getSerializableExtra(Constants.PARAM_MODULEBEAN); } protected void initWidgets() { setContentView(R.layout.query_machines_activity); ViewStub rlTitleBar = (ViewStub) findViewById(R.id.titleBarStub); String title = ""; if(null!=moduleBean){ title =UIUtil.convertModuleTypeToString(moduleBean.getModuleFlag()); }else{ title = "农机信息查询"; } TitleBarUtil.createTitleBar(this, rlTitleBar, title, new OnClickListener() { @Override public void onClick(View v) { QueryMachinesActivity.this.finish(); } }); btnInfoCategory = (Button) findViewById(R.id.btnInfoCategory); btnMachineCategory = (Button) findViewById(R.id.btnMachineCategory); btnCropCategory = (Button) findViewById(R.id.btnCropCategory); btnPrice = (Button) findViewById(R.id.btnPrice); btnProvince = (Button) findViewById(R.id.btnProvince); btnQuery = (Button) findViewById(R.id.btnQuery); } protected void initListeners() { btnPrice.setOnClickListener(this); btnProvince.setOnClickListener(this); btnQuery.setOnClickListener(this); } protected void initUI() { if(!TextUtils.isEmpty(application.getProvince())){ btnProvince.setText(application.getProvince()); } } @Override public void onClick(View v) { switch (v.getId()) { case R.id.btnPrice: // UIUtil.showMsg(this, "R.id.btnPrice"); doPopPrice(); break; case R.id.btnProvince: UIUtil.requestXzqh(this,xzqh); break; case R.id.btnQuery: if(UIUtil.isFastDoubleClick()){ return; } if (doValidate()) { if(new CheckState_interface(QueryMachinesActivity.this).checkConnection()){ new SubmitQueryAsyncTask().execute(); }else{ UIUtil.showMsg(QueryMachinesActivity.this, Constants.NETWORK_STATE_ERROR); } } break; default: break; } } private void doPopPrice() { DialogWithList.Builder dialog = new DialogWithList.Builder(this); dialog.setTitle("价格范围"); dialog.setPositiveButton(Constants.CANCEL_TEXT, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub dialog.dismiss(); } }); dialog.setItems(strArrayContent_Price, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub btnPrice.setText(strArrayContent_Price[which]); dialog.dismiss(); } }); dialog.create().show(); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data){ if(requestCode == Constants.REQUEST_XZQH_CODE){ if(resultCode == RESULT_OK){ AdminAreaBean xzqh = (AdminAreaBean)data.getSerializableExtra(Constants.PARAM_XZQH); Log.v(Constants.TAG, xzqh.toString()); this.xzqh = xzqh; if(null!=xzqh){ btnProvince.setText(null==xzqh.getFullName()?"":xzqh.getFullName()); } } } } private boolean doValidate() { // 条件都可以为空,代表查询全部内容; return true; } /** * 提交信息,访问网络时必须变成异步任务才可以提交,2.3规则。 */ private class SubmitQueryAsyncTask extends AsyncTask<Void, Void, SelectNewsKey> { @Override protected SelectNewsKey doInBackground(Void... params) { CharSequence btnInfoCategoryText = btnInfoCategory.getText(); CharSequence btnCropCategoryText = btnCropCategory.getText(); CharSequence btnMachineCategoryText = btnMachineCategory.getText(); CharSequence etPriceText = btnPrice.getText(); // CharSequence btnProvinceText = btnProvince.getText(); Double minPrice = null;//空值代表查全部 Double maxPrice = null; int infoType = 0; int cropType = 0; long machineType = 0; // 信息类别 if (null != MACHINE_INFO_TYPE_DictionaryBeans && MACHINE_INFO_TYPE_DictionaryBeans.length > 0) { for (DataDictionaryBean i : MACHINE_INFO_TYPE_DictionaryBeans) { if (i.getMark() == MACHINE_INFO_TYPE_MARK && i.getName().equalsIgnoreCase( btnInfoCategoryText.toString())) { infoType = i.getCode(); break; } } } // 农机类别 // if (null != MACHINE_TYPE_DictionaryBeans // && MACHINE_TYPE_DictionaryBeans.length > 0) { // for (DataDictionaryBean i : MACHINE_TYPE_DictionaryBeans) { // if (i.getMark() == MACHINE_TYPE_MARK // && i.getName().equalsIgnoreCase( // btnMachineCategoryText.toString())) { // machineType = i.getCode(); // break; // } // } // } if (null != MACHINE_TYPE_DictionaryNewBeans && MACHINE_TYPE_DictionaryNewBeans.length > 0) { for (KindsOfCarBean i : MACHINE_TYPE_DictionaryNewBeans) { if (i.getName().equalsIgnoreCase( btnMachineCategoryText.toString())) { machineType = i.getCode(); break; } } } // 作物种类 if (null != CROP_TYPE_dataDictionaryBeans && CROP_TYPE_dataDictionaryBeans.length > 0) { for (DataDictionaryBean i : CROP_TYPE_dataDictionaryBeans) { if (i.getMark() == CROP_TYPE_MARK && i.getName().equalsIgnoreCase( btnCropCategoryText.toString())) { cropType = i.getCode(); break; } } } // 获得选择的价格范围 for (int i = 0; i < strArrayContent_Price.length; i++) { if (strArrayContent_Price[i].equals(etPriceText.toString())) { maxPrice = numArrayContent_price[i]; break; } } SelectNewsKey key = new SelectNewsKey(Constants.PAGE_SIZE); Long code = null; if(null != xzqh){ code = xzqh.getCode(); }else{ if(!TextUtils.isEmpty(application.getProvinceCode())){ code = Long.parseLong(application.getProvinceCode()); } } key.setCarTaskNewsParams(infoType, machineType, cropType, minPrice, maxPrice, code); return key; } @Override protected void onPostExecute(SelectNewsKey key) { Intent intent = new Intent(QueryMachinesActivity.this, SearchResultActivity.class); intent.putExtra("key", key); intent.putExtra("flag", "machine"); startActivity(intent); } } }