购物车没有结算的点击事件 点击子条目弹出加减



布局

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.com.yuekao0601.activity.ShoppingActivity">


    <TextView
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:layout_alignParentTop="true"
        android:text="购物车"
        android:gravity="center"
        android:background="#f12"
        android:id="@+id/tv"
        android:textSize="16sp"
        />

    <ExpandableListView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:groupIndicator="@null"
        android:layout_below="@id/tv"
        android:scrollbars="none"
        android:id="@+id/exlv"
        >

    </ExpandableListView>

    
    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:layout_alignParentBottom="true"
        android:layout_marginTop="1dp"
        android:id="@+id/rela"
        android:background="#f12">

        <CheckBox
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/checkbox"
            android:focusable="false"
            android:layout_centerVertical="true"
            android:layout_weight="1"/>

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/tv_price"
            android:layout_centerInParent="true"/>

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:focusable="false"
            android:id="@+id/sale"
            android:layout_alignParentRight="true"
            android:layout_centerVertical="true"
            android:text="结算(0)"
            />

    </RelativeLayout>
    
</RelativeLayout>


group布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="40dp"
    android:orientation="horizontal">


    <CheckBox
        android:layout_width="30dp"
        android:layout_height="30dp"
        android:layout_gravity="center"
        android:layout_marginLeft="6dp"
        android:layout_marginRight="6dp"
        android:id="@+id/check_group"
        />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:id="@+id/tv_group"
        android:layout_centerVertical="true"
        android:text="11111"/>

</LinearLayout>


child布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:orientation="horizontal"
    android:layout_height="100dp">


    <CheckBox
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/check_child"
        android:layout_gravity="center_vertical"
        android:layout_marginLeft="20dp"
        />

    <ImageView
        android:layout_width="85dp"
        android:layout_height="85dp"
        android:id="@+id/img_child"
        android:layout_gravity="center_vertical"
        android:layout_marginLeft="10dp"/>


    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="100dp">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="100dp"
            android:layout_marginLeft="10dp"
            android:orientation="vertical">

            <RelativeLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent">

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="10dp"
                    android:ellipsize="end"
                    android:maxLines="2"
                    android:singleLine="true"
                    android:text=""
                    android:textSize="16sp"
                    android:textColor="#f12"
                    android:id="@+id/tv_child"
                    />


                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:id="@+id/tv1_child"
                    android:layout_below="@id/tv_child"
                    android:gravity="center"
                    android:layout_gravity="left"
                    android:layout_marginTop="10dp"
                    android:text="颜色:黑色;尺码:23"
                    android:textColor="#f12"
                    />


                <RelativeLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_below="@id/tv1_child"
                    android:layout_marginTop="6dp"

                    >


                    <TextView
                        android:id="@+id/child_price"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_centerVertical="true"
                        android:singleLine="true"
                        android:text=" 308.00"
                        android:textColor="#000"
                        android:textStyle="bold" />



                    <TextView
                        android:id="@+id/child_num"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_alignParentRight="true"
                        android:layout_centerVertical="true"
                        android:layout_marginRight="20dp"
                        android:text="X 1"
                        android:textColor="#000" />


                </RelativeLayout>

            </RelativeLayout>

        </LinearLayout>

    </RelativeLayout>

</LinearLayout>


alert布局

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="修改购买的数量"
        android:layout_centerHorizontal="true"
        android:id="@+id/tv"
        android:textSize="16sp"
        android:layout_margin="10dp"/>

    <LinearLayout
        android:layout_below="@+id/tv"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:id="@+id/lin"
        android:gravity="center">

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="-"
            android:id="@+id/btn_jian"
            />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="2"
            android:layout_gravity="center"
            android:padding="20dp"
            android:id="@+id/tv_num"
            android:textSize="16sp"/>

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="+"
            android:id="@+id/btn_jia"
            />
    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:layout_below="@id/lin">
        <Button
            android:layout_width="0dp"
            android:layout_weight="1"
            android:id="@+id/quxiao"
            android:layout_height="match_parent"
            android:text="取消"/>
        <Button
            android:layout_width="0dp"
            android:layout_weight="1"
            android:id="@+id/queding"
            android:layout_height="match_parent"
            android:text="确定"/>
    </LinearLayout>


</RelativeLayout>


activity

package com.example.com.yuekao0601.activity;

import android.content.Intent;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.ExpandableListView;
import android.widget.TextView;

import com.example.com.yuekao0601.R;
import com.example.com.yuekao0601.adapter.ShoppingAdapter;
import com.example.com.yuekao0601.bean.ShoppingBean;
import com.example.com.yuekao0601.presenter.MyShoppingPresenter;
import com.example.com.yuekao0601.presenter.MyUpdatePresenter;
import com.example.com.yuekao0601.view.DataView;

import java.text.DecimalFormat;
import java.util.ArrayList;
import java.util.List;

public class ShoppingActivity extends AppCompatActivity implements DataView<ShoppingBean>,ShoppingAdapter.onChecked{

