feat: refs#8676 advanceTicketInChecker
This commit is contained in:
parent
6af6f92192
commit
36f8a43f34
|
@ -20,6 +20,7 @@ import es.verdnatura.databinding.FragmentCollectionBinding
|
||||||
import es.verdnatura.domain.ConstAndValues
|
import es.verdnatura.domain.ConstAndValues
|
||||||
import es.verdnatura.domain.ConstAndValues.CONTROLADOR
|
import es.verdnatura.domain.ConstAndValues.CONTROLADOR
|
||||||
import es.verdnatura.domain.ConstAndValues.PRINTERNAME
|
import es.verdnatura.domain.ConstAndValues.PRINTERNAME
|
||||||
|
import es.verdnatura.domain.ConstAndValues.SECTORFK
|
||||||
import es.verdnatura.domain.notNull
|
import es.verdnatura.domain.notNull
|
||||||
import es.verdnatura.domain.showToastCenterWithBackground
|
import es.verdnatura.domain.showToastCenterWithBackground
|
||||||
import es.verdnatura.domain.toast
|
import es.verdnatura.domain.toast
|
||||||
|
@ -54,7 +55,6 @@ import es.verdnatura.presentation.view.feature.sacador.model.PlacementVO
|
||||||
import es.verdnatura.presentation.view.feature.sacador.model.SaleVO
|
import es.verdnatura.presentation.view.feature.sacador.model.SaleVO
|
||||||
import org.json.JSONObject
|
import org.json.JSONObject
|
||||||
|
|
||||||
// FALTA TESTEAR REVISORES DESPUÉS DE CAMPAÑA Y VER HOLDPOSITION
|
|
||||||
@Suppress("UNUSED_ANONYMOUS_PARAMETER")
|
@Suppress("UNUSED_ANONYMOUS_PARAMETER")
|
||||||
class CollectionFragmentChecker(
|
class CollectionFragmentChecker(
|
||||||
var collection: CollectionVO = CollectionVO(0), var type: String = CONTROLADOR
|
var collection: CollectionVO = CollectionVO(0), var type: String = CONTROLADOR
|
||||||
|
@ -124,6 +124,7 @@ class CollectionFragmentChecker(
|
||||||
if (collection.tickets.isNotEmpty()) {
|
if (collection.tickets.isNotEmpty()) {
|
||||||
createCollectionList()
|
createCollectionList()
|
||||||
}
|
}
|
||||||
|
|
||||||
super.init()
|
super.init()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -138,7 +139,7 @@ class CollectionFragmentChecker(
|
||||||
binding.mainToolbar.toolbarSubtitle.visibility = VISIBLE
|
binding.mainToolbar.toolbarSubtitle.visibility = VISIBLE
|
||||||
binding.mainToolbar.toolbarIcons.visibility = VISIBLE
|
binding.mainToolbar.toolbarIcons.visibility = VISIBLE
|
||||||
binding.mainToolbar.backButton.visibility = VISIBLE
|
binding.mainToolbar.backButton.visibility = VISIBLE
|
||||||
binding.previaButton.visibility = INVISIBLE
|
|
||||||
binding.mainToolbar.toolbarTitle.text =
|
binding.mainToolbar.toolbarTitle.text =
|
||||||
if (collection.collectionFk == 0) getString(R.string.review) else collection.collectionFk.toString()
|
if (collection.collectionFk == 0) getString(R.string.review) else collection.collectionFk.toString()
|
||||||
|
|
||||||
|
@ -167,10 +168,11 @@ class CollectionFragmentChecker(
|
||||||
listIcons.add(iconWorker)
|
listIcons.add(iconWorker)
|
||||||
listIcons.add(iconAdd)
|
listIcons.add(iconAdd)
|
||||||
binding.previaButton.setOnClickListener {
|
binding.previaButton.setOnClickListener {
|
||||||
showPrevia()
|
showDialog(isAdvanceTicket = false)
|
||||||
|
}
|
||||||
|
binding.ticketAdvanceButton.setOnClickListener {
|
||||||
|
showDialog(isAdvanceTicket = true)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
binding.mainToolbar.toolbarIcons.adapter =
|
binding.mainToolbar.toolbarIcons.adapter =
|
||||||
ToolBarAdapterTooltip(listIcons, object : OnOptionsSelectedListener {
|
ToolBarAdapterTooltip(listIcons, object : OnOptionsSelectedListener {
|
||||||
override fun onOptionsItemSelected(item: Drawable) {
|
override fun onOptionsItemSelected(item: Drawable) {
|
||||||
|
@ -210,11 +212,20 @@ class CollectionFragmentChecker(
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun showPrevia() {
|
private fun showDialog(isAdvanceTicket: Boolean) {
|
||||||
customDialogList.getEditText().setRawInputType(TYPE_CLASS_NUMBER)
|
customDialogList.getEditText().setRawInputType(TYPE_CLASS_NUMBER)
|
||||||
customDialogList.setTitle(getString(R.string.scanPreviousTicket))
|
customDialogList.setTitle(
|
||||||
|
if (isAdvanceTicket) getString(R.string.ticketAdvance) else getString(
|
||||||
|
R.string.scanPreviousTicket
|
||||||
|
)
|
||||||
|
)
|
||||||
.setOkButton(getString(R.string.end)) {
|
.setOkButton(getString(R.string.end)) {
|
||||||
takeActionPrevia(customDialogList)
|
if (customDialogList.getValue().isNotEmpty()) {
|
||||||
|
takeAction(customDialogList, isAdvanceTicket)
|
||||||
|
} else {
|
||||||
|
ma.hideKeyboard(customDialogList.getEditText())
|
||||||
|
customDialogList.dismiss()
|
||||||
|
}
|
||||||
|
|
||||||
}.setValue("").show()
|
}.setValue("").show()
|
||||||
|
|
||||||
|
@ -226,7 +237,8 @@ class CollectionFragmentChecker(
|
||||||
if (customDialogList.getValue().isNotEmpty()) {
|
if (customDialogList.getValue().isNotEmpty()) {
|
||||||
isScanned =
|
isScanned =
|
||||||
event != null && event.action == ACTION_DOWN && event.keyCode == KeyEvent.KEYCODE_ENTER
|
event != null && event.action == ACTION_DOWN && event.keyCode == KeyEvent.KEYCODE_ENTER
|
||||||
takeActionPrevia(customDialogList)
|
takeAction(customDialogList, isAdvanceTicket)
|
||||||
|
ma.hideKeyboard(customDialogList.getEditText())
|
||||||
}
|
}
|
||||||
customDialogList.setValue("")
|
customDialogList.setValue("")
|
||||||
ma.hideKeyboard(customDialogList.getEditText())
|
ma.hideKeyboard(customDialogList.getEditText())
|
||||||
|
@ -237,14 +249,18 @@ class CollectionFragmentChecker(
|
||||||
hideKeyboard()
|
hideKeyboard()
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun takeActionPrevia(customDialogList: CustomDialogList) {
|
private fun takeAction(customDialogList: CustomDialogList, isAdvanceTicket: Boolean) {
|
||||||
ma.hideKeyboard(customDialogList.getEditText())
|
ma.hideKeyboard(customDialogList.getEditText())
|
||||||
try {
|
try {
|
||||||
val saleGroupScanned = itemScanValue(
|
val itemScanned = itemScanValue(
|
||||||
customDialogList.getValue(), arrayOf("saleGroup"), "id"
|
customDialogList.getValue(), if (isAdvanceTicket) {
|
||||||
|
arrayOf("ticket")
|
||||||
|
} else arrayOf("saleGroup"), "id"
|
||||||
).toString()
|
).toString()
|
||||||
|
|
||||||
markPrevia(saleGroupScanned)
|
if (isAdvanceTicket) {
|
||||||
|
viewModel.ticketAdvance(itemScanned.toInt(), mobileApplication.userId!!)
|
||||||
|
} else markPrevia(itemScanned)
|
||||||
customDialogList.dismiss()
|
customDialogList.dismiss()
|
||||||
} catch (ex: Exception) {
|
} catch (ex: Exception) {
|
||||||
ma.messageWithSound(
|
ma.messageWithSound(
|
||||||
|
@ -360,6 +376,7 @@ class CollectionFragmentChecker(
|
||||||
if (it.tickets.isNotEmpty()) {
|
if (it.tickets.isNotEmpty()) {
|
||||||
collection = it
|
collection = it
|
||||||
binding.previaButton.visibility = VISIBLE
|
binding.previaButton.visibility = VISIBLE
|
||||||
|
binding.ticketAdvanceButton.visibility = VISIBLE
|
||||||
binding.fragmentSacadorCollections.visibility = VISIBLE
|
binding.fragmentSacadorCollections.visibility = VISIBLE
|
||||||
createCollectionList()
|
createCollectionList()
|
||||||
} else {
|
} else {
|
||||||
|
@ -368,6 +385,7 @@ class CollectionFragmentChecker(
|
||||||
getString(R.string.summaryCount, 0, 0)
|
getString(R.string.summaryCount, 0, 0)
|
||||||
binding.fragmentSacadorCollections.visibility = INVISIBLE
|
binding.fragmentSacadorCollections.visibility = INVISIBLE
|
||||||
binding.previaButton.visibility = INVISIBLE
|
binding.previaButton.visibility = INVISIBLE
|
||||||
|
binding.ticketAdvanceButton.visibility = INVISIBLE
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
customDialog.setTitle(getString(R.string.error))
|
customDialog.setTitle(getString(R.string.error))
|
||||||
|
@ -555,17 +573,48 @@ class CollectionFragmentChecker(
|
||||||
observations.takeIf { it.isNotBlank() }?.plus(" ${ticket.observations}") ?: ""
|
observations.takeIf { it.isNotBlank() }?.plus(" ${ticket.observations}") ?: ""
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!buttonPushedGetCollection) {
|
val isOnReservationMode = mobileApplication.dataStoreApp.readDataStoreKey<Boolean>(
|
||||||
sales = salesList.sortedWith(compareBy { it.picked })
|
ConstAndValues.RESERVATIONMODE
|
||||||
myGroupList = groupSaleGroup(salesList).sortedWith(compareBy { it.picked })
|
) || (mobileApplication.dataStoreApp.readDataStoreKey<Boolean?>(
|
||||||
|
ConstAndValues.SECTORISONRESERVATIONMODE
|
||||||
|
) == true)
|
||||||
|
|
||||||
|
sales = if (isOnReservationMode) {
|
||||||
|
salesList.filter {
|
||||||
|
it.sectorFk == mobileApplication.dataStoreApp.readDataStoreKey<Int>(SECTORFK)
|
||||||
|
}.sortedWith(compareBy({ it.saleOrder }))
|
||||||
} else {
|
} else {
|
||||||
sales = salesList.sortedWith(
|
salesList.filter {
|
||||||
|
it.sectorFk == mobileApplication.dataStoreApp.readDataStoreKey<Int>(SECTORFK)
|
||||||
|
}.sortedWith(compareBy({ it.picked }))
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!buttonPushedGetCollection) {
|
||||||
|
println("Reorden lineas sin boton pulsado")
|
||||||
|
sales =
|
||||||
|
if (!isOnReservationMode) salesList.sortedWith(compareBy { it.picked }) else salesList.sortedWith(
|
||||||
|
compareBy { it.pickedOrder })
|
||||||
|
myGroupList =
|
||||||
|
if (!isOnReservationMode) groupSaleGroup(salesList).sortedWith(compareBy { it.picked }) else groupSaleGroup(
|
||||||
|
salesList
|
||||||
|
).sortedWith(compareBy { it.pickedOrder })
|
||||||
|
|
||||||
|
for (m in myGroupList) {
|
||||||
|
println("Linea ${m.itemFk}-${m.pickedOrder} ")
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
sales = if (!isOnReservationMode) salesList.sortedWith(
|
||||||
compareBy({ it.isControlled }, { it.picked })
|
compareBy({ it.isControlled }, { it.picked })
|
||||||
|
) else salesList.sortedWith(
|
||||||
|
compareBy({ it.isControlled }, { it.pickedOrder })
|
||||||
)
|
)
|
||||||
|
|
||||||
//para la nueva revisión : hay que poner el saleOrder si no no podrán revisar correctamente
|
//para la nueva revisión : hay que poner el saleOrder si no no podrán revisar correctamente
|
||||||
myGroupList = groupSaleGroup(salesList).sortedWith(
|
println("Reorden lineas con boton pulsado")
|
||||||
|
myGroupList = if (!isOnReservationMode) groupSaleGroup(salesList).sortedWith(
|
||||||
compareBy({ it.isControlled }, { it.picked })
|
compareBy({ it.isControlled }, { it.picked })
|
||||||
|
) else groupSaleGroup(salesList).sortedWith(
|
||||||
|
compareBy({ it.isControlled }, { it.pickedOrder })
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue