refs #5764 Añadir onclick pantalla Día de venta

This commit is contained in:
Sergio De la torre 2023-06-02 07:16:41 +02:00
parent a265550138
commit 65d1b4a7fd
2 changed files with 60 additions and 50 deletions

View File

@ -6,12 +6,15 @@ import androidx.core.content.ContextCompat
import androidx.recyclerview.widget.RecyclerView
import es.verdnatura.R
import es.verdnatura.databinding.ItemShelvingdayofsaleRowBinding
import es.verdnatura.presentation.common.OnPasillerosItemClickListener
import es.verdnatura.presentation.view.feature.diadeventa.model.ItemShelvingSaleDate
import es.verdnatura.presentation.view.feature.pasillero.model.PasillerosItemVO
import java.text.SimpleDateFormat
import java.util.*
class DayOfSaleAdapter (
private val items: List<ItemShelvingSaleDate>
private val items: List<ItemShelvingSaleDate>,
private val onPasillerosItemClickListener: OnPasillerosItemClickListener
): RecyclerView.Adapter<DayOfSaleAdapter.ItemHolder>() {
@ -45,6 +48,11 @@ class DayOfSaleAdapter (
ContextCompat.getColor(historicoDate.context,
R.color.verdnatura_black_5))
}
historicoDate.setOnClickListener {
onPasillerosItemClickListener.onPasillerosItemClickListener(
PasillerosItemVO(title = res.getString(
R.string.titleItemSearch)),item.itemFk.toString())
}
}
}
}

View File

