Przeglądaj źródła

[검색][Bug] '전체' 태그 no 수정

hyodong.min 6 lat temu
rodzic
commit
38d66dfb10

+ 2 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/bean/api/FilterTagBean.java

@@ -26,6 +26,8 @@ public class FilterTagBean extends TagBean implements ISelectable {
    */
 
   public static final String INDEX_TOTAL = "0";
+  public static final String TAG_NAME_TOTAL = "전체";
+  public static final String TAG_NO_TOTAL = "ALL";
 
   @SerializedName("cnt")
   private int subCount;

+ 1 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/view/dialog/FilterDetailDialog.java

@@ -150,7 +150,7 @@ public class FilterDetailDialog extends DialogBase<IFilterListener<FilterDetailD
 
       tagBean = tagBeans.get(i);
 
-      if (FilterTagBean.INDEX_TOTAL.equals(tagBean.getTagNo())) {
+      if (FilterTagBean.TAG_NO_TOTAL.equals(tagBean.getTagNo())) {
         View containerTotal = LayoutInflater.from(getContext()).inflate(R.layout.dialog_category_filter_detail_total, container, false);
         CustomCheckBox checkBoxAll = containerTotal.findViewById(R.id.check_total);
         checkBoxAll.setText(R.string.search_filter_all);

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

@@ -346,6 +346,17 @@ public abstract class CategoryFilterModel extends CategoryMainModel {
           // 결과를 filterBean 에 맵핑 해준다.
           if (null != resultBean && null != resultBean.getData()) {
             List<FilterTagBean> tagBeans = resultBean.getData();
+            
+            // todo filter bean 파서 추가 필요
+
+            // '전체' 태그는 tag no 를 'all' 로 변환
+            for (FilterTagBean tagBean : tagBeans) {
+              if (FilterTagBean.INDEX_TOTAL.equals(tagBean.getTagNo()) || FilterTagBean.TAG_NAME_TOTAL.equals(tagBean.getTagName())) {
+                tagBean.setTagNo(FilterTagBean.TAG_NO_TOTAL);
+                break;
+              }
+            }
+
             // 이전 선택한 항목 재 선택
             if (null != filterBean.getTagBeans()) {
               for (FilterTagBean before : filterBean.getTagBeans()) {
@@ -376,7 +387,7 @@ public abstract class CategoryFilterModel extends CategoryMainModel {
             // 처음 하나도 선택 안된 상태라면 '전체'를 기본값으로 선택한다.
             if (needDefault) {
               for (FilterTagBean tagBean : tagBeans) {
-                if (FilterTagBean.INDEX_TOTAL.equals(tagBean.getTagNo())) {
+                if (FilterTagBean.TAG_NO_TOTAL.equals(tagBean.getTagNo())) {
                   tagBean.setSelected(true);
                   // 사용자 선택 전이므로 commit 은 하지 않는다.
                   break;

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

@@ -663,6 +663,17 @@ public class SearchResultModel extends Model {
         // 결과를 filterBean 에 맵핑 해준다.
         if (null != resultBean && null != resultBean.getData()) {
           List<FilterTagBean> tagBeans = resultBean.getData();
+
+          // todo filter bean 파서 추가 필요
+
+          // '전체' 태그는 tag no 를 'all' 로 변환
+          for (FilterTagBean tagBean : tagBeans) {
+            if (FilterTagBean.INDEX_TOTAL.equals(tagBean.getTagNo()) || FilterTagBean.TAG_NAME_TOTAL.equals(tagBean.getTagName())) {
+              tagBean.setTagNo(FilterTagBean.TAG_NO_TOTAL);
+              break;
+            }
+          }
+
           // 이전 선택한 항목 재 선택
           if (null != filterBean.getTagBeans()) {
             for (FilterTagBean before : filterBean.getTagBeans()) {
@@ -693,7 +704,7 @@ public class SearchResultModel extends Model {
           // 처음 하나도 선택 안된 상태라면 '전체'를 기본값으로 선택한다.
           if (needDefault) {
             for (FilterTagBean tagBean : tagBeans) {
-              if (FilterTagBean.INDEX_TOTAL.equals(tagBean.getTagNo())) {
+              if (FilterTagBean.TAG_NO_TOTAL.equals(tagBean.getTagNo())) {
                 tagBean.setSelected(true);
                 // 사용자 선택 전이므로 commit 은 하지 않는다.
                 break;