package com.jqyd.son; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; import java.util.HashMap; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; import com.jqyd.adapter.MyAdapter; import com.jqyd.app.VirtualData; import com.jqyd.manager.R; import com.jqyd.shareInterface.Optsharepre_interface; import com.jqyd.shareInterface.UpdataToServer; import com.jqyd.son.Rzcx.CxThread; import android.app.Activity; import android.app.AlertDialog; import android.app.DatePickerDialog; import android.app.Dialog; import android.app.ProgressDialog; import android.content.Intent; import android.os.Bundle; import android.os.Handler; import android.os.Looper; import android.os.Message; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.AdapterView; import android.widget.Button; import android.widget.DatePicker; import android.widget.EditText; import android.widget.ListView; import android.widget.AdapterView.OnItemClickListener; public class Clcx extends Activity implements OnClickListener { private EditText kssj; //private EditText jssj; private Button cx; private ListView clList; private ArrayList<HashMap<String,String>> list = new ArrayList<HashMap<String,String>>(); private ArrayList<Bundle> listBundle = null; private MyAdapter adapter; private Calendar c; //private int num = 0; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.clcx); kssj = (EditText) this.findViewById(R.id.kssj); //jssj = (EditText) this.findViewById(R.id.jssj); cx = (Button) this.findViewById(R.id.cx); clList = (ListView) this.findViewById(R.id.list); kssj.setOnClickListener(this); //jssj.setOnClickListener(this); cx.setOnClickListener(this); init(); } public void init(){ c = Calendar.getInstance(); //业务时间默认当天 Date date = new Date(); SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); String mDateTime1 = formatter.format(date); kssj.setText(mDateTime1); //jssj.setText(mDateTime1); } //设置界面显示 public void setShow(){ adapter=new MyAdapter(list, this); clList.setAdapter(adapter); clList.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { // TODO Auto-generated method stub Bundle bundle = listBundle.get(position); Intent intent =new Intent(); intent.putExtra("moduleName", "clcx"); intent.putExtras(bundle); intent.setClass(Clcx.this, Info.class); startActivity(intent); } }); } /** * 查询服务 */ public String cxFromDb(){ if(list!= null && list.size()>0){ list.clear(); } String mgs = ""; String ks = kssj.getText().toString(); //String js = jssj.getText().toString(); JSONObject object = new JSONObject(); Optsharepre_interface share_obj = new Optsharepre_interface(Clcx.this); try { object.put("gguid", share_obj.getDataFromPres("GGUID")); object.put("guid", share_obj.getDataFromPres("GUID")); object.put("ksrq", ks); //object.put("jsrq", js); } catch (JSONException e) { // TODO Auto-generated catch block e.printStackTrace(); } String result = new UpdataToServer(Clcx.this).searchFromServer("CLCX", object); Log.e("result----------", result); if(!result.equals("") && !result.equals("-1") && !result.equals("500")){ JSONObject obj = null; try { obj = new JSONObject(result); } catch (JSONException e3) { // TODO Auto-generated catch block e3.printStackTrace(); } try { JSONObject jg = (JSONObject) obj.get("cxjg"); if(jg.getString("result").equals("0")){//有数据 HashMap<String,String> map = null; Bundle bundle = null; JSONArray cxnrs = (JSONArray) obj.get("cxnr"); listBundle=new ArrayList<Bundle>(); for(int i=0;i<cxnrs.length();i++){ try { String sp_state = ""; String jtfs = ""; JSONObject obj_rz = (JSONObject) cxnrs.get(i); bundle = new Bundle(); //0、待审批 1、已审批 2、未通过3、审批中4、待执行 5、执行中 6、结束 7、未执行 switch(Integer.parseInt(obj_rz.getString("spzt"))){ case 0: sp_state = "待审批 "; break; case 1: sp_state = "已审批 "; break; case 2: sp_state = "未通过 "; break; case 3: sp_state = "审批中"; break; case 4: sp_state = "待执行"; break; case 5: sp_state = "执行中"; break; case 6: sp_state = "结束"; break; case 7: sp_state = "未执行"; break; } if(obj_rz.getString("jtfs").equals("1")){ jtfs = "飞机"; }else if(obj_rz.getString("jtfs").equals("2")){ jtfs = "火车"; }else if(obj_rz.getString("jtfs").equals("3")){ jtfs = "自驾"; }else if(obj_rz.getString("jtfs").equals("4")){ jtfs = "其它"; } bundle.putString("cid", obj_rz.getString("cid")); bundle.putString("cfrq", obj_rz.getString("cfrq")); bundle.putString("pro_start", obj_rz.getString("pro_start")); bundle.putString("city_start", obj_rz.getString("city_start")); bundle.putString("pro_end", obj_rz.getString("pro_end")); bundle.putString("city_end", obj_rz.getString("city_end")); bundle.putString("fhrq", obj_rz.getString("fhrq")); bundle.putString("bz", obj_rz.getString("bz")); bundle.putString("spzt", sp_state); bundle.putString("addtime", obj_rz.getString("addtime")); bundle.putString("jtfs", jtfs); listBundle.add(bundle); String addtime = obj_rz.getString("addtime"); addtime = addtime.split("-")[1]+"/"+addtime.split("-")[2]; map = new HashMap<String,String>(); map.put("textView1", addtime); map.put("textView2", sp_state); list.add(map); } catch (JSONException e) { // TODO Auto-generated catch block e.printStackTrace(); } } mgs = "0";//成功获得数据 }else{ mgs = jg.getString("detail"); } } catch (JSONException e) { // TODO Auto-generated catch block e.printStackTrace(); } }else if(result.equals("-1")){ mgs = "抱歉,网络连接失败!"; }else{ mgs = "查询失败,请联系你的管理员!"; } return mgs; //list = VirtualData.getClInfo(); } /** * 处理线程 */ class CxThread extends Thread implements Runnable{ @Override public void run() { // TODO Auto-generated method stub super.run(); Looper.prepare(); Message msg =new Message(); msg.what = 1; myHander.sendMessage(msg); Message msg2 =new Message(); String result = cxFromDb(); Bundle bunlde = new Bundle(); if(result.equals("0")){//网络连接失败 msg2.what = 2; }else{ msg2.what = 3; bunlde.putString("msg", result); } msg2.setData(bunlde); myHander.sendMessage(msg2); Looper.loop(); } } @Override public void onClick(View v) { // TODO Auto-generated method stub if(v == kssj){ //num = 0; getDate(); }/*else if(v == jssj){ num = 1; getDate(); }*/else if(v == cx){ new CxThread().start(); } } //弹出日期框 public void getDate() { new DatePickerDialog(Clcx.this, new DatePickerDialog.OnDateSetListener() { public void onDateSet(DatePicker arg0, int year, int month, int date) { // TODO Auto-generated method stub String m = ""; String d = ""; if ((month + 1) < 10) { m = "0" + (month + 1); } else { m = (month + 1) + ""; } if (date < 10) { d = "0" + date; } else { d = date + ""; } String time = year + "-" + m + "-" + d; //if(num == 0){ kssj.setText(time); /*}else if(num == 1){ jssj.setText(time); }*/ } }, c.get(Calendar.YEAR), c.get(Calendar.MONTH), c.get(Calendar.DAY_OF_MONTH)).show(); } Handler myHander = new Handler(){ @Override public void handleMessage(Message msg) { // TODO Auto-generated method stub super.handleMessage(msg); switch(msg.what){ case 1: showDialog(1); break; case 2: removeDialog(1); setShow(); break; case 3: removeDialog(1); Bundle bundle = msg.getData(); showToast(bundle.getString("msg")); break; } } }; /** * 结果显示 * @param message */ public void showToast(String message){ new AlertDialog.Builder(Clcx.this) .setTitle("提示") .setMessage(message) .setPositiveButton("确定", null) .show(); } @Override protected Dialog onCreateDialog(int id) { // TODO Auto-generated method stub ProgressDialog dialog = new ProgressDialog(Clcx.this); dialog.setIndeterminate(true); dialog.setCancelable(false); switch(id){ case 1: dialog.setMessage("正在查询,请稍候……"); break; case 2: break; case 3: break; } return dialog; } }