@ -12,22 +12,23 @@ import es.verdnatura.databinding.FragmentItemdayofsaleCardBinding
import es.verdnatura.domain.notNull
import es.verdnatura.presentation.base.BaseFragment
import es.verdnatura.presentation.common.OnOptionsSelectedListener
import es.verdnatura.presentation.common.OnPasillerosItemClickListener
import es.verdnatura.presentation.common.ToolBarAdapterTooltip
import es.verdnatura.presentation.view.component.CustomDialog
import es.verdnatura.presentation.view.component.CustomDialogList
import es.verdnatura.presentation.view.feature.diadeventa.adapter.DayOfSaleAdapter
import es.verdnatura.presentation.view.feature.main.activity.MainActivity
@Suppress("UNUSED_ANONYMOUS_PARAMETER")
class DayOfSaleFragment(
var entryPoint: String = ""
) : BaseFragment<FragmentItemdayofsaleCardBinding, DayOfSaleViewModel>(DayOfSaleViewModel::class) {
) : BaseFragment<FragmentItemdayofsaleCardBinding, DayOfSaleViewModel>(DayOfSaleViewModel::class) {
private lateinit var customDialogList: CustomDialogList
private lateinit var customDialog: CustomDialog
private var adapter: DayOfSaleAdapter? = null
private var itemScan = ""
private var pasillerosItemClickListener: OnPasillerosItemClickListener? = null
companion object {
fun newInstance(entryPoint: String) = DayOfSaleFragment(entryPoint)
@ -58,17 +59,18 @@ class DayOfSaleFragment(
listIcons.add(iconParking)
binding.mainToolbar.toolbarIcons.adapter = ToolBarAdapterTooltip(listIcons, object : OnOptionsSelectedListener {
override fun onOptionsItemSelected(item: Drawable) {
binding.mainToolbar.toolbarIcons.adapter =
ToolBarAdapterTooltip(listIcons, object : OnOptionsSelectedListener {
override fun onOptionsItemSelected(item: Drawable) {
if (item == iconParking.drawable) {
showParking()
}
if (item == iconParking.drawable) {
showParking()
}
}
})
})
binding.mainToolbar.toolbarIcons.layoutManager =
LinearLayoutManager(requireContext(), LinearLayoutManager.HORIZONTAL, false)
@ -79,7 +81,7 @@ class DayOfSaleFragment(
binding.scanInput.setOnEditorActionListener { v, actionId, event ->
if (actionId == EditorInfo.IME_ACTION_SEARCH || actionId == EditorInfo.IME_ACTION_DONE || actionId == 0 || actionId == 5) {
if (!binding.scanInput.text.toString().isNullOrEmpty()) {
getItemsSaleDate(binding.scanInput.text.toString())
getItemsSaleDate(binding.scanInput.text.toString())
itemScan = binding.scanInput.text.toString()
}
@ -98,8 +100,6 @@ class DayOfSaleFragment(
}
private fun getItemsSaleDate(vShelvingFK: String) {
binding.splashProgress.visibility = View.VISIBLE
viewModel.itemShelving_getSaleDate(vShelvingFK)
@ -110,48 +110,50 @@ class DayOfSaleFragment(
override fun observeViewModel() {
with(viewModel) {
loadItemShelvingSaleDateList.observe(viewLifecycleOwner, Observer{ event ->
event.getContentIfNotHandled().notNull {
binding.splashProgress.visibility = View.GONE
adapter = DayOfSaleAdapter(it.list)
loadItemShelvingSaleDateList.observe(viewLifecycleOwner, Observer { event ->
event.getContentIfNotHandled().notNull {
binding.splashProgress.visibility = View.GONE
adapter = DayOfSaleAdapter(
it.list,
onPasillerosItemClickListener = pasillerosItemClickListener!!
)
binding.itemexpeditionstateRecyclerview.adapter = adapter
binding.itemexpeditionstateRecyclerview.layoutManager = LinearLayoutManager(requireContext(), LinearLayoutManager.VERTICAL, false)
binding.itemexpeditionstateRecyclerview.adapter = adapter
binding.itemexpeditionstateRecyclerview.layoutManager =
LinearLayoutManager(requireContext(), LinearLayoutManager.VERTICAL, false)
if (it.list.isEmpty()){
customDialog.setTitle(getString(R.string.noResults))
.setDescription(getString(R.string.wagoonNoSaleToday))
.setOkButton(getString(R.string.close)) {
customDialog.dismiss()
}.show()
}else{
if (it.list.isEmpty()) {
customDialog.setTitle(getString(R.string.noResults))
.setDescription(getString(R.string.wagoonNoSaleToday))
.setOkButton(getString(R.string.close)) {
customDialog.dismiss()
}.show()
} else {
if (it.list.get(0).isError){
ma.messageWithSound(it.list.get(0).errorMessage,it.list.get(0).isError,isPlayed = false)
/*customDialog.setTitle(getString(R.string.error))
.setDescription(it.list.get(0).errorMessage)
.setOkButton(getString(R.string.close)) {
customDialog.dismiss()
}.show()*/
if (it.list.get(0).isError) {
ma.messageWithSound(
it.list.get(0).errorMessage,
it.list.get(0).isError,
isPlayed = false
)
}
}
}
})
}
})
response.observe(viewLifecycleOwner, Observer {
if (it.isError){
if (it.isError) {
binding.splashProgress.visibility = View.GONE
ma.messageWithSound(it.errorMessage,true,false)
/*customDialog.setTitle(getString(R.string.error)).setDescription(it.errorMessage).setOkButton(getString(R.string.close)){
customDialog.dismiss()
}.show()*/
ma.messageWithSound(it.errorMessage, true, false)
}else{
} else {
customDialog.setTitle(getString(R.string.info)).setDescription(getString(R.string.parkingOk)).setOkButton(getString(R.string.close)) {
customDialog.dismiss()
}.show()
customDialog.setTitle(getString(R.string.info))
.setDescription(getString(R.string.parkingOk))
.setOkButton(getString(R.string.close)) {
customDialog.dismiss()
}.show()
}
@ -170,7 +172,6 @@ class DayOfSaleFragment(
ma.hideKeyboard(customDialogList.getEditText())
customDialogList.dismiss()
}.setValue("").show()
@ -178,7 +179,7 @@ class DayOfSaleFragment(
ma.hideKeyboard(customDialogList.getEditText())
customDialogList.getEditText().setOnEditorActionListener { _, actionId, _ ->
if (actionId == EditorInfo.IME_ACTION_SEARCH || actionId == EditorInfo.IME_ACTION_DONE || actionId == 0 || actionId == 5 || actionId == 6) {
if (actionId == EditorInfo.IME_ACTION_SEARCH || actionId == EditorInfo.IME_ACTION_DONE || actionId == 0 || actionId == 5) {
if (customDialogList.getValue().isNotEmpty()) {
parking(customDialogList.getValue())
}
@ -192,10 +193,11 @@ class DayOfSaleFragment(
}
fun parking(parking:String){
fun parking(parking: String) {
viewModel.parking(
parking = parking,
scanItem = itemScan)
scanItem = itemScan
)
customDialogList.dismiss()
}