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.MyApp;
import com.jqyd.manager.R;
import com.jqyd.model.CustomerModule;
import com.jqyd.model.OrderDetailModel;
import com.jqyd.model.OrderMxDetailModel;
import com.jqyd.shareInterface.Optdb_interfce;
import com.jqyd.shareInterface.Optsharepre_interface;
import com.jqyd.shareInterface.UpdataToServer;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.DatePickerDialog;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
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 Ddcx extends Activity implements OnClickListener {
private EditText sj;
private EditText dgdw;
private Button cx;
private ListView ddList;
private Calendar c;
private MyAdapter adapter;
private ArrayList<HashMap<String,String>> list = new ArrayList<HashMap<String,String>>();
ArrayList<HashMap<String,String>> custList = null;
private Optdb_interfce db =null;
private String custId = "";
ArrayList<CustomerModule> list_cust = new ArrayList<CustomerModule>();
private OrderDetailModel orderinfo = new OrderDetailModel();
private ArrayList<OrderMxDetailModel> list_ordermx = new ArrayList<OrderMxDetailModel>();
private JSONArray arr ;
private MyApp myApp;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.ddcx);
sj = (EditText) this.findViewById(R.id.sj);
dgdw = (EditText) this.findViewById(R.id.dgdw);
cx = (Button) this.findViewById(R.id.cx);
ddList = (ListView) this.findViewById(R.id.list);
sj.setOnClickListener(this);
dgdw.setOnClickListener(this);
cx.setOnClickListener(this);
myApp = (MyApp) this.getApplication();
init();
}
//初始化
public void init(){
c = Calendar.getInstance();
//业务时间默认当天
Date date = new Date();
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
String mDateTime1 = formatter.format(date);
sj.setText(mDateTime1);
}
//设置界面显示
public void setShow(){
adapter=new MyAdapter(list, this);
ddList.setAdapter(adapter);
ddList.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// TODO Auto-generated method stub
try {
JSONObject obj = (JSONObject) arr.get(position);
String ddzt = "";
//0、待审批 3、审批中 1、已审批 2、未通过
if(obj.getString("shzt").equals("0")){
ddzt = "待审批";
}else if(obj.getString("shzt").equals("1")){
ddzt = "已审批";
}else if(obj.getString("shzt").equals("2")){
ddzt = "未通过";
}else if(obj.getString("shzt").equals("3")){
ddzt = "审批中";
}
orderinfo.setCname(obj.getString("cname"));
orderinfo.setDdbh(obj.getString("ddbh"));
orderinfo.setDdzt(ddzt);
orderinfo.setJhtime(obj.getString("jhtime"));
orderinfo.setLinkpersion(obj.getString("linkpersion"));
orderinfo.setLinktel(obj.getString("linktel"));
orderinfo.setShdz(obj.getString("shdz"));
orderinfo.setShlxtel(obj.getString("shlxtel"));
orderinfo.setShr(obj.getString("shr"));
orderinfo.setShzt(obj.getString("shzt"));
orderinfo.setXdr(obj.getString("xdr"));
orderinfo.setXdTime(obj.getString("xdTime"));
orderinfo.setXxzt(obj.getString("xxzt"));
orderinfo.setXyed(obj.getString("xyed"));
orderinfo.setAllcount(obj.getString("allcount"));
orderinfo.setBz(obj.getString("bz"));
JSONArray ordermxs = (JSONArray) obj.get("mxlist");
for(int i=0;i<ordermxs.length();i++){
try {
JSONObject obj_db = (JSONObject) ordermxs.get(i);
OrderMxDetailModel detail = new OrderMxDetailModel();
detail.setSpid(obj_db.getString("spid"));
detail.setSpname(obj_db.getString("spname"));
detail.setSpnum(obj_db.getString("spnum"));
detail.setUnit(obj_db.getString("unit"));
detail.setSaleprice(obj_db.getString("saleprice"));
detail.setPrises(obj_db.getString("prises"));
detail.setGgxh(obj_db.getString("ggxh"));
detail.setCkprice(obj_db.getString("ckprice"));
list_ordermx.add(detail);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Intent intent =new Intent();
myApp.setOrderinfo(orderinfo);
myApp.setList_ordermx(list_ordermx);
intent.setClass(Ddcx.this, Orderxq.class);
startActivity(intent);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
}
/**
* 查询服务
*/
/* public void cxFromDb(){
list.clear();
list = VirtualData.getClInfo();
}*/
/**
* 获得订购单位信息
*/
public void initDgdw(){
//custList = VirtualData.customers_demo();
db = new Optdb_interfce(Ddcx.this);
list_cust = db.searchCustomers(1, 1, "");
db.close_SqlDb();
String[] data = new String[list_cust.size()];
for (int i = 0; i < list_cust.size(); i++) {
//data[i] = custList.get(i).get("custName");
CustomerModule cust = list_cust.get(i);
data[i] = cust.getShort_name();
}
new AlertDialog.Builder(Ddcx.this).setTitle("选择订购单位")
.setItems(data, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dgdw.setText((list_cust.get(which)).getCname());
custId = (list_cust.get(which)).getCid();
System.out.println("kehuid------------"+custId);
}
}).setNegativeButton("取消", null).show();
}
/**
* 处理线程
*/
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();
}
}
/**
* 查询服务
*/
public String cxFromDb(){
System.out.println();
if(list!= null && list.size()>0){
list.clear();
}
String mgs = "";
JSONObject object = new JSONObject();
Optsharepre_interface share_obj = new Optsharepre_interface(Ddcx.this);
try {
object.put("gguid", share_obj.getDataFromPres("GGUID"));
object.put("guid", share_obj.getDataFromPres("GUID"));
object.put("time", sj.getText().toString());
object.put("cusid", custId);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("订单查询----------"+object.toString());
String result = new UpdataToServer(Ddcx.this).searchFromServer("DDCX", 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");
if(jg.getString("result").equals("0")){//有数据
arr = (JSONArray) obj.get("orderinfo");
for(int i=0;i<arr.length();i++){
HashMap<String,String> map = new HashMap<String,String>();
JSONObject order_obj = (JSONObject) arr.get(i);
String ddzt = "";
//0、待审批 3、审批中 1、已审批 2、未通过
if(order_obj.getString("shzt").equals("0")){
ddzt = "待审批";
}else if(order_obj.getString("shzt").equals("1")){
ddzt = "已审批";
}else if(order_obj.getString("shzt").equals("2")){
ddzt = "未通过";
}else if(order_obj.getString("shzt").equals("3")){
ddzt = "审批中";
}
String time = order_obj.getString("xdTime");
time = time.split("-")[1]+"/"+time.split("-")[2];
map.put("textView1", time);
map.put("textView2", ddzt);
list.add(map);
}
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();
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(v == sj){
getDate();
}else if(v == dgdw){
initDgdw();
}else if(v == cx){
new CxThread().start();
}
}
//弹出日期框
public void getDate() {
new DatePickerDialog(Ddcx.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;
sj.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);
setShow();
Bundle bundle = msg.getData();
showToast(bundle.getString("msg"));
break;
}
}
};
/**
* 结果显示
* @param message
*/
public void showToast(String message){
new AlertDialog.Builder(Ddcx.this)
.setTitle("提示")
.setMessage(message)
.setPositiveButton("确定", null)
.show();
}
@Override
protected Dialog onCreateDialog(int id) {
// TODO Auto-generated method stub
ProgressDialog dialog = new ProgressDialog(Ddcx.this);
dialog.setIndeterminate(true);
dialog.setCancelable(false);
switch(id){
case 1:
dialog.setMessage("正在查询,请稍候……");
break;
case 2:
break;
case 3:
break;
}
return dialog;
}
}