package com.partynetwork.iparty.site;
import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.os.Handler;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;
import com.partynetwork.dataprovider.DataProvider.IJsonResultListener;
import com.partynetwork.dataprovider.json.NetworkEntity;
import com.partynetwork.dataprovider.json.struct.Account_checkOrderRequest;
import com.partynetwork.dataprovider.json.struct.Account_getOrderNumberRequest;
import com.partynetwork.dataprovider.json.struct.Account_getOrderNumberResponse;
import com.partynetwork.dataprovider.util.T;
import com.partynetwork.dataprovider.util.Util;
import com.partynetwork.iparty.R;
import com.partynetwork.iparty.alipay.AlipayHelper;
import com.partynetwork.iparty.alipay.Result;
import com.partynetwork.iparty.app.AppContext;
import com.partynetwork.iparty.app.util.StringUtils;
import com.partynetwork.iparty.info.CommonOrderInfo;
import com.partynetwork.myview.mytoast.OkPopup;
/**
* 设置—账户管理—充值
* @author 沈跃双
*/
public class SiteAccountRechargeActivity extends Activity implements
IJsonResultListener, OnClickListener {
private TextView userName; //充值账户
private EditText money; //充值金额
private OkPopup mOkPopup; //消息提示框
private String orderNumber; //订单编号
private int userId; //用户Id
private AppContext context;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.site_account_recharge);
initView();
init();
}
private void initView() {
initHeadView();
userName=(TextView) findViewById(R.id.username);
money=(EditText) findViewById(R.id.money_rt);
findViewById(R.id.menu_head_left).setOnClickListener(this);
findViewById(R.id.next_step).setOnClickListener(this);
}
private void initHeadView() {
findViewById(R.id.menu_head_left).setOnClickListener(this);;
findViewById(R.id.menu_head_middle).setOnClickListener(this);
findViewById(R.id.menu_head_right).setOnClickListener(this);
ImageView mHeadLeftImage=(ImageView) findViewById(R.id.menu_head_left_iv);
mHeadLeftImage.setImageResource(R.drawable.menu_head_back);
TextView mHeadTitle = (TextView) findViewById(R.id.menu_head_middle_text);
mHeadTitle.setText("充值");
mHeadTitle.setTextColor(Color.BLACK);
ImageView mHeadMiddleImage = (ImageView) findViewById(R.id.menu_head_middle_img);
mHeadMiddleImage.setVisibility(View.GONE);
ImageView mHeadRightImage = (ImageView) findViewById(R.id.menu_head_right_iv);
mHeadRightImage.setVisibility(View.INVISIBLE);
}
/**
* 初始化
*/
private void init() {
mOkPopup = new OkPopup(this);
initData();
}
/**
* 初始化数据
*/
private void initData() {
context = (AppContext) getApplication();
userId = context.getLoginUid();
// 用户名
String name = context.getLoginInfo().getName();
if (!StringUtils.isEmpty(name)) {
userName.setText(name);
}
}
public void onClick(View view) {
switch (view.getId()) {
case R.id.menu_head_left:
// 关闭
finish();
break;
case R.id.next_step:
// 下一步
sendRequest();
break;
default:
break;
}
}
/**
* 发送数据请求
*/
private void sendRequest() {
float money=StringUtils.toFloat(this.money.getText().toString());
if (money > 0) {
Account_getOrderNumberRequest request = new Account_getOrderNumberRequest();
request.setUserId(userId);
request.setType(1);
request.setOrderMoney(money);
context.getmDataProvider().getJsonFromNetwork(request, this);
} else {
mOkPopup.setTitle("金额无效");
mOkPopup.showAtLocation(userName);
}
}
public void onNetworkRequest() {
}
public void onResultSuccess(NetworkEntity entity) {
if (entity.getRequest().getAction()
.equals(new Account_getOrderNumberRequest().getAction())) {
Account_getOrderNumberResponse response = (Account_getOrderNumberResponse) entity
.getResponse();
CommonOrderInfo info = response.getDetails();
if (info != null) {
orderNumber = info.getOrderNumber();
if (orderNumber == null || orderNumber.equals("")) {
return;
}
info.setOrderName("充值");
info.setOrderContent("Party账户充值");
AlipayHelper.doAlipay(this, mHandler, info);
}
}
if (entity.getRequest().getAction()
.equals(new Account_checkOrderRequest().getAction())) {
T.showTips(context, R.drawable.tips_smile, "充值成功");
this.finish();
}
}
public void onResultFail(String result) {
Util.showMsg(this, result);
}
Handler mHandler = new Handler() {
public void handleMessage(android.os.Message msg) {
Result result = new Result((String) msg.obj);
switch (msg.what) {
case AlipayHelper.RQF_PAY:
if (result.getResult() != null
&& result.getResult().equals("9000")) {
// 向服务器查询订单状态
Account_checkOrderRequest request = new Account_checkOrderRequest();
request.setUserId(userId);
request.setOrderNumber(orderNumber);
context.getmDataProvider().getJsonFromNetwork(request,
SiteAccountRechargeActivity.this);
}
break;
case AlipayHelper.RQF_LOGIN:
T.showShort(context, result.getResult());
break;
default:
break;
}
};
};
}