package com.tejia.lijin.app.model; import android.content.Context; import com.google.gson.Gson; import com.google.gson.GsonBuilder; import com.google.gson.reflect.TypeToken; import com.tejia.lijin.app.BasicTextHttpResponseHandler; import com.tejia.lijin.app.contract.SearchContract; import com.tejia.lijin.app.ShoppingApi; import org.apache.http.Header; import org.json.JSONObject; import java.util.List; public class SearchModel { private Context mContext; public SearchModel(Context mContext) { this.mContext = mContext; } /** * 网络请求搜索方法 * * @param key 搜索词 * @param page 搜索淘宝 1 京东2 拼多多3 * @param callBack */ public void Search(String key, int page, final SearchContract.SearchCallBack callBack) { ShoppingApi.getSuggestSearch(mContext, key, String.valueOf((page + 1)), new BasicTextHttpResponseHandler() { @Override public void onSuccessPerfect(int statusCode, Header[] headers, JSONObject jsonObject) throws Exception { if (jsonObject.optString("code").equalsIgnoreCase("0")) { Gson gson = new GsonBuilder().serializeNulls().create(); List list = gson.fromJson( jsonObject.optJSONArray("data").toString(), new TypeToken>() { }.getType()); callBack.onSuccess(list); } } @Override public void onFailure(int statusCode, Header[] headers, String responseString, Throwable throwable) { super.onFailure(statusCode, headers, responseString, throwable); callBack.onFail(""); } }); } }