From d60eae7d0b1c4be1ca69d245878efacb0249cc9d Mon Sep 17 00:00:00 2001 From: Mauricio Sanchez Date: Fri, 21 Aug 2020 02:25:57 -0300 Subject: [PATCH] 21052020 0205 --- .idea/vcs.xml | 6 ++ .../deboinventariov20/DB/DAO/ArticulosDAO.kt | 2 +- .../ui/inventario/DescripcionFragment.kt | 16 +-- .../ui/inventario/InventarioFragment.kt | 112 +++++++++++---------- .../deboinventariov20/ui/main/MainFragment.kt | 7 +- app/src/main/res/layout/fragment_servidores.xml | 5 +- app/src/main/res/layout/login_dialog.xml | 18 ++-- 7 files changed, 90 insertions(+), 76 deletions(-) create mode 100644 .idea/vcs.xml 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/com/focasoftware/deboinventariov20/DB/DAO/ArticulosDAO.kt b/app/src/main/java/com/focasoftware/deboinventariov20/DB/DAO/ArticulosDAO.kt index 919ef63..7ad3f08 100644 --- a/app/src/main/java/com/focasoftware/deboinventariov20/DB/DAO/ArticulosDAO.kt +++ b/app/src/main/java/com/focasoftware/deboinventariov20/DB/DAO/ArticulosDAO.kt @@ -16,7 +16,7 @@ interface ArticulosDAO { @Query("SELECT * FROM $TABLA_ART ORDER BY DES DESC") suspend fun findAllArticulos(): List - @Query("SELECT * FROM $TABLA_ART WHERE DEPSN=:dep AND DES LIKE '%' || :description || '%'") + @Query("SELECT * FROM $TABLA_ART WHERE DEPSN=:dep AND DES LIKE '%' || :description || '%' GROUP BY DES ORDER BY SEC, COD") suspend fun findArticuloByDesc(description: String?, dep: Int): List @Query("SELECT * FROM $TABLA_ART WHERE DEPSN=:dep AND CB LIKE :codBarra") diff --git a/app/src/main/java/com/focasoftware/deboinventariov20/ui/inventario/DescripcionFragment.kt b/app/src/main/java/com/focasoftware/deboinventariov20/ui/inventario/DescripcionFragment.kt index 183e83b..0cc48f1 100644 --- a/app/src/main/java/com/focasoftware/deboinventariov20/ui/inventario/DescripcionFragment.kt +++ b/app/src/main/java/com/focasoftware/deboinventariov20/ui/inventario/DescripcionFragment.kt @@ -62,7 +62,7 @@ class DescripcionFragment : Fragment() { IngresarRecicler(artAcargar2) btnSalir.setOnClickListener { - requireActivity().onBackPressed() + VolverAinventario() } return v } @@ -110,11 +110,7 @@ class DescripcionFragment : Fragment() { InventarioFragment().ObtenerFechaActual(), InventarioFragment().ObtenerFechaActual()) InsertarArtEnDB(body)// TODO: MANDO A CARGAR A LA BASE DE DATOS - val editor = sharedPreferences.edit() - editor?.putString("Inventario", numeroInventario.toString()) - editor?.apply() - editor.commit() - navController.navigate(R.id.action_descripcionFragment_to_inventarioFragment) + VolverAinventario() } }.cancelOnTouchOutside(false).cornerRadius(10F) } @@ -148,5 +144,13 @@ class DescripcionFragment : Fragment() { } } } + fun VolverAinventario(){ + + val editor = sharedPreferences.edit() + editor?.putString("Inventario", numeroInventario.toString()) + editor?.apply() + editor.commit() + navController.navigate(R.id.action_descripcionFragment_to_inventarioFragment) + } } diff --git a/app/src/main/java/com/focasoftware/deboinventariov20/ui/inventario/InventarioFragment.kt b/app/src/main/java/com/focasoftware/deboinventariov20/ui/inventario/InventarioFragment.kt index f3458a9..01cbc9c 100644 --- a/app/src/main/java/com/focasoftware/deboinventariov20/ui/inventario/InventarioFragment.kt +++ b/app/src/main/java/com/focasoftware/deboinventariov20/ui/inventario/InventarioFragment.kt @@ -10,7 +10,10 @@ import android.view.KeyEvent import android.view.LayoutInflater import android.view.View import android.view.ViewGroup -import android.widget.* +import android.widget.EditText +import android.widget.TextView +import android.widget.Toast +import android.widget.ToggleButton import androidx.core.content.ContextCompat import androidx.core.os.bundleOf import androidx.fragment.app.Fragment @@ -76,9 +79,9 @@ class InventarioFragment : Fragment() { if (InventarioNuevo == 0) {// TODO: SI INVETNARIO NUEVO GlobalScope.launch(Dispatchers.Main) { //TODO: BUSCO EL ULTIMO INVENTARIO EN LA BD PARA PODER CREAR EL PROXIMO - InventarioNuevo = AppDb.getAppDb(requireActivity())!!.InvHeadDAO()!!.findLastInv() + 1 + InventarioNuevo = AppDb.getAppDb(requireActivity())?.InvHeadDAO()?.findLastInv()?.plus(1) ?: 1 SerchArea() - val descripInv: String = if (iArea == 0) "Inventario Ventas" else "Inventario Deposito" + val descripInv: String = if (iArea == 0) "Ventas" else "Deposito" //TODO: CREAMOS EL INVENTARIO EN LA CABECERA DEL INVENTARIO invHead = InvHead(InventarioNuevo, descripInv, 1, ObtenerFechaActual(), ObtenerFechaActual(), 0L, iArea, AjusteProductos(), ProdNoCont()) AppDb.getAppDb(requireActivity())!!.InvHeadDAO()!!.insertInvHead(invHead) @@ -159,40 +162,41 @@ class InventarioFragment : Fragment() { return@setOnKeyListener true - } else {//TODO BUSQUEDA POR DESCRIPCION************************************************************************** - - indiceDelArtEncontrado = buscoArtEnRv(sChangeUpper.toUpperCase(Locale.ROOT), 1) //TODO :Si encuentra el articulo en el RV devuelve el indice - //TODO Si no lo encuentra devuelve -1 - if (indiceDelArtEncontrado != -1) { -// if (swSumaUno!!.isChecked) { -// fCant = 0F -// fCant = listArticulos[indiceDelArtEncontrado].cantTomada -// fCant += 1F -// listArticulos[indiceDelArtEncontrado].cantTomada = fCant -// viewAdapter.notifyDataSetChanged() -// } else { - fCant = listArticulos[indiceDelArtEncontrado].cantTomada - MaterialDialog(requireContext()).show { - title(R.string.sTituloNueva) - message(R.string.sCantidadNueva) - input { materialDialog, charSequence -> - fCant = 0F - fCant = charSequence.toString().toFloat() - } - positiveButton(R.string.btnOk) { - listArticulos[indiceDelArtEncontrado].cantTomada = fCant - viewAdapter.notifyDataSetChanged() - dismiss() - } - }.cancelOnTouchOutside(false).cornerRadius(10F) -// } - - } else if (indiceDelArtEncontrado == -1) {// TODO: no lo encontro en el RV, lo va a buscar en al BD + } else {//TODO: BUSQUEDA POR DESCRIPCION************************************************************************** +// +// indiceDelArtEncontrado = buscoArtEnRv(sChangeUpper.toUpperCase(Locale.ROOT), 1) //TODO :Si encuentra el articulo en el RV devuelve el indice +// //TODO Si no lo encuentra devuelve -1 +// if (indiceDelArtEncontrado != -1) { +//// if (swSumaUno!!.isChecked) { +//// fCant = 0F +//// fCant = listArticulos[indiceDelArtEncontrado].cantTomada +//// fCant += 1F +//// listArticulos[indiceDelArtEncontrado].cantTomada = fCant +//// viewAdapter.notifyDataSetChanged() +//// } else { +// fCant = listArticulos[indiceDelArtEncontrado].cantTomada +// MaterialDialog(requireContext()).show { +// title(R.string.sTituloNueva) +// message(R.string.sCantidadNueva) +// input { materialDialog, charSequence -> +// fCant = 0F +// fCant = charSequence.toString().toFloat() +// } +// positiveButton(R.string.btnOk) { +// listArticulos[indiceDelArtEncontrado].cantTomada = fCant +// viewAdapter.notifyDataSetChanged() +// dismiss() +// } +// }.cancelOnTouchOutside(false).cornerRadius(10F) +//// } +// +// } else if +// (indiceDelArtEncontrado == -1) {// TODO: no lo encontro en el RV, lo va a buscar en al BD GlobalScope.launch(Dispatchers.Main) { val artEncontrado = buscarDescEnBD(sChangeUpper.toUpperCase(Locale.ROOT)) ContinuarCargaDesc(artEncontrado as ArrayList) } - } +// } tCodigoBarras.focusable = View.FOCUSABLE tCodigoBarras.setText("") tCodigoBarras.selectAll() @@ -226,22 +230,22 @@ class InventarioFragment : Fragment() { }.cancelOnTouchOutside(false).cornerRadius(10F) } - btnExportarInv.setOnClickListener { - MaterialDialog(requireContext()).show { - title(R.string.sTituloExportar) - message(R.string.sMensajeExportar) - positiveButton(R.string.btnOk) { - BorrarInvActual() - Toast.makeText(requireContext(), "El inventario $InventarioNuevo fue Exportado al Servidor", Toast.LENGTH_LONG).show() - navController.navigate(R.id.action_inventarioFragment_to_mainFragment2) - InventarioNuevo = 0 - dismiss() - } - negativeButton { - dismiss() - } - }.cancelOnTouchOutside(false).cornerRadius(10F) - } + btnExportarInv.setOnClickListener { + MaterialDialog(requireContext()).show { + title(R.string.sTituloExportar) + message(R.string.sMensajeExportar) + positiveButton(R.string.btnOk) { + BorrarInvActual() + Toast.makeText(requireContext(), "El inventario $InventarioNuevo fue Exportado al Servidor", Toast.LENGTH_LONG).show() + navController.navigate(R.id.action_inventarioFragment_to_mainFragment2) + InventarioNuevo = 0 + dismiss() + } + negativeButton { + dismiss() + } + }.cancelOnTouchOutside(false).cornerRadius(10F) + } } private fun BorrarInvActual() { @@ -346,7 +350,7 @@ class InventarioFragment : Fragment() { positiveButton(R.string.btnOk) { dismiss() } - }.cancelOnTouchOutside(false).cornerRadius(10F) + }.cornerRadius(10F) } } @@ -387,7 +391,7 @@ class InventarioFragment : Fragment() { // } dismiss() } - }.cancelOnTouchOutside(false).cornerRadius(10F) + }.cornerRadius(10F) } } @@ -457,7 +461,7 @@ class InventarioFragment : Fragment() { listArticulos.add(item) viewAdapter = ProductosListAdapter(listArticulos) - viewManager =LinearLayoutManager(requireContext()) + viewManager = LinearLayoutManager(requireContext()) deleteIcon = ContextCompat.getDrawable(requireContext(), R.drawable.borrar)!! rcInventarios.apply { adapter = viewAdapter @@ -482,7 +486,7 @@ class InventarioFragment : Fragment() { if (dX < c.width / 2) c.drawColor(Color.GREEN) else c.drawColor(Color.RED) - deleteIcon.setBounds(itemView.left + iconMargin, itemView.top + iconMargin, itemView.left + iconMargin + deleteIcon.intrinsicWidth, itemView.bottom-iconMargin) + deleteIcon.setBounds(itemView.left + iconMargin, itemView.top + iconMargin, itemView.left + iconMargin + deleteIcon.intrinsicWidth, itemView.bottom - iconMargin) } else { } @@ -519,7 +523,7 @@ class InventarioFragment : Fragment() { fun ObtenerFechaActual(): String? { //TODO OBTENGO FECHA Y HORA ACTUAL PARA LA CABECERA DEL INVENTARIO Y PARA CADA ITEM QUE SE INSERTA EN LA BD val current = LocalDateTime.now() - val formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss") + val formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy hh:mm:ss") val dFechaHora = current.format(formatter) return dFechaHora.toString() } diff --git a/app/src/main/java/com/focasoftware/deboinventariov20/ui/main/MainFragment.kt b/app/src/main/java/com/focasoftware/deboinventariov20/ui/main/MainFragment.kt index 78c16d2..d25f1b7 100644 --- a/app/src/main/java/com/focasoftware/deboinventariov20/ui/main/MainFragment.kt +++ b/app/src/main/java/com/focasoftware/deboinventariov20/ui/main/MainFragment.kt @@ -6,7 +6,6 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup -import androidx.core.view.get import androidx.fragment.app.Fragment import androidx.navigation.NavController import androidx.navigation.Navigation @@ -68,10 +67,10 @@ class MainFragment : Fragment(), InventarioListAdapter.OnItemClickListener { } fun cargarRecicler(inv: InvHead) { - var numero="" //TODO CARGO EN LE RV - if (inv.invNum.toLong()<10) numero="0${inv.invNum.toLong()}" else numero=inv.invNum.toString() - val item = ItemInventario("Inventeario: ${numero} ${inv.descripcion} Fecha:${inv.fechaFinal} ") + + val number = if (inv.invNum.toLong()<10) "0${inv.invNum.toLong()}" else inv.invNum.toString() + val item = ItemInventario("N° $number ${inv.descripcion}. Fecha: ${inv.fechaFinal}") //(articulos.sector, articulos.codigo, articulos.descripcion, cant, articulos.codBar) listIvn.add(item) diff --git a/app/src/main/res/layout/fragment_servidores.xml b/app/src/main/res/layout/fragment_servidores.xml index 6c136f8..cea06e0 100644 --- a/app/src/main/res/layout/fragment_servidores.xml +++ b/app/src/main/res/layout/fragment_servidores.xml @@ -76,7 +76,7 @@ android:focusable="true" android:inputType="text" android:lines="1" - android:text="" + android:hint="Servidor Local" android:textSize="15sp" app:layout_constraintBottom_toTopOf="@id/guideline3" app:layout_constraintEnd_toEndOf="parent" @@ -95,7 +95,8 @@ android:focusable="true" android:inputType="text" android:lines="1" - android:text="" + + android:hint="192.168.10.1:9090" android:textSize="15sp" app:layout_constraintBottom_toTopOf="@id/guideline4" app:layout_constraintEnd_toEndOf="parent" diff --git a/app/src/main/res/layout/login_dialog.xml b/app/src/main/res/layout/login_dialog.xml index 1bce642..dc8ff00 100644 --- a/app/src/main/res/layout/login_dialog.xml +++ b/app/src/main/res/layout/login_dialog.xml @@ -56,6 +56,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_margin="5dp" + android:visibility="gone" android:gravity="center" android:text="@string/tvSeleccion" android:textSize="20sp" @@ -68,41 +69,40 @@ android:layout_height="wrap_content" android:layout_margin="5dp" android:gravity="start" - android:orientation="vertical" + android:orientation="horizontal" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.0" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/tvgenerico2"> - -- 1.9.1