refs #5651 advancedTicket
This commit is contained in:
parent
863957812b
commit
c1842a4bc6
|
@ -27,6 +27,7 @@ import es.verdnatura.presentation.view.feature.presacador.fragment.PreSacadorVie
|
||||||
import es.verdnatura.presentation.view.feature.qr.QrFragmentViewModel
|
import es.verdnatura.presentation.view.feature.qr.QrFragmentViewModel
|
||||||
import es.verdnatura.presentation.view.feature.sacador.fragment.SacadorViewModel
|
import es.verdnatura.presentation.view.feature.sacador.fragment.SacadorViewModel
|
||||||
import es.verdnatura.presentation.view.feature.shelvingparking.fragment.ShelvingParkingViewModel
|
import es.verdnatura.presentation.view.feature.shelvingparking.fragment.ShelvingParkingViewModel
|
||||||
|
import es.verdnatura.presentation.view.feature.ticket.fragment.TicketViewModel
|
||||||
import es.verdnatura.presentation.view.feature.ubicador.fragment.AutomaticAddItemViewModel
|
import es.verdnatura.presentation.view.feature.ubicador.fragment.AutomaticAddItemViewModel
|
||||||
import es.verdnatura.presentation.view.feature.ubicador.fragment.UbicadorViewModel
|
import es.verdnatura.presentation.view.feature.ubicador.fragment.UbicadorViewModel
|
||||||
import org.koin.android.ext.koin.androidContext
|
import org.koin.android.ext.koin.androidContext
|
||||||
|
@ -193,4 +194,7 @@ val viewModelModule = module {
|
||||||
viewModel {
|
viewModel {
|
||||||
PhotosViewModel(androidContext())
|
PhotosViewModel(androidContext())
|
||||||
}
|
}
|
||||||
|
viewModel {
|
||||||
|
TicketViewModel(androidContext())
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -2,6 +2,7 @@ package es.verdnatura.domain
|
||||||
|
|
||||||
import es.verdnatura.presentation.common.itemBarCodeSalix
|
import es.verdnatura.presentation.common.itemBarCodeSalix
|
||||||
import es.verdnatura.presentation.common.itemPackingTypeSalix
|
import es.verdnatura.presentation.common.itemPackingTypeSalix
|
||||||
|
import es.verdnatura.presentation.common.packingSiteSalix
|
||||||
import es.verdnatura.presentation.view.feature.ajustes.model.SectorItemVO
|
import es.verdnatura.presentation.view.feature.ajustes.model.SectorItemVO
|
||||||
import es.verdnatura.presentation.view.feature.articulo.model.ItemPackingType
|
import es.verdnatura.presentation.view.feature.articulo.model.ItemPackingType
|
||||||
import es.verdnatura.presentation.view.feature.collection.SalixSaleQuantity
|
import es.verdnatura.presentation.view.feature.collection.SalixSaleQuantity
|
||||||
|
@ -122,6 +123,12 @@ interface SalixService {
|
||||||
):
|
):
|
||||||
Call<List<ItemPackingType>>
|
Call<List<ItemPackingType>>
|
||||||
|
|
||||||
|
@POST("PackingSiteAdvanceds")
|
||||||
|
fun ticket_advancePackaging(
|
||||||
|
@Body parms : packingSiteSalix
|
||||||
|
):
|
||||||
|
Call<Void>
|
||||||
|
|
||||||
|
|
||||||
@PUT("ItemBarCodes")//REVISADA
|
@PUT("ItemBarCodes")//REVISADA
|
||||||
fun barcodes_edit(
|
fun barcodes_edit(
|
||||||
|
|
|
@ -8,3 +8,8 @@ class itemBarCodeSalix(
|
||||||
var itemFk: Int ,
|
var itemFk: Int ,
|
||||||
var code:String
|
var code:String
|
||||||
)
|
)
|
||||||
|
class packingSiteSalix(
|
||||||
|
var ticketFk:Int,
|
||||||
|
var workerFk: Int
|
||||||
|
|
||||||
|
)
|
||||||
|
|
|
@ -68,6 +68,7 @@ import es.verdnatura.presentation.view.feature.sacador.fragment.SacadorFragment
|
||||||
import es.verdnatura.presentation.view.feature.sacador.fragment.showticket.ShowTicketFragment
|
import es.verdnatura.presentation.view.feature.sacador.fragment.showticket.ShowTicketFragment
|
||||||
import es.verdnatura.presentation.view.feature.sacador.model.CollectionVO
|
import es.verdnatura.presentation.view.feature.sacador.model.CollectionVO
|
||||||
import es.verdnatura.presentation.view.feature.shelvingparking.fragment.ShelvingParkingFragment
|
import es.verdnatura.presentation.view.feature.shelvingparking.fragment.ShelvingParkingFragment
|
||||||
|
import es.verdnatura.presentation.view.feature.ticket.fragment.TicketAdvanceFragment
|
||||||
import es.verdnatura.presentation.view.feature.ubicador.fragment.AutomaticAddItemFragment
|
import es.verdnatura.presentation.view.feature.ubicador.fragment.AutomaticAddItemFragment
|
||||||
import es.verdnatura.presentation.view.feature.ubicador.fragment.UbicadorFragment
|
import es.verdnatura.presentation.view.feature.ubicador.fragment.UbicadorFragment
|
||||||
import es.verdnatura.presentation.view.feature.workermistake.adapter.WorkermistakeFragment
|
import es.verdnatura.presentation.view.feature.workermistake.adapter.WorkermistakeFragment
|
||||||
|
@ -110,7 +111,6 @@ class MainActivity : BaseActivity<ActivityMainBinding>(), OnPasillerosItemClickL
|
||||||
val extras = intent.extras
|
val extras = intent.extras
|
||||||
val uriImage = intent.data
|
val uriImage = intent.data
|
||||||
|
|
||||||
|
|
||||||
if (extras != null && extras.containsKey("menu")) {
|
if (extras != null && extras.containsKey("menu")) {
|
||||||
comeFromDelivery = true
|
comeFromDelivery = true
|
||||||
val option = extras.getString("menu")
|
val option = extras.getString("menu")
|
||||||
|
@ -737,6 +737,12 @@ class MainActivity : BaseActivity<ActivityMainBinding>(), OnPasillerosItemClickL
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getString(R.string.ticketAdvance) -> {
|
||||||
|
addFragmentOnTop(
|
||||||
|
TicketAdvanceFragment.newInstance(item.title)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
getString(R.string.testing) -> {
|
getString(R.string.testing) -> {
|
||||||
// addFragmentOnTop(
|
// addFragmentOnTop(
|
||||||
// PhotosFragment.newInstance(item.title))
|
// PhotosFragment.newInstance(item.title))
|
||||||
|
|
|
@ -119,7 +119,6 @@ class PasilleroViewModel(context: Context) : BaseViewModel(context) {
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
//Tarea 4940
|
|
||||||
_pasillerositem.add(
|
_pasillerositem.add(
|
||||||
PasillerosItemVO(
|
PasillerosItemVO(
|
||||||
1,
|
1,
|
||||||
|
@ -133,18 +132,18 @@ class PasilleroViewModel(context: Context) : BaseViewModel(context) {
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
//Tarea 4979
|
//Tarea 5651
|
||||||
/* _pasillerositem.add(
|
_pasillerositem.add(
|
||||||
PasillerosItemVO(
|
PasillerosItemVO(
|
||||||
1,
|
1,
|
||||||
R.drawable.ic_category,
|
R.drawable.ic_advance_ticket,
|
||||||
contextApp.getString(R.string.categoryChange),
|
contextApp.getString(R.string.ticketAdvance),
|
||||||
R.string.titleChangeCategory,
|
R.string.ticketAdvance,
|
||||||
contextApp.getString(
|
contextApp.getString(
|
||||||
R.string.titleChangeCategory
|
R.string.ticketAdvanceDescrip
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
)*/
|
)
|
||||||
|
|
||||||
|
|
||||||
_pasillerositem.add(
|
_pasillerositem.add(
|
||||||
|
|
|
@ -0,0 +1,84 @@
|
||||||
|
package es.verdnatura.presentation.view.feature.ticket.fragment
|
||||||
|
|
||||||
|
import android.view.View.GONE
|
||||||
|
import android.view.View.VISIBLE
|
||||||
|
import android.view.inputmethod.EditorInfo
|
||||||
|
import es.verdnatura.R
|
||||||
|
import es.verdnatura.databinding.FragmentGeneralBlackBinding
|
||||||
|
import es.verdnatura.presentation.base.BaseFragment
|
||||||
|
|
||||||
|
|
||||||
|
class TicketAdvanceFragment(var title: String) :
|
||||||
|
BaseFragment<FragmentGeneralBlackBinding, TicketViewModel>(
|
||||||
|
TicketViewModel::class
|
||||||
|
) {
|
||||||
|
|
||||||
|
override fun getLayoutId(): Int = R.layout.fragment_general_black
|
||||||
|
|
||||||
|
companion object {
|
||||||
|
fun newInstance(title: String) = TicketAdvanceFragment(title = title)
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun init() {
|
||||||
|
|
||||||
|
binding.scanInput.visibility = VISIBLE
|
||||||
|
binding.scanInput.hint = getString(R.string.scanLabelTicket)
|
||||||
|
binding.mainToolbar.toolbarTitle.text = title
|
||||||
|
binding.splashProgress.visibility = GONE
|
||||||
|
|
||||||
|
setEvents()
|
||||||
|
super.init()
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private fun setEvents() {
|
||||||
|
|
||||||
|
binding.mainToolbar.backButton.setOnClickListener {
|
||||||
|
requireActivity().onBackPressed()
|
||||||
|
}
|
||||||
|
|
||||||
|
binding.scanInput.requestFocus()
|
||||||
|
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.isNullOrEmpty()) {
|
||||||
|
binding.splashProgress.visibility = VISIBLE
|
||||||
|
try {
|
||||||
|
|
||||||
|
viewModel.ticket_advancePackaging(
|
||||||
|
binding.scanInput.text.toString().toInt(),
|
||||||
|
getDataInt(USERFK)
|
||||||
|
)
|
||||||
|
} catch (ex: Exception) {
|
||||||
|
getString(R.string.ticketFormatError)
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
binding.scanInput.setText("")
|
||||||
|
ma.hideKeyboard(binding.scanInput)
|
||||||
|
return@setOnEditorActionListener true
|
||||||
|
}
|
||||||
|
false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun observeViewModel() {
|
||||||
|
with(viewModel) {
|
||||||
|
|
||||||
|
response.observe(viewLifecycleOwner) {
|
||||||
|
|
||||||
|
binding.splashProgress.visibility = GONE
|
||||||
|
ma.messageWithSound(
|
||||||
|
if (it.isError) {
|
||||||
|
it.errorMessage
|
||||||
|
} else {
|
||||||
|
getString(R.string.ticketAdvancePagkaging)
|
||||||
|
}, it.isError, true, isToasted = true
|
||||||
|
)
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,47 @@
|
||||||
|
package es.verdnatura.presentation.view.feature.ticket.fragment
|
||||||
|
|
||||||
|
import android.content.Context
|
||||||
|
import androidx.lifecycle.LiveData
|
||||||
|
import androidx.lifecycle.MutableLiveData
|
||||||
|
import es.verdnatura.domain.SilexCallback
|
||||||
|
import es.verdnatura.presentation.base.BaseViewModel
|
||||||
|
import es.verdnatura.presentation.base.getMessageFromAllResponse
|
||||||
|
import es.verdnatura.presentation.base.nameofFunction
|
||||||
|
import es.verdnatura.presentation.common.ResponseItemVO
|
||||||
|
import es.verdnatura.presentation.common.packingSiteSalix
|
||||||
|
import retrofit2.Response
|
||||||
|
|
||||||
|
class TicketViewModel(val context: Context) : BaseViewModel(context) {
|
||||||
|
|
||||||
|
|
||||||
|
private val _response by lazy { MutableLiveData<ResponseItemVO>() }
|
||||||
|
val response: LiveData<ResponseItemVO>
|
||||||
|
get() = _response
|
||||||
|
|
||||||
|
|
||||||
|
fun ticket_advancePackaging(
|
||||||
|
ticketFk: Int,
|
||||||
|
workerFk: Int
|
||||||
|
|
||||||
|
) {
|
||||||
|
|
||||||
|
salix.ticket_advancePackaging(packingSiteSalix(ticketFk, workerFk))
|
||||||
|
.enqueue(object : SilexCallback<Void>(context) {
|
||||||
|
|
||||||
|
override fun onError(t: Throwable) {
|
||||||
|
_response.value = ResponseItemVO(
|
||||||
|
isError = true,
|
||||||
|
errorMessage = getMessageFromAllResponse(nameofFunction(this), t.message!!)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun onSuccess(response: Response<Void>) {
|
||||||
|
_response.value =
|
||||||
|
ResponseItemVO(isError = false, response = response.message())
|
||||||
|
}
|
||||||
|
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,10 @@
|
||||||
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:width="48dp"
|
||||||
|
android:height="48dp"
|
||||||
|
android:viewportWidth="960"
|
||||||
|
android:viewportHeight="960"
|
||||||
|
android:tint="#F7931E">
|
||||||
|
<path
|
||||||
|
android:fillColor="@android:color/white"
|
||||||
|
android:pathData="M255,719L213,677L411,479L213,281L255,239L495,479L255,719ZM508,719L466,677L664,479L466,281L508,239L748,479L508,719Z"/>
|
||||||
|
</vector>
|
|
@ -594,5 +594,10 @@
|
||||||
<string name="messageUploadItem">Tienes que escanear el artículo para poder subirlo</string>
|
<string name="messageUploadItem">Tienes que escanear el artículo para poder subirlo</string>
|
||||||
<string name="messageUpload">Sube la imagen al servidor</string>
|
<string name="messageUpload">Sube la imagen al servidor</string>
|
||||||
<string name="selectImage">Seleccionar imagen</string>
|
<string name="selectImage">Seleccionar imagen</string>
|
||||||
|
<string name="ticketAdvance">Avanzar ticket encajado</string>
|
||||||
|
<string name="ticketAdvanceDescrip">Permite avanzar un ticket para que sea encajado</string>
|
||||||
|
<string name="scanLabelTicket">Escanea ticket</string>
|
||||||
|
<string name="ticketAdvancePagkaging">El ticket ya puede ser encajado</string>
|
||||||
|
<string name="ticketFormatError">El ticket escaneado no tiene un formato correcto</string>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -594,5 +594,10 @@
|
||||||
<string name="messageUploadItem">Tienes que escanear el artículo para poder subirlo</string>
|
<string name="messageUploadItem">Tienes que escanear el artículo para poder subirlo</string>
|
||||||
<string name="messageUpload">Sube la imagen al servidor</string>
|
<string name="messageUpload">Sube la imagen al servidor</string>
|
||||||
<string name="selectImage">Seleccionar imagen</string>
|
<string name="selectImage">Seleccionar imagen</string>
|
||||||
|
<string name="ticketAdvance">Avanzar ticket encajado</string>
|
||||||
|
<string name="ticketAdvanceDescrip">Permite avanzar un ticket para que sea encajado</string>
|
||||||
|
<string name="scanLabelTicket">Escanea ticket</string>
|
||||||
|
<string name="ticketAdvancePagkaging">El ticket ya puede ser encajado</string>
|
||||||
|
<string name="ticketFormatError">El ticket escaneado no tiene un formato correcto</string>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -594,5 +594,10 @@
|
||||||
<string name="messageUploadItem">Tienes que escanear el artículo para poder subirlo</string>
|
<string name="messageUploadItem">Tienes que escanear el artículo para poder subirlo</string>
|
||||||
<string name="messageUpload">Sube la imagen al servidor</string>
|
<string name="messageUpload">Sube la imagen al servidor</string>
|
||||||
<string name="selectImage">Seleccionar imagen</string>
|
<string name="selectImage">Seleccionar imagen</string>
|
||||||
|
<string name="ticketAdvance">Avanzar ticket encajado</string>
|
||||||
|
<string name="ticketAdvanceDescrip">Permite avanzar un ticket para que sea encajado</string>
|
||||||
|
<string name="scanLabelTicket">Escanea ticket</string>
|
||||||
|
<string name="ticketAdvancePagkaging">El ticket ya puede ser encajado</string>
|
||||||
|
<string name="ticketFormatError">El ticket escaneado no tiene un formato correcto</string>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -593,4 +593,9 @@
|
||||||
<string name="messageUploadItem">Tienes que escanear el artículo para poder subirlo</string>
|
<string name="messageUploadItem">Tienes que escanear el artículo para poder subirlo</string>
|
||||||
<string name="messageUpload">Sube la imagen al servidor</string>
|
<string name="messageUpload">Sube la imagen al servidor</string>
|
||||||
<string name="selectImage">Seleccionar imagen</string>
|
<string name="selectImage">Seleccionar imagen</string>
|
||||||
|
<string name="ticketAdvance">Avanzar ticket encajado</string>
|
||||||
|
<string name="ticketAdvanceDescrip">Permite avanzar un ticket para que sea encajado</string>
|
||||||
|
<string name="scanLabelTicket">Escanea ticket</string>
|
||||||
|
<string name="ticketAdvancePagkaging">El ticket ya puede ser encajado</string>
|
||||||
|
<string name="ticketFormatError">El ticket escaneado no tiene un formato correcto</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
Loading…
Reference in New Issue