Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class PedidosAdapter extends
- RecyclerView.Adapter<PedidosAdapter.PedidosViewHolder>{
- private AsyncHttpClient cliente;
- private List<Pedidos> items;
- private String parametro;
- public PedidosAdapter(List<Pedidos> items){
- super();
- this.items = items;
- }
- public static class PedidosViewHolder extends RecyclerView.ViewHolder{
- public CardView pedidoCardview;
- public TextView IdPedido;
- public TextView Direccion;
- public TextView NombreCliente;
- public TextView NumeroContacto;
- public PedidosViewHolder (View v){
- super (v);
- pedidoCardview = (CardView) v.findViewById(R.id.cv_pedidos);
- IdPedido = (TextView) v.findViewById(R.id.textID);
- Direccion = (TextView) v.findViewById(R.id.textDireccion);
- NombreCliente = (TextView) v.findViewById(R.id.textNomCliente);
- NumeroContacto = (TextView) v.findViewById(R.id.textNumContac);
- }
- }
- @Override
- public int getItemCount() {
- return items.size();
- }
- public List<Pedidos> getItems(){
- return this.items;
- }
- @Override
- public PedidosViewHolder onCreateViewHolder(ViewGroup viewGroup, int i){
- View v = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.cardview_pedidos, viewGroup, false);
- return new PedidosViewHolder(v);
- }
- @Override
- public void onBindViewHolder(final PedidosViewHolder viewHolder, final int position){
- viewHolder.IdPedido.setText("N°: "+items.get(position).getIdPedido());
- viewHolder.Direccion.setText("Dirección: "+items.get(position).getDireccion());
- viewHolder.NombreCliente.setText("Nombre Cliente: "+items.get(position).getNomCliente());
- viewHolder.NumeroContacto.setText("Numero Contacto: "+items.get(position).getNumContac());
- cliente= new AsyncHttpClient();
- viewHolder.pedidoCardview.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(final View view) {
- AlertDialog.Builder ad= new AlertDialog.Builder(view.getContext());
- ad.setMessage("¿Confirmar selección?");
- final Pedidos infoData = items.get(position);
- ad.setPositiveButton("Aceptar", new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialogInterface, int i) {
- PedidosAdapter pv = new PedidosAdapter(items);
- Toast.makeText(view.getContext(),"Posicion" + position,Toast.LENGTH_SHORT).show();
- updateDato();
- removeItem(position);
- dialogInterface.dismiss();
- }
- });
- ad.setNegativeButton("Cancelar", new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialogInterface, int i) {
- dialogInterface.dismiss();
- }
- });
- AlertDialog alertDialog = ad.create();
- alertDialog.show();
- }
- private void removeItem(int position){
- items.remove(position);
- notifyDataSetChanged();
- }
- private void updateDato(){
- String url = "https://nuevalibertad.000webhostapp.com/ConectarDB/UpdatePedido.php?";
- parametro ="IdPedido"+ items.get(position).getIdPedido();
- cliente.post(url+parametro, new AsyncHttpResponseHandler() {
- @Override
- public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {
- if(statusCode==200){
- Toast.makeText(viewHolder.pedidoCardview.getContext(),"Pedido entregado ",Toast.LENGTH_SHORT).show();
- }
- }
- @Override
- public void onFailure(int statusCode, Header[] headers, byte[] responseBody, Throwable error) {
- Toast.makeText(viewHolder.pedidoCardview.getContext(),"Error, de conexión",Toast.LENGTH_SHORT).show();
- }
- });
- }
- });
- }
- public class Pedidos {
- private int id,cantidad,idPedido;
- private String direccion;
- private String NumContac;
- private String NomCliente;
- private String Estado;
- public Pedidos (){}
- public Pedidos(int id, int cantidad, int idPedido, String direccion, String numContac, String nomCliente, String estado) {
- this.id = id;
- this.cantidad = cantidad;
- this.idPedido = idPedido;
- this.direccion = direccion;
- NumContac = numContac;
- NomCliente = nomCliente;
- Estado = estado;
- }
- public int getId() {
- return id;
- }
- public void setId(int id) {
- this.id = id;
- }
- public int getCantidad() {
- return cantidad;
- }
- public void setCantidad(int cantidad) {
- this.cantidad = cantidad;
- }
- public int getIdPedido() {
- return idPedido;
- }
- public void setIdPedido(int idPedido) {
- this.idPedido = idPedido;
- }
- public String getDireccion() {
- return direccion;
- }
- public void setDireccion(String direccion) {
- this.direccion = direccion;
- }
- public String getNumContac() {
- return NumContac;
- }
- public void setNumContac(String numContac) {
- NumContac = numContac;
- }
- public String getNomCliente() {
- return NomCliente;
- }
- public void setNomCliente(String nomCliente) {
- NomCliente = nomCliente;
- }
- public String getEstado() {
- return Estado;
- }
- public void setEstado(String estado) {
- Estado = estado;
- }
- @Override
- public String toString() {
- return "N°" + idPedido +"n" +
- "Dirección: " + direccion + "n" +
- "Nombre Cliente: " + NomCliente + "n" +
- "Numero contacto: " + NumContac + "n" +
- "Cantidad recargas: "+cantidad+"n"+
- "Estado: " + Estado ;
- }
- public class Tab1 extends Fragment {
- // TODO: Rename parameter arguments, choose names that match
- // the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
- private static final String ARG_PARAM1 = "param1";
- private static final String ARG_PARAM2 = "param2";
- private ListView lvDatos;
- private RecyclerView rvPedidos;
- private RecyclerView.Adapter rvAdapter;
- private AsyncHttpClient cliente;
- private RecyclerView.LayoutManager lmanager;
- private Button btnSeleccionar;
- // TODO: Rename and change types of parameters
- private String mParam1;
- private String mParam2;
- private OnFragmentInteractionListener mListener;
- public Tab1() {
- // Required empty public constructor
- }
- /**
- * Use this factory method to create a new instance of
- * this fragment using the provided parameters.
- *
- * @param param1 Parameter 1.
- * @param param2 Parameter 2.
- * @return A new instance of fragment Tab1.
- */
- // TODO: Rename and change types and number of parameters
- public static Tab1 newInstance(String param1, String param2) {
- Tab1 fragment = new Tab1();
- Bundle args = new Bundle();
- args.putString(ARG_PARAM1, param1);
- args.putString(ARG_PARAM2, param2);
- fragment.setArguments(args);
- return fragment;
- }
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- if (getArguments() != null) {
- mParam1 = getArguments().getString(ARG_PARAM1);
- mParam2 = getArguments().getString(ARG_PARAM2);
- }
- }
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container,
- Bundle savedInstanceState) {
- cliente = new AsyncHttpClient();
- View view = inflater.inflate(R.layout.fragment_tab1, container, false);
- // Inflate the layout for this fragment
- rvPedidos = (RecyclerView) view.findViewById(R.id.rv_pedidos);
- lmanager = new LinearLayoutManager(this.getActivity());
- rvPedidos.setLayoutManager(lmanager);
- rvPedidos.setHasFixedSize(true);
- obtenerPedidos();
- return view;
- }
- // TODO: Rename method, update argument and hook method into UI event
- public void onButtonPressed(Uri uri) {
- if (mListener != null) {
- mListener.onFragmentInteraction(uri);
- }
- }
- @Override
- public void onAttach(Context context) {
- super.onAttach(context);
- if (context instanceof OnFragmentInteractionListener) {
- mListener = (OnFragmentInteractionListener) context;
- } else {
- throw new RuntimeException(context.toString()
- + " must implement OnFragmentInteractionListener");
- }
- }
- @Override
- public void onDetach() {
- super.onDetach();
- mListener = null;
- }
- /**
- * This interface must be implemented by activities that contain this
- * fragment to allow an interaction in this fragment to be communicated
- * to the activity and potentially other fragments contained in that
- * activity.
- * <p>
- * See the Android Training lesson <a href=
- * "http://developer.android.com/training/basics/fragments/communicating.html"
- * >Communicating with Other Fragments</a> for more information.
- */
- public interface OnFragmentInteractionListener {
- // TODO: Update argument type and name
- void onFragmentInteraction(Uri uri);
- }
- private void obtenerPedidos(){
- String url = "https://nuevalibertad.000webhostapp.com/ConectarDB/ObtenerDatos.php";
- cliente.post(url, new AsyncHttpResponseHandler() {
- @Override
- public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {
- if (statusCode == 200){
- listarPedidos (new String (responseBody));
- }
- }
- @Override
- public void onFailure(int statusCode, Header[] headers, byte[] responseBody, Throwable error) {
- }
- });
- }
- private void listarPedidos (String respuesta){
- ArrayList<Pedidos> lista = new ArrayList<>();
- try{
- JSONArray jsonArreglo = new JSONArray(respuesta);
- for (int i=0; i<jsonArreglo.length();i++){
- Pedidos p = new Pedidos();
- p.setIdPedido(jsonArreglo.getJSONObject(i).getInt("ID_PEDIDO"));
- p.setNomCliente(jsonArreglo.getJSONObject(i).getString("NOMBRE_CLIENTE"));
- p.setDireccion(jsonArreglo.getJSONObject(i).getString("DIRECCION"));
- p.setNumContac(jsonArreglo.getJSONObject(i).getString("NUMEROCONTACTO"));
- p.setCantidad(jsonArreglo.getJSONObject(i).getInt("CANTIDAD"));
- p.setEstado(jsonArreglo.getJSONObject(i).getString("ESTADO"));
- lista.add(p);
- }
- rvAdapter = new PedidosAdapter(lista);
- rvPedidos.setAdapter(rvAdapter);
- }catch (Exception e1){
- e1.printStackTrace();
- }
- }
Add Comment
Please, Sign In to add comment