瀏覽代碼

修复任务详情逻辑错误

zengjiebin 7 年之前
父節點
當前提交
da197fbfb7

+ 1 - 1
app/src/main/java/com/kfzs/duanduan/fragment/FgtPersonalCenter.java

@@ -266,7 +266,7 @@ public class FgtPersonalCenter extends BaseCompatFragment {
      * 获取分享数据
      */
     private void getShardData() {
-        SheepApp.get(getActivity()).getNetComponent().getApiService().FriendCountAndAward()
+        SheepApp.getInstance().getNetComponent().getApiService().FriendCountAndAward()
                 .subscribeOn(Schedulers.io())
                 .observeOn(AndroidSchedulers.mainThread())
                 .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.mContext) {

+ 7 - 3
app/src/main/java/com/sheep/gamegroup/model/entity/BaseMessage.java

@@ -75,10 +75,14 @@ public class BaseMessage implements Serializable{
      * @return
      */
     public <T> T getData(Class<T> clazz) {
-        if (data == null) {
-            return null;
+        if (data != null) {
+            try {
+                return JSONObject.parseObject(JSONObject.toJSONString(data), clazz);
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
         }
-        return JSONObject.parseObject(JSONObject.toJSONString(data), clazz);
+        return null;
     }
 
     /**

+ 6 - 0
app/src/main/java/com/sheep/gamegroup/util/Jump2View.java

@@ -494,6 +494,12 @@ public class Jump2View {
         }
 
     }
+    public synchronized void goTaskDetailViewFromTaskList(Activity activity, int task_id){
+        Intent intent = new Intent(activity, TaskDetailAct.class);
+            intent.putExtra("task_id", task_id);
+            intent.putExtra("is_from_task_list", true);
+            activity.startActivityForResult(intent, ViewUtil.REQUEST_CODE_TASK_LIST);
+    }
     public synchronized void goTaskDetailView(Context context, Object o, Object b){
         Intent intent = new Intent(context, TaskDetailAct.class);
         if(o instanceof Integer){

+ 1 - 2
app/src/main/java/com/sheep/gamegroup/util/ViewUtil.java

@@ -52,7 +52,7 @@ import rx.functions.Action1;
  * realicing@sina.com
  */
 public class ViewUtil {
-
+    public static final int REQUEST_CODE_TASK_LIST = 110;
     private static ViewUtil viewUtil;
 
     public static ViewUtil newInstance(){
@@ -420,7 +420,6 @@ public class ViewUtil {
         return dialog;
     }
 
-    public static final int REQUEST_CODE_TASK_LIST = 110;
 
     public static void showHalfScreenAd(final Activity activity, final Advertising advertising, Container<Action1<Integer>> container) {
         if (activity != null) {

+ 13 - 66
app/src/main/java/com/sheep/gamegroup/view/activity/TaskDetailAct.java

@@ -173,7 +173,6 @@ public class TaskDetailAct extends AbsChooseImageActivity implements TaskDetailC
 
     //通过task_id找
     private TaskReleaseEty taskReleaseEty;
-    private TaskAcceptedEty taskAcceptedEty;
     //接口获取
     private TaskAcceptedEty gettaskAcceptedEty;
 
@@ -183,7 +182,6 @@ public class TaskDetailAct extends AbsChooseImageActivity implements TaskDetailC
 
     private int type;//-1:开始任务 1:下载 2:安装 3:打开  10:打开H5,101:充值  100:领取奖励
 
-    private boolean isFromTaskList = false;//是否是从任务记录界面过来
 
     private AdpTaskDetailChildListview adpTaskDetailChildListview;
     private List<TaskChild> taskChildList = new ArrayList<>();
@@ -199,12 +197,12 @@ public class TaskDetailAct extends AbsChooseImageActivity implements TaskDetailC
         return R.layout.task_detail_layout;
     }
 
+    private boolean isFromTaskList = false;//是否是从任务记录界面过来
     @Override
     public void initView() {
         activity = this;
-        taskAcceptedEty = (TaskAcceptedEty) getIntent().getSerializableExtra("task_entity");
         btn_show = getIntent().getBooleanExtra("btn_show", false);
-        isFromTaskList = taskAcceptedEty != null;
+        isFromTaskList = getIntent().getBooleanExtra("is_from_task_list", false);
         taskId = getIntent().getIntExtra("task_id", -1);
         game_id = getIntent().getIntExtra("game_id", -1);
         game_type = getIntent().getIntExtra("game_type", -1);
@@ -235,13 +233,6 @@ public class TaskDetailAct extends AbsChooseImageActivity implements TaskDetailC
             accepteTaskDetail(taskId);
             return;
         }
-        if (taskAcceptedEty == null) {
-            G.showToast("网络异常,请稍候再试");
-//            finish();
-            return;
-        }
-        taskReleaseEty = taskAcceptedEty.getRelease_task();
-        initWigget();
     }
 
     private void initWigget() {
@@ -298,13 +289,6 @@ public class TaskDetailAct extends AbsChooseImageActivity implements TaskDetailC
             detail_task_listview.setVisibility(View.GONE);
         }
 
-        if (taskAcceptedEty != null) {
-            detailTaskTv.setVisibility(View.VISIBLE);
-            detail_item_layout_2.setVisibility(View.VISIBLE);
-            detail_item_layout_3.setVisibility(View.VISIBLE);
-            checkAcceptedTask();
-            return;
-        }
         detailTaskTv.setVisibility(View.INVISIBLE);
 
         if (!taskReleaseEty.isIs_running() || taskEty.getInspect_type() == 1) {
@@ -400,73 +384,36 @@ public class TaskDetailAct extends AbsChooseImageActivity implements TaskDetailC
             taskdetail_explain_layout.setVisibility(View.GONE);
         }
 
-    }
-
-    private void checkAcceptedTask() {
-        if (taskAcceptedEty != null) {
-            switch (taskAcceptedEty.getStatus()) {
+        if(gettaskAcceptedEty != null){// && taskEty.getTask_type() == 1000) {//连续任务
+            switch (gettaskAcceptedEty.getStatus()) {
                 case 1://"已接受任务";
                 case 2:// "正在进行中";
-                    taskId = taskAcceptedEty.getRelease_task_id();
-                    taskAcceptedEty = null;
-                    taskReleaseEty = null;
-                    taskEty = null;
-                    initData();
-                    return;
+                case 9:// "至少完成一个任务了";
+                    break;
                 case 6:
                     //审核失败
                     btnUpImag.setText("重新提交");
                     btnUpImag.setVisibility(View.VISIBLE);
                     btnTaskItem.setVisibility(View.GONE);
-                    llInfos.removeAllViews();
-                    llInfos.addView(getStep("领取任务", "已完成", 0));
-                    llInfos.addView(getStep("APP下载", "已完成", 0));
-                    llInfos.addView(getStep("完成任务", "审核失败", 1));
-                    return;
+                    break;
                 //不可操作
                 case 7:// "提交审核";
-                    llInfos.removeAllViews();
-                    llInfos.addView(getStep("领取任务", "已完成", 0));
-                    llInfos.addView(getStep("APP下载", "已完成", 0));
-                    llInfos.addView(getStep("完成任务", "审核中", 1));
                     bottom_btn_layout.setVisibility(View.GONE);
-                    return;
+                    break;
                 case 3://完成任务
-                    llInfos.removeAllViews();
-                    llInfos.addView(getStep("领取任务", "已完成", 0));
-                    llInfos.addView(getStep("APP下载", "已完成", 0));
-                    llInfos.addView(getStep("完成任务", "已完成", 0));
                     bottom_btn_layout.setVisibility(View.GONE);
-                    return;
+                    break;
                 case 8://任务已经下线
-                    if(TextUtils.isEmpty(taskAcceptedEty.getScreenshots()) || taskAcceptedEty.getLower_num() > 0){//没有提交过截图或者已经提交过一次 下线失败后提交
+                    if(TextUtils.isEmpty(taskEty.getScreenshots()) || gettaskAcceptedEty.getLower_num() > 0){//没有提交过截图或者已经提交过一次 下线失败后提交
                         break;
                     } else {//提交过一次,但是审核失败或者没有审核就下线了
                         String sr = "重新提交(<font color='#e2271d'><big>最后一次机会</big></font>)";
                         btnUpImag.setText(Html.fromHtml(sr));
                         btnUpImag.setVisibility(View.VISIBLE);
                         btnTaskItem.setVisibility(View.GONE);
-                        llInfos.removeAllViews();
-                        llInfos.addView(getStep("领取任务", "已完成", 0));
-                        llInfos.addView(getStep("APP下载", "已完成", 0));
-                        llInfos.addView(getStep("完成任务", "审核失败", 1));
-                        return;
-                    }
-            }
-            bottom_btn_layout.setVisibility(View.GONE);
-            ((View)llInfos.getParent()).setVisibility(View.GONE);
-            if(taskEty == null){
-                taskEty = taskReleaseEty.getTask();
-                if(taskEty != null && taskEty.getDesc() != null){
-                    if(taskEty.getDesc().startsWith("[")){
-                        List<TaskDescEntity> taskDescEntityList = JSONArray.parseArray(taskEty.getDesc(), TaskDescEntity.class);
-                        taskEty.setDescEntityList(taskDescEntityList);
+                        break;
                     }
-
-                }
             }
-
-            setSonVuewShow();
         }
     }
 
@@ -811,7 +758,7 @@ public class TaskDetailAct extends AbsChooseImageActivity implements TaskDetailC
     protected void onSetNetImageUrl(String data) {
         setLoaddingText("提交中");
         JSONObject jsonObject = new JSONObject();
-        jsonObject.put("id", taskReleaseEty.getAccepted_task_id());
+        jsonObject.put("id", taskReleaseEty.getAccepted_task_id() == 0 && gettaskAcceptedEty != null ? gettaskAcceptedEty.getId() : taskReleaseEty.getAccepted_task_id());
         jsonObject.put("screenshots", data + "");
         jsonObject.put("remark", taskEty.getRemarks() + "");
         jsonObject.put("package_name", taskEty.getPackage_names() + "");
@@ -1183,7 +1130,7 @@ public class TaskDetailAct extends AbsChooseImageActivity implements TaskDetailC
                     public void onNext(BaseMessage baseMessage) {
                         presenter.taskDesc(taskId);
                         try{
-                            gettaskAcceptedEty = JSONObject.parseObject(JSONObject.toJSONString(baseMessage.getData()), TaskAcceptedEty.class);
+                            gettaskAcceptedEty = baseMessage.getData(TaskAcceptedEty.class);
 
                         }catch (Exception e){
                             e.printStackTrace();

+ 1 - 2
app/src/main/java/com/sheep/gamegroup/view/activity/TaskListAct.java

@@ -110,6 +110,7 @@ public class TaskListAct extends BaseActivity implements TaskListContract.View {
 
     private void refreshData() {
         etyList.clear();
+        adp.notifyDataSetChanged();
         page = 1;
         initData();
     }
@@ -121,8 +122,6 @@ public class TaskListAct extends BaseActivity implements TaskListContract.View {
 
     @Override
     public void initData() {
-//        showProgress();
-//        swipe_container.setRefreshing(true);
         empty_view.setVisibility(View.INVISIBLE);
         presenter.acceptedTask(page,per_page);
     }

+ 6 - 14
app/src/main/java/com/sheep/gamegroup/view/adapter/TaskListItemAdp.java

@@ -88,13 +88,13 @@ public class TaskListItemAdp extends BaseAdapter {
         convertView.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
-                TaskEty task = ety.getRelease_task().getTask();
-                task.setScreenshots(ety.getScreenshots());
+//                TaskEty task = ety.getRelease_task().getTask();
+//                task.setScreenshots(ety.getScreenshots());
+//
+//                TaskReleaseEty releaseTask = ety.getRelease_task();
+//                releaseTask.setAccepted_task_id(ety.getId());
 
-                TaskReleaseEty releaseTask = ety.getRelease_task();
-                releaseTask.setAccepted_task_id(ety.getId());
-
-                Jump2View.getInstance().goTaskDetailView(context, ety);
+                Jump2View.getInstance().goTaskDetailViewFromTaskList((Activity) context, ety.getRelease_task_id());
             }
         });
         TestUtil.setDebugDownLoad(context, convertView, ety.getRelease_task().getTask());
@@ -153,12 +153,4 @@ public class TaskListItemAdp extends BaseAdapter {
         }
         return stateStr;
     }
-    /**
-     * update file
-     */
-    public void uploadImag(Context context) {
-        Intent intent = new Intent(Intent.ACTION_PICK,
-                android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
-        ((Activity)context).startActivityForResult(intent, 1);
-    }
 }

+ 0 - 1
app/src/main/res/layout/try_makemoney_item_recommend.xml

@@ -163,7 +163,6 @@
             android:padding="@dimen/content_padding_3"
             app:layout_constraintEnd_toEndOf="parent"
             app:layout_constraintBottom_toBottomOf="parent"
-            app:layout_constraintBaseline_toBaselineOf="@+id/item_date_tv"
             android:layout_marginTop="@dimen/content_padding_small"
             android:background="@drawable/sp_bg_gradient_rectangle_blue"/>
     </android.support.constraint.ConstraintLayout>