瀏覽代碼

[이벤트][New] 선택형/참여 결과, 좋아요 추가

hyodong.min 6 年之前
父節點
當前提交
055cf6382c

+ 3 - 3
app/src/main/java/kr/co/zumo/app/lifeplus/helper/NavigationBar.java

@@ -490,7 +490,7 @@ public class NavigationBar {
     }
     else {
       buttonConfirm.setImageResource(R.drawable.ic_icon_bucket_complete_default);
-      setWhiteDrawable(buttonConfirm.getDrawable(), builder.isWhite);
+      setWhiteDrawable(buttonConfirm.getDrawable(), isWhite);
     }
   }
 
@@ -511,7 +511,7 @@ public class NavigationBar {
     }
     else {
       buttonLike.setImageResource(R.drawable.icon_header_like_wh_off);
-      setWhiteDrawable(buttonLike.getDrawable(), builder.isWhite);
+      setWhiteDrawable(buttonLike.getDrawable(), isWhite);
     }
   }
 
@@ -536,7 +536,7 @@ public class NavigationBar {
     }
     else {
       buttonBookmark.setImageResource(R.drawable.icon_header_bookmark_wh_off);
-      setWhiteDrawable(buttonBookmark.getDrawable(), builder.isWhite);
+      setWhiteDrawable(buttonBookmark.getDrawable(), isWhite);
     }
   }
 

+ 2 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/event/EventDetailModel.java

@@ -96,6 +96,8 @@ public abstract class EventDetailModel extends CoinModel {
   public void setDeliveredEventDetailBean(EventDetailBean eventDetailBean) {
     this.deliveredEventDetailBean = eventDetailBean;
     this.deliveredEventDetailBean.updateLike(ContentsFlagHelper.getInstance());
+    // loadEventDetail() 을 하지 않을 경우 대비
+    this.eventDetailBean = deliveredEventDetailBean;
   }
 
   protected List<EventPageBean> eventPageBeans;

+ 7 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/event/record/EventRecordFragment.java

@@ -43,6 +43,7 @@ public class EventRecordFragment extends FragmentBase<EventRecordPresenter> impl
   private Button buttonRecommendContents;
   private RecyclerView recyclerView;
   private EventSelectChartViewAdapter eventSelectChartViewAdapter;
+  protected ActionBarHelper actionBarHelper;
 
   @Override
   protected View onAfterCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
@@ -86,6 +87,7 @@ public class EventRecordFragment extends FragmentBase<EventRecordPresenter> impl
       .show();
 
     actionBarHelper.setProgress(100);
+    this.actionBarHelper = actionBarHelper;
   }
 
   @Override
@@ -168,4 +170,9 @@ public class EventRecordFragment extends FragmentBase<EventRecordPresenter> impl
     @Override
     public void onRequestDisallowInterceptTouchEvent(boolean disallowIntercept) {}
   };
+
+  @Override
+  public void setLiked(boolean isChecked, boolean isAnim) {
+    actionBarHelper.setLiked(isChecked, isAnim);
+  }
 }

+ 16 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/event/record/EventRecordPresenter.java

@@ -8,6 +8,7 @@ import android.util.Log;
 import kr.co.zumo.app.R;
 import kr.co.zumo.app.lifeplus.bean.EventDeliveryBean;
 import kr.co.zumo.app.lifeplus.bean.api.EventAnswerRecordBean;
+import kr.co.zumo.app.lifeplus.helper.NavigationBar;
 import kr.co.zumo.app.lifeplus.supervisor.ScreenID;
 import kr.co.zumo.app.lifeplus.util.ResourceUtil;
 import kr.co.zumo.app.lifeplus.view.DoubleChecker;
@@ -136,6 +137,7 @@ public class EventRecordPresenter extends Presenter<EventRecordModel, IEventReco
   @Override
   public void onScreenReady() {
     doubleChecker.checkFirst();
+    view.setLiked(model.isItemLiked(), false);
   }
 
   @Override
@@ -145,6 +147,9 @@ public class EventRecordPresenter extends Presenter<EventRecordModel, IEventReco
         if (event.getInteger() == Event.EVENT_DETAIL) {
           model.loadEventAnswerRecord();
         }
+        else if (event.getInteger() == Event.CONTENTS_LIKE) {
+          view.setLiked(event.getBool(), true);
+        }
         break;
       case Event.RESULT:
         // 참여 기록 로딩 완료
@@ -174,4 +179,15 @@ public class EventRecordPresenter extends Presenter<EventRecordModel, IEventReco
       })
       .show();
   }
