Kaynağa Gözat

添加简单的充值vip界面

zengjiebin 7 yıl önce
ebeveyn
işleme
d1895a05d0

+ 38 - 7
app/src/main/java/com/sheep/gamegroup/module/user/activity/ActVip.java

@@ -11,9 +11,16 @@ import android.widget.TextView;
 import com.chad.library.adapter.base.BaseQuickAdapter;
 import com.chad.library.adapter.base.BaseViewHolder;
 import com.sheep.gamegroup.absBase.BaseActivity;
+import com.sheep.gamegroup.model.entity.BaseMessage;
+import com.sheep.gamegroup.model.util.SheepSubscriber;
 import com.sheep.gamegroup.module.user.model.BuyVipReq;
+import com.sheep.gamegroup.util.ApiJSONUtil;
+import com.sheep.gamegroup.util.ListUtil;
+import com.sheep.gamegroup.util.ViewUtil;
 import com.sheep.jiuyan.samllsheep.R;
 import com.sheep.jiuyan.samllsheep.SheepApp;
+import com.sheep.jiuyan.samllsheep.utils.G;
+import com.sheep.jiuyan.samllsheep.utils.TitleBarUtils;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -37,6 +44,16 @@ public class ActVip extends BaseActivity {
     private List<BuyVipReq> list = new ArrayList<>();
     @Override
     public void initView() {
+        TitleBarUtils.getInstance()
+                .setShowOrHide(this, true)
+                .setTitleFinish(this)
+                .setTitle(this, "VIP");
+        list.add(new BuyVipReq().setPay_name("支付宝").setPay_type(BuyVipReq.PAY_TYPE_ALIPAY));
+        list.add(new BuyVipReq().setPay_name("微信").setPay_type(BuyVipReq.PAY_TYPE_WX));
+    }
+
+    @Override
+    public void initListener() {
         recyclerView.setLayoutManager(new GridLayoutManager(getApplicationContext(), 2));
         BaseQuickAdapter<BuyVipReq, BaseViewHolder> adapter = new BaseQuickAdapter<BuyVipReq, BaseViewHolder>(R.layout.rechargeprice_gridview_item, list) {
             @Override
@@ -46,6 +63,7 @@ public class ActVip extends BaseActivity {
                 Context context = SheepApp.getInstance();
                 TextView item_tv_y = convertView.findViewById(R.id.item_tv_y);
 
+                ViewUtil.setText(item_tv_y, item.getPay_name());
                 if (position == curPosition){
                     convertView.setBackground(context.getResources().getDrawable(R.drawable.layer_list_check_rectgangle_small));
                     item_tv_y.setTextColor(ContextCompat.getColor(context,R.color.main_tab_activated));
@@ -56,19 +74,32 @@ public class ActVip extends BaseActivity {
             }
         };
         adapter.bindToRecyclerView(recyclerView);
-        adapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
-            @Override
-            public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
-                if(curPosition != position){
-                    curPosition = position;
-                    adapter.notifyDataSetChanged();
-                }
+        adapter.setOnItemClickListener((adapter1, view, position) -> {
+            if(curPosition != position){
+                curPosition = position;
+                adapter1.notifyDataSetChanged();
             }
         });
     }
+
     private int curPosition = 0;
 
     public void onClickPay(View view) {
+        BuyVipReq item = ListUtil.getItem(list, curPosition);
+        if(item != null){
+            ApiJSONUtil.postBuyVip(1, item.getPay_type())
+                    .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.getInstance()) {
+                        @Override
+                        public void onError(BaseMessage baseMessage) {
+                            G.showToast(baseMessage);
+                        }
+
+                        @Override
+                        public void onNext(BaseMessage baseMessage) {
+                            G.showToast(baseMessage);
+                        }
+                    });
+        }
 
     }
 }

+ 20 - 2
app/src/main/java/com/sheep/gamegroup/module/user/model/BuyVipReq.java

@@ -1,5 +1,10 @@
 package com.sheep.gamegroup.module.user.model;
 
+import android.support.annotation.IntDef;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
 /**
  * Created by realicing on 2018/12/25.
  * realicing@sina.com
@@ -27,15 +32,28 @@ public class BuyVipReq {
         return pay_type;
     }
 
-    public void setPay_type(int pay_type) {
+    public BuyVipReq setPay_type(int pay_type) {
         this.pay_type = pay_type;
+        return this;
     }
 
     public String getPay_name() {
         return pay_name;
     }
 
-    public void setPay_name(String pay_name) {
+    public BuyVipReq setPay_name(String pay_name) {
         this.pay_name = pay_name;
+        return this;
+    }
+
+
+
+
+    public static final int PAY_TYPE_ALIPAY = 1;//支付方式 1:支付宝
+    public static final int PAY_TYPE_WX = 2;//支付方式 2:微信
+
+    @IntDef({PAY_TYPE_ALIPAY, PAY_TYPE_WX})
+    @Retention(RetentionPolicy.SOURCE)
+    public  @interface PAY_TYPE {
     }
 }

+ 2 - 10
app/src/main/java/com/sheep/gamegroup/util/ApiJSONUtil.java

@@ -5,6 +5,7 @@ import android.support.annotation.IntDef;
 
 import com.alibaba.fastjson.JSONObject;
 import com.sheep.gamegroup.model.entity.BaseMessage;
+import com.sheep.gamegroup.module.user.model.BuyVipReq;
 import com.sheep.jiuyan.samllsheep.SheepApp;
 
 import java.lang.annotation.Retention;
@@ -85,15 +86,6 @@ public class ApiJSONUtil {
 
     }
 
-
-    public static final int PAY_TYPE_ALIPAY = 1;//支付方式 1:支付宝
-    public static final int PAY_TYPE_WX = 2;//支付方式 2:微信
-
-//    @IntDef({PAY_TYPE_ALIPAY, PAY_TYPE_WX})
-//    @Retention(RetentionPolicy.SOURCE)
-//    public  @interface PAY_TYPE {
-//    }
-
     /**
      * 用户充值vip
      * <p>
@@ -103,7 +95,7 @@ public class ApiJSONUtil {
      * @param level:    integer ($int32) 1:VIP
      * @param pay_type: integer ($int32) 支付方式 1:支付宝 2:微信
      */
-    public static Observable<BaseMessage> postBuyVip(int level, float pay_type) {
+    public static Observable<BaseMessage> postBuyVip(int level, @BuyVipReq.PAY_TYPE  int pay_type) {
         JSONObject jsonObject = new JSONObject();
         jsonObject.put("level", level);
         jsonObject.put("pay_type", pay_type);

+ 1 - 1
app/src/main/java/com/sheep/gamegroup/view/fragment/FgtPersonalCenter.java

@@ -409,7 +409,7 @@ public class FgtPersonalCenter extends BaseFragment {
             R.id.recommend_friend_layout, R.id.faq_layout, R.id.reservation_layout,
             R.id.version_layout, R.id.order_layout, R.id.proxy_game_account_layout,
             R.id.audit_activity_cl, R.id.audit_success_cl, R.id.audit_failed_cl,
-            R.id.iv_redpackage, R.id.fgt_person_center_my_focus
+            R.id.iv_redpackage, R.id.fgt_person_center_my_focus, R.id.fgt_pc_item_vip_ll
     })
     public void onViewClicked(View view) {
         switch (view.getId()) {