//Api
package mmy.example.com.yklx2.api;
public class Api {
//左侧
public static final String LEFT_API = "http://172.17.8.100/small/commodity/v1/findFirstCategory";
//右侧
public static final String RIGHT_API = "http://172.17.8.100/small/commodity/v1/findCommodityByKeyword?page=1&count=40&keyword=";
//购物车
public static final String GOU_API = "http://172.17.8.100/small/commodity/v1/findCommodityByKeyword?keyword=鞋&page=1&count=100";
}
//LoadContract
package mmy.example.com.yklx2.contract;
import java.util.HashMap;
import java.util.logging.Handler;
import mmy.example.com.yklx2.net.RequestCallBack;
public interface LoadContract {
//model
interface LloadModel{
void LeftModel(HashMap<String,String> map, RequestCallBack callBack);
void RightModel(HashMap<String,String> map, RequestCallBack callBack);
void GouModel(HashMap<String,String> map, RequestCallBack callBack);
}
//view
interface LloadView{
void LeftSuccess(String reault);
void LeftFailure(String mag);
//右边
void RightSuccess(String result);
void RightFailure(String mag);
//购物车
void GouSuccess(String result);
void GouFailure(String mag);
}
//presenter
public abstract class LloadPresenter{
public abstract void Leftpresenter(HashMap<String,String> map);
public abstract void Rightpresenter(HashMap<String,String> map);
public abstract void Goupresenter(HashMap<String,String> map);
}
}
//LoadModel
package mmy.example.com.yklx2.model;
import android.os.Handler;
import java.util.HashMap;
import java.util.Map;
import mmy.example.com.yklx2.api.Api;
import mmy.example.com.yklx2.contract.LoadContract;
import mmy.example.com.yklx2.net.OkHttpCallBack;
import mmy.example.com.yklx2.net.OkHttpUtils;
import mmy.example.com.yklx2.net.RequestCallBack;
public class LoadModel implements LoadContract.LloadModel {
private Handler handler = new Handler();
private String key;
private String value;
@Override
public void LeftModel(HashMap<String, String> map, final RequestCallBack callBack) {
OkHttpUtils.getInstance().doGet(Api.LEFT_API, new OkHttpCallBack() {
@Override
public void Success(final String result) {
if (callBack != null) {
handler.post(new Runnable() {
@Override
public void run() {
callBack.Success(result);
}
});
}
}
@Override
public void Failure(final String msg) {
if (callBack != null) {
handler.post(new Runnable() {
@Override
public void run() {
callBack.Failure(msg);
}
});
}
}
});
}
@Override
public void RightModel(final HashMap<String, String> map, final RequestCallBack callBack) {
for (Map.Entry<String, String> map1 : map.entrySet()) {
key = map1.getKey();
value = map1.getValue();
}
String s = Api.RIGHT_API+value;
OkHttpUtils.getInstance().doGet(s, new OkHttpCallBack() {
@Override
public void Success(final String result) {
if (callBack != null){
handler.post(new Runnable() {
@Override
public void run() {
callBack.Success(result);
}
});
}
}
@Override
public void Failure(final String msg) {
handler.post(new Runnable() {
@Override
public void run() {
callBack.Failure(msg);
}
});
}
});
}
@Override
public void GouModel(HashMap<String, String> map, final RequestCallBack callBack) {
OkHttpUtils.getInstance().doGet(Api.GOU_API, new OkHttpCallBack() {
@Override
public void Success(final String result) {
if (callBack != null){
handler.post(new Runnable() {
@Override
public void run() {
callBack.Success(result);
}
});
}
}
@Override
public void Failure(final String msg) {
if (callBack != null){
handler.post(new Runnable() {
@Override
public void run() {
callBack.Failure(msg);
}
});
}
}
});
}
}
//LoadPresenter
package mmy.example.com.yklx2.presenter;
import java.util.HashMap;
import mmy.example.com.yklx2.contract.LoadContract;
import mmy.example.com.yklx2.model.LoadModel;
import mmy.example.com.yklx2.net.RequestCallBack;
public class LoadPresenter extends LoadContract.LloadPresenter {
private LoadContract.LloadView lloadView;
private final LoadModel loadModel;
public LoadPresenter(LoadContract.LloadView lloadView) {
this.lloadView = lloadView;
loadModel = new LoadModel();
}
@Override
public void Leftpresenter(HashMap<String, String> map) {
loadModel.LeftModel(map, new RequestCallBack() {
@Override
public void Success(String result) {
if (lloadView != null){
lloadView.LeftSuccess(result);
}
}
@Override
public void Failure(String msg) {
if (lloadView != null){
lloadView.LeftFailure(msg);
}
}
});
}
@Override
public void Rightpresenter(HashMap<String, String> map) {
loadModel.RightModel(map, new RequestCallBack() {
@Override
public void Success(String result) {
if (lloadView != null){
lloadView.RightSuccess(result);
}
}
@Override
public void Failure(String msg) {
if (lloadView != null){
lloadView.RightFailure(msg);
}
}
});
}
@Override
public void Goupresenter(HashMap<String, String> map) {
loadModel.GouModel(map, new RequestCallBack() {
@Override
public void Success(String result) {
if (lloadView !=null){
lloadView.GouSuccess(result);
}
}
@Override
public void Failure(String msg) {
if (lload