    private MyShoppingPresenter myShoppingPresenter;
    private ExpandableListView exlv;
    private Button quxiao;
    private Button btn_jian;
    private Button btn_jia;
    private Button queding;
    private TextView tv_num;
    private List<ShoppingBean.DataBean> data=new ArrayList<>();
    private CheckBox checkbox;
    private TextView tv_price;
    private DecimalFormat df=new DecimalFormat("0.00");
    private Button sale;
    private ShoppingAdapter shoppingAdapter;
    private AlertDialog dialog;
    private String sellerid;
    private int pid;
    private MyUpdatePresenter myUpdatePresenter;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_shopping);

        exlv = findViewById(R.id.exlv);
        checkbox=findViewById(R.id.checkbox);
        tv_price = findViewById(R.id.tv_price);
        sale = findViewById(R.id.sale);

        myShoppingPresenter = new MyShoppingPresenter(this);
        myShoppingPresenter.toGetUrl("71");


        final AlertDialog.Builder builder = new AlertDialog.Builder(this);

        View inflate = View.inflate(this, R.layout.alertdialog, null);

        btn_jia = inflate.findViewById(R.id.btn_jia);
        btn_jian = inflate.findViewById(R.id.btn_jian);
        quxiao = inflate.findViewById(R.id.quxiao);
        queding = inflate.findViewById(R.id.queding);
        tv_num = inflate.findViewById(R.id.tv_num);

        myUpdatePresenter = new MyUpdatePresenter(this);


        btn_jia.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                String s = tv_num.getText().toString();

                int i = Integer.parseInt(s);

                i++;

                btn_jian.setEnabled(true);

                tv_num.setText(i+"");

            }
        });


        btn_jian.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                String s = tv_num.getText().toString();

                int i = Integer.parseInt(s);

                i--;
                if (i==1){
                    btn_jian.setEnabled(false);
                }

                tv_num.setText(i+"");

            }
        });

        quxiao.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                dialog.dismiss();

            }
        });


        queding.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                String trim = tv_num.getText().toString().trim();

                myUpdatePresenter.toGetUpdate("71",sellerid+"",pid+"",trim);

                dialog.dismiss();
            }
        });


        builder.setView(inflate);

        dialog = builder.create();



        //全选 反选
        checkbox.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (checkbox.isChecked()){
                    for (int i = 0; i < data.size() ; i++) {

                        data.get(i).setGroupCheck(true);

                        List<ShoppingBean.DataBean.ListBean> list = data.get(i).getList();

                        for (int j = 0; j < list.size(); j++) {
                            list.get(j).setChildCheck(true);
                        }
                    }
                }else {
                    for (int i = 0; i < data.size(); i++) {

                        data.get(i).setGroupCheck(false);

                        List<ShoppingBean.DataBean.ListBean> list = data.get(i).getList();

                        for (int j = 0; j < list.size(); j++) {
                            list.get(j).setChildCheck(false);
                        }
                    }
                }
                //设置价钱
                setPrices();

            }
        });



        exlv.setOnChildClickListener(new ExpandableListView.OnChildClickListener() {
            @Override
            public boolean onChildClick(ExpandableListView parent, View v, int groupPosition, int childPosition, long id) {

                int num = data.get(groupPosition).getList().get(childPosition).getNum();

                tv_num.setText(num+"");

                dialog.show();


                sellerid = data.get(groupPosition).getSellerid();
                pid = data.get(groupPosition).getList().get(childPosition).getPid();



                return true;
            }
        });
    }

    private void setPrices() {

        int num=0;
        double price=0.00;

        for (int i = 0; i < data.size(); i++) {

            List<ShoppingBean.DataBean.ListBean> list = data.get(i).getList();

            for (int j = 0; j < list.size(); j++) {
                if (list.get(j).isChildCheck()){
                    num+=list.get(j).getNum();
                    price+=list.get(j).getNum()*list.get(j).getPrice();
                }
            }
        }

        tv_price.setText("¥"+df.format(price));
        sale.setText(num+"");
        shoppingAdapter.notifyDataSetChanged();

    }

    @Override
    public void success(ShoppingBean shoppingBean) {

        if(shoppingBean.getMsg().equals("success")){

            myShoppingPresenter.toGetUrl("71");

        }else {
            data.clear();
            List<ShoppingBean.DataBean> shoppingData = shoppingBean.getData();
            shoppingData.remove(0);

            data.addAll(shoppingData);

            getAdapter();


        }}

    private void getAdapter() {

        if (shoppingAdapter==null){
            shoppingAdapter = new ShoppingAdapter(data, this);

            exlv.setAdapter(shoppingAdapter);

            for (int i = 0; i < data.size(); i++) {
                exlv.expandGroup(i);
            }

            shoppingAdapter.setChecked(this);
        }else {
            shoppingAdapter.notifyDataSetChanged();
        }

    }


    @Override
    public void failed(String message) {

    }

    @Override
    public void onGroupCheck(int group, boolean checked) {
        data.get(group).setGroupCheck(checked);

        List<ShoppingBean.DataBean.ListBean> list = data.get(group).getList();

        for (int i = 0; i < list.size(); i++) {
            list.get(i).setChildCheck(checked);
        }

        setPrices();

    }

    @Override
    public void onChildCheck(int group, int child, boolean checked) {

        data.get(group).getList().get(child).setChildCheck(checked);

        boolean b = setChildCheckedAll(group);
        if (b){
            data.get(group).setGroupCheck(true);
        }else {
            data.get(group).setGroupCheck(false);
        }

        setPrices();
    }

    //计算子条目是否全部选中
    private boolean setChildCheckedAll(int group){


        List<ShoppingBean.DataBean.ListBean> list = data.get(group).getList();

        for (int i = 0; i < list.size(); i++) {

            if (!list.get(i).isChildCheck()){
                return false;
            }
        }
        return true;
    }

}


adapter

package com.example.com.yuekao0601.adapter;

import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseExpandableListAdapter;
import android.widget.CheckBox;
import android.widget.ImageView;
import android.widget.TextView;

import com.bumptech.glide.Glide;
import com.example.com.yuekao0601.R;
import com.example.com.yuekao0601.activity.ShoppingActivity;
import com.example.com.yuekao0601.bean.ShoppingBean;

import java.util.List;

/**
 * Created by linmeihui on 2018/6/2.
 */

