liujiangyao il y a 7 ans
Parent
commit
7836201ac2

+ 15 - 0
app/src/main/java/com/sheep/gamegroup/model/entity/GameAccountEntity.java

@@ -84,4 +84,19 @@ public class GameAccountEntity implements Serializable {
                 return TextUtils.isEmpty(task_name)?"通用":task_name;
         }
     }
+
+    /**
+     * 游戏详情,title显示
+     */
+    public String getDetailShow(){
+        switch (task_type){
+            case 1002:
+            default:
+                return "平台游戏" + "--" + getTypeName();
+            case 1003:
+                return "腾讯游戏" + "--" + getTypeName();
+            case 1004:
+                return "小米游戏" + "--" + getTypeName();
+        }
+    }
 }

+ 14 - 0
app/src/main/java/com/sheep/gamegroup/model/entity/TaskEty.java

@@ -412,5 +412,19 @@ public class TaskEty implements Serializable, IDownload {
     }
 
 
+    /**
+     * 游戏详情,title显示
+     */
+    public String getDetailShow(){
+        switch (task_type){
+            case 1002:
+            default:
+                return "平台游戏";
+            case 1003:
+                return "腾讯游戏";
+            case 1004:
+                return "小米游戏";
+        }
+    }
 
 }

+ 1 - 1
app/src/main/java/com/sheep/gamegroup/model/entity/TaskReleaseEty.java

@@ -209,7 +209,7 @@ public class TaskReleaseEty implements Serializable{
     }
 
     public String getTask_id() {
-        return task_id;
+        return TextUtils.isEmpty(task_id)?"0":task_id;
     }
 
     public void setTask_id(String task_id) {

+ 58 - 0
app/src/main/java/com/sheep/gamegroup/util/CommonUtil.java

@@ -1200,4 +1200,62 @@ public class CommonUtil {
                     }
                 });
     }
+    /**
+     * 查询游戏账号详情
+     */
+    public void getGameAccountDetail(final Context context, final int gameId, final Action1<BaseMessage> action1) {
+        ViewUtil.newInstance().showProgress((Activity) context);
+
+        SheepApp.getInstance()
+                .getNetComponent()
+                .getApiService()
+                .getGameAccountDetail(gameId)
+                .subscribeOn(Schedulers.io())
+                .observeOn(AndroidSchedulers.mainThread())
+                .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.mContext) {
+                    @Override
+                    public void onError(BaseMessage baseMessage) {
+
+                        ViewUtil.newInstance().hideProgress((Activity) context);
+                        G.showToast(baseMessage.getMsg() + "");
+                    }
+
+                    @Override
+                    public void onNext(BaseMessage baseMessage) {
+                        ViewUtil.newInstance().hideProgress((Activity) context);
+
+                        if(action1 != null)
+                            action1.call(baseMessage);
+                    }
+                });
+    }
+    /**
+     * 领取游戏账号
+     */
+    public void gameAccountManager(final Context context, final int task_id, final Action1<BaseMessage> action1) {
+        ViewUtil.newInstance().showProgress((Activity) context);
+
+        SheepApp.getInstance()
+                .getNetComponent()
+                .getApiService()
+                .gameAccountManager(task_id)
+                .subscribeOn(Schedulers.io())
+                .observeOn(AndroidSchedulers.mainThread())
+                .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.mContext) {
+                    @Override
+                    public void onError(BaseMessage baseMessage) {
+
+                        ViewUtil.newInstance().hideProgress((Activity) context);
+                        G.showToast(baseMessage.getMsg() + "");
+                    }
+
+                    @Override
+                    public void onNext(BaseMessage baseMessage) {
+                        ViewUtil.newInstance().hideProgress((Activity) context);
+
+                        if(action1 != null)
+                            action1.call(baseMessage);
+                    }
+                });
+    }
 }

+ 11 - 0
app/src/main/java/com/sheep/gamegroup/util/ViewUtil.java

@@ -32,6 +32,7 @@ import com.sheep.gamegroup.model.entity.DialogConfig;
 import com.sheep.gamegroup.model.entity.PayEntity;
 import com.sheep.gamegroup.view.activity.SplashAct;
 import com.sheep.gamegroup.view.dialog.DialogAddAccount;
+import com.sheep.gamegroup.view.dialog.DialogModifyAccount;
 import com.sheep.gamegroup.view.dialog.DialogOrienteeringDetails;
 import com.sheep.gamegroup.view.dialog.DialogPayAccount;
 import com.sheep.gamegroup.view.dialog.DialogPayGame;
