test ubicador
This commit is contained in:
parent
0c65053b4f
commit
33529a052a
|
@ -0,0 +1,43 @@
|
|||
package es.verdnatura.presentation.view.feature.ubicador.adapter
|
||||
|
||||
import android.view.LayoutInflater
|
||||
import android.view.ViewGroup
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import es.verdnatura.databinding.ItemEscanerRowBinding
|
||||
import es.verdnatura.presentation.common.OnAutomaticItemClickListener
|
||||
import es.verdnatura.presentation.view.feature.ubicador.model.ItemEscanerVO
|
||||
|
||||
class AutomaticAdapterTEST (
|
||||
private val items: List<Long>,
|
||||
private val onAutomaticItemClickListener: OnAutomaticItemClickListener
|
||||
): RecyclerView.Adapter<AutomaticAdapterTEST.ItemHolder> () {
|
||||
|
||||
|
||||
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ItemHolder {
|
||||
return ItemHolder(
|
||||
ItemEscanerRowBinding.inflate(LayoutInflater.from(parent.context),parent,false)
|
||||
)
|
||||
}
|
||||
|
||||
override fun getItemCount() =items.size
|
||||
|
||||
override fun onBindViewHolder(holder: ItemHolder, position: Int) {
|
||||
holder.bind(items[position])
|
||||
holder.binding.root.setOnClickListener {
|
||||
onAutomaticItemClickListener.onAutomaticItemClickListener(position)
|
||||
}
|
||||
}
|
||||
|
||||
inner class ItemHolder(
|
||||
val binding: ItemEscanerRowBinding
|
||||
) : RecyclerView.ViewHolder(binding.root){
|
||||
private val res = binding.root.context.resources
|
||||
fun bind(item: Long) {
|
||||
binding.itemfkText.text = item.toString()
|
||||
|
||||
/* binding.apply {
|
||||
this.item = item
|
||||
}*/
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,156 @@
|
|||
package es.verdnatura.presentation.view.feature.ubicador.fragment
|
||||
|
||||
import android.view.KeyEvent
|
||||
import android.view.View
|
||||
import android.view.inputmethod.EditorInfo
|
||||
import androidx.lifecycle.Observer
|
||||
import androidx.recyclerview.widget.LinearLayoutManager
|
||||
import es.verdnatura.R
|
||||
import es.verdnatura.databinding.FragmentAutomaticAddItemBinding
|
||||
import es.verdnatura.presentation.base.BaseFragment
|
||||
import es.verdnatura.presentation.common.OnAutomaticItemClickListener
|
||||
import es.verdnatura.presentation.common.itemScanValue
|
||||
import es.verdnatura.presentation.view.feature.ubicador.adapter.AutomaticAdapter
|
||||
import es.verdnatura.presentation.view.feature.ubicador.adapter.AutomaticAdapterTEST
|
||||
import es.verdnatura.presentation.view.feature.ubicador.model.ItemEscanerVO
|
||||
import java.lang.Boolean.TRUE
|
||||
|
||||
|
||||
@Suppress("UNUSED_ANONYMOUS_PARAMETER")
|
||||
class AutomaticAddItemFragmentTEST(
|
||||
var shelvingFk: String = "",
|
||||
var titleAction: String? = null
|
||||
) : BaseFragment<FragmentAutomaticAddItemBinding, AutomaticAddItemViewModel>(
|
||||
AutomaticAddItemViewModel::class
|
||||
) {
|
||||
|
||||
private var adapter: AutomaticAdapterTEST? = null
|
||||
private var listItems: ArrayList<Long> = ArrayList()
|
||||
private var contador = 0
|
||||
|
||||
companion object {
|
||||
fun newInstance(entryPoint: String, titleAction: String) =
|
||||
AutomaticAddItemFragmentTEST(entryPoint, titleAction)
|
||||
}
|
||||
|
||||
override fun getLayoutId(): Int = R.layout.fragment_automatic_add_item
|
||||
|
||||
override fun init() {
|
||||
ma.hideBottomNavigation(View.GONE)
|
||||
binding.mainToolbar.toolbarTitle.text = titleAction
|
||||
setEvents()
|
||||
setViews()
|
||||
setToolBar()
|
||||
super.init()
|
||||
}
|
||||
|
||||
private fun setToolBar() {
|
||||
binding.mainToolbar.toolbarSubtitle.visibility = View.VISIBLE
|
||||
}
|
||||
|
||||
private fun setSubtitle() {
|
||||
binding.mainToolbar.toolbarSubtitle.text = getString(R.string.labels) + contador
|
||||
}
|
||||
|
||||
private fun setViews() {
|
||||
adapter = AutomaticAdapterTEST(listItems, object : OnAutomaticItemClickListener {
|
||||
override fun onAutomaticItemClickListener(position: Int) {
|
||||
contador -= 1
|
||||
setSubtitle()
|
||||
if (listItems.size > position) {
|
||||
listItems.removeAt(position)
|
||||
}
|
||||
|
||||
adapter!!.notifyDataSetChanged()
|
||||
}
|
||||
})
|
||||
binding.itemsRecyclerview.adapter = adapter
|
||||
binding.itemsRecyclerview.layoutManager =
|
||||
LinearLayoutManager(requireContext(), LinearLayoutManager.VERTICAL, false)
|
||||
}
|
||||
|
||||
private fun setEvents() {
|
||||
binding.editMatricula.requestFocus()
|
||||
binding.editMatricula.setOnEditorActionListener { v, actionId, event ->
|
||||
|
||||
if (actionId == 0 || actionId == 5 || actionId == 6 ) {
|
||||
var l1= System.currentTimeMillis()
|
||||
if (!binding.editMatricula.text.toString().isNullOrEmpty()) {
|
||||
try {
|
||||
listItems.add(
|
||||
0,
|
||||
itemScanValue(
|
||||
textScanned_filterDouble(binding.editMatricula.text.toString()),
|
||||
"buy",
|
||||
"more"
|
||||
).toString().toLong()
|
||||
|
||||
)
|
||||
|
||||
|
||||
contador += 1
|
||||
setSubtitle()
|
||||
adapter!!.notifyItemInserted(0)
|
||||
} catch (ex: Exception) {
|
||||
ma.messageWithSound(ex.message.toString(), true, true)
|
||||
}
|
||||
}
|
||||
var l2=System.currentTimeMillis()
|
||||
println("Lectura diferencia:${l2-l1}")
|
||||
binding.editMatricula.setText("")
|
||||
ma.hideKeyboard(binding.editMatricula)
|
||||
return@setOnEditorActionListener true
|
||||
}else{
|
||||
ma.messageWithSound("ACTION ID DIFERENTE", true, true)
|
||||
|
||||
}
|
||||
|
||||
return@setOnEditorActionListener false
|
||||
}
|
||||
|
||||
binding.buttonFinalizar.setOnClickListener {
|
||||
val listString: ArrayList<Long> = ArrayList()
|
||||
val listInt: ArrayList<Long> = ArrayList()
|
||||
listItems.forEach {
|
||||
listString.add(it)
|
||||
listInt.add(it)
|
||||
}
|
||||
binding.splashProgress.visibility = View.VISIBLE
|
||||
|
||||
if (binding.mainToolbar.toolbarTitle.text.equals(getString(R.string.titleChecker))) {
|
||||
|
||||
viewModel.itemShelving_addList(
|
||||
shelvingFk,
|
||||
"" + listInt + "",
|
||||
TRUE,
|
||||
getDataInt(WAREHOUSEFK)
|
||||
)
|
||||
} else {
|
||||
|
||||
viewModel.itemShelvingMake_multi(
|
||||
shelvingFk,
|
||||
listString,
|
||||
getDataInt(WAREHOUSEFK)
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
binding.mainToolbar.backButton.setOnClickListener {
|
||||
requireActivity().onBackPressed()
|
||||
}
|
||||
}
|
||||
|
||||
override fun observeViewModel() {
|
||||
with(viewModel) {
|
||||
response.observe(viewLifecycleOwner, Observer {
|
||||
binding.splashProgress.visibility = View.GONE
|
||||
if (it.isError) {
|
||||
ma.messageWithSound(it.errorMessage, true, false)
|
||||
} else {
|
||||
requireActivity().onBackPressed()
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue