diff --git a/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/adapters/ExpeditionSummaryAdapter.kt b/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/adapters/ExpeditionSummaryAdapter.kt index 4b4fabe7..487fedac 100644 --- a/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/adapters/ExpeditionSummaryAdapter.kt +++ b/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/adapters/ExpeditionSummaryAdapter.kt @@ -6,12 +6,10 @@ import androidx.recyclerview.widget.RecyclerView import es.verdnatura.R import es.verdnatura.databinding.ItemExpeditionSummaryRowBinding import es.verdnatura.presentation.common.OnAddressRowClickListener -import es.verdnatura.presentation.common.OnItemCardRowClickListener import es.verdnatura.presentation.common.OnItemImageLoadRowClickListener import es.verdnatura.presentation.view.feature.delivery.model.ExpeditionInfoSummary - class ExpeditionSummaryAdapter( private val items: List, private val onAddressRowClickListener: OnAddressRowClickListener, @@ -47,15 +45,17 @@ class ExpeditionSummaryAdapter( fun bind(item: ExpeditionInfoSummary) { binding.apply { - if (item.delivery != item.total || item.delivered == item.total) - - { + if (item.delivery != item.total) { fondo.setBackgroundColor( res.getColor(R.color.verdnatura_pumpkin_light) ) - }else{ - res.getColor(R.color.verdnatura_black) + } else { + fondo.setBackgroundColor(res.getColor(R.color.verdnatura_black)) } + if (item.delivered == item.total){ + fondo.setBackgroundColor(res.getColor(R.color.verdnatura_black)) + } + showExp.setOnClickListener { onItemImageLoadRowClickListener.onItemImageLoadRowClickListener(item) } diff --git a/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/adapters/RouteAdapter.kt b/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/adapters/RouteAdapter.kt index 747e9a32..e7ce031c 100644 --- a/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/adapters/RouteAdapter.kt +++ b/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/adapters/RouteAdapter.kt @@ -83,11 +83,12 @@ class RouteAdapter( } if (item.header){ - linearLayoutLoadVan.visibility - headerRoute.visibility= View.VISIBLE + headerRouteLayout.visibility = View.VISIBLE headerRoute.text = toDateString(item.created) }else{ - headerRoute.visibility=View.GONE + headerRouteLayout.visibility = View.GONE + + } this.item = item diff --git a/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/fragments/LoadUnloadFragment.kt b/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/fragments/LoadUnloadFragment.kt index 03063c28..8555bbc9 100644 --- a/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/fragments/LoadUnloadFragment.kt +++ b/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/fragments/LoadUnloadFragment.kt @@ -133,8 +133,24 @@ class LoadUnloadFragment( android.app.AlertDialog.BUTTON_NEUTRAL, getString(R.string.save) ) { dialog, which -> counterCalls = 2 - viewModel.expeditionState_add(list.filter { it.code == state }, state) - viewModel.expeditionState_add(list.filter { it.code != state }, "LOST") + if (list.filter { it.code == state }.isEmpty()){ + counterCalls-- + }else{ + viewModel.expeditionState_add(list.filter { it.code == state }, state) + } + if (list.filter { it.code != state && it.code != "FOUND" }.isEmpty()){ + counterCalls-- + }else{ + viewModel.expeditionState_add( + list.filter { it.code != state && it.code != "FOUND" }, + "LOST" + ) + } + /*viewModel.expeditionState_add(list.filter { it.code == state }, state) + viewModel.expeditionState_add( + list.filter { it.code != state && it.code != "FOUND" }, + "LOST" + )*/ } alertDialog.setButton( android.app.AlertDialog.BUTTON_POSITIVE, getString(R.string.ordenar) @@ -206,7 +222,7 @@ class LoadUnloadFragment( false } - binding.scanInput.requestFocus() + binding.scanInput.requestFocus() } private fun markExpedition(expedNumber: Int, state: String) { @@ -229,7 +245,14 @@ class LoadUnloadFragment( ma.messageWithSound("", true, true, isToasted = null) } } - updateCount(myList, state) + + if (binding.mainToolbar.switchButton.isChecked) { + counterCalls = 1 + binding.splashProgress.visibility = View.VISIBLE + viewModel.expeditionState_add(myList.filter { it.code == state }, state) + } else { + updateCount(myList, state) + } } @RequiresApi(Build.VERSION_CODES.O) @@ -256,7 +279,11 @@ class LoadUnloadFragment( counterResponse = counterResponse + 1 if (counterResponse == counterCalls) { // viewModel.getExpeditionFromRoute(route) - requireActivity().onBackPressed() + if (!binding.mainToolbar.switchButton.isChecked) { + requireActivity().onBackPressed() + } else { + binding.mainToolbar.switchButton.isChecked = false + } counterResponse = 0 counterCalls = 0 } @@ -271,16 +298,17 @@ class LoadUnloadFragment( binding.mainToolbar.switchButton.tooltipText = getString(R.string.expeditionMarkLost) binding.mainToolbar.switchButton.setOnCheckedChangeListener { buttonView, isChecked -> binding.mainToolbar.switchButton.tooltipText = if (isChecked) - getString(R.string.expeditionMarkLost) else - getString(R.string.expeditionMarkFound) + getString(R.string.expeditionMarkFound) else + getString(R.string.expeditionMarkLost) - if (isChecked) { - binding.mainToolbar.toolbarTitle.text = - getString(R.string.loading) - } else { + binding.mainToolbar.toolbarTitle.text = if (isChecked) { getString(R.string.unloading) + } else { + getString(R.string.loading) } + getString(R.string.unloading) + } } @@ -297,15 +325,15 @@ class LoadUnloadFragment( lifecycleScope.launch { withContext(Dispatchers.IO) { db.expedicionDao().insert(list.filter { it.routeFk == route } - ) + ) myList = db.expedicionDao().getAll(route) as MutableList // myList = list as MutableList } if (addressFk != 0) { myList = myList.filter { it.addressFk == addressFk } as MutableList - }else{ - myList.filter{ + } else { + myList.filter { it.routeFk == route } } diff --git a/app/src/main/res/layout/fragment_expedition_summary.xml b/app/src/main/res/layout/fragment_expedition_summary.xml index 56febfa2..9c97e79c 100644 --- a/app/src/main/res/layout/fragment_expedition_summary.xml +++ b/app/src/main/res/layout/fragment_expedition_summary.xml @@ -118,21 +118,21 @@ + app:layout_constraintTop_toTopOf="@+id/divider"> - + app:layout_constraintTop_toTopOf="@+id/divider" + >