package com.huaye.odyandroidstore.imitate.taobao;
import com.huaye.odyandroidstore.retrofit.RetrofitFactory;
import com.huaye.odyandroidstore.retrofit.taobao.TaoBaoProductBean;
import com.huaye.odyandroidstore.subscribe.ApiSubscriber;
import com.huaye.odyandroidstore.subscribe.SubscriberListener;
import com.huaye.odyandroidstore.utils.StringUtils;
import java.util.HashMap;
import java.util.Map;
import rx.android.schedulers.AndroidSchedulers;
import rx.schedulers.Schedulers;
/**
* Created by Samuel on 2017/3/13.
*/
public class SearchResultPresenter {
private SearchResultView mView;
public SearchResultPresenter(SearchResultView view) {
mView = view;
}
public void getProductList(String key, final int page) {
getProductList(key, page, null);
}
public void getProductList(String key, final int page, String sort) {
Map<String, String> params = new HashMap<>();
params.put("q", key);
params.put("page", String.valueOf(page));
if (!StringUtils.isEmpty(sort)) {
params.put("sort", sort);
}
RetrofitFactory.getProductList(params)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new ApiSubscriber<TaoBaoProductBean>(new SubscriberListener<TaoBaoProductBean>() {
@Override
public void onNext(TaoBaoProductBean bean) {
if (page > 1) {
mView.addProduct(bean.listItem);
} else {
mView.showProduct(bean.listItem);
}
}
}));
}
}