Browse Source

[카테고리][Bug] 필터 상세 로딩 시 기초 데이터 - 처음은 전체 검색 결과로 이용

hyodong.min 6 years ago
parent
commit
49a173092e

+ 11 - 10
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/category/CategoryFilterModel.java

@@ -208,21 +208,22 @@ public abstract class CategoryFilterModel extends CategoryMainModel {
     });
   }
 
-  protected boolean isFilterApplied = false;
+  private boolean isFilterApplied = false;
   private int listCount = 0;
   private CategoryFilterContentsResultBean filterSearchResultBean;
   private CategoryItemNoProvider itemNoProvider = new CategoryItemNoProvider();
   private List<CategoryContentsBean> committedFilteringContents;
 
-  public void loadFilteringContents(CategoryFilterContentsRequestBean requestBean, boolean hasFilter, IWaiterCallable waiterCallable, IEventListener listener) {
+  private void loadFilteringContentsInternal(CategoryFilterContentsRequestBean requestBean, boolean hasFilter, boolean forceLoading, IWaiterCallable waiterCallable, IEventListener listener) {
 
-    if (hasFilter == false) {
+    // 필터가 없고, 강제 기초 로딩이 아닐 경우에는 0을 리턴
+    if (false == hasFilter && false == forceLoading) {
       isFilterApplied = false;
       filterSearchResultBean = null;
       itemNoProvider.reset();
       listCount = 0;
       listener.onEvent(new Event.Builder(Event.SUCCESS).integer(listCount).build());
-      Log.d("APP# CategoryFilterModel | loadFilteringContents", "|" + "적용된 필터 없음.");
+      Log.d("APP# CategoryFilterModel | loadFilteringContentsInternal", "|" + "적용된 필터 없음.");
       return;
     }
 
@@ -255,14 +256,14 @@ public abstract class CategoryFilterModel extends CategoryMainModel {
   }
 
   public void loadFilteringContents(IWaiterCallable waiterCallable, IEventListener listener) {
-    Log.w("APP# CategoryFilterModel | loadFilteringContents", "|" + " -------------------------- ");
+    Log.w("APP# CategoryFilterModel | loadFilteringContentsInternal", "|" + " -------------------------- ");
 
     CategoryFilterContentsRequestBean requestBean = new CategoryFilterContentsRequestBean(getCategoryNo());
 
     // 필터 적용
     boolean hasFilter = applyFilter(requestBean, false);
 
-    loadFilteringContents(requestBean, hasFilter, waiterCallable, listener);
+    loadFilteringContentsInternal(requestBean, hasFilter, false, waiterCallable, listener);
 
   }
 
@@ -283,7 +284,7 @@ public abstract class CategoryFilterModel extends CategoryMainModel {
     }
     else {
       Log.e("APP# CategoryFilterModel | loadFilterDetail", "|" + "********************************* 다시 기초 로드");
-      loadFilteringContents(requestBean, hasFilter, waiterCaller, event -> {
+      loadFilteringContentsInternal(requestBean, hasFilter, true, waiterCaller, event -> {
         if (event.getEventId() == Event.SUCCESS) {
           loadFilterDetailInternal(filterBean, waiterCallable, listener);
         }
@@ -302,9 +303,9 @@ public abstract class CategoryFilterModel extends CategoryMainModel {
     String itemNoes = itemNoProvider.getItemNoes(null);
 
     // "" 으로 요청하면 결과가 맞지않아서 dummy 를 넣어줌
-    if (StringUtil.isEmpty(itemNoes)) {
-      itemNoes = "#0000";
-    }
+//    if (StringUtil.isEmpty(itemNoes)) {
+//      itemNoes = "0";
+//    }
 
     disposableFilter = new APICategoryFilterDetailModule().call(
       new CategoryFilterDetailRequestBean(getCategoryNo(), type, no, itemNoes),

+ 0 - 3
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/category/CategoryItemNoProvider.java

@@ -52,9 +52,6 @@ public class CategoryItemNoProvider implements IItemNoProvider<CategoryFilterCon
         targetList = null;
       }
     }
-    else {
-      targetList = null;
-    }
 
     // 전송할 데이터가 있다면 추가
     if (null != targetList && targetList.size() > 0) {