public class ShoppingAdapter extends BaseExpandableListAdapter{

    List<ShoppingBean.DataBean> data;
    Context context;

    public ShoppingAdapter(List<ShoppingBean.DataBean> data, Context context) {

        this.context=context;
        this.data=data;

    }

    @Override
    public int getGroupCount() {
        return data.size();
    }

    @Override
    public int getChildrenCount(int groupPosition) {
        return data.get(groupPosition).getList().size();
    }

    @Override
    public Object getGroup(int groupPosition) {
        return data.get(groupPosition);
    }

    @Override
    public Object getChild(int groupPosition, int childPosition) {
        return data.get(childPosition).getList().get(childPosition);
    }

    @Override
    public long getGroupId(int groupPosition) {
        return groupPosition;
    }

    @Override
    public long getChildId(int groupPosition, int childPosition) {
        return childPosition;
    }

    @Override
    public boolean hasStableIds() {
        return false;
    }

    @Override
    public View getGroupView(final int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) {
        final GroupViewHolder groupViewHolder;
        if (convertView==null){
            convertView=View.inflate(context, R.layout.group_item,null);
            groupViewHolder=new GroupViewHolder();
            groupViewHolder.check_group=convertView.findViewById(R.id.check_group);
            groupViewHolder.tv_group=convertView.findViewById(R.id.tv_group);
            convertView.setTag(groupViewHolder);

        }else {
            groupViewHolder = (GroupViewHolder) convertView.getTag();
        }
            groupViewHolder.tv_group.setText(data.get(groupPosition).getSellerName());
            groupViewHolder.check_group.setChecked(data.get(groupPosition).isGroupCheck());
            groupViewHolder.check_group.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    checked.onGroupCheck(groupPosition,groupViewHolder.check_group.isChecked());
                }
            });

        return convertView;
    }

    @Override
    public View getChildView(final int groupPosition, final int childPosition, boolean isLastChild, View convertView, ViewGroup parent) {

        final ChildViewHolder childViewHolder;
        if(convertView==null){
            convertView=View.inflate(context,R.layout.child_item,null);
            childViewHolder=new ChildViewHolder();
            childViewHolder.check_child=convertView.findViewById(R.id.check_child);
            childViewHolder.child_num=convertView.findViewById(R.id.child_num);
            childViewHolder.child_price=convertView.findViewById(R.id.child_price);
            childViewHolder.img_child=convertView.findViewById(R.id.img_child);
            childViewHolder.tv1_child=convertView.findViewById(R.id.tv1_child);
            childViewHolder.tv_child=convertView.findViewById(R.id.tv_child);
            convertView.setTag(childViewHolder);
        }   else {
            childViewHolder= (ChildViewHolder) convertView.getTag();
        }
        final List<ShoppingBean.DataBean.ListBean> list = data.get(groupPosition).getList();

        childViewHolder.tv_child.setText(list.get(childPosition).getTitle());
        childViewHolder.child_price.setText(list.get(childPosition).getPrice()+"");
        childViewHolder.child_num.setText(list.get(childPosition).getNum()+"");
        childViewHolder.check_child.setChecked(list.get(childPosition).isChildCheck());

        childViewHolder.check_child.setFocusable(false);
        Glide.with(context).load(list.get(childPosition).getImages()).into(childViewHolder.img_child);

        //设置复选框选中
        childViewHolder.check_child.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                list.get(childPosition).setChildCheck(childViewHolder.check_child.isChecked());
                checked.onChildCheck(groupPosition,childPosition,childViewHolder.check_child.isChecked());
            }
        });

        return convertView;
    }

    @Override
    public boolean isChildSelectable(int groupPosition, int childPosition) {
        return true;
    }


    class GroupViewHolder{
        CheckBox check_group;
        TextView tv_group;
    }

    class ChildViewHolder{
        CheckBox check_child;
        ImageView img_child;
        TextView tv_child;
        TextView tv1_child;
        TextView child_price;
        TextView child_num;
    }

    private onChecked checked;

    public void setChecked(onChecked checked) {
        this.checked = checked;
    }

    //定义接口
    public interface onChecked{
        //父项选中状态
        void onGroupCheck(int group,boolean checked);
        //子项选中状态
        void onChildCheck(int group,int child,boolean checked);

    }

}


view

package com.example.com.yuekao0601.view;

import android.os.Message;

import com.example.com.yuekao0601.bean.ShouyeBean;

import io.reactivex.Flowable;

/**
 * Created by linmeihui on 2018/6/1.
 */

public interface DataView <T>{
     void success(T t) ;
     void failed(String message);

}


shoppingbean'

package com.example.com.yuekao0601.bean;

import java.util.List;

/**
 * Created by linmeihui on 2018/6/2.
 */

public class ShoppingBean {


