package com.example.wms;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.ListView;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
import com.example.wms.entity.StockEntityQuery_data;
import com.example.wms.entity.StockQueryEntity;
import com.example.wms.entity.StockQueryParam;
import com.example.wms.util.HttpHelper;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpParams;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
public class StockQuery extends AppCompatActivity {
private ListView listView_main_news;
private List<Map<String, String>> list_map = null;
private ImageButton btn_1;
private Button btn_2;
private String result = "";
private EditText itemname;
HttpParams httpParameters;
private Context mContext;
private StockQueryAdapter mAdapter = null;
private ListView list_stockquery;
private LinkedList<StockEntityQuery_data> mDate = new LinkedList<>();
private ListView lv_stockquery;
private StockEntityQuery_data stockEntityQuery_data;
private StockQueryParam stockQueryParam;
private String QueryErrorMsg = "";//接口消息
private String StockData="";//库存数据
ProgressDialog progressDialog;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_stock_query);
lv_stockquery = (ListView) findViewById(R.id.list_stockquery);
btn_1 = findViewById(R.id.fh_btn);
btn_1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
finish();
}
});
//查找数据按钮
btn_2 = findViewById(R.id.btn_queryboxStock_qqq);
btn_2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
//1.获取查询条件
itemname = findViewById(R.id.et_code);
String itemn = itemname.getText().toString();
progressDialog = new ProgressDialog(StockQuery.this);
progressDialog.setTitle("CATL");
progressDialog.setMessage("正在努力加载页面,请稍等......");
progressDialog.setIndeterminate(true);
progressDialog.setCancelable(false);
progressDialog.show();
new Thread(new Runnable() {
public void run() {
try {
QueryStock(itemn);
Message msg = new Message();
msg.what = 0;
HttpHelper.handler.sendMessage(msg);
} catch (Exception e) {
e.printStackTrace();
}
}
}).start();
HttpHelper.handler = new Handler() {
public void handleMessage(Message msg) {
try {
Gson gson = new Gson();
mDate = gson.fromJson(StockData, new TypeToken<LinkedList<StockEntityQuery_data>>() {
}.getType());
if (mDate.size() > 0) {
mContext = StockQuery.this;
// 6.把添加的界面显示到界面上
mAdapter = new StockQueryAdapter((LinkedList<StockEntityQuery_data>) mDate, mContext);
lv_stockquery.setAdapter(mAdapter);
} else {
QueryErrorMsg = "没有库存";
}
if (progressDialog != null) {
progressDialog.dismiss();
if (QueryErrorMsg.equals("")) {
Toast.makeText(StockQuery.this, "库存查询成功", Toast.LENGTH_LONG).show();
} else {
Toast.makeText(StockQuery.this, QueryErrorMsg, Toast.LENGTH_SHORT).show();
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
};
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
public void QueryStock(String item){
// 2.获取凭证 给对象设置数据转换成json
Gson gson = new Gson();
StockQueryParam stockQueryParam = new StockQueryParam();
stockQueryParam.setItemname(item);
String value = gson.toJson(stockQueryParam);
JSONObject root = new JSONObject();
try {
//存data的值
root.put("EncryptTokenNo", HttpHelper.EncryptTokenNo);
root.put("apptype", HttpHelper.AppType);
root.put("AppDeviceNo", HttpHelper.AppDeviceNo);
root.put("IPAddress", HttpHelper.IPAddress);
root.put("JsonData", value);
} catch (JSONException e) {
e.printStackTrace();
}
// 3.调用接口
result = PostInfo(root.toString());
mDate.clear();
try {
// 4.返回的json数据转换成list集合
// 5.用适配器添加集合
JSONObject jsonObjectALL = null;
jsonObjectALL = new JSONObject(result);
String code = jsonObjectALL.optString("code", null);
String isSucc = jsonObjectALL.optString("IsSucc", null);
String baseinfo = jsonObjectALL.optString("info", null);
String data = jsonObjectALL.optString("data", null);
if (code.equals("1")) {
StockData=data;
} else {
QueryErrorMsg = "查询库存接口返回失败,消息:" + baseinfo;
}
} catch (JSONException e) {
e.printStackTrace();
}
}
protected String PostInfo(String json){
//Setting_Activity.SDcard();
//String url= HttpHelper.BASE_URL+methedName;
return HttpHelper.Post(HttpHelper.url_StockQuery, json);
}
}