Browse Source

[마이][Common] 버킷리스트 완료 리스트, 상세 클릭시 오류 수정

Hasemi 7 years ago
parent
commit
c873b2afa8

+ 3 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/my/bucketlist/IMyBucketListView.java

@@ -25,4 +25,7 @@ public interface IMyBucketListView extends IView {
   void setCompletedCount(String str);
 
   void changeCheckImage(boolean isClicked);
+
+  void setClicked();
+
 }

+ 10 - 3
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/my/bucketlist/MyBucketListFragment.java

@@ -113,9 +113,11 @@ public class MyBucketListFragment extends FragmentBase<MyBucketListPresenter> im
   public void drawList(List<BucketWithTagBean> beans) {
     adapter = new MyBucketListAdapter(getActivity(), beans, event -> {
       //버킷리스트 상세 이동
-      if(isClicked){
+      Log.e("APP#  MyBucketListFragment | drawList", "| isClicked ===>" + isClicked);
+      if (isClicked) {
         presenter.onEvent(new Event.Builder(Event.COMPLETE_BUCKET).index(event.getIndex()).build());
-      }else{
+      }
+      else {
         presenter.onEvent(event);
       }
     });
@@ -140,7 +142,12 @@ public class MyBucketListFragment extends FragmentBase<MyBucketListPresenter> im
 
   @Override
   public void changeCheckImage(boolean isClicked) {
-    imageViewBucketCheck.setImageDrawable(isClicked? getResources().getDrawable(R.drawable.icon_bucket_complete) : getResources().getDrawable(R.drawable.icon_bucket_not_complete));
+    imageViewBucketCheck.setImageDrawable(isClicked ? getResources().getDrawable(R.drawable.icon_bucket_complete) : getResources().getDrawable(R.drawable.icon_bucket_not_complete));
+  }
+
+  @Override
+  public void setClicked() {
+    this.isClicked = false;
   }
 
   private boolean isClicked() {

+ 11 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/my/bucketlist/MyBucketListModel.java

@@ -78,6 +78,17 @@ public class MyBucketListModel extends Model {
     return count;
   }
 
+  public ArrayList<BucketWithTagBean> getCompletedBucketList() {
+    ArrayList<BucketWithTagBean> completedBucketList = new ArrayList<>();
+    for (int i = 0; i < bucketList.size(); i++) {
+      if (bucketList.get(i).isCompleted()) {
+        completedBucketList.add(bucketList.get(i));
+      }
+    }
+    return completedBucketList;
+  }
+
+
   public void loadMyBucket() {
     disposableBucket = BucketListModelHelper.getInstance().loadMyBucketList(new BucketListRequestBean(1, 1000, ""), new IAPIModuleListener<BucketListResultBean>() {
 

+ 11 - 25
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/my/bucketlist/MyBucketListPresenter.java

@@ -1,9 +1,5 @@
 package kr.co.zumo.app.lifeplus.view.screen.my.bucketlist;
 
-import java.util.ArrayList;
-import java.util.List;
-
-import kr.co.zumo.app.lifeplus.bean.api.BucketWithTagBean;
 import kr.co.zumo.app.lifeplus.helper.DeliveryHelper;
 import kr.co.zumo.app.lifeplus.helper.NavigationBar;
 import kr.co.zumo.app.lifeplus.supervisor.ScreenID;
@@ -26,7 +22,7 @@ public class MyBucketListPresenter extends Presenter<MyBucketListModel, IMyBucke
 
   private DoubleChecker doubleChecker;
   private DoubleChecker doubleCheckerBest;
-  private List<BucketWithTagBean> toggleBucketList;
+
 
   public MyBucketListPresenter(MyBucketListModel model, IMyBucketListView view) {
     super(model, view);
@@ -89,31 +85,21 @@ public class MyBucketListPresenter extends Presenter<MyBucketListModel, IMyBucke
         go(ScreenID.BUCKET_DETAIL);
         break;
       case Event.TOGGLE:
-        toggleBucketList = new ArrayList<>();
         if (event.getBool()) {
-          for (int i = 0; i < model.getBucketList().size(); i++) {
-            if (model.getBucketList().get(i).isCompleted()) {
-              toggleBucketList.add(model.getBucketList().get(i));
-            }
-          }
-          view.drawList(toggleBucketList);
+          view.drawList(model.getCompletedBucketList());
           view.changeCheckImage(event.getBool());
-        }else {
+        }
+        else {
           view.drawList(model.getBucketList());
           view.changeCheckImage(event.getBool());
-          }
+        }
+        break;
+      case Event.COMPLETE_BUCKET:
+        getHelper(DeliveryHelper.class).setPackaging(model.getCompletedBucketList().get(event.getIndex()));
+        //isClicked 초기화
+        view.setClicked();
+        go(ScreenID.BUCKET_DETAIL);
         break;
-        case Event.COMPLETE_BUCKET:
-          int checkIndex = 0;
-          for(int i = 0; i <model.getBucketList().size(); i++){
-            //completed된 index로 모델에서 해당하는 인덱스 찾기
-            if(toggleBucketList.get(index).getBucketNumber().equals(model.getBucketList().get(i).getBucketNumber())){
-              checkIndex = i;
-            }
-          }
-          getHelper(DeliveryHelper.class).setPackaging(model.getBucketList().get(checkIndex));
-          go(ScreenID.BUCKET_DETAIL);
-          break;
       default:
         break;
     }