    /**
     * code : 0
     * data : [{"list":[{"bargainPrice":111.99,"createtime":"2017-10-03T23:53:28","detailUrl":"https://item.m.jd.com/product/4719303.html?utm_source=androidapp&utm_medium=appshare&utm_campaign=t_335139774&utm_term=QQfriends","images":"https://m.360buyimg.com/n0/jfs/t9004/210/1160833155/647627/ad6be059/59b4f4e1N9a2b1532.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7504/338/63721388/491286/f5957f53/598e95f1N7f2adb87.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7441/10/64242474/419246/adb30a7d/598e95fbNd989ba0a.jpg!q70.jpg","num":1,"pid":8,"price":324,"pscid":1,"selected":0,"sellerid":1,"subhead":"每个中秋都不能简单,无论身在何处,你总需要一块饼让生活更圆满,京东月饼让爱更圆满京东自营,闪电配送,更多惊喜,快用手指戳一下","title":"北京稻香村 稻香村中秋节月饼 老北京月饼礼盒655g"}],"sellerName":"商家1","sellerid":"1"},{"list":[{"bargainPrice":11800,"createtime":"2017-10-14T21:38:26","detailUrl":"https://item.m.jd.com/product/5025518.html?utm#_source=androidapp&utm#_medium=appshare&utm#_campaign=t#_335139774&utm#_term=QQfriends","images":"https://m.360buyimg.com/n0/jfs/t8830/106/1760940277/195595/5cf9412f/59bf2ef5N5ab7dc16.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5428/70/1520969931/274676/b644dd0d/591128e7Nd2f70da0.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5566/365/1519564203/36911/620c750c/591128eaN54ac3363.jpg!q70.jpg","num":2,"pid":58,"price":6399,"pscid":40,"selected":0,"sellerid":2,"subhead":"升级4G大显存!Nvme协议Pcie SSD,速度快人一步】GTX1050Ti就选拯救者!专业游戏键盘&新模具全新设计!","title":"联想(Lenovo)拯救者R720 15.6英寸游戏笔记本电脑(i5-7300HQ 8G 1T+128G SSD GTX1050Ti 4G IPS )"},{"bargainPrice":111.99,"createtime":"2017-10-14T21:48:08","detailUrl":"https://item.m.jd.com/product/4719303.html?utm_source=androidapp&utm_medium=appshare&utm_campaign=t_335139774&utm_term=QQfriends","images":"https://m.360buyimg.com/n0/jfs/t9004/210/1160833155/647627/ad6be059/59b4f4e1N9a2b1532.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7504/338/63721388/491286/f5957f53/598e95f1N7f2adb87.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7441/10/64242474/419246/adb30a7d/598e95fbNd989ba0a.jpg!q70.jpg","num":1,"pid":9,"price":78.99,"pscid":1,"selected":0,"sellerid":2,"subhead":"每个中秋都不能简单,无论身在何处,你总需要一块饼让生活更圆满,京东月饼让爱更圆满京东自营,闪电配送,更多惊喜,快用手指戳一下","title":"北京稻香村 稻香村中秋节月饼 老北京月饼礼盒655g"}],"sellerName":"商家2","sellerid":"2"},{"list":[{"bargainPrice":5599,"createtime":"2017-10-10T17:30:32","detailUrl":"https://item.m.jd.com/product/4824715.html?utm#_source=androidapp&utm#_medium=appshare&utm#_campaign=t#_335139774&utm#_term=QQfriends","images":"https://m.360buyimg.com/n12/jfs/t7768/184/1153704394/148460/f42e1432/599a930fN8a85626b.jpg!q70.jpg","num":1,"pid":59,"price":5599,"pscid":40,"selected":0,"sellerid":3,"subhead":"游戏本选择4G独显,拒绝掉帧】升级版IPS全高清防眩光显示屏,WASD方向键颜色加持,三大出风口立体散热!","title":"戴尔DELL灵越游匣15PR-6648B GTX1050 15.6英寸游戏笔记本电脑(i5-7300HQ 8G 128GSSD+1T 4G独显 IPS)"},{"bargainPrice":111.99,"createtime":"2017-10-14T21:39:05","detailUrl":"https://item.m.jd.com/product/4719303.html?utm_source=androidapp&utm_medium=appshare&utm_campaign=t_335139774&utm_term=QQfriends","images":"https://m.360buyimg.com/n0/jfs/t9004/210/1160833155/647627/ad6be059/59b4f4e1N9a2b1532.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7504/338/63721388/491286/f5957f53/598e95f1N7f2adb87.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7441/10/64242474/419246/adb30a7d/598e95fbNd989ba0a.jpg!q70.jpg","num":1,"pid":10,"price":555.55,"pscid":1,"selected":0,"sellerid":3,"subhead":"每个中秋都不能简单,无论身在何处,你总需要一块饼让生活更圆满,京东月饼让爱更圆满京东自营,闪电配送,更多惊喜,快用手指戳一下","title":"北京稻香村 稻香村中秋节月饼 老北京月饼礼盒655g"}],"sellerName":"商家3","sellerid":"3"},{"list":[{"bargainPrice":111.99,"createtime":"2017-10-14T21:48:08","detailUrl":"https://item.m.jd.com/product/4719303.html?utm_source=androidapp&utm_medium=appshare&utm_campaign=t_335139774&utm_term=QQfriends","images":"https://m.360buyimg.com/n0/jfs/t9004/210/1160833155/647627/ad6be059/59b4f4e1N9a2b1532.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7504/338/63721388/491286/f5957f53/598e95f1N7f2adb87.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7441/10/64242474/419246/adb30a7d/598e95fbNd989ba0a.jpg!q70.jpg","num":1,"pid":11,"price":8989,"pscid":1,"selected":0,"sellerid":4,"subhead":"每个中秋都不能简单,无论身在何处,你总需要一块饼让生活更圆满,京东月饼让爱更圆满京东自营,闪电配送,更多惊喜,快用手指戳一下","title":"北京稻香村 稻香村中秋节月饼 老北京月饼礼盒655g"}],"sellerName":"商家4","sellerid":"4"},{"list":[{"bargainPrice":11800,"createtime":"2017-10-14T21:38:26","detailUrl":"https://mitem.jd.hk/ware/view.action?wareId=1988853309&cachekey=1acb07a701ece8d2434a6ae7fa6870a1","images":"https://m.360buyimg.com/n0/jfs/t6130/97/1370670410/180682/1109582a/593276b1Nd81fe723.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5698/110/2617517836/202970/c9388feb/593276b7Nbd94ef1f.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5698/110/2617517836/202970/c9388feb/593276b7Nbd94ef1f.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5815/178/2614671118/51656/7f52d137/593276c7N107b725a.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5878/60/2557817477/30873/4502b606/593276caN5a7d6357.jpg!q70.jpg","num":1,"pid":61,"price":14999,"pscid":40,"selected":0,"sellerid":5,"subhead":"购买电脑办公部分商品满1元返火车票5元优惠券(返完即止)","title":"全球购 新款Apple MacBook Pro 苹果笔记本电脑 银色VP213英寸Bar i5/8G/256G"},{"bargainPrice":111.99,"createtime":"2017-10-03T23:43:53","detailUrl":"https://item.m.jd.com/product/4719303.html?utm_source=androidapp&utm_medium=appshare&utm_campaign=t_335139774&utm_term=QQfriends","images":"https://m.360buyimg.com/n0/jfs/t9004/210/1160833155/647627/ad6be059/59b4f4e1N9a2b1532.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7504/338/63721388/491286/f5957f53/598e95f1N7f2adb87.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7441/10/64242474/419246/adb30a7d/598e95fbNd989ba0a.jpg!q70.jpg","num":1,"pid":12,"price":256,"pscid":1,"selected":0,"sellerid":5,"subhead":"每个中秋都不能简单,无论身在何处,你总需要一块饼让生活更圆满,京东月饼让爱更圆满京东自营,闪电配送,更多惊喜,快用手指戳一下","title":"北京稻香村 稻香村中秋节月饼 老北京月饼礼盒655g"}],"sellerName":"商家5","sellerid":"5"},{"list":[{"bargainPrice":11800,"createtime":"2017-10-14T21:48:08","detailUrl":"https://mitem.jd.hk/ware/view.action?wareId=1988853309&cachekey=1acb07a701ece8d2434a6ae7fa6870a1","images":"https://m.360buyimg.com/n0/jfs/t6130/97/1370670410/180682/1109582a/593276b1Nd81fe723.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5698/110/2617517836/202970/c9388feb/593276b7Nbd94ef1f.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5698/110/2617517836/202970/c9388feb/593276b7Nbd94ef1f.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5815/178/2614671118/51656/7f52d137/593276c7N107b725a.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5878/60/2557817477/30873/4502b606/593276caN5a7d6357.jpg!q70.jpg","num":1,"pid":65,"price":12000,"pscid":40,"selected":0,"sellerid":9,"subhead":"购买电脑办公部分商品满1元返火车票5元优惠券(返完即止)","title":"全球购 新款Apple MacBook Pro 苹果笔记本电脑 银色VP213英寸Bar i5/8G/256G"}],"sellerName":"商家9","sellerid":"9"},{"list":[{"bargainPrice":11800,"createtime":"2017-10-14T21:38:26","detailUrl":"https://mitem.jd.hk/ware/view.action?wareId=1988853309&cachekey=1acb07a701ece8d2434a6ae7fa6870a1","images":"https://m.360buyimg.com/n0/jfs/t6130/97/1370670410/180682/1109582a/593276b1Nd81fe723.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5698/110/2617517836/202970/c9388feb/593276b7Nbd94ef1f.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5698/110/2617517836/202970/c9388feb/593276b7Nbd94ef1f.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5815/178/2614671118/51656/7f52d137/593276c7N107b725a.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5878/60/2557817477/30873/4502b606/593276caN5a7d6357.jpg!q70.jpg","num":1,"pid":72,"price":33999,"pscid":40,"selected":0,"sellerid":16,"subhead":"购买电脑办公部分商品满1元返火车票5元优惠券(返完即止)","title":"全球购 新款Apple MacBook Pro 苹果笔记本电脑 银色VP213英寸Bar i5/8G/256G"}],"sellerName":"商家16","sellerid":"16"},{"list":[{"bargainPrice":111.99,"createtime":"2017-10-14T21:39:05","detailUrl":"https://item.m.jd.com/product/4719303.html?utm_source=androidapp&utm_medium=appshare&utm_campaign=t_335139774&utm_term=QQfriends","images":"https://m.360buyimg.com/n0/jfs/t9004/210/1160833155/647627/ad6be059/59b4f4e1N9a2b1532.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7504/338/63721388/491286/f5957f53/598e95f1N7f2adb87.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7441/10/64242474/419246/adb30a7d/598e95fbNd989ba0a.jpg!q70.jpg","num":4,"pid":1,"price":118,"pscid":1,"selected":0,"sellerid":17,"subhead":"每个中秋都不能简单,无论身在何处,你总需要一块饼让生活更圆满,京东月饼让爱更圆满京东自营,闪电配送,更多惊喜,快用手指戳一下","title":"北京稻香村 稻香村中秋节月饼 老北京月饼礼盒655g"}],"sellerName":"商家17","sellerid":"17"},{"list":[{"bargainPrice":111.99,"createtime":"2017-10-14T21:39:05","detailUrl":"https://item.m.jd.com/product/4719303.html?utm_source=androidapp&utm_medium=appshare&utm_campaign=t_335139774&utm_term=QQfriends","images":"https://m.360buyimg.com/n0/jfs/t9004/210/1160833155/647627/ad6be059/59b4f4e1N9a2b1532.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7504/338/63721388/491286/f5957f53/598e95f1N7f2adb87.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7441/10/64242474/419246/adb30a7d/598e95fbNd989ba0a.jpg!q70.jpg","num":3,"pid":2,"price":299,"pscid":1,"selected":0,"sellerid":18,"subhead":"每个中秋都不能简单,无论身在何处,你总需要一块饼让生活更圆满,京东月饼让爱更圆满京东自营,闪电配送,更多惊喜,快用手指戳一下","title":"北京稻香村 稻香村中秋节月饼 老北京月饼礼盒655g"}],"sellerName":"商家18","sellerid":"18"},{"list":[{"bargainPrice":11800,"createtime":"2017-10-14T21:38:26","detailUrl":"https://mitem.jd.hk/ware/view.action?wareId=1988853309&cachekey=1acb07a701ece8d2434a6ae7fa6870a1","images":"https://m.360buyimg.com/n0/jfs/t6130/97/1370670410/180682/1109582a/593276b1Nd81fe723.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5698/110/2617517836/202970/c9388feb/593276b7Nbd94ef1f.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5698/110/2617517836/202970/c9388feb/593276b7Nbd94ef1f.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5815/178/2614671118/51656/7f52d137/593276c7N107b725a.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5878/60/2557817477/30873/4502b606/593276caN5a7d6357.jpg!q70.jpg","num":1,"pid":75,"price":36999,"pscid":40,"selected":0,"sellerid":19,"subhead":"购买电脑办公部分商品满1元返火车票5元优惠券(返完即止)","title":"全球购 新款Apple MacBook Pro 苹果笔记本电脑 银色VP213英寸Bar i5/8G/256G"}],"sellerName":"商家19","sellerid":"19"},{"list":[{"bargainPrice":111.99,"createtime":"2017-10-14T21:48:08","detailUrl":"https://item.m.jd.com/product/4719303.html?utm_source=androidapp&utm_medium=appshare&utm_campaign=t_335139774&utm_term=QQfriends","images":"https://m.360buyimg.com/n0/jfs/t9004/210/1160833155/647627/ad6be059/59b4f4e1N9a2b1532.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7504/338/63721388/491286/f5957f53/598e95f1N7f2adb87.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7441/10/64242474/419246/adb30a7d/598e95fbNd989ba0a.jpg!q70.jpg","num":1,"pid":4,"price":999,"pscid":1,"selected":0,"sellerid":20,"subhead":"每个中秋都不能简单,无论身在何处,你总需要一块饼让生活更圆满,京东月饼让爱更圆满京东自营,闪电配送,更多惊喜,快用手指戳一下","title":"北京稻香村 稻香村中秋节月饼 老北京月饼礼盒655g"}],"sellerName":"商家20","sellerid":"20"},{"list":[{"bargainPrice":111.99,"createtime":"2017-10-14T21:39:05","detailUrl":"https://item.m.jd.com/product/4719303.html?utm_source=androidapp&utm_medium=appshare&utm_campaign=t_335139774&utm_term=QQfriends","images":"https://m.360buyimg.com/n0/jfs/t9004/210/1160833155/647627/ad6be059/59b4f4e1N9a2b1532.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7504/338/63721388/491286/f5957f53/598e95f1N7f2adb87.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7441/10/64242474/419246/adb30a7d/598e95fbNd989ba0a.jpg!q70.jpg","num":10,"pid":5,"price":88.99,"pscid":1,"selected":0,"sellerid":21,"subhead":"每个中秋都不能简单,无论身在何处,你总需要一块饼让生活更圆满,京东月饼让爱更圆满京东自营,闪电配送,更多惊喜,快用手指戳一下","title":"北京稻香村 稻香村中秋节月饼 老北京月饼礼盒655g"}],"sellerName":"商家21","sellerid":"21"},{"list":[{"bargainPrice":111.99,"createtime":"2017-10-03T23:53:28","detailUrl":"https://item.m.jd.com/product/4719303.html?utm_source=androidapp&utm_medium=appshare&utm_campaign=t_335139774&utm_term=QQfriends","images":"https://m.360buyimg.com/n0/jfs/t9004/210/1160833155/647627/ad6be059/59b4f4e1N9a2b1532.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7504/338/63721388/491286/f5957f53/598e95f1N7f2adb87.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7441/10/64242474/419246/adb30a7d/598e95fbNd989ba0a.jpg!q70.jpg","num":1,"pid":6,"price":7.99,"pscid":1,"selected":0,"sellerid":22,"subhead":"每个中秋都不能简单,无论身在何处,你总需要一块饼让生活更圆满,京东月饼让爱更圆满京东自营,闪电配送,更多惊喜,快用手指戳一下","title":"北京稻香村 稻香村中秋节月饼 老北京月饼礼盒655g"}],"sellerName":"商家22","sellerid":"22"},{"list":[{"bargainPrice":111.99,"createtime":"2017-10-14T21:39:05","detailUrl":"https://item.m.jd.com/product/4719303.html?utm_source=androidapp&utm_medium=appshare&utm_campaign=t_335139774&utm_term=QQfriends","images":"https://m.360buyimg.com/n0/jfs/t9004/210/1160833155/647627/ad6be059/59b4f4e1N9a2b1532.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7504/338/63721388/491286/f5957f53/598e95f1N7f2adb87.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7441/10/64242474/419246/adb30a7d/598e95fbNd989ba0a.jpg!q70.jpg","num":1,"pid":7,"price":120.01,"pscid":1,"selected":0,"sellerid":23,"subhead":"每个中秋都不能简单,无论身在何处,你总需要一块饼让生活更圆满,京东月饼让爱更圆满京东自营,闪电配送,更多惊喜,快用手指戳一下","title":"北京稻香村 稻香村中秋节月饼 老北京月饼礼盒655g"}],"sellerName":"商家23","sellerid":"23"}]
     * msg : 请求成功
     */

