package com.partynetwork.iparty.assistant; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.EditText; import android.widget.TextView; import com.lidroid.xutils.ViewUtils; import com.lidroid.xutils.view.annotation.ViewInject; import com.lidroid.xutils.view.annotation.event.OnClick; import com.partynetwork.dataprovider.DataProvider.IJsonResultListener; import com.partynetwork.dataprovider.json.NetworkEntity; import com.partynetwork.dataprovider.json.struct.Assistant_setApplyForRefundRequest; import com.partynetwork.dataprovider.util.StringUtil; import com.partynetwork.dataprovider.util.T; import com.partynetwork.iparty.R; import com.partynetwork.iparty.app.AppContext; import com.partynetwork.myview.mytoast.OkPopup; import com.partynetwork.myview.wheelview.ArrayWheelAdapter; import com.partynetwork.myview.wheelview.WheelAdapter; import com.partynetwork.myview.wheelview.WheelPicker; import com.partynetwork.myview.wheelview.WheelPicker.WheelListener; import com.partynetwork.myview.wheelview.WheelView; public class OrderRefundActivity extends Activity implements IJsonResultListener { public static String ORDER_ID = "orderId"; public static String ORDER_NUMBER = "orderNumber"; public static String ORDER_MONEY = "orderMoney"; /** * 退款原因 */ @ViewInject(R.id.title) private TextView title; /** * 金额 */ @ViewInject(R.id.money) private EditText money; /** * 说明 */ @ViewInject(R.id.content) private EditText content; /** * 确认退款 */ @ViewInject(R.id.next) private TextView next; /** 消息提示框 */ private OkPopup mOkPopup; /** 滚轮弹窗 */ private WheelPicker wheelPicker; /** 订单Id */ private int orderId; /** 订单编号 */ private String orderNumber; /** 订单金额 */ private float orderMoney; /** * * 覆盖方法 * * @see android.app.Activity#onCreate(android.os.Bundle) */ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.order_refund); ViewUtils.inject(this); init(); } /** * 初始化 */ private void init() { orderId = getIntent().getIntExtra(ORDER_ID, 0); orderNumber = getIntent().getStringExtra(ORDER_NUMBER); orderMoney = getIntent().getFloatExtra(ORDER_MONEY, 0); mOkPopup = new OkPopup(this); wheelPicker = new WheelPicker(this,1, new ArrayWheelAdapter<String>( new String[] { "临时有事无法参加", "个人原因不想参加了", "虚假Party", "其他" }), reasonWheelListener); money.setEnabled(false); money.setText(StringUtil.formatFloat(orderMoney)); } /** * 事件监听 * * @param view */ @OnClick({ R.id.menu_head_left, R.id.menu_head_right, R.id.title, R.id.next }) public void onClick(View view) { switch (view.getId()) { case R.id.menu_head_left: // 关闭 finish(); break; case R.id.menu_head_right: // 说明 mOkPopup.setTitle("1.在众筹Party未成功筹集目标资金前,参加者可全额退款;\n"); mOkPopup.showAtLocation(title); break; case R.id.title: wheelPicker.showAt(title); break; case R.id.next: // 确认退款 sendRequest(); break; default: break; } } /** * 发送请求 */ private void sendRequest() { String title = StringUtil.checkStr(this.title.getText().toString()); if (title.equals("")) { mOkPopup.setTitle("请选择退款原因"); mOkPopup.showAtLocation(this.title); return; } String money = StringUtil.checkEditText(this.money); if (money.equals("")) { mOkPopup.setTitle("请选择退款金额"); mOkPopup.showAtLocation(this.title); return; } String content = StringUtil.checkEditText(this.content); if (content.equals("")) { mOkPopup.setTitle("请填写退款说明"); mOkPopup.showAtLocation(this.content); return; } AppContext context = (AppContext) getApplication(); Assistant_setApplyForRefundRequest request = new Assistant_setApplyForRefundRequest(); request.setOrderId(orderId); request.setOrderNumber(orderNumber); request.setUserId(context.getLoginUid()); request.setRefundReason(title); request.setRefundMoney(orderMoney); request.setRefundExplanation(content); AppContext.getInstance().getmDataProvider() .getJsonFromNetwork(request, this); } /** * 性别监听对象 */ private WheelListener reasonWheelListener = new WheelListener() { public WheelAdapter onChange(WheelView wheel, int oldValue, int newValue) { return null; } public void confirm(String str) { title.setText(str); } public void cancel() { } }; @Override public void onNetworkRequest() { // TODO 自动生成的方法存根 } @Override public void onResultSuccess(NetworkEntity entity) { if (entity.getRequest().getAction() .equals(new Assistant_setApplyForRefundRequest().getAction())) { T.showTips(this, R.drawable.tips_smile, "退款成功!"); finish(); } } @Override public void onResultFail(String result) { T.showTips(this, R.drawable.tips_error, result); } }