feat: refs#7412 notificationQueue

This commit is contained in:
Sergio De la torre 2025-02-03 16:36:53 +01:00
parent 884d6abdd9
commit 2d9870a930
3 changed files with 44 additions and 25 deletions

View File

@ -1,6 +1,7 @@
package es.verdnatura.domain.userCases
import es.verdnatura.domain.SalixService
import es.verdnatura.presentation.view.feature.packaging.model.NotificationQueue
import retrofit2.Call
class GetItemFromBarcodeUseCase(private val salixService: SalixService) {
@ -18,3 +19,9 @@ class GetItemPrintItemUseCase(private val salixService: SalixService) {
return salixService.buyGetLastWithoutInventory(params)
}
}
class NotiticationUseCase(private val salixService: SalixService) {
fun executeSendNotification(notificationQueue: NotificationQueue): Call<Void> {
return salixService.notificationQueues(notificationQueue)
}
}

View File

@ -710,6 +710,28 @@ class UbicadorFragment : BaseFragment<FragmentUbicadorBinding, UbicadorViewModel
null -> d("", "no action")
}
/* tarea 7412
viewModel.notificationQueues(
notification = "misallocation-warehouse",
workerfk = mobileApplication.userId!!,
body = if (it.originalAction == Action.PARKINEAR) {
getString(
R.string.actionParking,
it.originalAction,
it.originalShelvingFk,
it.originalParking,
mobileApplication.userName!!
)
} else {
getString(
R.string.tansferItem,
it.originalAction,
it.originalItem,
it.originalParking,
mobileApplication.userName!!
)
}
)*/
customDialogOlder.dismiss()
}.setKoButton(getString(R.string.cancel)) {
@ -1197,30 +1219,7 @@ class UbicadorFragment : BaseFragment<FragmentUbicadorBinding, UbicadorViewModel
}
customDialogInput.getEditText().requestFocus()
}
//Tarea 7763
/*
.setOkButtonThree(getString(R.string.rename)) {
customDialogInput.setTitle(getString(R.string.itemNew))
.setDescription(getString(R.string.scanItem)).setValue("")
.setOkButton(getString(R.string.rename)) {
actionRename(item, customDialogInput.getValue())
}.setKoButton(getString(R.string.cancel)) {
customDialogInput.dismiss()
customDialogTwoButtons.dismiss()
}.show()
customDialogInput.getEditText().setOnEditorActionListener { _, actionId, _ ->
if (actionId == EditorInfo.IME_ACTION_SEARCH || actionId == EditorInfo.IME_ACTION_DONE || actionId == 0 || actionId == 5) {
actionRename(item, customDialogInput.getValue())
return@setOnEditorActionListener true
}
false
}
customDialogInput.getEditText().requestFocus()
}
*/
customDialogTwoButtons.setKoButton(getString(R.string.cancel)) {
customDialogTwoButtons.dismiss()
}

View File

@ -11,6 +11,7 @@ import es.verdnatura.domain.SalixCallback
import es.verdnatura.domain.formatWithQuotes
import es.verdnatura.domain.userCases.GetItemFromBarcodeUseCase
import es.verdnatura.domain.userCases.GetItemPrintItemUseCase
import es.verdnatura.domain.userCases.NotiticationUseCase
import es.verdnatura.presentation.base.BaseViewModel
import es.verdnatura.presentation.common.Action
import es.verdnatura.presentation.common.Event
@ -18,6 +19,7 @@ import es.verdnatura.presentation.common.ItemShelvingSalix
import es.verdnatura.presentation.common.ResponseHasOlder
import es.verdnatura.presentation.view.feature.claim.fragment.reubication.model.Reubication
import es.verdnatura.presentation.view.feature.claim.fragment.reubication.model.ReubicationList
import es.verdnatura.presentation.view.feature.packaging.model.NotificationQueue
import es.verdnatura.presentation.view.feature.sacador.model.ItemShelvingSale
import es.verdnatura.presentation.view.feature.ubicador.model.ItemBuy
import es.verdnatura.presentation.view.feature.ubicador.model.ItemShelvingNewer
@ -36,6 +38,7 @@ import java.util.Locale
class UbicadorViewModel(val context: Context) : BaseViewModel(context) {
private val getItemFromBarcodeUseCase = GetItemFromBarcodeUseCase(salix)
private val printItemUseCase = GetItemPrintItemUseCase(salix)
private val notificationUseCase = NotiticationUseCase(salix)
private val _responseUbicator by lazy { MutableLiveData<Boolean>() }
val responseUbicator: LiveData<Boolean>
@ -368,10 +371,8 @@ class UbicadorViewModel(val context: Context) : BaseViewModel(context) {
override fun onSuccess(response: Response<ShelvingItem>) {
val itemShelving = response.body()
if (itemShelving?.parking == null) {
println("No hay parking sin problema")
itemShelvingTransfer(itemShelvingFk, shelvingFkTo)
} else {
println("Tiene parking ${itemShelving}")
getItemsByReviewOrder(
shelving = shelvingFkTo,
itemFk = itemFk,
@ -635,6 +636,18 @@ class UbicadorViewModel(val context: Context) : BaseViewModel(context) {
})
}
fun notificationQueues(notification: String, workerfk: Int, body: String) {
notificationUseCase.executeSendNotification(
NotificationQueue(
notification,
workerfk,
body
)
)
.enqueue(object : SalixCallback<Void>(context) {
})
}
fun printItem(
reportName: String,
printerFk: Int,