    private String code;
    private String msg;
    private List<DataBean> data;

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public List<DataBean> getData() {
        return data;
    }

    public void setData(List<DataBean> data) {
        this.data = data;
    }

    public static class DataBean {
        /**
         * list : [{"bargainPrice":111.99,"createtime":"2017-10-03T23:53:28","detailUrl":"https://item.m.jd.com/product/4719303.html?utm_source=androidapp&utm_medium=appshare&utm_campaign=t_335139774&utm_term=QQfriends","images":"https://m.360buyimg.com/n0/jfs/t9004/210/1160833155/647627/ad6be059/59b4f4e1N9a2b1532.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7504/338/63721388/491286/f5957f53/598e95f1N7f2adb87.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7441/10/64242474/419246/adb30a7d/598e95fbNd989ba0a.jpg!q70.jpg","num":1,"pid":8,"price":324,"pscid":1,"selected":0,"sellerid":1,"subhead":"每个中秋都不能简单,无论身在何处,你总需要一块饼让生活更圆满,京东月饼让爱更圆满京东自营,闪电配送,更多惊喜,快用手指戳一下","title":"北京稻香村 稻香村中秋节月饼 老北京月饼礼盒655g"}]
         * sellerName : 商家1
         * sellerid : 1
         */

        private String sellerName;
        private String sellerid;
        private List<ListBean> list;
        private boolean groupCheck;

