diff --git a/.idea/other.xml b/.idea/other.xml new file mode 100644 index 0000000..94c96f6 --- /dev/null +++ b/.idea/other.xml @@ -0,0 +1,318 @@ + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/java/jumapacelaya/gob/mx/almacen/bean/DetalleConteo.java b/app/src/main/java/jumapacelaya/gob/mx/almacen/bean/DetalleConteo.java index 661e3a6..f44f47d 100644 --- a/app/src/main/java/jumapacelaya/gob/mx/almacen/bean/DetalleConteo.java +++ b/app/src/main/java/jumapacelaya/gob/mx/almacen/bean/DetalleConteo.java @@ -9,7 +9,7 @@ import com.google.gson.annotations.Expose; import java.io.Serializable; import java.math.BigDecimal; -@Entity(primaryKeys = {"almacenpk","articulopk","conteopk"}) +@Entity(primaryKeys = {"inventariopk","almacenpk","articulopk","conteopk"}) public class DetalleConteo implements Serializable { diff --git a/app/src/main/java/jumapacelaya/gob/mx/almacen/dao/AppDatabase.java b/app/src/main/java/jumapacelaya/gob/mx/almacen/dao/AppDatabase.java index de05a4d..b1f1e04 100644 --- a/app/src/main/java/jumapacelaya/gob/mx/almacen/dao/AppDatabase.java +++ b/app/src/main/java/jumapacelaya/gob/mx/almacen/dao/AppDatabase.java @@ -17,7 +17,7 @@ import jumapacelaya.gob.mx.almacen.bean.DetalleConteo; import jumapacelaya.gob.mx.almacen.dao.converts.DateConverter; import jumapacelaya.gob.mx.almacen.dao.converts.LocalDateConverter; -@Database(entities = {Conteo.class, DetalleConteo.class, Inventario.class}, version = 8, exportSchema = false) +@Database(entities = {Conteo.class, DetalleConteo.class, Inventario.class}, version = 9, exportSchema = false) @TypeConverters({BooleanTointeger.class, BigdecimalToLong.class, DateConverter.class}) public abstract class AppDatabase extends RoomDatabase { diff --git a/app/src/main/java/jumapacelaya/gob/mx/almacen/dao/PostViewModel.java b/app/src/main/java/jumapacelaya/gob/mx/almacen/dao/PostViewModel.java index ff9c3f3..ffe3a50 100644 --- a/app/src/main/java/jumapacelaya/gob/mx/almacen/dao/PostViewModel.java +++ b/app/src/main/java/jumapacelaya/gob/mx/almacen/dao/PostViewModel.java @@ -31,6 +31,10 @@ public class PostViewModel extends AndroidViewModel { return postDao.livePendiente_Detalles(inventariopk, conteo); } + public LiveData> getPendientesConteoClave(int inventariopk, Integer conteo, String filter) { + return postDao.livePendiente_Detallesclave(inventariopk, conteo, filter); + } + public LiveData> getAvanceConteo(int inventariopk, Integer conteo) { return postDao.liveAvance_Detalles(inventariopk, conteo); } diff --git a/app/src/main/java/jumapacelaya/gob/mx/almacen/dao/inventarioDao.java b/app/src/main/java/jumapacelaya/gob/mx/almacen/dao/inventarioDao.java index 6137c14..e93a2a8 100644 --- a/app/src/main/java/jumapacelaya/gob/mx/almacen/dao/inventarioDao.java +++ b/app/src/main/java/jumapacelaya/gob/mx/almacen/dao/inventarioDao.java @@ -106,6 +106,9 @@ public abstract class inventarioDao { @Query("Select * from DetalleConteo Where inventariopk = :inventariopk And conteopk= :conteopk and (cantidad is null or cantidad = 0) Order by folio") public abstract LiveData> livePendiente_Detalles(Integer inventariopk, Integer conteopk); + @Query("Select * from DetalleConteo Where inventariopk = :inventariopk And conteopk= :conteopk and clave like '%' || :filter || '%' and (cantidad is null or cantidad = 0) Order by folio") + public abstract LiveData> livePendiente_Detallesclave(Integer inventariopk, Integer conteopk, String filter); + @Query("Select * from DetalleConteo Where inventariopk = :inventariopk And conteopk= :conteopk ") public abstract List listContados_Detalles(Integer inventariopk, Integer conteopk); diff --git a/app/src/main/java/jumapacelaya/gob/mx/almacen/ui/main/PendienteFragment.java b/app/src/main/java/jumapacelaya/gob/mx/almacen/ui/main/PendienteFragment.java index 9ca1e60..7447c62 100644 --- a/app/src/main/java/jumapacelaya/gob/mx/almacen/ui/main/PendienteFragment.java +++ b/app/src/main/java/jumapacelaya/gob/mx/almacen/ui/main/PendienteFragment.java @@ -7,9 +7,14 @@ import android.os.Bundle; import androidx.fragment.app.Fragment; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; + +import android.text.Editable; +import android.text.TextWatcher; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.widget.EditText; +import android.widget.TextView; import jumapacelaya.gob.mx.almacen.MainActivity; import jumapacelaya.gob.mx.almacen.R; @@ -34,6 +39,8 @@ public class PendienteFragment extends Fragment { Conteo conteo; MainActivity activity; + EditText txtfilter; + RecyclerView recyclerView; private OnListFragmentInteractionListener mListener; @@ -73,10 +80,13 @@ public class PendienteFragment extends Fragment { Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_item_list, container, false); + recyclerView = view.findViewById(R.id.list); + txtfilter = view.findViewById(R.id.txtfilter_pend); + // Set the adapter - if (view instanceof RecyclerView) { + if (recyclerView != null) { Context context = view.getContext(); - RecyclerView recyclerView = (RecyclerView) view; + //RecyclerView recyclerView = (RecyclerView) view; //if (mColumnCount <= 1) { recyclerView.setLayoutManager(new LinearLayoutManager(context)); //} else { @@ -86,6 +96,22 @@ public class PendienteFragment extends Fragment { postViewModel.getPendientesConteo(conteo.getInventariopk(),conteo.getConteopk()).observe(getViewLifecycleOwner(), detalleConteos -> adapter.setData(detalleConteos)); recyclerView.setAdapter(adapter); } + + txtfilter.addTextChangedListener(new TextWatcher() { + @Override + public void onTextChanged(CharSequence s, int start, int before, int count) { + filter(s.toString()); + } + @Override + public void beforeTextChanged(CharSequence s, int start, int count, int after) { + + } + @Override + public void afterTextChanged(Editable s) { + + } + }); + return view; } @@ -121,4 +147,16 @@ public class PendienteFragment extends Fragment { // TODO: Update argument type and name void onListFragmentInteraction(DetalleConteo item); } + + //filter list recicler view + // method to filter data based on query + private void filter(String text) { + // creating a new array list to filter data + + if(text.isEmpty()) + postViewModel.getPendientesConteo(conteo.getInventariopk(),conteo.getConteopk()).observe(getViewLifecycleOwner(), detalleConteos -> adapter.setData(detalleConteos)); + else + postViewModel.getPendientesConteoClave(conteo.getInventariopk(),conteo.getConteopk(), text).observe(getViewLifecycleOwner(), detalleConteos -> adapter.setData(detalleConteos)); + + } } diff --git a/app/src/main/java/jumapacelaya/gob/mx/almacen/ui/main/PlaceholderFragment.java b/app/src/main/java/jumapacelaya/gob/mx/almacen/ui/main/PlaceholderFragment.java index ff4c725..f92cea8 100644 --- a/app/src/main/java/jumapacelaya/gob/mx/almacen/ui/main/PlaceholderFragment.java +++ b/app/src/main/java/jumapacelaya/gob/mx/almacen/ui/main/PlaceholderFragment.java @@ -251,7 +251,7 @@ public class PlaceholderFragment extends Fragment { InputMethodManager imm = (InputMethodManager) activity.getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(txtCantidad, InputMethodManager.SHOW_IMPLICIT); - Toast.makeText(getContext(),detalle.getDescArticulo(), LENGTH_SHORT).show(); + //Toast.makeText(getContext(),detalle.getDescArticulo(), LENGTH_SHORT).show(); } diff --git a/app/src/main/res/layout/fragment_item_list.xml b/app/src/main/res/layout/fragment_item_list.xml index dddb0d2..de62ee3 100644 --- a/app/src/main/res/layout/fragment_item_list.xml +++ b/app/src/main/res/layout/fragment_item_list.xml @@ -1,14 +1,33 @@ - \ No newline at end of file + android:layout_height="wrap_content" + android:orientation="vertical" + > + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_main.xml b/app/src/main/res/layout/fragment_main.xml index 2291512..cce6ad8 100644 --- a/app/src/main/res/layout/fragment_main.xml +++ b/app/src/main/res/layout/fragment_main.xml @@ -165,9 +165,10 @@ android:autofillHints="" android:selectAllOnFocus="true" android:ems="10" - android:inputType="number" + android:inputType="numberDecimal" android:textAlignment="center" - android:textAllCaps="false" /> + android:textAllCaps="false" + tools:ignore="LabelFor" />