订单

来源:互联网 发布:matlab向量化编程 编辑:程序博客网 时间:2024/06/10 04:27
public class XRVAdapter extends XRecyclerView.Adapter<XRVHolder> {
    Context context;
    private List<ShowDingDanBean.DataBean> data;
    private ShowDingDanPresenter showDingDanPresenter;
    Handler handler = new Handler();
    public XRVAdapter(Context context, List<ShowDingDanBean.DataBean> data,ShowDingDanPresenter showDingDanPresenter) {
        this.context = context;
        this.data = data;
        this.showDingDanPresenter = showDingDanPresenter;
    }

    @Override
    public XRVHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(context).inflate(R.layout.xrv_itemlayout, parent, false);
        XRVHolder holder = new XRVHolder(view);
        return holder;
    }

    @Override
    public void onBindViewHolder(final XRVHolder holder, final int position) {
        ShowDingDanBean.DataBean dataBean = data.get(position);
        holder.xrv_title.setText(dataBean.getTitle());
        holder.xrv_price.setText("价格:"+dataBean.getPrice());
        holder.xrv_time.setText("创建时间:"+dataBean.getCreatetime());
        if(dataBean.getStatus() == 0){
            holder.xrv_state.setText("待支付");
            holder.xrv_click.setText("取消订单");
        }else if(dataBean.getStatus() == 1){
            holder.xrv_state.setText("已支付");
            holder.xrv_click.setText("查看订单");
        }else{
            holder.xrv_state.setText("已取消");
            holder.xrv_click.setText("查看订单");
        }
        holder.xrv_state.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                int id = data.get(position).getOrderid();
                String state = holder.xrv_state.getText().toString();
                if("待支付".equals(state)){
                    Map<String, String> map = OkHttp3Util.CommonParamsInterceptor.map;
                    map.put("uid",String.valueOf(2753));
                    map.put("orderId",String.valueOf(id));
                    map.put("status",String.valueOf(1));

                    OkHttp3Util.doPost(APIUtil.UPDATESTATE_URL, new Callback() {
                        @Override
                        public void onFailure(Call call, IOException e) {

                        }

                        @Override
                        public void onResponse(Call call, Response response) throws IOException {
                            if(response.isSuccessful()){
                                final String json = response.body().string();
                                handler.post(new Runnable() {
                                    @Override
                                    public void run() {
                                        if(json != null){
                                            showDingDanPresenter.getData(APIUtil.SHOWDINNGDAN_URL,2753,1);
                                            holder.xrv_state.setText("已支付");
                                        }
                                    }
                                });

                            }
                        }
                    });
                }


            }
        });
        holder.xrv_click.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                final int id = data.get(position).getOrderid();
                String state = holder.xrv_click.getText().toString();
                if("取消订单".equals(state)){
                    AlertDialog.Builder builder = new AlertDialog.Builder(context);
                    builder.setTitle("提示");
                    builder.setMessage("是否取消订单");
                    builder.setNegativeButton("否",null);
                    builder.setPositiveButton("是", new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialogInterface, int i) {

                            Map<String, String> map = OkHttp3Util.CommonParamsInterceptor.map;
                            map.put("uid",String.valueOf(2753));
                            map.put("orderId",String.valueOf(id));
                            map.put("status",String.valueOf(2));

                            OkHttp3Util.doPost(APIUtil.UPDATESTATE_URL, new Callback() {
                                @Override
                                public void onFailure(Call call, IOException e) {

                                }

                                @Override
                                public void onResponse(Call call, Response response) throws IOException {
                                    if(response.isSuccessful()){
                                        final String json = response.body().string();
                                        handler.post(new Runnable() {
                                            @Override
                                            public void run() {
                                                if(json != null){
                                                    showDingDanPresenter.getData(APIUtil.SHOWDINNGDAN_URL,2753,1);
                                                }
                                            }
                                        });

                                    }
                                }
                            });
                        }
                    });
                    builder.create();
                    builder.show();
                }
            }
        });

    }

    @Override
    public int getItemCount() {
        return data.size();
    }
}
原创粉丝点击