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.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 Jhcx extends Activity implements OnClickListener {
private EditText kssj;
//private EditText jssj;
private Button cx;
private ListView jhList;
private Calendar c;
private MyAdapter adapter;
private ArrayList<HashMap<String,String>> list = new ArrayList<HashMap<String,String>>();
private ArrayList<Bundle> listBundle = null;
//private int num = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.jhcx);
kssj = (EditText) this.findViewById(R.id.kssj);
//jssj = (EditText) this.findViewById(R.id.jssj);
cx = (Button) this.findViewById(R.id.cx);
jhList = (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,3);
jhList.setAdapter(adapter);
jhList.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", "jhcx");
intent.putExtras(bundle);
intent.setClass(Jhcx.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(Jhcx.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(Jhcx.this).searchFromServer("JHCX", object);
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");
//System.out.println("计划查询---------------"+jg.getString("result")+","+jg.getString("detail"));
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 {
JSONObject obj_rz = (JSONObject) cxnrs.get(i);
String jhlb = obj_rz.getString("jhlb");
String status = obj_rz.getString("status");
//计划类型(1-客户走访 2-陌生走访 3-再次拜访 4-市场检查 5-促销执行)
//任务状态(1-结束 2-执行中 3-待执行 4-待审批)
if(jhlb.equals("1")){
jhlb = "客户走访";
}else if(jhlb.equals("2")){
jhlb = "陌生走访 ";
}else if(jhlb.equals("3")){
jhlb = "二次回访";
}else if(jhlb.equals("4")){
jhlb = "市场检查";
}else if(jhlb.equals("5")){
jhlb = "促销执行";
}
//0、待审批 3、审批中 1、已审批 2、未通过 4、待执行 5、执行中 6、结束 7、未执行
switch(Integer.parseInt(status)){
case 0:
status = "待审批 ";
break;
case 1:
status = "已审批 ";
break;
case 2:
status = "未通过 ";
break;
case 3:
status = "审批中";
break;
case 4:
status = "待执行";
break;
case 5:
status = "执行中";
break;
case 6:
status = "结束";
break;
case 7:
status = "未执行";
break;
}
bundle = new Bundle();
bundle.putString("jid", obj_rz.getString("jid"));
bundle.putString("jhlb", jhlb);
bundle.putString("addtime", obj_rz.getString("addtime"));
bundle.putString("ksrq", obj_rz.getString("ksrq"));
bundle.putString("jsrq", obj_rz.getString("jsrq"));
bundle.putString("jhsl", obj_rz.getString("jhsl"));
bundle.putString("mbkh", obj_rz.getString("custnames"));
bundle.putString("bz", obj_rz.getString("bz"));
bundle.putString("status", status);
listBundle.add(bundle);
map = new HashMap<String,String>();
map.put("textView1", jhlb);
map.put("textView2", obj_rz.getString("ksrq"));
map.put("textView3", obj_rz.getString("jsrq"));
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.getJhInfo();
}
/**
* 处理线程
*/
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();
Bundle bunlde = new Bundle();
String result = cxFromDb();
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(Jhcx.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(Jhcx.this)
.setTitle("提示")
.setMessage(message)
.setPositiveButton("确定", null)
.show();
}
@Override
protected Dialog onCreateDialog(int id) {
// TODO Auto-generated method stub
ProgressDialog dialog = new ProgressDialog(Jhcx.this);
dialog.setIndeterminate(true);
dialog.setCancelable(false);
switch(id){
case 1:
dialog.setMessage("正在查询,请稍候……");
break;
case 2:
break;
case 3:
break;
}
return dialog;
}
}