        public boolean isGroupCheck() {
            return groupCheck;
        }

        public void setGroupCheck(boolean groupCheck) {
            this.groupCheck = groupCheck;
        }

        public String getSellerName() {
            return sellerName;
        }

        public void setSellerName(String sellerName) {
            this.sellerName = sellerName;
        }

        public String getSellerid() {
            return sellerid;
        }

        public void setSellerid(String sellerid) {
            this.sellerid = sellerid;
        }

        public List<ListBean> getList() {
            return list;
        }

        public void setList(List<ListBean> list) {
            this.list = list;
        }

        public static class ListBean {
            /**
             * bargainPrice : 111.99
             * createtime : 2017-10-03T23:53:28
             * detailUrl : https://item.m.jd.com/product/4719303.html?utm_source=androidapp&utm_medium=appshare&utm_campaign=t_335139774&utm_term=QQfriends
             * images : https://m.360buyimg.com/n0/jfs/t9004/210/1160833155/647627/ad6be059/59b4f4e1N9a2b1532.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7504/338/63721388/491286/f5957f53/598e95f1N7f2adb87.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t7441/10/64242474/419246/adb30a7d/598e95fbNd989ba0a.jpg!q70.jpg
             * num : 1
             * pid : 8
             * price : 324.0
             * pscid : 1
             * selected : 0
             * sellerid : 1
             * subhead : 每个中秋都不能简单,无论身在何处,你总需要一块饼让生活更圆满,京东月饼让爱更圆满京东自营,闪电配送,更多惊喜,快用手指戳一下
             * title : 北京稻香村 稻香村中秋节月饼 老北京月饼礼盒655g
             */

