|
|
@@ -14,7 +14,7 @@ import java.util.List;
|
|
|
|
|
|
import io.reactivex.disposables.Disposable;
|
|
|
import kr.co.zumo.app.R;
|
|
|
-import kr.co.zumo.app.lifeplus.bean.SearchFilterDataSectionBean;
|
|
|
+import kr.co.zumo.app.lifeplus.bean.SearchFilterSectionBean;
|
|
|
import kr.co.zumo.app.lifeplus.bean.api.CategoryBean;
|
|
|
import kr.co.zumo.app.lifeplus.bean.api.CategoryCheckBean;
|
|
|
import kr.co.zumo.app.lifeplus.bean.api.LifeplusData;
|
|
|
@@ -157,9 +157,7 @@ public class SearchResultModel extends Model {
|
|
|
disposableSearch = new APISearchModule().call(requestBean, new APIModuleSimpleListener<SearchResultBean>(waiterCaller) {
|
|
|
@Override
|
|
|
public void onApiSuccess(SearchResultBean resultBean) {
|
|
|
-
|
|
|
parseResult(resultBean);
|
|
|
-
|
|
|
onResult(new Event.Builder(Event.SUCCESS).integer(Event.SEARCH_TAG_CATEGORY).build());
|
|
|
}
|
|
|
|
|
|
@@ -224,10 +222,8 @@ public class SearchResultModel extends Model {
|
|
|
disposableSearch = new APISearchModule().call(requestBean, new APIModuleSimpleListener<SearchResultBean>(waiterCaller) {
|
|
|
@Override
|
|
|
public void onApiSuccess(SearchResultBean resultBean) {
|
|
|
-
|
|
|
parseResult(resultBean);
|
|
|
parseCategory();
|
|
|
-
|
|
|
onResult(new Event.Builder(Event.SUCCESS).integer(Event.SEARCH_TAG).build());
|
|
|
}
|
|
|
|
|
|
@@ -253,11 +249,9 @@ public class SearchResultModel extends Model {
|
|
|
disposableSearch = new APISearchModule().call(requestBean, new APIModuleSimpleListener<SearchResultBean>(waiterCaller) {
|
|
|
@Override
|
|
|
public void onApiSuccess(SearchResultBean resultBean) {
|
|
|
-
|
|
|
parseResult(resultBean);
|
|
|
parseTags();
|
|
|
parseCategory();
|
|
|
-
|
|
|
onResult(new Event.Builder(Event.RESULT).integer(Event.SEARCH).build());
|
|
|
}
|
|
|
|
|
|
@@ -272,9 +266,7 @@ public class SearchResultModel extends Model {
|
|
|
// 검색 된 태그 표시 -> 처음에만 설정 해줌.
|
|
|
if (null == tagCheckBeans) {
|
|
|
tagCheckBeans = new ArrayList<>();
|
|
|
- int len = searchTags.length;
|
|
|
- for (int i = 0; i < len; ++i) {
|
|
|
- String tag = searchTags[i];
|
|
|
+ for (String tag : searchTags) {
|
|
|
boolean isChecked = false;
|
|
|
for (TagBean tagBean : tagResultBeans) {
|
|
|
if (tag.equals(StringUtil.toTag(tagBean.getTagName()))) {
|
|
|
@@ -342,23 +334,18 @@ public class SearchResultModel extends Model {
|
|
|
Log.i("APP# SearchResultModel | onApiSuccess", "|" + "------------------- tagBeans.size(): " + tagResultBeans.size());
|
|
|
// 검색 결과 있음
|
|
|
if (searchTags.length == tagResultBeans.size()) {
|
|
|
- // tag 수 같음
|
|
|
- // -> count 추가
|
|
|
+ // tag 수 같음 -> count 추가
|
|
|
resultContentsBeans.add(0, new SearchContentsBean(SearchContentsBean.TYPE_COUNT, listCount, getResultTag(tagResultBeans)));
|
|
|
}
|
|
|
else {
|
|
|
- // tag 수 다름
|
|
|
- // -> tag no result 추가
|
|
|
- // -> count 추가
|
|
|
+ // tag 수 다름 -> tag no result 추가 -> count 추가
|
|
|
resultContentsBeans.add(0, new SearchContentsBean(SearchContentsBean.TYPE_COUNT, listCount, getResultTag(tagResultBeans)));
|
|
|
resultContentsBeans.add(0, new SearchContentsBean(SearchContentsBean.TYPE_NOTHING, getSearchTag()));
|
|
|
}
|
|
|
}
|
|
|
else {
|
|
|
Log.i("APP# SearchResultModel | onApiSuccess", "|" + "------------------- tagBeans: " + tagResultBeans);
|
|
|
- // 검색 결과 없음
|
|
|
- // -> no result 추가
|
|
|
- // -> 추천 콘텐트 추가
|
|
|
+ // 검색 결과 없음 -> no result 추가 -> 추천 콘텐트 추가
|
|
|
resultContentsBeans.add(0, new SearchContentsBean(SearchContentsBean.TYPE_RECOMMEND));
|
|
|
resultContentsBeans.add(0, new SearchContentsBean(SearchContentsBean.TYPE_NOTHING_WITH_ICON, getSearchTag()));
|
|
|
}
|
|
|
@@ -471,7 +458,7 @@ public class SearchResultModel extends Model {
|
|
|
}
|
|
|
|
|
|
public void loadFilter() {
|
|
|
- if (null != searchFilterDataSectionBean) {
|
|
|
+ if (null != searchFilterSectionBean) {
|
|
|
onResult(new Event.Builder(Event.SUCCESS).index(Event.LOADED_FILTER).build());
|
|
|
return;
|
|
|
}
|
|
|
@@ -481,7 +468,7 @@ public class SearchResultModel extends Model {
|
|
|
public void onApiSuccess(SearchFilterResultBean resultBean) {
|
|
|
List<SearchFilterBean> list = resultBean.getData();
|
|
|
|
|
|
- LinkedHashMap<String, SearchFilterDataSectionBean> hashMap = new LinkedHashMap<>();
|
|
|
+ LinkedHashMap<String, SearchFilterSectionBean> hashMap = new LinkedHashMap<>();
|
|
|
|
|
|
// 정렬 기준 추가 - 로컬에 정의
|
|
|
/*
|
|
|
@@ -492,9 +479,9 @@ public class SearchResultModel extends Model {
|
|
|
filterName = 최신순 1 좋아요순 2 북마크순 3 -- 기본은 1
|
|
|
*/
|
|
|
// 섹션 추가
|
|
|
- SearchFilterDataSectionBean sectionBean = null;
|
|
|
+ SearchFilterSectionBean sectionBean = null;
|
|
|
SearchFilterBean bean;
|
|
|
- sectionBean = new SearchFilterDataSectionBean();
|
|
|
+ sectionBean = new SearchFilterSectionBean();
|
|
|
sectionBean.setSectionTitle(ResourceUtil.getString(R.string.search_order_by));
|
|
|
sectionBean.setSectionType(SearchFilterBean.FILTER_TYPE_ORDER);
|
|
|
sectionBean.setFilterBeans(new ArrayList<>());
|
|
|
@@ -515,7 +502,7 @@ public class SearchResultModel extends Model {
|
|
|
String key = bean.getFilterNo();
|
|
|
sectionBean = hashMap.get(key);
|
|
|
if (null == sectionBean) {
|
|
|
- sectionBean = new SearchFilterDataSectionBean();
|
|
|
+ sectionBean = new SearchFilterSectionBean();
|
|
|
sectionBean.setSectionTitle(bean.getFilterName());
|
|
|
sectionBean.setFilterBeans(new ArrayList<>());
|
|
|
sectionBean.setSectionType(bean.getFilterType());
|
|
|
@@ -528,9 +515,9 @@ public class SearchResultModel extends Model {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- searchFilterDataSectionBean = new ArrayList<>();
|
|
|
+ searchFilterSectionBean = new ArrayList<>();
|
|
|
for (String s : hashMap.keySet()) {
|
|
|
- searchFilterDataSectionBean.add(hashMap.get(s));
|
|
|
+ searchFilterSectionBean.add(hashMap.get(s));
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -547,7 +534,7 @@ public class SearchResultModel extends Model {
|
|
|
private SearchResultBean filterSearchResultBean;
|
|
|
private List<SearchFilterBean> searchFilterBeans;
|
|
|
private List<SearchFilterBean> appliedSearchFilterBeans;
|
|
|
- private List<SearchFilterDataSectionBean> searchFilterDataSectionBean;
|
|
|
+ private List<SearchFilterSectionBean> searchFilterSectionBean;
|
|
|
|
|
|
/**
|
|
|
* 리스트에 반영된 필터 id 리스트 반환
|
|
|
@@ -558,8 +545,8 @@ public class SearchResultModel extends Model {
|
|
|
return appliedSearchFilterBeans;
|
|
|
}
|
|
|
|
|
|
- public final List<SearchFilterDataSectionBean> getFilterList() {
|
|
|
- return searchFilterDataSectionBean;
|
|
|
+ public final List<SearchFilterSectionBean> getFilterList() {
|
|
|
+ return searchFilterSectionBean;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -633,19 +620,23 @@ public class SearchResultModel extends Model {
|
|
|
if (null != list) {
|
|
|
for (SearchFilterBean filterBean : list) {
|
|
|
Log.i("APP# SearchResultModel | loadFilteringContents", "|" + "filter -> " + filterBean.toJson());
|
|
|
- if (filterBean.getFilterType().equals(SearchFilterBean.FILTER_TYPE_PROPERTY)) {
|
|
|
- requestBean.setFilter(requestBean.getFilter() + StringUtil.HASH + filterBean.getFilterNo());
|
|
|
- }
|
|
|
- else if (filterBean.getFilterType().equals(SearchFilterBean.FILTER_TYPE_AREA)) {
|
|
|
- // fixme filter name 은 api 상 tag name 임
|
|
|
- requestBean.setFilterArea(requestBean.getFilterArea() + StringUtil.HASH + filterBean.getFilterName());
|
|
|
- }
|
|
|
- else if (filterBean.getFilterType().equals(SearchFilterBean.FILTER_TYPE_HOT_PLACE)) {
|
|
|
- // fixme filter name 은 api 상 tag name 임
|
|
|
- requestBean.setFilterPlace(requestBean.getFilterPlace() + StringUtil.HASH + filterBean.getFilterName());
|
|
|
- }
|
|
|
- else if (filterBean.getFilterType().equals(SearchFilterBean.FILTER_TYPE_ORDER)) {
|
|
|
- requestBean.setOrder(filterBean.getFilterNo());
|
|
|
+ switch (filterBean.getFilterType()) {
|
|
|
+ case SearchFilterBean.FILTER_TYPE_AREA:
|
|
|
+ // fixme filter name 은 api 상 tag name 임
|
|
|
+ requestBean.setFilterArea(requestBean.getFilterArea() + StringUtil.HASH + filterBean.getFilterName());
|
|
|
+ break;
|
|
|
+ case SearchFilterBean.FILTER_TYPE_HOT_PLACE:
|
|
|
+ // fixme filter name 은 api 상 tag name 임
|
|
|
+ requestBean.setFilterPlace(requestBean.getFilterPlace() + StringUtil.HASH + filterBean.getFilterName());
|
|
|
+ break;
|
|
|
+ case SearchFilterBean.FILTER_TYPE_ORDER:
|
|
|
+ requestBean.setOrder(filterBean.getFilterNo());
|
|
|
+ break;
|
|
|
+ case SearchFilterBean.FILTER_TYPE_PROPERTY:
|
|
|
+ /* falls through */
|
|
|
+ default:
|
|
|
+ requestBean.setFilter(requestBean.getFilter() + StringUtil.HASH + filterBean.getFilterNo());
|
|
|
+ break;
|
|
|
}
|
|
|
}
|
|
|
}
|