feat Ticketobservation refs #7541
This commit is contained in:
parent
3e37ca1c3d
commit
89a4cff1ed
|
@ -26,6 +26,7 @@ import es.verdnatura.presentation.view.feature.delivery.model.ExpeditionInfoLog
|
||||||
import es.verdnatura.presentation.view.feature.delivery.model.ExpeditionInfoSummary
|
import es.verdnatura.presentation.view.feature.delivery.model.ExpeditionInfoSummary
|
||||||
import es.verdnatura.presentation.view.feature.delivery.model.RouteDelivery
|
import es.verdnatura.presentation.view.feature.delivery.model.RouteDelivery
|
||||||
import es.verdnatura.presentation.view.feature.delivery.model.RouteInfo
|
import es.verdnatura.presentation.view.feature.delivery.model.RouteInfo
|
||||||
|
import es.verdnatura.presentation.view.feature.delivery.model.TicketObservation
|
||||||
import es.verdnatura.presentation.view.feature.diadeventa.model.ItemShelvingSaleDate
|
import es.verdnatura.presentation.view.feature.diadeventa.model.ItemShelvingSaleDate
|
||||||
import es.verdnatura.presentation.view.feature.historicoarticulo.model.ItemHistoricoVO
|
import es.verdnatura.presentation.view.feature.historicoarticulo.model.ItemHistoricoVO
|
||||||
import es.verdnatura.presentation.view.feature.historicoshelving.model.ItemShelvingLog
|
import es.verdnatura.presentation.view.feature.historicoshelving.model.ItemShelvingLog
|
||||||
|
@ -231,6 +232,11 @@ interface SalixService {
|
||||||
@Body params: Any
|
@Body params: Any
|
||||||
): Call<Any>
|
): Call<Any>
|
||||||
|
|
||||||
|
@GET("TicketObservations")
|
||||||
|
fun getTicketObservations(
|
||||||
|
@Query("filter") filter: String,
|
||||||
|
): Call<List<TicketObservation>>
|
||||||
|
|
||||||
@POST("TicketObservations/upsertWithWhere")
|
@POST("TicketObservations/upsertWithWhere")
|
||||||
fun updateNoteFromDropOff(
|
fun updateNoteFromDropOff(
|
||||||
@Query("where") where: Any? = null,
|
@Query("where") where: Any? = null,
|
||||||
|
|
|
@ -3,10 +3,14 @@ package es.verdnatura.presentation.view.feature.delivery.activity
|
||||||
import android.Manifest
|
import android.Manifest
|
||||||
import android.content.pm.PackageManager
|
import android.content.pm.PackageManager
|
||||||
import android.graphics.Bitmap
|
import android.graphics.Bitmap
|
||||||
|
import android.graphics.drawable.Drawable
|
||||||
import android.location.Location
|
import android.location.Location
|
||||||
|
import android.view.View
|
||||||
|
import android.widget.ImageView
|
||||||
import androidx.appcompat.app.AlertDialog
|
import androidx.appcompat.app.AlertDialog
|
||||||
import androidx.core.app.ActivityCompat
|
import androidx.core.app.ActivityCompat
|
||||||
import androidx.lifecycle.lifecycleScope
|
import androidx.lifecycle.lifecycleScope
|
||||||
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
import com.google.android.gms.location.LocationResult
|
import com.google.android.gms.location.LocationResult
|
||||||
import com.google.android.gms.location.LocationServices
|
import com.google.android.gms.location.LocationServices
|
||||||
import com.google.gson.Gson
|
import com.google.gson.Gson
|
||||||
|
@ -18,11 +22,18 @@ import es.verdnatura.domain.toast
|
||||||
import es.verdnatura.presentation.base.BaseActivity
|
import es.verdnatura.presentation.base.BaseActivity
|
||||||
import es.verdnatura.presentation.base.LocationUpdateCallback
|
import es.verdnatura.presentation.base.LocationUpdateCallback
|
||||||
import es.verdnatura.presentation.base.database
|
import es.verdnatura.presentation.base.database
|
||||||
|
import es.verdnatura.presentation.common.GeneralAdapter
|
||||||
|
import es.verdnatura.presentation.common.GeneralItem
|
||||||
|
import es.verdnatura.presentation.common.OnGeneralItemRowClickListener
|
||||||
|
import es.verdnatura.presentation.common.OnOptionsSelectedListener
|
||||||
import es.verdnatura.presentation.common.SignListener
|
import es.verdnatura.presentation.common.SignListener
|
||||||
|
import es.verdnatura.presentation.common.ToolBarAdapterTooltip
|
||||||
import es.verdnatura.presentation.view.component.CustomDialog
|
import es.verdnatura.presentation.view.component.CustomDialog
|
||||||
|
import es.verdnatura.presentation.view.component.CustomDialogList
|
||||||
import es.verdnatura.presentation.view.feature.delivery.model.ClientTicketSalix
|
import es.verdnatura.presentation.view.feature.delivery.model.ClientTicketSalix
|
||||||
import es.verdnatura.presentation.view.feature.delivery.model.MyLocation
|
import es.verdnatura.presentation.view.feature.delivery.model.MyLocation
|
||||||
import es.verdnatura.presentation.view.feature.delivery.model.SignedTickets
|
import es.verdnatura.presentation.view.feature.delivery.model.SignedTickets
|
||||||
|
import es.verdnatura.presentation.view.feature.delivery.model.TicketObservation
|
||||||
import es.verdnatura.presentation.view.feature.delivery.viewmodels.DeliveryViewModel
|
import es.verdnatura.presentation.view.feature.delivery.viewmodels.DeliveryViewModel
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
|
@ -44,9 +55,11 @@ class SignedActivity : BaseActivity<ActivitySignBinding>(), LocationUpdateCallba
|
||||||
private lateinit var ticketsSet: HashSet<Long>
|
private lateinit var ticketsSet: HashSet<Long>
|
||||||
private lateinit var clientTicket: ClientTicketSalix
|
private lateinit var clientTicket: ClientTicketSalix
|
||||||
private lateinit var db: DeliveryDatabase
|
private lateinit var db: DeliveryDatabase
|
||||||
|
private lateinit var deliveryViewModel: DeliveryViewModel
|
||||||
|
private lateinit var listClaimTicketObservations : List<TicketObservation>
|
||||||
|
|
||||||
override fun init() {
|
override fun init() {
|
||||||
|
deliveryViewModel = DeliveryViewModel(application as MobileApplication)
|
||||||
when (intent.getStringExtra("objectSigned")) {
|
when (intent.getStringExtra("objectSigned")) {
|
||||||
|
|
||||||
"ticket" -> {
|
"ticket" -> {
|
||||||
|
@ -58,28 +71,53 @@ class SignedActivity : BaseActivity<ActivitySignBinding>(), LocationUpdateCallba
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
setEvents()
|
setEvents()
|
||||||
(application as MobileApplication).setSignListener(this)
|
(application as MobileApplication).setSignListener(this)
|
||||||
db = database(this.applicationContext)
|
db = database(this.applicationContext)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun setToolBar() {
|
private fun setToolBar() {
|
||||||
binding.mainToolbar.toolbarTitle.text = getString(R.string.sign)
|
// binding.mainToolbar.toolbarIcons.visibility = View.GONE
|
||||||
|
|
||||||
|
val listIcons: ArrayList<ImageView> = ArrayList()
|
||||||
|
val iconObservation = ImageView(this)
|
||||||
|
iconObservation.setImageResource(R.drawable.ic_claim_ui)
|
||||||
|
iconObservation.tooltipText = "Muestra las observaciones de reclamaciones"
|
||||||
|
listIcons.add(iconObservation)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
binding.mainToolbar.toolbarIcons.adapter =
|
||||||
|
ToolBarAdapterTooltip(listIcons, object : OnOptionsSelectedListener {
|
||||||
|
|
||||||
|
override fun onOptionsItemSelected(item: Drawable) {
|
||||||
|
when (item) {
|
||||||
|
iconObservation.drawable -> {
|
||||||
|
showNotes(listClaimTicketObservations)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
binding.mainToolbar.toolbarIcons.layoutManager =
|
||||||
|
LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun showDialogConfirm() {
|
private fun showDialogConfirm() {
|
||||||
val customDialog = CustomDialog(this)
|
val customDialog = CustomDialog(this)
|
||||||
customDialog.setTitle(getString(R.string.confirm))
|
customDialog.setTitle(getString(R.string.confirm))
|
||||||
.setDescription(getString(R.string.sureSign))
|
.setDescription(getString(R.string.sureSign)).setOkButton(getString(R.string.ok)) {
|
||||||
.setOkButton(getString(R.string.ok)) {
|
|
||||||
|
|
||||||
reviewDistance()
|
reviewDistance()
|
||||||
customDialog.dismiss()
|
customDialog.dismiss()
|
||||||
|
|
||||||
}.setKoButton(getString(R.string.cancel)) {
|
}.setKoButton(getString(R.string.cancel)) {
|
||||||
customDialog.dismiss()
|
customDialog.dismiss()
|
||||||
}
|
}.show()
|
||||||
.show()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun reviewDistance() {
|
private fun reviewDistance() {
|
||||||
|
@ -98,13 +136,11 @@ class SignedActivity : BaseActivity<ActivitySignBinding>(), LocationUpdateCallba
|
||||||
if (locationCurrent.distanceTo(locationClient) > 100) {
|
if (locationCurrent.distanceTo(locationClient) > 100) {
|
||||||
|
|
||||||
val customDialogDistance = CustomDialog(this)
|
val customDialogDistance = CustomDialog(this)
|
||||||
customDialogDistance.setTitle(getString(R.string.confirm))
|
customDialogDistance.setTitle(getString(R.string.confirm)).setDescription(
|
||||||
.setDescription(
|
|
||||||
getString(R.string.locationDiferent) + getString(R.string.distance) + locationCurrent.distanceTo(
|
getString(R.string.locationDiferent) + getString(R.string.distance) + locationCurrent.distanceTo(
|
||||||
locationClient
|
locationClient
|
||||||
)
|
)
|
||||||
)
|
).setOkButton(getString(R.string.keep)) {
|
||||||
.setOkButton(getString(R.string.keep)) {
|
|
||||||
|
|
||||||
uploadImage(MyLocation(locationClient.longitude, locationClient.latitude))
|
uploadImage(MyLocation(locationClient.longitude, locationClient.latitude))
|
||||||
customDialogDistance.dismiss()
|
customDialogDistance.dismiss()
|
||||||
|
@ -112,8 +148,7 @@ class SignedActivity : BaseActivity<ActivitySignBinding>(), LocationUpdateCallba
|
||||||
}.setKoButton(getString(R.string.modify)) {
|
}.setKoButton(getString(R.string.modify)) {
|
||||||
uploadImage(lastLocationCurrent)
|
uploadImage(lastLocationCurrent)
|
||||||
customDialogDistance.dismiss()
|
customDialogDistance.dismiss()
|
||||||
}
|
}.show()
|
||||||
.show()
|
|
||||||
} else {
|
} else {
|
||||||
uploadImage(MyLocation(locationClient.longitude, locationClient.latitude))
|
uploadImage(MyLocation(locationClient.longitude, locationClient.latitude))
|
||||||
}
|
}
|
||||||
|
@ -133,39 +168,80 @@ class SignedActivity : BaseActivity<ActivitySignBinding>(), LocationUpdateCallba
|
||||||
|
|
||||||
private fun setViews(clientTicketList: ClientTicketSalix) {
|
private fun setViews(clientTicketList: ClientTicketSalix) {
|
||||||
|
|
||||||
if (clientTicketList != null) {
|
binding.nameAddress.text = clientTicketList.nickname
|
||||||
|
ticketsSet = HashSet()
|
||||||
|
var sum = 0
|
||||||
|
for (exp in clientTicketList.tickets) {
|
||||||
|
ticketsSet.add(exp.Id)
|
||||||
|
sum += exp.Packages
|
||||||
|
|
||||||
binding.nameAddress.text = clientTicketList.nickname
|
|
||||||
ticketsSet = HashSet()
|
|
||||||
var sum = 0
|
|
||||||
for (exp in clientTicketList.tickets) {
|
|
||||||
ticketsSet.add(exp.Id)
|
|
||||||
sum += exp.Packages
|
|
||||||
}
|
|
||||||
binding.idTickets.text = ticketsSet.toList().toString()
|
|
||||||
binding.totalPackages.text = sum.toString()
|
|
||||||
}
|
}
|
||||||
|
//Tarea 7541
|
||||||
|
|
||||||
|
/* deliveryViewModel.getTicketObservations(ticketsSet.toList())
|
||||||
|
deliveryViewModel.responseObservations.observe(this) {
|
||||||
|
listClaimTicketObservations = it
|
||||||
|
if (it.isNotEmpty()) {
|
||||||
|
showNotes(it)
|
||||||
|
setToolBar()
|
||||||
|
}
|
||||||
|
}*/
|
||||||
|
binding.idTickets.text = ticketsSet.toList().toString()
|
||||||
|
binding.totalPackages.text = sum.toString()
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun showNotes(listClaimObservations: List<TicketObservation>) {
|
||||||
|
val ticketNotes: MutableList<GeneralItem> = mutableListOf()
|
||||||
|
//Tarea 6275
|
||||||
|
for (item in listClaimObservations) {
|
||||||
|
|
||||||
|
ticketNotes.add(
|
||||||
|
GeneralItem(
|
||||||
|
text = "${item.ticketFk}:${item.description}", code = ""
|
||||||
|
)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
val customDialogList = CustomDialogList(this)
|
||||||
|
|
||||||
|
customDialogList.setValueVisibility(View.GONE)
|
||||||
|
customDialogList.setTitle(getString(R.string.notesClaim)).setKoButton(
|
||||||
|
getString(
|
||||||
|
R.string.accept
|
||||||
|
)
|
||||||
|
) {
|
||||||
|
customDialogList.dismiss()
|
||||||
|
}.hideDialog().show()
|
||||||
|
|
||||||
|
val listObservationsAdapter =
|
||||||
|
GeneralAdapter(ticketNotes, object : OnGeneralItemRowClickListener {
|
||||||
|
override fun OnGeneralItemRowClickListener(item: GeneralItem) {
|
||||||
|
|
||||||
|
customDialogList.dismiss()
|
||||||
|
}
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
customDialogList.getRecyclerView().adapter = listObservationsAdapter
|
||||||
|
customDialogList.getRecyclerView().layoutManager =
|
||||||
|
LinearLayoutManager(this, LinearLayoutManager.VERTICAL, false)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun uploadImage(location: MyLocation) {
|
private fun uploadImage(location: MyLocation) {
|
||||||
|
|
||||||
val deliveryViewModel = DeliveryViewModel(application as MobileApplication)
|
|
||||||
val drawing = binding.ink.bitmap
|
val drawing = binding.ink.bitmap
|
||||||
val file = File(BitMapToString(drawing, tickets = ticketsSet.toList()))
|
val file = File(bitMapToString(drawing, tickets = ticketsSet.toList()))
|
||||||
val queryMap: MutableMap<String?, String?> = HashMap()
|
val queryMap: MutableMap<String?, String?> = HashMap()
|
||||||
queryMap["tickets"] = ticketsSet.toString()
|
queryMap["tickets"] = ticketsSet.toString()
|
||||||
queryMap["location"] = Gson().toJson(location)
|
queryMap["location"] = Gson().toJson(location)
|
||||||
queryMap["signedTime"] =
|
queryMap["signedTime"] = SimpleDateFormat("yyyy-LL-dd HH:mm", Locale.getDefault()).format(
|
||||||
SimpleDateFormat("yyyy-LL-dd HH:mm", Locale.getDefault()).format(
|
Date()
|
||||||
Date()
|
)
|
||||||
)
|
|
||||||
|
|
||||||
var mySign =
|
val mySign = SignedTickets(
|
||||||
SignedTickets(
|
queryMap, baseContext.externalCacheDir.toString() + "/" + file.name
|
||||||
queryMap,
|
)
|
||||||
baseContext.externalCacheDir.toString() + "/" + file.name
|
|
||||||
)
|
|
||||||
|
|
||||||
deliveryViewModel.saveSign(
|
deliveryViewModel.saveSign(
|
||||||
mySign.fileName, mySign.queryMapList,
|
mySign.fileName, mySign.queryMapList,
|
||||||
|
@ -189,7 +265,7 @@ class SignedActivity : BaseActivity<ActivitySignBinding>(), LocationUpdateCallba
|
||||||
}
|
}
|
||||||
|
|
||||||
@Throws(IOException::class)
|
@Throws(IOException::class)
|
||||||
fun BitMapToString(bitmap: Bitmap, tickets: List<Long>): String {
|
fun bitMapToString(bitmap: Bitmap, tickets: List<Long>): String {
|
||||||
var fileNameSign = baseContext.externalCacheDir.toString() + "/sign"
|
var fileNameSign = baseContext.externalCacheDir.toString() + "/sign"
|
||||||
for (ticket in tickets) {
|
for (ticket in tickets) {
|
||||||
fileNameSign += "_$ticket"
|
fileNameSign += "_$ticket"
|
||||||
|
@ -213,9 +289,7 @@ class SignedActivity : BaseActivity<ActivitySignBinding>(), LocationUpdateCallba
|
||||||
|
|
||||||
private fun setLocation() {
|
private fun setLocation() {
|
||||||
ActivityCompat.requestPermissions(
|
ActivityCompat.requestPermissions(
|
||||||
this,
|
this, arrayOf(Manifest.permission.ACCESS_FINE_LOCATION), 111
|
||||||
arrayOf(Manifest.permission.ACCESS_FINE_LOCATION),
|
|
||||||
111
|
|
||||||
)
|
)
|
||||||
fusedLocationClient = LocationServices.getFusedLocationProviderClient(this)
|
fusedLocationClient = LocationServices.getFusedLocationProviderClient(this)
|
||||||
locationUpdateCallback = this
|
locationUpdateCallback = this
|
||||||
|
@ -224,9 +298,7 @@ class SignedActivity : BaseActivity<ActivitySignBinding>(), LocationUpdateCallba
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onRequestPermissionsResult(
|
override fun onRequestPermissionsResult(
|
||||||
requestCode: Int,
|
requestCode: Int, permissions: Array<out String>, grantResults: IntArray
|
||||||
permissions: Array<out String>,
|
|
||||||
grantResults: IntArray
|
|
||||||
) {
|
) {
|
||||||
|
|
||||||
super.onRequestPermissionsResult(requestCode, permissions, grantResults)
|
super.onRequestPermissionsResult(requestCode, permissions, grantResults)
|
||||||
|
@ -243,7 +315,7 @@ class SignedActivity : BaseActivity<ActivitySignBinding>(), LocationUpdateCallba
|
||||||
setMessage(getString(R.string.manuallyPermission))
|
setMessage(getString(R.string.manuallyPermission))
|
||||||
setPositiveButton(
|
setPositiveButton(
|
||||||
"Aceptar"
|
"Aceptar"
|
||||||
) { dialog, which ->
|
) { _, _ ->
|
||||||
finish()
|
finish()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -261,18 +333,16 @@ class SignedActivity : BaseActivity<ActivitySignBinding>(), LocationUpdateCallba
|
||||||
setMessage(getString(R.string.advicePermission))
|
setMessage(getString(R.string.advicePermission))
|
||||||
setPositiveButton(
|
setPositiveButton(
|
||||||
getString(R.string.accept)
|
getString(R.string.accept)
|
||||||
) { dialog, which ->
|
) { dialog, _ ->
|
||||||
dialog.dismiss()
|
dialog.dismiss()
|
||||||
ActivityCompat.requestPermissions(
|
ActivityCompat.requestPermissions(
|
||||||
activity,
|
activity, arrayOf(Manifest.permission.ACCESS_FINE_LOCATION), 111
|
||||||
arrayOf(Manifest.permission.ACCESS_FINE_LOCATION),
|
|
||||||
111
|
|
||||||
)
|
)
|
||||||
|
|
||||||
}
|
}
|
||||||
setNegativeButton(
|
setNegativeButton(
|
||||||
getString(R.string.cancel)
|
getString(R.string.cancel)
|
||||||
) { dialog, which ->
|
) { _, _ ->
|
||||||
finish()
|
finish()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -57,8 +57,7 @@ data class Ticket(
|
||||||
data class TicketObservation
|
data class TicketObservation
|
||||||
(
|
(
|
||||||
var ticketFk: Long,
|
var ticketFk: Long,
|
||||||
var description: String,
|
var description: String
|
||||||
var observationTypeFk: Int
|
|
||||||
)
|
)
|
||||||
|
|
||||||
@Entity(tableName = "signedPending")
|
@Entity(tableName = "signedPending")
|
||||||
|
|
|
@ -23,6 +23,7 @@ import es.verdnatura.presentation.view.feature.delivery.model.RouteDeliveryList
|
||||||
import es.verdnatura.presentation.view.feature.delivery.model.RouteInfo
|
import es.verdnatura.presentation.view.feature.delivery.model.RouteInfo
|
||||||
import es.verdnatura.presentation.view.feature.delivery.model.RouteList
|
import es.verdnatura.presentation.view.feature.delivery.model.RouteList
|
||||||
import es.verdnatura.presentation.view.feature.delivery.model.Ticket
|
import es.verdnatura.presentation.view.feature.delivery.model.Ticket
|
||||||
|
import es.verdnatura.presentation.view.feature.delivery.model.TicketObservation
|
||||||
import okhttp3.MediaType
|
import okhttp3.MediaType
|
||||||
import okhttp3.MultipartBody
|
import okhttp3.MultipartBody
|
||||||
import okhttp3.RequestBody
|
import okhttp3.RequestBody
|
||||||
|
@ -76,6 +77,8 @@ class DeliveryViewModel(val context: Context) : BaseViewModel(context) {
|
||||||
val responseNotes: LiveData<Boolean> = _responseNotes
|
val responseNotes: LiveData<Boolean> = _responseNotes
|
||||||
var loadNotes: LiveData<Event<Boolean>> = _responseNotes.map { Event(it) }
|
var loadNotes: LiveData<Event<Boolean>> = _responseNotes.map { Event(it) }
|
||||||
|
|
||||||
|
private val _responseObservations by lazy { MutableLiveData<List<TicketObservation>>() }
|
||||||
|
val responseObservations: LiveData<List<TicketObservation>> = _responseObservations
|
||||||
|
|
||||||
private val _expeditionList by lazy { MutableLiveData<ExpeditionList>() }
|
private val _expeditionList by lazy { MutableLiveData<ExpeditionList>() }
|
||||||
val expeditionList: LiveData<ExpeditionList> = _expeditionList
|
val expeditionList: LiveData<ExpeditionList> = _expeditionList
|
||||||
|
@ -87,6 +90,20 @@ class DeliveryViewModel(val context: Context) : BaseViewModel(context) {
|
||||||
|
|
||||||
private val _responseStateList by lazy { MutableLiveData<ResponseItemVO>() }
|
private val _responseStateList by lazy { MutableLiveData<ResponseItemVO>() }
|
||||||
val responseStateList: LiveData<ResponseItemVO> = _responseStateList
|
val responseStateList: LiveData<ResponseItemVO> = _responseStateList
|
||||||
|
fun getTicketObservations(
|
||||||
|
listTickets: List<Long>
|
||||||
|
|
||||||
|
) {
|
||||||
|
salix.getTicketObservations(
|
||||||
|
filter = """{ "where": { "observationTypeFk": 11,"ticketFk": { "inq": $listTickets } },
|
||||||
|
| "fields":["description", "ticketFk"]}""".trimMargin()
|
||||||
|
).enqueue(object : SalixCallback<List<TicketObservation>>(context) {
|
||||||
|
override fun onSuccess(response: Response<List<TicketObservation>>) {
|
||||||
|
_responseObservations.value = response.body()
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
fun companyGetFiscaldata(
|
fun companyGetFiscaldata(
|
||||||
userId: Int
|
userId: Int
|
||||||
|
@ -302,8 +319,6 @@ class DeliveryViewModel(val context: Context) : BaseViewModel(context) {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
fun updateNotesFromDropOff(
|
fun updateNotesFromDropOff(
|
||||||
ticketFK: Long, description: String
|
ticketFK: Long, description: String
|
||||||
|
|
||||||
|
|
|
@ -836,5 +836,6 @@
|
||||||
<string name="errorInputQuantity">Error al introducir cantidad</string>
|
<string name="errorInputQuantity">Error al introducir cantidad</string>
|
||||||
<string name="txtName">%1$s %2$s</string>
|
<string name="txtName">%1$s %2$s</string>
|
||||||
<string name="selectPrinterEmergency">La impresora seleccionada es solo para emergencias.¿Estás seguro?</string>
|
<string name="selectPrinterEmergency">La impresora seleccionada es solo para emergencias.¿Estás seguro?</string>
|
||||||
|
<string name="notesClaim">Notas de reclamaciones</string>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -836,5 +836,6 @@
|
||||||
<string name="errorInputQuantity">Error al introducir cantidad</string>
|
<string name="errorInputQuantity">Error al introducir cantidad</string>
|
||||||
<string name="txtName">%1$s %2$s</string>
|
<string name="txtName">%1$s %2$s</string>
|
||||||
<string name="selectPrinterEmergency">La impresora seleccionada es solo para emergencias.¿Estás seguro?</string>
|
<string name="selectPrinterEmergency">La impresora seleccionada es solo para emergencias.¿Estás seguro?</string>
|
||||||
|
<string name="notesClaim">Notas de reclamaciones</string>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -836,5 +836,6 @@
|
||||||
<string name="errorInputQuantity">Error al introducir cantidad</string>
|
<string name="errorInputQuantity">Error al introducir cantidad</string>
|
||||||
<string name="txtName">%1$s %2$s</string>
|
<string name="txtName">%1$s %2$s</string>
|
||||||
<string name="selectPrinterEmergency">La impresora seleccionada es solo para emergencias.¿Estás seguro?</string>
|
<string name="selectPrinterEmergency">La impresora seleccionada es solo para emergencias.¿Estás seguro?</string>
|
||||||
|
<string name="notesClaim">Notas de reclamaciones</string>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -838,5 +838,6 @@
|
||||||
<string name="errorInputQuantity">Error al introducir cantidad</string>
|
<string name="errorInputQuantity">Error al introducir cantidad</string>
|
||||||
<string name="txtName">%1$s %2$s</string>
|
<string name="txtName">%1$s %2$s</string>
|
||||||
<string name="selectPrinterEmergency">La impresora seleccionada es solo para emergencias.¿Estás seguro?</string>
|
<string name="selectPrinterEmergency">La impresora seleccionada es solo para emergencias.¿Estás seguro?</string>
|
||||||
|
<string name="notesClaim">Notas de reclamaciones</string>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
|
Loading…
Reference in New Issue