package com.partynetwork.iparty.assistant; import java.util.ArrayList; import java.util.List; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.EditText; import android.widget.ImageView; 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_getOrderByIdRequest; import com.partynetwork.dataprovider.json.struct.Assistant_getOrderByIdResponse; import com.partynetwork.dataprovider.json.struct.Assistant_setAppraisalForOrderRequest; 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.iparty.app.common.BitmapManager; import com.partynetwork.iparty.info.OrderInfo; import com.partynetwork.myview.mytoast.OkPopup; public class OrderEvaluateActivity extends Activity implements IJsonResultListener { public static String ORDER_ID = "orderId"; /** * 发起人 */ @ViewInject(R.id.name) private TextView name; /** * 海报 */ @ViewInject(R.id.photo) private ImageView photo; /** * party名称 */ @ViewInject(R.id.party_name) private TextView title; /** * 金额 */ @ViewInject(R.id.money) private TextView money; /** * 评价内容 */ @ViewInject(R.id.content) private EditText content; /** * 下一步 */ @ViewInject(R.id.next) private TextView next; /** * 好评 */ @ViewInject(R.id.evaluate_good_iv) private ImageView evaluateGood; /** * 中评 */ @ViewInject(R.id.evaluate_middle_iv) private ImageView evaluateMiddle; /** * 差评 */ @ViewInject(R.id.evaluate_bad_iv) private ImageView evaluateBad; private List<ImageView> evaluateList = new ArrayList<ImageView>(); /** 消息提示框 */ private OkPopup mOkPopup; /** 订单Id */ private int orderId; /** 评价等级 */ private int evaluatePosition; /** 数据源 */ private OrderInfo info; /** * * 覆盖方法 * * @see android.app.Activity#onCreate(android.os.Bundle) */ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.order_evaluate); ViewUtils.inject(this); init(); } /** * 初始化 */ private void init() { orderId = getIntent().getIntExtra(ORDER_ID, 0); mOkPopup = new OkPopup(this); evaluateList.add(evaluateGood); evaluateList.add(evaluateMiddle); evaluateList.add(evaluateBad); sendRequest(); } /** * 发送请求 */ private void sendRequest() { Assistant_getOrderByIdRequest request = new Assistant_getOrderByIdRequest(); request.setOrderId(orderId); AppContext.getInstance().getmDataProvider() .getJsonFromNetwork(request, this); } /** * 事件监听 * * @param view */ @OnClick({ R.id.menu_head_left, R.id.next, R.id.evaluate_good_iv, R.id.evaluate_middle_iv, R.id.evaluate_bad_iv }) public void onClick(View view) { switch (view.getId()) { case R.id.menu_head_left: // 关闭 finish(); break; case R.id.next: // 确认退款 sendEvaluateRequest(); break; case R.id.evaluate_good_iv: choose(0); break; case R.id.evaluate_middle_iv: choose(1); break; case R.id.evaluate_bad_iv: choose(2); break; default: break; } } /** * 初始化数据 */ private void initData() { if (info == null) { return; } // 订单背景图 new BitmapManager().loadBitmap(info.getEventFrontCoverUrl(), photo); // 标题 StringUtil.setText(title, info.getEventTitle()); // 发起者 StringUtil.setText(name, info.getOrganizerNickName()); // 金额 this.money.setText("¥:" + StringUtil.formatFloat(info.getComboMoney())); } /** * 选择 * * @param position */ private void choose(int position) { evaluatePosition = position; for (int i = 0; i < evaluateList.size(); i++) { ImageView imageView = evaluateList.get(i); if (position == i) { imageView.setImageResource(R.drawable.contacts_selected); } else { imageView.setImageResource(R.drawable.contacts_normal); } } } /** * 发送请求 */ private void sendEvaluateRequest() { String content = StringUtil.checkEditText(this.content); if (evaluatePosition == 2) { if (content.equals("")) { mOkPopup.setTitle("差评是需要填写详细的评价内容的哦!"); mOkPopup.showAtLocation(this.title); return; } } AppContext context=(AppContext) getApplication(); Assistant_setAppraisalForOrderRequest request = new Assistant_setAppraisalForOrderRequest(); request.setOrderId(orderId); request.setUserId(context.getLoginUid()); request.setIsIncognito(0); request.setIsExplanation(0); request.setAppraisalContent(content); request.setAppraisalGrade(evaluatePosition); AppContext.getInstance().getmDataProvider() .getJsonFromNetwork(request, this); } @Override public void onNetworkRequest() { // TODO 自动生成的方法存根 } @Override public void onResultSuccess(NetworkEntity entity) { if (entity .getRequest() .getAction() .equals(new Assistant_setAppraisalForOrderRequest().getAction())) { T.showTips(this, R.drawable.tips_smile, "评价成功!"); finish(); } else if (entity.getRequest().getAction() .equals(new Assistant_getOrderByIdRequest().getAction())) { /** 订单 */ Assistant_getOrderByIdResponse mResponse = (Assistant_getOrderByIdResponse) entity .getResponse(); info = mResponse.getDetails(); initData(); } } @Override public void onResultFail(String result) { T.showTips(this, R.drawable.tips_error, result); } }