feat reservas #refs 6861

This commit is contained in:
Sergio De la torre 2024-05-28 10:51:11 +02:00
parent 83635cfa2e
commit 59fe13f151
8 changed files with 200 additions and 216 deletions

View File

@ -53,6 +53,8 @@ object ConstAndValues {
const val ENTRYNUMBERIMAGES = "ENTRYNUMBERIMAGES" const val ENTRYNUMBERIMAGES = "ENTRYNUMBERIMAGES"
const val ENTRYTYPE = "ENTRYTYPE" const val ENTRYTYPE = "ENTRYTYPE"
const val BASEURLSALIX = "base_urlSalix" const val BASEURLSALIX = "base_urlSalix"
const val BASEURLLILIUM = "base_urlLilium"
const val BASE_URL_LILIUM = "https://lilium.verdnatura.es"
const val BASE_URL_SALIX = "https://salix.verdnatura.es" const val BASE_URL_SALIX = "https://salix.verdnatura.es"
const val ENTRY = "ENTRY" const val ENTRY = "ENTRY"
const val RENEWINTERVAL = "renewInterval" const val RENEWINTERVAL = "renewInterval"

View File

@ -95,6 +95,18 @@ class SaleAdapterNew(
itemParkingCode.setOnClickListener { itemParkingCode.setOnClickListener {
onPackingClick.onPackingClick(sale) onPackingClick.onPackingClick(sale)
} }
itemCode.setOnClickListener {
onPackingClick.onPackingClick(sale)
}
itemArticleLongInfo.setOnClickListener {
onPasillerosItemClickListener.onPasillerosItemClickListener(
PasillerosItemVO(
title = binding.root.context.getString(R.string.titleItemConsult)
), sale.itemFk.toString()
)
}
itemArticleItemFkNew.setOnClickListener { itemArticleItemFkNew.setOnClickListener {
onPasillerosItemClickListener.onPasillerosItemClickListener( onPasillerosItemClickListener.onPasillerosItemClickListener(
PasillerosItemVO( PasillerosItemVO(

View File

@ -369,10 +369,9 @@ class CollectionFragmentPickerNew(
} }
responseCollectionAddItem.observe(viewLifecycleOwner) { loadResponseAddItem.observe(viewLifecycleOwner) { event ->
if (!goBack) { event.getContentIfNotHandled().notNull {
updateScreen() updateScreen()
goBack = false
} }
} }
@ -1002,7 +1001,8 @@ class CollectionFragmentPickerNew(
viewModel.collectionAddWithReservation( viewModel.collectionAddWithReservation(
customDialogList.getValue().toInt(), customDialogList.getValue().toInt(),
customDialogList.getValueTwo().toInt(), customDialogList.getValueTwo().toInt(),
ticketSelected ticketSelected,
saleGroupFk = null
) )
customDialogList.dismiss() customDialogList.dismiss()

View File

@ -226,7 +226,6 @@ class CollectionFragmentPickerPreviousNew(
mpok!!.start() mpok!!.start()
return true return true
} }
} }
} catch (ex: Exception) { } catch (ex: Exception) {
@ -252,6 +251,7 @@ class CollectionFragmentPickerPreviousNew(
private fun setEvents() { private fun setEvents() {
binding.mainToolbar.backButton.setOnClickListener { binding.mainToolbar.backButton.setOnClickListener {
println("reserva fuera")
ma.onMyBackPressed() ma.onMyBackPressed()
} }
//ESCANER ========= //ESCANER =========
@ -321,25 +321,6 @@ class CollectionFragmentPickerPreviousNew(
with(viewModel) { with(viewModel) {
/* collectionTicketList.observe(viewLifecycleOwner, Observer {
if (!it.isError) {
if (it.tickets.isNotEmpty()) {
//collection = it
createCollectionList()
workerFkFromTicket = it.tickets.get(0).sales.get(0).workerFk
} else {
binding.mainToolbar.toolbarSubtitle.text = "0/0"
}
} else {
customDialog.setTitle(getString(R.string.error)).setDescription(it.errorMessage)
.setOkButton(getString(R.string.accept)) {
customDialog.dismiss()
if (activity != null) ma.onMyBackPressed()
}.show()
}
})*/
loadCollectionTicketSalix.observe(viewLifecycleOwner) { event -> loadCollectionTicketSalix.observe(viewLifecycleOwner) { event ->
event.getContentIfNotHandled().notNull { event.getContentIfNotHandled().notNull {
if (!it.isError) { if (!it.isError) {
@ -368,31 +349,6 @@ class CollectionFragmentPickerPreviousNew(
} }
} }
/* collectionTicketSalix.observe(viewLifecycleOwner, Observer {
if (!it.isError) {
if (it.tickets.isNotEmpty()) {
collection = it
createCollectionList()
workerFkFromTicket = if (it.tickets[0].sales.isNotEmpty()) {
it.tickets[0].sales[0].workerFk.toString()
} else {
""
}
} else {
binding.mainToolbar.toolbarSubtitle.text = "0/0"
}
} else {
customDialog.setTitle(getString(R.string.error)).setDescription(it.errorMessage)
.setOkButton(getString(R.string.accept)) {
customDialog.dismiss()
if (activity != null) ma.onMyBackPressed()
}.show()
}
})*/
responseExistsItemShelvingSale.observe(viewLifecycleOwner) { responseExistsItemShelvingSale.observe(viewLifecycleOwner) {
if (!goBack) { if (!goBack) {
if (it.exists) { if (it.exists) {
@ -416,11 +372,9 @@ class CollectionFragmentPickerPreviousNew(
} }
} }
loadResponseAddItem.observe(viewLifecycleOwner) { event ->
responseCollectionAddItem.observe(viewLifecycleOwner) { event.getContentIfNotHandled().notNull {
if (!goBack) {
updateScreen() updateScreen()
goBack = false
} }
} }
@ -446,19 +400,21 @@ class CollectionFragmentPickerPreviousNew(
responseConfirmReservedItemShelvingSale.observe(viewLifecycleOwner) { responseConfirmReservedItemShelvingSale.observe(viewLifecycleOwner) {
if (it.isError) { if (it.isError) {
ma.messageWithSound( ma.messageWithSound(
it.errorMessage, isError = true, true it.errorMessage, isError = true, true
) )
setTotalLines()
} }
if (!it.isError) { if (!it.isError) {
myGroupList[positionConfirm].isPicked = 1 myGroupList[positionConfirm].isPicked = 1
saleAdapter!!.notifyDataSetChanged() saleAdapter!!.notifyItemChanged(positionConfirm)
lm!!.scrollToPositionWithOffset(storedBackPosition+1, 0) lm!!.scrollToPositionWithOffset(storedBackPosition + 1, 0)
/* viewModel.collectionTicketGetSalix(
collection.collectionFk, print = false setTotalLines()
)*/ /*viewModel.collectionTicketGetSalix(
collection.collectionFk, print = false
)*/
} }
} }
@ -498,7 +454,7 @@ class CollectionFragmentPickerPreviousNew(
lm!!.scrollToPositionWithOffset(positionMarkPrevia, 0) lm!!.scrollToPositionWithOffset(positionMarkPrevia, 0)
ma.messageWithSound( ma.messageWithSound(
"Previa recogida", it.isError, !it.isError getString(R.string.previousCollected), it.isError, !it.isError
) )
} }
@ -540,7 +496,6 @@ class CollectionFragmentPickerPreviousNew(
} }
} }
private fun createCollectionList() { private fun createCollectionList() {
state = 0 state = 0
binding.mainToolbar.toolbarTitle.text = collection.collectionFk.toString() binding.mainToolbar.toolbarTitle.text = collection.collectionFk.toString()
@ -554,7 +509,7 @@ class CollectionFragmentPickerPreviousNew(
val myPickingTo = mobileApplication.dataStoreApp.readDataStoreKey<Int>("PICKING_TO") val myPickingTo = mobileApplication.dataStoreApp.readDataStoreKey<Int>("PICKING_TO")
collection.tickets.forEach { ticket -> collection.tickets.forEach { ticket ->
if (!observations.isNullOrEmpty()) observations = if (observations.isNotEmpty()) observations =
observations + " " + ticket.observations observations + " " + ticket.observations
ticket.sales.forEach { sale -> ticket.sales.forEach { sale ->
@ -573,7 +528,7 @@ class CollectionFragmentPickerPreviousNew(
//quitar comentarios FALTA AGRUPAR LAS PREVIAS //quitar comentarios FALTA AGRUPAR LAS PREVIAS
myGroupList = myGroupList =
groupSaleGroup(salesList).sortedWith(compareBy<Sale> { it.pickingOrder }.thenBy { it.itemFk }) salesList.sortedWith(compareBy<Sale> { it.pickingOrder }.thenBy { it.itemFk })
// sales //sales porque no se ggrupan las previas hay que cambiar los estados. // sales //sales porque no se ggrupan las previas hay que cambiar los estados.
saleAdapter = SaleAdapterNew( saleAdapter = SaleAdapterNew(
@ -598,49 +553,50 @@ class CollectionFragmentPickerPreviousNew(
} }
}, },
object : OnSaleClickSaleListener { object : OnSaleClickSaleListener {
override fun onSaleClick(mysale: Sale) { override fun onSaleClick(sale: Sale) {
var position = myGroupList.indexOfFirst { it.itemShelvingSaleFk == mysale.itemShelvingSaleFk } val position =
if (position>-1){ myGroupList.indexOfFirst { it.itemShelvingSaleFk == sale.itemShelvingSaleFk }
if (mysale.isPicked ==1){ if (position > -1) {
if (sale.isPicked == 1) {
unMarkLine(position, myGroupList[position]) unMarkLine(position, myGroupList[position])
}else{ } else {
showScanner(position, mysale) showScanner(position, sale)
} }
} }
/* myGroupList.forEachIndexed { index, sale -> /* myGroupList.forEachIndexed { index, sale ->
//sales.forEachIndexed { index, sale -> //sales.forEachIndexed { index, sale ->
// println("Sacador la sale es ${sale.saleFk}") // println("Sacador la sale es ${sale.saleFk}")
// println("Sacador la sale picked es ${sale.isPicked}") // println("Sacador la sale picked es ${sale.isPicked}")
// println("Sacador la sale group es ${sale.saleGroupFk}") // println("Sacador la sale group es ${sale.saleGroupFk}")
// println("Sacador la sale reserved es ${sale.reservedQuantity}") // println("Sacador la sale reserved es ${sale.reservedQuantity}")
if (sale.itemShelvingSaleFk == 0) { if (sale.itemShelvingSaleFk == 0) {
println("Sacador Que hacemos en este caso ?? ") println("Sacador Que hacemos en este caso ?? ")
} else { } else {
if (sale.itemShelvingSaleFk == mysale.itemShelvingSaleFk) { if (sale.itemShelvingSaleFk == mysale.itemShelvingSaleFk) {
println("Sacador **** itemShelvingSale es ${sale.itemShelvingSaleFk}") println("Sacador **** itemShelvingSale es ${sale.itemShelvingSaleFk}")
println("Sacador **** isPicked es ${sale.isPicked}") println("Sacador **** isPicked es ${sale.isPicked}")
println("Sacador **** saleGroup es ${sale.saleGroupFk}") println("Sacador **** saleGroup es ${sale.saleGroupFk}")
//println("Sacador la sale es ${sale.saleFk}") //println("Sacador la sale es ${sale.saleFk}")
//println("Sacador la sale picked es ${sale.isPicked}") //println("Sacador la sale picked es ${sale.isPicked}")
//println("Sacador la sale group es ${sale.saleGroupFk}") //println("Sacador la sale group es ${sale.saleGroupFk}")
//println("Sacador la sale reserved es ${sale.reservedQuantity}") //println("Sacador la sale reserved es ${sale.reservedQuantity}")
//println("Sacador la sale dentro es ${sale.saleFk}") //println("Sacador la sale dentro es ${sale.saleFk}")
if (sale.isPicked != 1 && sale.saleGroupFk == null) { if (sale.isPicked != 1 && sale.saleGroupFk == null) {
println("Sacador **** showScanner") println("Sacador **** showScanner")
showScanner(index, sale) showScanner(index, sale)
} else { } else {
println("Sacador **** desmarcar") println("Sacador **** desmarcar")
unMarkLine(index, myGroupList[index]) unMarkLine(index, myGroupList[index])
} }
} }
} }
}*/ }*/
} }
}, },
@ -864,7 +820,7 @@ class CollectionFragmentPickerPreviousNew(
false false
} }
} catch (e: Exception) { } catch (e: Exception) {
ma.messageWithSound(e.message.toString(), isError =true, true) ma.messageWithSound(e.message.toString(), isError = true, true)
} }
} }
@ -1021,7 +977,7 @@ class CollectionFragmentPickerPreviousNew(
customDialogList.getEditText().setOnEditorActionListener { v, actionId, event -> customDialogList.getEditText().setOnEditorActionListener { v, actionId, event ->
if (actionId == EditorInfo.IME_ACTION_SEARCH || actionId == EditorInfo.IME_ACTION_DONE || actionId == 0 || actionId == 5) { if (actionId == EditorInfo.IME_ACTION_SEARCH || actionId == EditorInfo.IME_ACTION_DONE || actionId == 0 || actionId == 5) {
if (!customDialogList.getValue().isNullOrEmpty()) { if (customDialogList.getValue().isNotEmpty()) {
try { try {
customDialogList.setValue( customDialogList.setValue(
itemScanValue( itemScanValue(
@ -1070,18 +1026,23 @@ class CollectionFragmentPickerPreviousNew(
private fun customDialogAddItem() { private fun customDialogAddItem() {
if (!customDialogList.getValueTwo().isNullOrEmpty()) { if (customDialogList.getValueTwo().isNotEmpty()) {
if (ticketSelected == 0) { if (ticketSelected == 0) {
getString(R.string.Seleccionaunticketdelaista).toast(requireContext()) getString(R.string.Seleccionaunticketdelaista).toast(requireContext())
} else if (customDialogList.getValue().isNullOrEmpty() || customDialogList.getValueTwo() } else if (customDialogList.getValue().isEmpty() || customDialogList.getValueTwo()
.isNullOrEmpty() .isEmpty()
) { ) {
getString(R.string.Todosloscampossonobligatorios).toast(requireContext()) getString(R.string.Todosloscampossonobligatorios).toast(requireContext())
} else { } else {
val saleGroupSelected =
collection.tickets.find { it.ticketFk == ticketSelected }?.sales?.get(0)?.saleGroupFk
?: 0
viewModel.collectionAddWithReservation( viewModel.collectionAddWithReservation(
customDialogList.getValue().toInt(), customDialogList.getValue().toInt(),
customDialogList.getValueTwo().toInt(), customDialogList.getValueTwo().toInt(),
ticketSelected ticketSelected,
saleGroupFk = saleGroupSelected
) )
customDialogList.dismiss() customDialogList.dismiss()
@ -1095,7 +1056,7 @@ class CollectionFragmentPickerPreviousNew(
} }
private fun toastDisponibility(item: ItemVO) { private fun toastDisponibility(item: ItemVO) {
if (item.available.isNullOrEmpty()) { if (item.available.isEmpty()) {
item.available = "0" item.available = "0"
} }
customDialog.setTitle(getString(R.string.itemPoints) + item.id) customDialog.setTitle(getString(R.string.itemPoints) + item.id)
@ -1202,64 +1163,6 @@ class CollectionFragmentPickerPreviousNew(
} }
private fun groupSaleGroup(salesList: ArrayList<Sale>): MutableList<Sale> {/* var myMap = salesList.groupBy { it.saleGroupFk }
var myList: MutableList<Sale> = mutableListOf()
for ((key, value) in myMap.entries) {
if (key == null) { // si no tiene saleGroup se añaden las líneas
for (s in value) {
myList.add(s)
}
} else { // si tiene saleGroup se crea el padre con el tamaño e indicando que es padre, como ejemplo se toma el primer elemento
*//*crea padre*//*
if (value.size > 1) {
var mySale = //= value[0]
Sale(
level = value[0].level,
isPicked = value[0].isPicked,
parkingCode = "Líneas : ${value.size}",
pickingOrder = value[0].pickingOrder,
workerFk = value[0].workerFk,
originalQuantity = value[0].originalQuantity,
saleQuantity = 0,
saleFk = value[0].saleFk,
saleGroupFk = value[0].saleGroupFk,
semaphore = value[0].semaphore,
ticketFk = value[0].ticketFk,
itemFk = value[0].saleGroupFk!!,
isAdded = value[0].isAdded,
hasMistake = value[0].hasMistake,
origin = value[0].origin,
size = value[0].size,
itemShelvingSaleFk = value[0].itemShelvingSaleFk,
longName = value[0].parkingCode ?: ""
)
//prime elemento//hay que hacer una copia si no queda la referencia
mySale.totalSales = value.size //total líneas
mySale.isParent = true
value as MutableList<Sale>
mySale.sonSales =
value.sortedWith(compareBy { it.isPicked }) as MutableList<Sale>*//*mySale.line1 = "Previa :${mySale.saleGroupFk}"
mySale.line2 = "Líneas: ${value.size}"
mySale.line3 = value[0].code*//*
// mySale.placements = listOf(PlacementVO(shelving = value[0].code!!))
myList.add(mySale)
} else {
for (s in value) {
myList.add(s)
}
}
}
}*/
return salesList
}
} }

View File

@ -194,6 +194,8 @@ class CollectionViewModel(val context: Context) : BaseViewModel(context) {
val loadResponseDel: LiveData<Event<ResponseItemVO>> = _responseDel.map { Event(it) } val loadResponseDel: LiveData<Event<ResponseItemVO>> = _responseDel.map { Event(it) }
val loadResponseAddItem: LiveData<Event<ResponseItemVO>> = _responseCollectionAddItem.map { Event(it) }
val loadResponseSaleTrackingMark: LiveData<Event<ResponseItemVO>> = val loadResponseSaleTrackingMark: LiveData<Event<ResponseItemVO>> =
_responseSaleTracking_mark.map { Event(it) } _responseSaleTracking_mark.map { Event(it) }

View File

@ -35,6 +35,8 @@ class SectorCollectionReserveFragment(
private var pasillerosItemClickListener: OnPasillerosItemClickListener? = null private var pasillerosItemClickListener: OnPasillerosItemClickListener? = null
private var listSalesGroup: ArrayList<BarcodeVO> = ArrayList() private var listSalesGroup: ArrayList<BarcodeVO> = ArrayList()
private var listSaleGroupAdapter: BarcodeAdapter? = null private var listSaleGroupAdapter: BarcodeAdapter? = null
private var onBack = false
private var isReserved = false
val listIcons: ArrayList<ImageView> = ArrayList() val listIcons: ArrayList<ImageView> = ArrayList()
@ -50,6 +52,11 @@ class SectorCollectionReserveFragment(
if (context is OnCollectionTicketSelectedListener) onCollectionSelectedListener = context if (context is OnCollectionTicketSelectedListener) onCollectionSelectedListener = context
} }
override fun onPause() {
onBack = true
super.onPause()
}
override fun init() { override fun init() {
customDialogList = CustomDialogList(requireContext()) customDialogList = CustomDialogList(requireContext())
@ -57,15 +64,28 @@ class SectorCollectionReserveFragment(
binding.mainToolbar.toolbarTitle.text = title binding.mainToolbar.toolbarTitle.text = title
setEvents() setEvents()
setToolBar() setToolBar()
checkParkingsToPicker()
println("reserve collec $collectionFk") println("reserve collec $collectionFk")
super.init() super.init()
if (!onBack) {
checkParkingsToPicker()
} else {
if (onBack) {
requireActivity().supportFragmentManager.popBackStack()
} else {
ma.onPasillerosItemClickListener(
PasillerosItemVO(title = "titlePrePickerTest"),
entryPoint = collectionFk.toString()
)
}
}
} }
private fun checkParkingsToPicker() { private fun checkParkingsToPicker() {
//Habrá que ver si tiene tickets ya asociados //Habrá que ver si tiene tickets ya asociados
binding.mainToolbar.toolbarTitle.text = collectionFk.toString() binding.mainToolbar.toolbarTitle.text = collectionFk.toString()
showDialogLinkTickets() viewModel.hasSalesReserved(collectionFk)
//showDialogLinkTickets()
} }
@ -81,8 +101,8 @@ class SectorCollectionReserveFragment(
iconParkingFrom.tooltipText = getString(R.string.editParking) iconParkingFrom.tooltipText = getString(R.string.editParking)
iconReset.tooltipText = getString(R.string.resetParking) iconReset.tooltipText = getString(R.string.resetParking)
listIcons.add(iconReset) //listIcons.add(iconReset)
listIcons.add(iconParkingFrom) // listIcons.add(iconParkingFrom)
binding.mainToolbar.toolbarIcons.adapter = binding.mainToolbar.toolbarIcons.adapter =
ToolBarAdapterTooltip(listIcons, object : OnOptionsSelectedListener { ToolBarAdapterTooltip(listIcons, object : OnOptionsSelectedListener {
@ -108,7 +128,9 @@ class SectorCollectionReserveFragment(
} }
private fun showDialogLinkTickets() { private fun showDialogLinkTickets() {
customDialogList.setOnDismissListener {
if (!isReserved) ma.onMyBackPressed()
}
customDialogList.setTitle( customDialogList.setTitle(
getString(R.string.tickets) getString(R.string.tickets)
) )
@ -132,7 +154,9 @@ class SectorCollectionReserveFragment(
ma.hideKeyboard(customDialogList.getEditText()) ma.hideKeyboard(customDialogList.getEditText())
listSalesGroup = ArrayList() listSalesGroup = ArrayList()
customDialogList.dismiss() customDialogList.dismiss()
ma.onMyBackPressed()
// gotoPicker()
/*ma.onMyBackPressed()*/
}.setValue("").show() }.setValue("").show()
customDialogList.getEditText().requestFocus() customDialogList.getEditText().requestFocus()
@ -146,8 +170,7 @@ class SectorCollectionReserveFragment(
if (listSalesGroup.firstOrNull { it.code == customDialogList.getValue() } == null) { if (listSalesGroup.firstOrNull { it.code == customDialogList.getValue() } == null) {
listSalesGroup.add(0, BarcodeVO(code = customDialogList.getValue())) listSalesGroup.add(0, BarcodeVO(code = customDialogList.getValue()))
viewModel.sectorCollectionSaleGroupAdd( viewModel.sectorCollectionSaleGroupAdd(
customDialogList.getValue().toInt(), customDialogList.getValue().toInt(), collectionFk
collectionFk
) )
} else { } else {
throw Exception(getString(R.string.ticketScanned)) throw Exception(getString(R.string.ticketScanned))
@ -189,8 +212,8 @@ class SectorCollectionReserveFragment(
@SuppressLint("SetTextI18n") @SuppressLint("SetTextI18n")
private fun setEvents() { private fun setEvents() {
binding.scanInput.visibility = View.VISIBLE //binding.scanInput.visibility = View.VISIBLE
binding.scanInput.setHint(getString(R.string.scanCollection)) //binding.scanInput.setHint(getString(R.string.scanCollection))
binding.mainToolbar.backButton.setOnClickListener { binding.mainToolbar.backButton.setOnClickListener {
ma.onMyBackPressed() ma.onMyBackPressed()
} }
@ -234,7 +257,6 @@ class SectorCollectionReserveFragment(
loadResponseSaleGropAdd.observe(viewLifecycleOwner) { event -> loadResponseSaleGropAdd.observe(viewLifecycleOwner) { event ->
event.getContentIfNotHandled().notNull { event.getContentIfNotHandled().notNull {
if (it.isError) { if (it.isError) {
listSalesGroup.removeAt(0) listSalesGroup.removeAt(0)
ma.messageWithSound( ma.messageWithSound(
@ -246,40 +268,37 @@ class SectorCollectionReserveFragment(
} else { } else {
ma.messageWithSound( ma.messageWithSound(
message = "", message = "", isError = false, isPlayed = true, isToasted = false
isError = false,
isPlayed = true,
isToasted = false
) )
} }
} }
} }
loadResponseHasSaleReserved.observe(viewLifecycleOwner) { event ->
event.getContentIfNotHandled().notNull {
if (it == "1") {
isReserved = true
gotoPicker()
} else {
showDialogLinkTickets()
}
}
}
loadResponseReserveSectorCollection.observe(viewLifecycleOwner) { event -> loadResponseReserveSectorCollection.observe(viewLifecycleOwner) { event ->
event.getContentIfNotHandled().notNull { event.getContentIfNotHandled().notNull {
if (it.isError) { if (it.isError) {
ma.messageWithSound( ma.messageWithSound(
it.errorMessage, it.errorMessage, isError = true, true, isToasted = true
isError = true,
true,
isToasted = true
) )
} else { } else {
ma.messageWithSound( ma.messageWithSound(
message = "", message = "", isError = false, isPlayed = true, isToasted = false
isError = false,
isPlayed = true,
isToasted = false
) )
customDialogList.dismiss() //navigateToCollectionList(collectionFk = collectionFk)
ma.onPasillerosItemClickListener( gotoPicker()
PasillerosItemVO(title = "PREITEMPICKERTEST"),
entryPoint = collectionFk.toString()
)
//anar a SacadorFragmentNew //anar a SacadorFragmentNew
} }
@ -289,4 +308,14 @@ class SectorCollectionReserveFragment(
} }
} }
private fun gotoPicker() {
if (::customDialogList.isInitialized) customDialogList.dismiss()
ma.onPasillerosItemClickListener(
PasillerosItemVO(title = "PREITEMPICKERTEST"), entryPoint = collectionFk.toString()
)
onBack = true
}
} }

View File

@ -2,12 +2,10 @@ package es.verdnatura.presentation.view.feature.sacador.fragment
import android.content.Context import android.content.Context
import android.graphics.drawable.Drawable import android.graphics.drawable.Drawable
import android.os.Build
import android.text.InputType import android.text.InputType
import android.view.View import android.view.View
import android.view.inputmethod.EditorInfo import android.view.inputmethod.EditorInfo
import android.widget.ImageView import android.widget.ImageView
import androidx.lifecycle.Observer
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import es.verdnatura.R import es.verdnatura.R
import es.verdnatura.databinding.FragmentSacadorBinding import es.verdnatura.databinding.FragmentSacadorBinding
@ -70,7 +68,7 @@ class SacadorFragmentNew(
} }
"PREITEMPICKERTEST" -> { "PREITEMPICKERTEST" -> {
viewModel.sectorCollectionGet() viewModel.sectorCollectionPartial()
} }
else -> { else -> {
@ -100,13 +98,10 @@ class SacadorFragmentNew(
val iconPrint = ImageView(context) val iconPrint = ImageView(context)
iconPrint.setImageResource(R.drawable.ic_print_black_24dp) iconPrint.setImageResource(R.drawable.ic_print_black_24dp)
iconAdd.tooltipText = getTooltip(R.drawable.ic_add_black_24dp)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { iconVehicleIn.tooltipText = getTooltip(R.drawable.car)
iconAdd.tooltipText = getTooltip(R.drawable.ic_add_black_24dp) iconAdd.tooltipText = getTooltip(R.drawable.ic_add_black_24dp)
iconVehicleIn.tooltipText = getTooltip(R.drawable.car) iconPrint.tooltipText = getTooltip(R.drawable.ic_print_black_24dp)
iconAdd.tooltipText = getTooltip(R.drawable.ic_add_black_24dp)
iconPrint.tooltipText = getTooltip(R.drawable.ic_print_black_24dp)
}
if (type == "PREPARED") { if (type == "PREPARED") {
listIcons.add(iconVehicleIn) listIcons.add(iconVehicleIn)
@ -164,7 +159,7 @@ class SacadorFragmentNew(
ma.hideKeyboard(customDialogInput.getEditText()) ma.hideKeyboard(customDialogInput.getEditText())
customDialogInput.getEditText().setOnEditorActionListener { _, actionId, _ -> customDialogInput.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) {
print() print()
@ -210,34 +205,34 @@ class SacadorFragmentNew(
with(viewModel) { with(viewModel) {
collectionListLocal.observe(viewLifecycleOwner, Observer { collectionListLocal.observe(viewLifecycleOwner) {
//if (!goBack2) //if (!goBack2)
createCollectionList(it.list) createCollectionList(it.list)
goBack2 = false goBack2 = false
}) }
collectionList.observe(viewLifecycleOwner, Observer { it -> collectionList.observe(viewLifecycleOwner) { it ->
//if (!goBack2) //if (!goBack2)
var myCollectionsList = mutableListOf<CollectionTicket>() val myCollectionsList = mutableListOf<CollectionTicket>()
it.list.forEach { it.list.forEach {
myCollectionsList.add(CollectionTicket(it.collectionFk)) myCollectionsList.add(CollectionTicket(it.collectionFk))
} }
createCollectionList(myCollectionsList) createCollectionList(myCollectionsList)
goBack2 = false goBack2 = false
}) }
response.observe(viewLifecycleOwner, Observer { response.observe(viewLifecycleOwner) {
if (it.isError) { if (it.isError) {
ma.messageWithSound(it.errorMessage, true, false) ma.messageWithSound(it.errorMessage, isError = true, isPlayed = false)
} else { } else {
if (!it.response.isNullOrBlank()) { if (it.response.isNotBlank()) {
addCollectionToList(it.response.toInt()) addCollectionToList(it.response.toInt())
}else{ } else {
when (type) { when (type) {
"PREPARED" -> { "PREPARED" -> {
viewModel.collectionGetSalixLocal() viewModel.collectionGetSalixLocal()
@ -249,7 +244,8 @@ class SacadorFragmentNew(
"PREITEMPICKERTEST" -> { "PREITEMPICKERTEST" -> {
println("SacadorFragmentNew sectorCollectionGET") println("SacadorFragmentNew sectorCollectionGET")
viewModel.sectorCollectionGet() // viewModel.sectorCollectionGet()
viewModel.sectorCollectionPartial()
} }
else -> { else -> {
@ -260,7 +256,7 @@ class SacadorFragmentNew(
} }
goBack = false goBack = false
//callBack(type) //callBack(type)
}) }
} }
} }
@ -293,8 +289,6 @@ class SacadorFragmentNew(
created = getString(R.string.newCreated) created = getString(R.string.newCreated)
) )
) )
adapter?.notifyDataSetChanged()
} else { } else {
customDialog.setTitle(getString(R.string.info)) customDialog.setTitle(getString(R.string.info))
.setDescription(getString(R.string.collectionPending) + collection) .setDescription(getString(R.string.collectionPending) + collection)

View File

@ -279,6 +279,48 @@ class SacadorViewModel(val context: Context) : BaseViewModel(context) {
}) })
} }
fun sectorCollectionPartial() {
salix.sectorCollectionGetPartial().enqueue(object :
SalixCallback<List<CollectionVO>>(context) {
override fun onSuccess(response: Response<List<CollectionVO>>) {
if (response.body() != null) {
_collectionList.value =
response.body()?.let { CollectionListVO(it.toDateFormat(context)) }
} else {
val listError: ArrayList<CollectionVO> = ArrayList()
listError.add(
CollectionVO(
0,
isError = true,
errorMessage = getMessageFromAllResponse(
nameofFunction(this),
response.message()
)
)
)
_collectionList.value = CollectionListVO(listError)
}
}
override fun onError(t: Throwable) {
val listError: ArrayList<CollectionVO> = ArrayList()
listError.add(
CollectionVO(
0,
isError = true,
errorMessage = getMessageFromAllResponse(
nameofFunction(this),
t.message!!
)
)
)
_collectionList.value = CollectionListVO(listError)
}
})
}
fun collectionGetSalix() { fun collectionGetSalix() {
salix.getCollectionSalix().enqueue(object : salix.getCollectionSalix().enqueue(object :
SalixCallback<List<CollectionVO>>(context) { SalixCallback<List<CollectionVO>>(context) {