            private double bargainPrice;
            private String createtime;
            private String detailUrl;
            private String images;
            private int num;
            private int pid;
            private double price;
            private int pscid;
            private int selected;
            private int sellerid;
            private String subhead;
            private String title;
            private boolean childCheck;

            public boolean isChildCheck() {
                return childCheck;
            }

            public void setChildCheck(boolean childCheck) {
                this.childCheck = childCheck;
            }

            public double getBargainPrice() {
                return bargainPrice;
            }

            public void setBargainPrice(double bargainPrice) {
                this.bargainPrice = bargainPrice;
            }

            public String getCreatetime() {
                return createtime;
            }

            public void setCreatetime(String createtime) {
                this.createtime = createtime;
            }

            public String getDetailUrl() {
                return detailUrl;
            }

            public void setDetailUrl(String detailUrl) {
                this.detailUrl = detailUrl;
            }

            public String getImages() {
                return images;
            }

            public void setImages(String images) {
                this.images = images;
            }

            public int getNum() {
                return num;
            }

            public void setNum(int num) {
                this.num = num;
            }

            public int getPid() {
                return pid;
            }

            public void setPid(int pid) {
                this.pid = pid;
            }

            public double getPrice() {
                return price;
            }

            public void setPrice(double price) {
                this.price = price;
            }

            public int getPscid() {
                return pscid;
            }

            public void setPscid(int pscid) {
                this.pscid = pscid;
            }

            public int getSelected() {
                return selected;
            }

            public void setSelected(int selected) {
                this.selected = selected;
            }

            public int getSellerid() {
                return sellerid;
            }

            public void setSellerid(int sellerid) {
                this.sellerid = sellerid;
            }

            public String getSubhead() {
                return subhead;
            }

            public void setSubhead(String subhead) {
                this.subhead = subhead;
            }

            public String getTitle() {
                return title;
            }

            public void setTitle(String title) {
                this.title = title;
            }
        }
    }
}


presenter

package com.example.com.yuekao0601.presenter;

import com.example.com.yuekao0601.bean.ShoppingBean;
import com.example.com.yuekao0601.model.MyShoppingModel;
import com.example.com.yuekao0601.view.DataView;

import io.reactivex.Flowable;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.schedulers.Schedulers;
import io.reactivex.subscribers.DefaultSubscriber;

/**
 * Created by linmeihui on 2018/6/2.
 */

public class MyShoppingPresenter implements DataPresenter<ShoppingBean> {

    DataView dataView;
    private final MyShoppingModel myShoppingModel;

    public MyShoppingPresenter(DataView dataView){

        this.dataView=dataView;
        myShoppingModel = new MyShoppingModel();

    }



    public void toGetUrl(String uid){
        myShoppingModel.toUrl(this,uid);
    }



