Browse Source

[필터][Bug] 필터 리스트 0일 때 에러 처리

hyodong.min 6 years ago
parent
commit
ea5c7a4473

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

@@ -173,9 +173,9 @@ public abstract class CategoryFilterModel extends CategoryMainModel {
       public void onApiSuccess(CategoryFilterResultBean resultBean) {
         List<CategoryFilterBean> list = resultBean.getData();
 
-        LinkedHashMap<String, FilterSectionBean> hashMap = new LinkedHashMap<>();
-
         if (null != list && list.size() > 0) {
+
+          LinkedHashMap<String, FilterSectionBean> hashMap = new LinkedHashMap<>();
           // section 별로 분류
           int len = list.size();
           for (int i = 0; i < len; ++i) {
@@ -198,9 +198,12 @@ public abstract class CategoryFilterModel extends CategoryMainModel {
             FilterSectionBean sectionBean = hashMap.get(s);
             filterSectionBeans.add(sectionBean);
           }
+          onResult(new Event.Builder(Event.SUCCESS).integer(Event.LOADED_FILTER).build());
+        }
+        else {
+          onApiError("ERROR_INVAlID_RESULT", new APIError(APIError.ERROR_INVAlID_RESULT));
         }
 
-        onResult(new Event.Builder(Event.SUCCESS).integer(Event.LOADED_FILTER).build());
       }
 
       @Override

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

@@ -528,9 +528,11 @@ public class SearchResultModel extends Model {
       public void onApiSuccess(SearchFilterResultBean resultBean) {
         List<SearchFilterBean> list = resultBean.getData();
 
-        LinkedHashMap<String, FilterSectionBean> hashMap = new LinkedHashMap<>();
+        if (null != list && list.size() > 0) {
+
+          LinkedHashMap<String, FilterSectionBean> hashMap = new LinkedHashMap<>();
 
-        // 정렬 기준 추가 - 로컬에 정의
+          // 정렬 기준 추가 - 로컬에 정의
         /*
          정렬은 로컬에서 지정해줌
          fltrType = 87
@@ -538,22 +540,20 @@ public class SearchResultModel extends Model {
          fltrNo = 1/2/3 => orderby에 적용 "orderby":"정렬조건" --
          filterName = 최신순 1 좋아요순 2 북마크순 3  --  기본은 1
          */
-        // 섹션 추가
-        FilterSectionBean sectionBean = null;
-        SearchFilterBean bean;
-        sectionBean = new FilterSectionBean();
-        sectionBean.setSectionTitle(ResourceUtil.getString(R.string.search_order_by));
-        sectionBean.setSectionType(FilterBean.FILTER_TYPE_ORDER);
-        sectionBean.setFilterBeans(new ArrayList<>());
-        // 최신순, 좋아요순, 북마크순
-        sectionBean.getFilterBeans().add(getSearchFilterBean(R.string.order_by_latest, FilterBean.FILTER_ORDER_LATEST));
-        sectionBean.getFilterBeans().get(0).setSelected(true);  // 최신순 기본 선택
-        sectionBean.getFilterBeans().get(0).commit();
-        sectionBean.getFilterBeans().add(getSearchFilterBean(R.string.order_by_like, FilterBean.FILTER_ORDER_LIKE));
-        sectionBean.getFilterBeans().add(getSearchFilterBean(R.string.order_by_bookmark, FilterBean.FILTER_ORDER_BOOKMARK));
-        hashMap.put("order", sectionBean);
-
-        if (null != list && list.size() > 0) {
+          // 섹션 추가
+          FilterSectionBean sectionBean = null;
+          SearchFilterBean bean;
+          sectionBean = new FilterSectionBean();
+          sectionBean.setSectionTitle(ResourceUtil.getString(R.string.search_order_by));
+          sectionBean.setSectionType(FilterBean.FILTER_TYPE_ORDER);
+          sectionBean.setFilterBeans(new ArrayList<>());
+          // 최신순, 좋아요순, 북마크순
+          sectionBean.getFilterBeans().add(getSearchFilterBean(R.string.order_by_latest, FilterBean.FILTER_ORDER_LATEST));
+          sectionBean.getFilterBeans().get(0).setSelected(true);  // 최신순 기본 선택
+          sectionBean.getFilterBeans().get(0).commit();
+          sectionBean.getFilterBeans().add(getSearchFilterBean(R.string.order_by_like, FilterBean.FILTER_ORDER_LIKE));
+          sectionBean.getFilterBeans().add(getSearchFilterBean(R.string.order_by_bookmark, FilterBean.FILTER_ORDER_BOOKMARK));
+          hashMap.put("order", sectionBean);
           // section 별로 분류
           int len = list.size();
           for (int i = 0; i < len; ++i) {
@@ -581,9 +581,12 @@ public class SearchResultModel extends Model {
           for (String s : hashMap.keySet()) {
             filterSectionBeans.add(hashMap.get(s));
           }
+          onResult(new Event.Builder(Event.SUCCESS).index(Event.LOADED_FILTER).build());
+        }
+        else {
+          onApiError("ERROR_INVAlID_RESULT", new APIError(APIError.ERROR_INVAlID_RESULT));
         }
 
-        onResult(new Event.Builder(Event.SUCCESS).index(Event.LOADED_FILTER).build());
       }
 
       @Override