+
+
+  @Override
+  public void onNavigationClickLike(NavigationBar navigationBar) {
+    model.updateLiked();
+  }
+
+  @Override
+  public void onNavigationClickShare(NavigationBar navigationBar) {
+
+  }
 }

+ 2 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/event/record/IEventRecordView.java

@@ -23,4 +23,6 @@ public interface IEventRecordView extends IView {
   void setContents(String title, String subTitle);
 
   void draw(String type, List<EventRecordAnswerItemBean> eventAnswerItemBeans);
+
+  void setLiked(boolean isChecked , boolean isAnim);;
 }

+ 0 - 41
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/event/select/EventDetailSelectModel.java

@@ -138,13 +138,6 @@ public class EventDetailSelectModel extends EventDetailModel {
       }
     }
 
-    // data update
-//    final int questionIndex = pageIndex - 1; // 커버를 빼줌
-//    EventQuestionBean eventQuestionBean = eventDetailBean.getEventQuestionList().get(questionIndex);
-//    if (null != eventQuestionBean) {
-//      eventQuestionBean.getEventAnswerItemBeanList().get(subIndex).setChecked(checked);
-//    }
-
     Log.d("APP# EventDetailSelectModel | prepareVerify", "|" + " -> " + new EventAnswerRequestBean(eventDetailBean.getItemNo(), getAnswerList()).toPrettyJson());
   }
 
@@ -267,40 +260,6 @@ public class EventDetailSelectModel extends EventDetailModel {
     return eventAnswerResultBean;
   }
 
-  public void loadRecommendContents(String questionType) {
-    Log.d("APP# EventDetailSelectModel | loadRecommendContents", "|" + "----------------------------------------------");
-    if (EventQuestionBean.QUESTION_TYPE_RECOMMEND_TAG.equals(questionType)) {
-      // tag 형 추천 컨텐츠
-      // 선택된 answerNo 를 리스트로 전달.
-
-      /*
-
-      리스트 타입을 알려면? => EventDetailBean
-
-      - 처음 진입 시
-       => EventDetailBean 이 배달되면 = 참여 직후 -> tag 로드 -> 연관 컨텐츠 로드
-       => eventNo(String) 이 배달되면 = 참여 이후 -> 디테일 로드 -> 참여 결과 로드 -> tag 로드 -> 연관 컨텐츠 로드
-
-       */
-
-      // 태그 형 필요 아이템
-      /*
-      제목, 서브제목, 배경 그림 => EventDetailBean
-
-      항목 선택 여부 (answerNo)
-        - 참여 직후 => EventDetailBean
-        - 참여 이후 => 참여 결과 API Bean
-       */
-
-      // 기본 형
-      /*
-      선택한 항목
-        - 참여 직후 => EventDetailBean
-        - 참여 이후 => 참여 결과 API Bean
-       */
-    }
-  }
-
   public boolean isLastPage(int pageIndex) {
     return getEventPageList().size() - 1 == pageIndex;
   }

+ 7 - 4
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/event/select/EventDetailSelectPresenter.java

@@ -54,6 +54,7 @@ public class EventDetailSelectPresenter extends Presenter<EventDetailSelectModel
 
   private void render() {
     view.draw(model.getEventPageList());
+    view.setLiked(model.isItemLiked(), false);
   }
 
   @Override
@@ -222,6 +223,9 @@ public class EventDetailSelectPresenter extends Presenter<EventDetailSelectModel
             ToastProvider.showSimple(R.string.event_participation_completed);
           }
         }
+        else if (event.getInteger() == Event.CONTENTS_LIKE) {
+          view.setLiked(event.getBool(), true);
+        }
 
         break;
       case Event.ERROR:
@@ -261,6 +265,7 @@ public class EventDetailSelectPresenter extends Presenter<EventDetailSelectModel
 
   @Override
   public void onNavigationClickLike(NavigationBar navigationBar) {
+    model.updateLiked();
   }
 
   @Override
@@ -297,13 +302,11 @@ public class EventDetailSelectPresenter extends Presenter<EventDetailSelectModel
       view.setScrollDisabled();
       view.setBlackActionBar();
     }
-  }
 
-  @Override
-  public void onNavigationClickClose(NavigationBar navigationBar) {
-    super.onNavigationClickClose(navigationBar);
+    view.setLiked(model.isItemLiked(), false);
   }
 
+
   private void setProgress(int percent) {
     view.setProgress(percent);
   }