    @Override
    public void onSuccess(Flowable<ShoppingBean> t) {


        t.subscribeOn(Schedulers.io())
                .observeOn(AndroidSchedulers.mainThread())
                .subscribe(new DefaultSubscriber<ShoppingBean>() {
                    @Override
                    public void onNext(ShoppingBean shoppingBean) {
                        dataView.success(shoppingBean);
                    }

                    @Override
                    public void onError(Throwable t) {

                    }

                    @Override
                    public void onComplete() {

                    }
                });

    }
}



package com.example.com.yuekao0601.presenter;

import io.reactivex.Flowable;

/**
 * Created by linmeihui on 2018/6/1.
 */

public interface DataPresenter<T> {
    void onSuccess(Flowable<T> t);
}


api

package com.example.com.yuekao0601.api;

import com.example.com.yuekao0601.bean.ShoppingBean;
import com.example.com.yuekao0601.bean.ShouyeBean;

import io.reactivex.Flowable;
import retrofit2.http.GET;
import retrofit2.http.Query;

/**
 * Created by linmeihui on 2018/6/1.
 */

public interface ApiService {

    //首页接口
    @GET("ad/getAd")
    Flowable<ShouyeBean> getShouye();

    //查找购物车
    @GET("product/getCarts")
    Flowable<ShoppingBean> getShop(@Query("uid")String uid);

    //更新购物车
    @GET("product/updateCarts")
    Flowable<ShoppingBean> getUpdate(@Query("uid")String uid,@Query("sellerid")String sellerid,@Query("pid")String pid,@Query("num")String num);


}


model

package com.example.com.yuekao0601.model;

import com.example.com.yuekao0601.api.ApiService;
import com.example.com.yuekao0601.bean.ShoppingBean;
import com.example.com.yuekao0601.presenter.DataPresenter;
import com.example.com.yuekao0601.presenter.MyShoppingPresenter;
import com.example.com.yuekao0601.utils.ShoppingUtils;

import io.reactivex.Flowable;

/**
 * Created by linmeihui on 2018/6/2.
 */

public class MyShoppingModel {

    public void toUrl(DataPresenter dataPresenter,String uid) {

        Flowable<ShoppingBean> shop = ShoppingUtils.getInstance().getApi().getShop(uid);

        dataPresenter.onSuccess(shop);
    }
}


修改的presenter

package com.example.com.yuekao0601.presenter;

import com.example.com.yuekao0601.bean.ShoppingBean;
import com.example.com.yuekao0601.model.MyUpdateModel;
import com.example.com.yuekao0601.view.DataView;

import io.reactivex.Flowable;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.schedulers.Schedulers;
import io.reactivex.subscribers.DefaultSubscriber;

/**
 * Created by linmeihui on 2018/6/3.
 */

public class MyUpdatePresenter implements DataPresenter<ShoppingBean> {

    DataView dataView;
    private final MyUpdateModel myUpdateModel;

    public MyUpdatePresenter(DataView dataView){

        this.dataView=dataView;
        myUpdateModel = new MyUpdateModel();

    }

    @Override
    public void onSuccess(Flowable<ShoppingBean> t) {

        t.subscribeOn(Schedulers.io())
                .observeOn(AndroidSchedulers.mainThread())
                .subscribe(new DefaultSubscriber<ShoppingBean>() {
                    @Override
                    public void onNext(ShoppingBean shoppingBean) {
                        dataView.success(shoppingBean);
                    }

                    @Override
                    public void onError(Throwable t) {

                    }

                    @Override
                    public void onComplete() {

                    }
                });

    }

    public void toGetUpdate(String uid,String sellerid,String pid,String num){

        myUpdateModel.toUrlUpdate(this,uid,pid,sellerid,num);

    }

}


修改的model

package com.example.com.yuekao0601.model;

import com.example.com.yuekao0601.bean.ShoppingBean;
import com.example.com.yuekao0601.presenter.DataPresenter;
import com.example.com.yuekao0601.presenter.MyUpdatePresenter;
import com.example.com.yuekao0601.utils.ShoppingUtils;

import io.reactivex.Flowable;

/**
 * Created by linmeihui on 2018/6/3.
 */

public class MyUpdateModel {

    public void toUrlUpdate(DataPresenter dataPresenter,String uid,String pid,String sellerid,String num){

        Flowable<ShoppingBean> update = ShoppingUtils.getInstance().getApi().getUpdate(uid, sellerid, pid, num);

        dataPresenter.onSuccess(update);

    }

}


utils

package com.example.com.yuekao0601.utils;

import com.example.com.yuekao0601.api.ApiService;
import com.jakewharton.retrofit2.adapter.rxjava2.RxJava2CallAdapterFactory;

import okhttp3.OkHttpClient;
import retrofit2.Retrofit;
import retrofit2.converter.gson.GsonConverterFactory;

/**
 * Created by linmeihui on 2018/6/2.
 */

public class ShoppingUtils {

    private static volatile ShoppingUtils instance;
    private String url="http://120.27.23.105/";

    private Retrofit retrofit;

    public static ShoppingUtils getInstance(){
        if (instance==null){
            synchronized (ShoppingUtils.class){
                if (null==instance){
                    instance=new ShoppingUtils();
                }
            }
        }
        return instance;
    }

    private ShoppingUtils(){

        OkHttpClient okHttpClient=new OkHttpClient();

        retrofit=new Retrofit.Builder()
                .client(okHttpClient)
                .baseUrl(url)
                .addConverterFactory(GsonConverterFactory.create())
                .addCallAdapterFactory(RxJava2CallAdapterFactory.create())
                .build();


    }

    public ApiService getApi(){
        return retrofit.create(ApiService.class);
    }


}

猜你喜欢

转载自blog.csdn.net/ch5211314/article/details/80615029