@@ -609,10 +610,20 @@ public class ViewUtil {
     public static void showGamePayAccount(Activity activity,String gameId){
         new DialogPayAccount(activity,gameId).showPayaccount();
     }
+    public static void showGamePayAccount(Activity activity,PayEntity payEntity){
+        new DialogPayAccount(activity,payEntity).showPayaccount();
+    }
     public static void showGamePay(Activity activity, PayEntity payEntity){
         new DialogPayGame(activity, payEntity).showPayGame();
     }
 
+    /**
+     * 用户详情
+     */
+    public void showGameAccountDetail(Activity activity, int id){
+        new DialogModifyAccount(activity, id).showAddAccount();
+    }
+
 
     /**
      * 分享

+ 2 - 1
app/src/main/java/com/sheep/gamegroup/view/adapter/AdpGameAccount.java

@@ -112,7 +112,8 @@ public class AdpGameAccount extends AdpCommonRecy<RecyleObj> {
                 look_tv.setOnClickListener(new View.OnClickListener() {
                     @Override
                     public void onClick(View v) {
-
+                        ViewUtil.newInstance()
+                                .showGameAccountDetail((Activity) context, etyList.get(i).getId());
                     }
                 });
                 delete_layout.setOnClickListener(new View.OnClickListener() {

+ 115 - 2
app/src/main/java/com/sheep/gamegroup/view/adapter/TryMakeMoneyAdp.java

@@ -23,6 +23,7 @@ import com.kfzs.duanduan.event.BigEvent;
 import com.kfzs.duanduan.event.EventTypes;
 import com.kfzs.duanduan.services.DownloadTaskService;
 import com.kfzs.duanduan.utils.ApkUtils;
+import com.sheep.gamegroup.model.entity.BaseMessage;
 import com.sheep.gamegroup.model.entity.GameAgencyRechargePlatformEntity;
 import com.sheep.gamegroup.model.entity.OrienteeringDetail;
 import com.sheep.gamegroup.model.entity.PayEntity;
@@ -117,6 +118,9 @@ public class TryMakeMoneyAdp extends AdpCommonRecy<RecyleObj> {
             case GAME_AGENCY_PAYMENT_PLATFORM://游戏代充平台
                 bindGamePlotForm(holder, (List<GameAgencyRechargePlatformEntity>) recyleObj.getDataObj());
                 break;
+            case GAME_AGENCY_PAYMENT:
+                bindGameReleaseTask(holder, (List<TaskReleaseEty>) recyleObj.getDataObj(), 0);
+                break;
         }
 
     }
@@ -395,12 +399,14 @@ public class TryMakeMoneyAdp extends AdpCommonRecy<RecyleObj> {
                 //name
                 ((TextView)viewHolder.itemView.findViewById(R.id.item_anem_tv)).setText(item.getName()+"");
 
+                final TextView item_num_tv = viewHolder.itemView.findViewById(R.id.item_num_tv);
+                item_num_tv.setText(item.getDesc()+"");
                 final TextView task_type_tv = viewHolder.itemView.findViewById(R.id.task_type_tv);
                 task_type_tv.setVisibility(View.GONE);
                 viewHolder.itemView.findViewById(R.id.item_money).setVisibility(View.GONE);
 
                 Glide.with(context)
-                        .load(item.getIcon()+"")
+                        .load(item.getIcon())
                         .apply(new RequestOptions().placeholder(R.mipmap.x_ic_def_head))
                         .into((ImageView) viewHolder.itemView.findViewById(R.id.item_icon_iv));
 
@@ -411,11 +417,17 @@ public class TryMakeMoneyAdp extends AdpCommonRecy<RecyleObj> {
                     public void onClick(View v) {
                         PayEntity payEntity = new PayEntity();
                         payEntity.setTask_type(item.getTask_type()+"");
-                        ViewUtil.newInstance().showGamePay((Activity) context, payEntity);
+                        ViewUtil.newInstance().showGamePayAccount((Activity) context, payEntity);
 
 //                        ViewUtil.showGamePayAccount((Activity) context, item.getTask_type());
                     }
                 });
+                task_type_tv.setOnClickListener(new View.OnClickListener() {
+                    @Override
+                    public void onClick(View v) {
+
+                    }
+                });
             }
 
             @Override
@@ -426,6 +438,107 @@ public class TryMakeMoneyAdp extends AdpCommonRecy<RecyleObj> {
     }
 
     /**
+     * 游戏代充
+     */
+    private void bindGameReleaseTask(ViewHolder holder, final List<TaskReleaseEty> etyList, final int isBegin){
+        RecyclerView recyclerView = holder.getView(R.id.release_task_listview, RecyclerView.class);
+        recyclerView.setHasFixedSize(true);
+        recyclerView.setLayoutManager(new LinearLayoutManager(context));
+        recyclerView.setAdapter(new RecyclerView.Adapter(){
+
+            @Override
+            public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
+                LinearLayout view = (LinearLayout) LayoutInflater.from(context)
+                        .inflate(R.layout.try_makemoney_item_recommend, viewGroup,false);
+                RecyclerView.ViewHolder viewHolder = new RecyclerView.ViewHolder(view) {
+                    @Override
+                    public String toString() {
+                        return super.toString();
+                    }
+                };
+                return viewHolder;
+            }
+
+            @Override
+            public void onBindViewHolder(RecyclerView.ViewHolder viewHolder, final int i) {
+                final TaskReleaseEty taskReleaseEty = ListUtil.getIndex(etyList, i);
+                final TaskEty taskEty;
+                if (taskReleaseEty == null || (taskEty = taskReleaseEty.getTask()) == null) {
+                    return;
+                }
+                viewHolder.itemView.setTag(TAG_ID_TEMP, etyList.get(i).getId());
+                ((TextView) viewHolder.itemView.findViewById(R.id.item_anem_tv)).setText(taskReleaseEty.getName() + "");
+                ((TextView) viewHolder.itemView.findViewById(R.id.item_num_tv)).setText(taskReleaseEty.getTask().getDetailShow()+"");
+                ((TextView) viewHolder.itemView.findViewById(R.id.item_money)).setVisibility(View.GONE);
+                Glide.with(context)
+                        .load(taskEty.getIcon() + "")
+                        .apply(new RequestOptions().placeholder(R.mipmap.x_ic_def_head))
+                        .into((ImageView) viewHolder.itemView.findViewById(R.id.item_icon_iv));
+                viewHolder.itemView.setEnabled(false);
+                ((TextView) viewHolder.itemView.findViewById(R.id.item_date_tv)).setVisibility(View.GONE);
+                viewHolder.itemView.findViewById(R.id.item_title_tv).setVisibility(View.GONE);
+                viewHolder.itemView.findViewById(R.id.item_title_iv).setVisibility(View.GONE);
+
+                if (i == getItemCount() - 1) {
+                    viewHolder.itemView.findViewById(R.id.line_tv).setVisibility(View.GONE);
+                } else {
+                    viewHolder.itemView.findViewById(R.id.line_tv).setVisibility(View.VISIBLE);
+                }
+                viewHolder.itemView.findViewById(R.id.cancel_task_tv).setVisibility(View.GONE);
+
+                TextView detail_task_tv = viewHolder.itemView.findViewById(R.id.detail_task_tv);
+
+
+                if(taskReleaseEty.getTask().isIs_receive_account()){
+                    detail_task_tv.setText("已有账号");
+                    detail_task_tv.setBackground(context.getResources().getDrawable(R.drawable.sp_rectangle_bg_gray_radius));
+                    detail_task_tv.setEnabled(false);
+                    viewHolder.itemView.setEnabled(false);
+                }else {
+                    detail_task_tv.setText("领取游戏帐号");
+                    detail_task_tv.setBackground(context.getResources().getDrawable(R.drawable.sp_bg_gradient_rectangle_blue));
+                    detail_task_tv.setEnabled(true);
+                    viewHolder.itemView.setEnabled(false);
+                }
+
+
+                detail_task_tv.setOnClickListener(new View.OnClickListener() {
+                    @Override
+                    public void onClick(View v) {
+                    CommonUtil.getInstance()
+                            .gameAccountManager(context, Integer.parseInt(taskReleaseEty.getTask_id()), new Action1<BaseMessage>() {
+                                @Override
+                                public void call(BaseMessage baseMessage) {
+                                    G.showToast("领取成功");
+                                }
+                            });
+                    }
+                });
+                viewHolder.itemView.setOnClickListener(new View.OnClickListener() {
+                    @Override
+                    public void onClick(View v) {
+                        UMConfigUtils.IdEvent.TASK.commit(taskReleaseEty.getId());
+                        taskEty.setRunTask(0);
+                        taskEty.setBonus(taskReleaseEty.getBonus());
+                        taskEty.setRelease_task_id(taskReleaseEty.getId());
+                        taskEty.setName(taskReleaseEty.getName());
+                        if("0".equals(taskReleaseEty.getLast_num())){
+                            Jump2View.getInstance().goTaskDetailView(context,  taskReleaseEty.getId(), true);
+                            return;
+                        }
+                        Jump2View.getInstance().goTaskDetailView(context,  taskReleaseEty.getId());
+                    }
+                });
+
+            }
+
+            @Override
+            public int getItemCount() {
+                return etyList.size();
+            }
+        });
+    }
+    /**
      * 获取已发布的
      */
     private void bindReleaseTask(ViewHolder holder, final List<TaskReleaseEty> etyList, final int isBegin){

+ 48 - 6
app/src/main/java/com/sheep/gamegroup/view/dialog/DialogModifyAccount.java

@@ -15,6 +15,8 @@ import android.widget.TextView;
 import com.alibaba.fastjson.JSONObject;
 import com.kfzs.duanduan.event.BigEvent;
 import com.kfzs.duanduan.event.EventTypes;
+import com.sheep.gamegroup.model.entity.BaseMessage;
+import com.sheep.gamegroup.model.entity.GameAccountEntity;
 import com.sheep.gamegroup.util.CommonUtil;
 import com.sheep.jiuyan.samllsheep.R;
 import com.sheep.jiuyan.samllsheep.utils.G;
@@ -32,10 +34,23 @@ import rx.functions.Action1;
 public class DialogModifyAccount {
     private Activity activity;
     private EditText game_new_pwd_et;
+    private TextView sureTv;
+    private int id;
+    private GameAccountEntity gameAccountEntity;
+
+    private TextView game_title_et;
+    private TextView game_account_et;
+    private TextView game_old_pwd_et;
+
     public DialogModifyAccount(Activity activity) {
         this.activity = activity;
     }
 
+    public DialogModifyAccount(Activity activity, int id) {
+        this.activity = activity;
+        this.id = id;
+    }
+
     Handler mHandler = new Handler() {
         @Override
         public void handleMessage(Message msg) {
@@ -47,6 +62,7 @@ public class DialogModifyAccount {
                             return;
 
                         game_new_pwd_et.setVisibility((Integer) msg.obj);
+                        sureTv.setText("立即修改");
                         break;
                 }
             } catch (Exception e) {
@@ -68,11 +84,11 @@ public class DialogModifyAccount {
         View view = LayoutInflater.from(activity).inflate(R.layout.dialog_modify_account, dialog_center_ll, true);
         dialog_title.setText("修改密码");
 
-        final TextView sureTv = view.findViewById(R.id.sure_tv);
+        sureTv = view.findViewById(R.id.sure_tv);
         TextView modify_pwd_tv = view.findViewById(R.id.modify_pwd_tv);
-        TextView game_title_et = view.findViewById(R.id.game_title_et);
-        TextView game_account_et = view.findViewById(R.id.game_account_et);
-        TextView game_old_pwd_et = view.findViewById(R.id.game_old_pwd_et);
+        game_title_et = view.findViewById(R.id.game_title_et);
+        game_account_et = view.findViewById(R.id.game_account_et);
+        game_old_pwd_et = view.findViewById(R.id.game_old_pwd_et);
         game_new_pwd_et = view.findViewById(R.id.game_new_pwd_et);
 
         //立即修改,我知道了
@@ -113,8 +129,11 @@ public class DialogModifyAccount {
         modify_pwd_tv.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
-                game_new_pwd_et.setVisibility(View.VISIBLE);
-                sureTv.setText("立即修改");
+
+                Message message = new Message();
+                message.what = 0;
+                message.obj = View.VISIBLE;
+                mHandler.sendMessage(message);
             }
         });
 
@@ -135,5 +154,28 @@ public class DialogModifyAccount {
         } catch (Exception e) {
             e.printStackTrace();
         }
+        initData();
+    }
+
+    /**
+     * initData
+     */
+    private void initData(){
+        CommonUtil.getInstance()
+                .getGameAccountDetail(activity, id, new Action1<BaseMessage>() {
+                    @Override
+                    public void call(BaseMessage baseMessage) {
+                        gameAccountEntity = baseMessage.getData(GameAccountEntity.class);
+                        if(gameAccountEntity != null){
+                            initView();
+                        }
+                    }
+                });
+    }
+
+    private void initView(){
+        game_title_et.setText(gameAccountEntity.getDetailShow()+"");
+        game_account_et.setText("账号:"+gameAccountEntity.getAccount()+"");
+        game_old_pwd_et.setText("原密码:"+gameAccountEntity.getPassword()+"");
     }
 }

+ 1 - 0
app/src/main/java/com/sheep/gamegroup/view/dialog/DialogPayAccount.java

@@ -52,6 +52,7 @@ public class DialogPayAccount {
     public DialogPayAccount(Activity activity, PayEntity payEntity) {
         this.activity = activity;
         this.payEntity = payEntity;
+        this.gameId = (payEntity != null? payEntity.getGame_id(): "0");
     }
 
     public DialogPayAccount(Activity activity, String gameId) {

+ 2 - 0
app/src/main/java/com/sheep/gamegroup/view/dialog/DialogPayGame.java

@@ -447,6 +447,8 @@ public class DialogPayGame {
      * 计算金额显示
      */
     private void makePriceShow(String price){
+        if(ListUtil.isEmpty(list))
+            return;
         String p = "绵羊币 (可用"+ 0 +") 指非定向货币+定向货币";
         TextView textView = pay_listview.getChildAt(0).findViewById(R.id.pay_game_dialog_item_tv);
         textView.setText(p);