package com.hyrt.cei.ui.econdata;
import java.util.ArrayList;
import java.util.List;
import com.hyrt.cei.adapter.EconAdapter;
import com.hyrt.cei.application.CeiApplication;
import com.hyrt.cei.ui.econdata.adapter.EconDataZBAdapter;
import com.hyrt.cei.util.MyTools;
import com.hyrt.cei.util.WriteOrRead;
import com.hyrt.cei.util.XmlUtil;
import com.hyrt.cei.vo.ColumnEntry;
import com.hyrt.cei.vo.New;
import com.hyrt.cei.vo.funId;
import com.hyrt.cei.webservice.service.Service;
import com.hyrt.ceiphone.ContainerActivity;
import com.hyrt.ceiphone.R;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.AdapterView.OnItemClickListener;
/**
* 指标速查
*
* @author tmy
*
*/
public class EconZBQueryActivity extends ContainerActivity implements OnClickListener {
private List<View> groupViews = new ArrayList<View>();
private ColumnEntry columnEntry;
private List<New> DataList;
private ListView expList;
CeiApplication application;
public static String MODEL_NAME;
private CeiApplication mapplication;
boolean flage;
private ImageView img_econ_main, img_szks, img_zjzs, img_fxyc, img_zbsc,
img_data_search;
private TextView tv_left,tv_center;
Context context = EconZBQueryActivity.this;
private Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
expList.setAdapter(new EconDataZBAdapter(EconZBQueryActivity.this,
DataList));
expList.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
ColumnEntry col=columnEntry.getColByName(EconDataMain.MODEL_NAME);
if(columnEntry.getColByName("指标查询",col.getId())==null) return;
String funid = columnEntry.getColByName("指标查询",col.getId()).getId();
New oneNew = DataList.get(arg2);
if (isHasfunID(funid)
|| DataList.get(arg2).getIsfree().equals("1")) {
String htmlUrl = MyTools.newsHtml
+ DataList.get(arg2).getId();
/* for (View view : groupViews) {
view.findViewById(R.id.econ_data_ea_item_group_tv)
.setBackgroundResource(
R.drawable.econ_data_ea_item_group);
}
arg1.findViewById(R.id.econ_data_ea_item_group_tv)
.setBackgroundResource(
R.drawable.econ_data_ea_item_group1);
groupViews.add(arg1);*/
Intent intent = new Intent(EconZBQueryActivity.this,
EconDataContent.class);
intent.putExtra("id", oneNew.getId());
startActivity(intent);
} else {
// show location view指的是父容器,popwindow显示在父容器的什么位置
MyTools.exitShow(EconZBQueryActivity.this,
findViewById(R.id.econ_data_zb_all), "没有数据!");
}
}
});
flage = true;
// prolayout.setVisibility(View.GONE);
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.econ_data_index_search);
MODEL_NAME = ((CeiApplication) getApplication()).nowStart;// 获取当前业务名称。
columnEntry = ((CeiApplication) getApplication()).columnEntry;
application = (CeiApplication) getApplication();
mapplication = (CeiApplication) getApplication();
initView();
initData();
}
private void initData() {
DataList = new ArrayList<New>();
new Thread() {
@Override
public void run() {
ColumnEntry col=columnEntry.getColByName(EconDataMain.MODEL_NAME);
if(columnEntry.getColByName("指标查询",col.getId())==null) return;
ColumnEntry colBg = columnEntry.getColByName("指标查询",col.getId());
if (colBg != null) {
String numberId = colBg.getId();
if (numberId != null && !numberId.equals("")) {
if (((CeiApplication) getApplication()).isNet()) {
String zhib = Service.querydbsByFunctionId(
numberId, "40");
try {
List<New> dataList = XmlUtil.getNews(zhib);
WriteOrRead.write(zhib, MyTools.nativeData,
"zhibsc.xml");
DataList.addAll(dataList);
System.out.println(DataList.size());
//购买的新闻
String buyEcon = Service.queryBuyDbNews(columnEntry
.getUserId());
WriteOrRead.write(buyEcon, MyTools.nativeData,
"buyEcon.xml");
// 清空集合中的数据
mapplication.buyEconData.clear();
// 把购买的数据加入集合中
mapplication.buyEconData.addAll(XmlUtil
.queryBuyNews(buyEcon));
if (handler != null) {
handler.sendEmptyMessage(1);
}
} catch (Exception e) {
e.printStackTrace();
}
} else {
String zhib = WriteOrRead.read(MyTools.nativeData,
"zhibsc.xml");
try {
List<New> dataList = XmlUtil.getNews(zhib);
DataList.addAll(dataList);
String buyEcon = WriteOrRead.read(MyTools.nativeData,
"buyEcon.xml");
if (buyEcon != null && !buyEcon.equals("")) {
mapplication.buyEconData.clear();
mapplication.buyEconData.addAll(XmlUtil
.queryBuyNews(buyEcon));
}
if (handler != null) {
handler.sendEmptyMessage(2);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
}
}.start();
}
private void initView() {
expList = (ListView) findViewById(R.id.econ_index_search_list_content);
tv_left = (TextView) findViewById(R.id.econ_zj_num_top_text1);
tv_left.setText(MODEL_NAME);
tv_center=(TextView)findViewById(R.id.econ_main_top_img);
tv_center.setText("指标速查");
img_szks = (ImageView) findViewById(R.id.econ_index_search_botton_1);
img_zjzs = (ImageView) findViewById(R.id.econ_index_search_botton_2);
img_fxyc = (ImageView) findViewById(R.id.econ_index_search_botton_3);
img_zbsc = (ImageView) findViewById(R.id.econ_index_search_botton_4);
//img_data_search = (ImageView) findViewById(R.id.econ_main_top_tv2);
tv_left.setOnClickListener(this);
img_szks.setOnClickListener(this);
img_fxyc.setOnClickListener(this);
img_zjzs.setOnClickListener(this);
img_zbsc.setOnClickListener(this);
//img_data_search.setOnClickListener(this);
}
@Override
public void onClick(View v) {
if (v == tv_left) {
Intent intent = new Intent(context, EconDataMain.class);
startActivity(intent);
} else if (v == img_szks) {
Intent intent = new Intent(context, EconDateNumberActivity.class);
startActivity(intent);
} else if (v == img_zjzs) {
Intent intent = new Intent(context, EconZZDataActivity.class);
startActivity(intent);
} else if (v == img_fxyc) {
Intent intent = new Intent(context, EconFXDataActivity.class);
startActivity(intent);
} else if (v == img_zbsc) {
return;
}
}
private boolean isHasfunID(String funid) {
mapplication = (CeiApplication) getApplication();
for (funId id : mapplication.buyEconData) {
if (funid.equals(id.getFunid())) {
return true;
}
}
return false;
}
}