/**
*
*/
package com.hupu.games.activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.AdapterView;
import android.widget.Button;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.TextView;
import com.hupu.games.R;
import com.hupu.games.adapter.MyCaipiaoListAdapter;
import com.hupu.games.common.HuPuRes;
import com.hupu.games.common.HupuLog;
import com.hupu.games.common.SharedPreferencesMgr;
import com.hupu.games.data.MyCaipiaoResp;
import com.hupu.games.data.SSLKey;
import com.hupu.games.data.game.quiz.QuizEntity;
import com.hupu.games.data.game.quiz.QuizListResp;
import com.hupu.games.data.game.quiz.QuizResp;
import com.hupu.games.pay.PhoneInputActivity;
import com.hupu.games.view.PinnedHeaderXListView;
import com.hupu.games.view.PinnedHeaderXListView.IXListViewListener;
import com.hupu.http.HupuHttpHandler;
public class MyCaipiaoListActivity extends HupuBaseActivity {
PinnedHeaderXListView mListView;
MyCaipiaoListAdapter mAdapter;
Intent in;
LayoutInflater mInflater;
private View walletInfo;
TextView txtBalance,txtRechargeDiscount;
View v;
int qid = 0;
int page = 0;
private String money = "0.00";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.layout_my_caipiao_list);
in = getIntent();
mInflater = LayoutInflater.from(this);
walletInfo = mInflater.inflate(R.layout.item_header_my_wallet, null);
txtBalance = (TextView) walletInfo.findViewById(R.id.txt_wallet_num);
txtRechargeDiscount = (TextView) walletInfo.findViewById(R.id.recharge_explain);
qid = in.getIntExtra("qid", 0);
mListView = (PinnedHeaderXListView) findViewById(R.id.list_player);
mListView.setPullLoadEnable(false, true);
mListView.addHeaderView(walletInfo);
mListView.mFooterView.findViewById(R.id.xlistview_footer_text)
.setVisibility(View.GONE);
((TextView) mListView.mFooterView
.findViewById(R.id.xlistview_footer_text))
.setText(getString(R.string.no_more_caipiao));
mListView.setXListViewListener(new pullListener());
setOnClickListener(R.id.btn_back);
setOnClickListener(R.id.gold_num);
setOnClickListener(R.id.btn_recharge);
setOnClickListener(R.id.btn_atm);
setOnClickListener(R.id.layout_coin_info);
findViewById(R.id.gold_num).setVisibility(View.GONE);
mListView.setOnItemClickListener(new PlayerListClick());
txtBalance.setText(money);
txtRechargeDiscount.setText(SharedPreferencesMgr.getString("caipiaoDiscountTips", ""));
}
@Override
protected void onResume() {
// TODO Auto-generated method stub
getCaipiaoList();
super.onResume();
}
/** 设置listview 上拉和下拉的监听 */
class pullListener implements IXListViewListener {
@Override
public void onRefresh() {
// 加载最新竞猜数据
getCaipiaoList();
}
@Override
public void onLoadMore() {
if (page > 1) {
reqMoreData();
}
}
}
private MyCaipiaoResp caipiaoList;
@Override
public void treatClickEvent(int id) {
super.treatClickEvent(id);
switch (id) {
case R.id.btn_back:
finish();
break;
case R.id.btn_recharge:
sendUmeng(HuPuRes.UMENG_EVENT_MY_WALLET, HuPuRes.UMENG_KEY_WALLET_CHARGE);
Intent order = new Intent(this, UserRechargeActivity.class);
order.putExtra("balance", money);
startActivity(order);
break;
case R.id.layout_coin_info:
sendUmeng(HuPuRes.UMENG_EVENT_MY_WALLET, HuPuRes.UMENG_KEY_WALLET_ACCOUNT);
Intent infoIntent = new Intent(this, CoinInfoActivity.class);
infoIntent.putExtra("info_type", HuPuRes.REQ_METHOD_GET_CAIPIAO_COIN_INFO);
startActivity(infoIntent);
break;
case R.id.btn_atm:
sendUmeng(HuPuRes.UMENG_EVENT_MY_WALLET, HuPuRes.UMENG_KEY_WALLET_WITHDRAW);
Intent atmIntent = new Intent(this, CoinInfoActivity.class);
atmIntent.putExtra("info_type", HuPuRes.REQ_METHOD_GET_CAIPIAO_ATM);
startActivity(atmIntent);
break;
}
}
@Override
public void treatClickEvent(View view) {
int id = view.getId();
switch (id) {
case R.id.open_caipiao_result:
// Intent info = new Intent(this, UserWalletActivity.class);
// startActivity(info);
break;
}
}
void switchToPhoneBindAct() {
Intent intent = new Intent(MyCaipiaoListActivity.this,
PhoneInputActivity.class);
startActivityForResult(intent, HupuBaseActivity.REQ_GO_BIND_PHONE);
}
private void getCaipiaoList() {
initParameter();
mParams.put("token", mToken);
mParams.put("page", "1");
String sign = SSLKey.getSSLSign(mParams,
SharedPreferencesMgr.getString("sugar", ""));// salt
// 值由init中的sugar给出。必须要有的。
mParams.put("sign", sign);
sendRequest(HuPuRes.REQ_METHOD_MY_CAIPIAO_LIST, mParams,
new HupuHttpHandler(this), false);
}
private void reqMoreData() {
initParameter();
mParams.put("token", mToken);
mParams.put("page", page + "");
String sign = SSLKey.getSSLSign(mParams,
SharedPreferencesMgr.getString("sugar", ""));// salt
// 值由init中的sugar给出。必须要有的。
mParams.put("sign", sign);
sendRequest(HuPuRes.REQ_METHOD_MY_CAIPIAO_MORE_LIST, mParams,
new HupuHttpHandler(this), false);
}
private void setSelection(QuizResp list, int qid) {
int size = 0;
for (QuizListResp quizList : list.list) {
if (quizList.status == 2) {
int i = 0;
for (QuizEntity entity : quizList.mQuizList) {
if (entity.qid == qid) {
size += i;
break;
}
i++;
}
break;
}
size += quizList.mQuizList.size();
}
if (size > 0 && size < mAdapter.getCount()) {
mListView.setSelection(size);
}
qid = 0;
}
@Override
public void onReqResponse(Object o, int methodId) {
super.onReqResponse(o, methodId);
//
if (o != null) {
HupuLog.e("papa", "methodId" + methodId);
if (methodId == HuPuRes.REQ_METHOD_MY_CAIPIAO_LIST) {
caipiaoList = (MyCaipiaoResp) o;
money = caipiaoList.walletBalance;
txtBalance.setText(caipiaoList.walletBalance+"元");
if (caipiaoList.current < caipiaoList.total) {
page = caipiaoList.current + 1;
// 开启加载更多
mListView.setPullLoadEnable(true, true);
} else {
mListView.setPullLoadEnable(false, true);
}
if (caipiaoList.mList != null && caipiaoList.mList.size() > 0) {
findViewById(R.id.img_no_date).setVisibility(View.GONE);
} else {
findViewById(R.id.img_no_date).setVisibility(View.VISIBLE);
mListView.setPullLoadEnable(false, false);
}
mAdapter = new MyCaipiaoListAdapter(this, click);
mAdapter.setData(caipiaoList);
mListView.setAdapter(mAdapter);
mAdapter.notifyDataSetChanged();
mListView.stopRefresh();
mListView.stopLoadMore();
} else if (methodId == HuPuRes.REQ_METHOD_MY_CAIPIAO_MORE_LIST) {
MyCaipiaoResp moreCaipiaoList = (MyCaipiaoResp) o;
if (moreCaipiaoList.current < moreCaipiaoList.total) {
page++;
mListView.setPullLoadEnable(true, true);
} else {
mListView.setPullLoadEnable(false, true);
}
HupuLog.e("papa", "moresize===" + moreCaipiaoList.mList.size());
for (int i = 0; i < moreCaipiaoList.mList.size(); i++) {
caipiaoList.mList.add(moreCaipiaoList.mList.get(i));
}
mAdapter.setData(caipiaoList);
mAdapter.notifyDataSetChanged();
mListView.stopRefresh();
mListView.stopLoadMore();
}
}
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK
&& event.getAction() == KeyEvent.ACTION_DOWN) {
finish();
}
return false;
}
class PlayerListClick implements OnItemClickListener {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int pos,
long arg3) {
int section = mAdapter.getSectionForPosition(pos - 2);
int child = mAdapter.getPositionInSectionForPosition(pos - 2);
// mAdapter.getChildPosition(pos)
if (child >=0 && caipiaoList.mList.get(section).mQuizList.get(child).ubid != 0) {
Intent in = new Intent(MyCaipiaoListActivity.this,
CoinInfoActivity.class);
in.putExtra(
"ubid",
caipiaoList.mList.get(section).mQuizList.get(child).ubid);
in.putExtra("info_type", HuPuRes.REQ_METHOD_CAIPIAO_DETAIL);
startActivity(in);
}
//点击的是
if (child < 0 && !caipiaoList.mList.get(section).scheme.equals("") && !caipiaoList.mList.get(section).lid.equals("")) {
treatScheme(caipiaoList.mList.get(section).scheme, Integer.parseInt(caipiaoList.mList.get(section).lid));
}
}
}
}