浏览代码

[검색][Bug] 카테고리 결과 없을 때 필터 적용/해제하면 발생하는 버그 수정

hyodong.min 6 年之前
父节点
当前提交
cb2ab655ed
共有 1 个文件被更改,包括 14 次插入15 次删除
  1. 14 15
      app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/search/SearchResultModel.java

+ 14 - 15
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/search/SearchResultModel.java

@@ -10,7 +10,6 @@ import android.util.Log;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collections;
-import java.util.Comparator;
 import java.util.LinkedHashMap;
 import java.util.List;
 
@@ -159,9 +158,12 @@ public class SearchResultModel extends Model {
 
     stopSearch();
     // 카테고리 필터 추가
-    CategoryCheckBean categoryCheckBean = categoryCheckBeans.get(selectedCategoryIndex);
     SearchRequestBean requestBean = new SearchRequestBean(getSearchTag());
-    requestBean.setCategoryNo(categoryCheckBean.getCategoryNo());
+
+    if (null != categoryCheckBeans && categoryCheckBeans.size() > 0) {
+      CategoryCheckBean categoryCheckBean = categoryCheckBeans.get(selectedCategoryIndex);
+      requestBean.setCategoryNo(categoryCheckBean.getCategoryNo());
+    }
 
     if (StringUtil.isEmpty(requestBean.getKeyword())) {
       Log.i("APP# SearchResultModel | search", "|" + " 검색어 없음.");
@@ -343,20 +345,17 @@ public class SearchResultModel extends Model {
 
     categoryCheckBeans = list;
 
-    if (null != categoryCheckBeans) {
-      Collections.sort(categoryCheckBeans, new Comparator<CategoryCheckBean>() {
-        @Override
-        public int compare(CategoryCheckBean categoryCheckBean, CategoryCheckBean checkBean) {
-          if (!categoryCheckBean.getCategoryNo().equals("") && !checkBean.getCategoryNo().equals("")) {
-            if (Integer.parseInt(categoryCheckBean.getCategoryNo()) < Integer.parseInt(checkBean.getCategoryNo())) {
-              return -1;
-            }
-            else if (Integer.parseInt(categoryCheckBean.getCategoryNo()) > Integer.parseInt(checkBean.getCategoryNo())) {
-              return 1;
-            }
+    if (categoryCheckBeans.size() > 1) {
+      Collections.sort(categoryCheckBeans, (categoryCheckBean, checkBean) -> {
+        if (!categoryCheckBean.getCategoryNo().equals("") && !checkBean.getCategoryNo().equals("")) {
+          if (Integer.parseInt(categoryCheckBean.getCategoryNo()) < Integer.parseInt(checkBean.getCategoryNo())) {
+            return -1;
+          }
+          else if (Integer.parseInt(categoryCheckBean.getCategoryNo()) > Integer.parseInt(checkBean.getCategoryNo())) {
+            return 1;
           }
-          return 0;
         }
+        return 0;
       });
     }