package com.yeshi.ec.rebate.myapplication.ui.mine;
|
|
import android.content.ClipData;
|
import android.content.ClipboardManager;
|
import android.content.Context;
|
import android.content.Intent;
|
import android.os.Bundle;
|
import android.view.LayoutInflater;
|
import android.view.View;
|
import android.view.ViewGroup;
|
import android.widget.ImageView;
|
import android.widget.LinearLayout;
|
import android.widget.TextView;
|
import android.widget.Toast;
|
|
import com.bumptech.glide.Glide;
|
import com.google.gson.Gson;
|
import com.google.gson.GsonBuilder;
|
import com.google.gson.reflect.TypeToken;
|
import com.wpc.library.util.common.DimenUtils;
|
import com.wpc.library.util.common.StringUtils;
|
import com.yeshi.ec.rebate.myapplication.BasicTextHttpResponseHandler;
|
import com.yeshi.ec.rebate.myapplication.R;
|
import com.yeshi.ec.rebate.myapplication.ShoppingApi;
|
import com.yeshi.ec.rebate.myapplication.entity.Jump;
|
import com.yeshi.ec.rebate.myapplication.entity.OrderGoods;
|
import com.yeshi.ec.rebate.myapplication.ui.BaseActivity;
|
import com.yeshi.ec.rebate.myapplication.ui.invite.ShareBrowserActivity;
|
import com.yeshi.ec.rebate.myapplication.ui.recommend.GoodsDetailActivityJD;
|
import com.yeshi.ec.rebate.myapplication.ui.recommend.GoodsDetailActivityPDD;
|
import com.yeshi.ec.rebate.myapplication.ui.recommend.GoodsDetailActivityTB;
|
import com.yeshi.ec.rebate.myapplication.util.JumpActivityUtil;
|
import com.yeshi.ec.rebate.myapplication.util.KeFuUtil;
|
import com.yeshi.ec.rebate.myapplication.util.TopStatusSettings;
|
import com.yeshi.ec.rebate.myapplication.util.clipboard.ClipboardUtil;
|
import com.yeshi.ec.rebate.myapplication.util.goods.GoodsDetailJumpUtil;
|
|
import org.apache.http.Header;
|
import org.json.JSONObject;
|
|
import java.util.List;
|
|
/**
|
* 奖励金状态
|
*/
|
public class RewardStateActivity extends BaseActivity implements View.OnClickListener {
|
|
private TextView tv_left, tv_middle, tv_ticket_state_des, tv_order_num,
|
tv_copy, tv_ticket_type, tv_ticket_state, tv_ticket_rule_hint,
|
tv_rebate_state_des, tv_ticket_rule_remark, tv_ticket_rule_remark_content;
|
private ImageView iv_ticket_state, iv_top_bar_right;
|
private LinearLayout ll_goods_info, ll_ticket_state, ll_ticket_rule;
|
|
@Override
|
protected void onCreate(Bundle savedInstanceState) {
|
super.onCreate(savedInstanceState);
|
setContentView(R.layout.activity_reward_state);
|
TopStatusSettings.setStatusViewAndDeepColor(this);
|
|
initView();
|
|
getRewardTicketRate();
|
}
|
|
/*
|
初始化控件
|
*/
|
private void initView() {
|
tv_left = findViewById(R.id.tv_top_bar_left);
|
tv_middle = findViewById(R.id.tv_top_bar_middle);
|
tv_ticket_state_des = findViewById(R.id.tv_ticket_state_des);
|
tv_order_num = findViewById(R.id.tv_order_num);
|
tv_copy = findViewById(R.id.tv_copy);
|
tv_ticket_type = findViewById(R.id.tv_ticket_type);
|
tv_ticket_state = findViewById(R.id.tv_ticket_state);
|
tv_ticket_rule_hint = findViewById(R.id.tv_ticket_rule_hint);
|
tv_rebate_state_des = findViewById(R.id.tv_rebate_state_des);
|
tv_ticket_rule_remark = findViewById(R.id.tv_ticket_rule_remark);
|
tv_ticket_rule_remark_content = findViewById(R.id.tv_ticket_rule_remark_content);
|
iv_ticket_state = findViewById(R.id.iv_ticket_state);
|
iv_top_bar_right = findViewById(R.id.iv_top_bar_right);
|
ll_goods_info = findViewById(R.id.ll_goods_info);
|
ll_ticket_state = findViewById(R.id.ll_ticket_state);
|
ll_ticket_rule = findViewById(R.id.ll_ticket_rule);
|
|
tv_middle.setText("已使用奖励券");
|
tv_ticket_rule_hint.setText("奖励券规则");
|
iv_top_bar_right.setImageResource(R.drawable.ic_ticket_state_contact_kefu);
|
iv_top_bar_right.setVisibility(View.VISIBLE);
|
Glide.with(RewardStateActivity.this)
|
.load(R.drawable.ic_ticket_state_success).into(iv_ticket_state);
|
tv_ticket_state_des.setText("恭喜你!订单返利奖励成功");
|
|
tv_left.setOnClickListener(this);
|
iv_top_bar_right.setOnClickListener(this);
|
ll_ticket_rule.setOnClickListener(this);
|
ll_ticket_state.setOnClickListener(this);
|
}
|
|
/*
|
获取免单券状态信息
|
*/
|
private String ruleLink;
|
private Jump jumpWelfare;
|
|
private void getRewardTicketRate() {
|
String orderNo = getIntent().getStringExtra("orderNo");
|
String goodType = getIntent().getStringExtra("goodsType");
|
// String orderNo = "3500537602463267337";
|
ShoppingApi.getRewardTicketRate(RewardStateActivity.this, orderNo, goodType, new BasicTextHttpResponseHandler() {
|
@Override
|
public void onSuccessPerfect(int statusCode, Header[] headers, JSONObject jsonObject) throws Exception {
|
if (jsonObject.optInt("code") == 0) {
|
JSONObject object = jsonObject.optJSONObject("data").optJSONObject("rewardRecord");
|
ruleLink = object.optString("ruleLink");
|
tv_rebate_state_des.setText(object.optString("couponEffect"));
|
|
Gson gson = new GsonBuilder().serializeNulls().create();
|
jumpWelfare = gson.fromJson(object.optJSONObject("jumpWelfare")
|
.toString(), new TypeToken<Jump>() {
|
}.getType());
|
List<OrderGoods> oList = gson.fromJson(object.optJSONObject("commonOrder")
|
.optJSONArray("listOrderGoods").toString(),
|
new TypeToken<List<OrderGoods>>() {
|
}.getType());
|
|
if (ll_goods_info.getChildCount() > 0)
|
ll_goods_info.removeAllViews();
|
for (int i = 0; i < oList.size(); i++) {
|
View view = LayoutInflater.from(RewardStateActivity.this).inflate(R.layout.item_filter_order_goods, null);
|
ImageView iv_goods_img = view.findViewById(R.id.iv_goods_img);
|
TextView tv_goods_title = view.findViewById(R.id.tv_goods_title);
|
TextView tv_goods_consume = view.findViewById(R.id.tv_goods_consume);
|
TextView tv_goods_num = view.findViewById(R.id.tv_goods_num);
|
ImageView iv_goods_img_cover = view.findViewById(R.id.iv_goods_img_cover);
|
final OrderGoods oInfo = oList.get(i);
|
tv_goods_consume.setText(oInfo.getActualPay());
|
tv_goods_num.setText(oInfo.getActualCount());
|
Glide.with(RewardStateActivity.this).load(oInfo.getPicture()).into(iv_goods_img);
|
iv_goods_img_cover.setVisibility(View.GONE);
|
tv_goods_title.setPadding(0, 0, 0, 0);
|
tv_goods_title.setText(oInfo.getTitle());
|
view.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
Intent intent= GoodsDetailJumpUtil.getGoodsDetailIntent(getApplicationContext(),oInfo.getGoodsType());
|
intent.putExtra("title", oInfo.getTitle());
|
intent.putExtra("id", oInfo.getGoodsId());
|
startActivity(intent);
|
}
|
});
|
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
|
ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
|
int topMargin = DimenUtils.dip2px(RewardStateActivity.this, 5);
|
int bottomMargin = DimenUtils.dip2px(RewardStateActivity.this, 5);
|
if (oList.size() == 1) {
|
topMargin = 0;
|
bottomMargin = 0;
|
} else if (oList.size() > 1 && i == 0) {
|
topMargin = 0;
|
} else if (oList.size() > 1 &&
|
i == oList.size() - 1) {
|
bottomMargin = 0;
|
}
|
params.topMargin = topMargin;
|
params.bottomMargin = bottomMargin;
|
view.setLayoutParams(params);
|
ll_goods_info.addView(view);
|
}
|
final String orderNo = object.optJSONObject("commonOrder").optString("orderNo");
|
if (StringUtils.isEmpty(orderNo)) {
|
tv_order_num.setVisibility(View.GONE);
|
tv_copy.setVisibility(View.GONE);
|
} else {
|
tv_order_num.setVisibility(View.VISIBLE);
|
tv_copy.setVisibility(View.VISIBLE);
|
}
|
tv_order_num.setText("订单号" + orderNo);
|
tv_copy.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
ClipboardUtil.copy(getApplicationContext(),orderNo);
|
Toast.makeText(RewardStateActivity.this, "复制订单成功",
|
Toast.LENGTH_SHORT).show();
|
}
|
});
|
tv_ticket_type.setText(object.optString("couponName"));
|
tv_ticket_state.setText(object.optString("couponMoneyState"));
|
tv_ticket_rule_remark.setText(object.optJSONObject("remark").optString("title"));
|
tv_ticket_rule_remark_content.setText(object.optJSONObject("remark").optString("content"));
|
}
|
}
|
});
|
}
|
|
@Override
|
public void onClick(View v) {
|
switch (v.getId()) {
|
case R.id.tv_top_bar_left:
|
finish();
|
break;
|
case R.id.iv_top_bar_right:
|
// startActivity(new Intent(RewardStateActivity.this, ContactUsActivity.class));
|
KeFuUtil.jumpKeFu(this, "奖励金状态");
|
break;
|
case R.id.ll_ticket_rule: {
|
Intent intent = new Intent(RewardStateActivity.this, ShareBrowserActivity.class);
|
intent.putExtra("url", ruleLink);
|
startActivity(intent);
|
}
|
break;
|
case R.id.ll_ticket_state:
|
if (jumpWelfare != null) {
|
// Intent intent = null;
|
// try {
|
// intent = new Intent(RewardStateActivity.this, Class.forName(jumpWelfare.getJumpDetail().getActivity()));
|
// } catch (ClassNotFoundException e) {
|
// e.printStackTrace();
|
// }
|
// if (jumpWelfare.getParams() != null) {
|
// Iterator<String> its = jumpWelfare.getParams().keySet().iterator();
|
// while (its.hasNext()) {
|
// String key = its.next();
|
// String value = jumpWelfare.getParams().getString(key);
|
// intent.putExtra(key, value);
|
// }
|
// }
|
// startActivity(intent);
|
JumpActivityUtil.jumpActivity(RewardStateActivity.this, jumpWelfare.getJumpDetail(),
|
jumpWelfare.getParams());
|
}
|
break;
|
}
|
}
|
}
|