From f950dd0bd747d551276c338136b783ce0f474dac Mon Sep 17 00:00:00 2001 From: Sergio De la torre Date: Wed, 3 Jan 2024 14:23:19 +0100 Subject: [PATCH] refs #5135: refactor animation --- .../java/es/verdnatura/MobileApplication.kt | 10 +- .../articulo/fragment/ItemCardFragment.kt | 11 +- .../articulo/fragment/ItemCardViewModel.kt | 65 ++------- .../diadeventa/adapter/DayOfSaleAdapter.kt | 4 + .../diadeventa/fragment/DayOfSaleFragment.kt | 68 +++------ .../diadeventa/fragment/DayOfSaleViewModel.kt | 22 --- .../fragment/ItemShelvingLogFragment.kt | 36 ++--- .../fragment/ItemShelvingLogViewModel.kt | 27 +--- .../model/ItemShelvingLog.kt | 2 +- .../fragment/HistoricoVehiculoFragment.kt | 28 ++-- .../fragment/HistoricoVehiculoViewModel.kt | 15 -- .../inventario/fragment/InventaryFragment.kt | 63 +++----- .../inventario/fragment/InventaryViewModel.kt | 135 ++---------------- .../feature/main/activity/MainActivity.kt | 6 +- .../res/layout/fragment_historicovehiculo.xml | 76 +++------- .../main/res/layout/fragment_inventary.xml | 119 ++++++--------- .../layout/fragment_itemdayofsale_card.xml | 109 +++++--------- .../res/layout/fragment_itemshelvinglog.xml | 119 ++++++--------- .../main/res/layout/fragment_shelvinglog.xml | 104 +++----------- .../res/layout/fragment_workermistake.xml | 39 +---- 20 files changed, 270 insertions(+), 788 deletions(-) diff --git a/app/src/main/java/es/verdnatura/MobileApplication.kt b/app/src/main/java/es/verdnatura/MobileApplication.kt index 0b10ee6d..6eda923e 100644 --- a/app/src/main/java/es/verdnatura/MobileApplication.kt +++ b/app/src/main/java/es/verdnatura/MobileApplication.kt @@ -71,14 +71,20 @@ class MobileApplication : Application(), InteceptorListener { if (bool) mpok!!.start() else mperror!!.start() } - fun messageToast(isError: Boolean, message:String) { + fun messageToast(isError: Boolean, message: String) { val playSound = when (isError) { null -> null false -> mpok true -> mperror } playSound?.start() - message.toast(this,color = Color.RED) + message.toast( + this, color = if (isError) { + Color.RED + } else { + Color.BLUE + } + ) } override fun onInterceptionResult(visibility: Int) { diff --git a/app/src/main/java/es/verdnatura/presentation/view/feature/articulo/fragment/ItemCardFragment.kt b/app/src/main/java/es/verdnatura/presentation/view/feature/articulo/fragment/ItemCardFragment.kt index c1becb44..96ba6a76 100644 --- a/app/src/main/java/es/verdnatura/presentation/view/feature/articulo/fragment/ItemCardFragment.kt +++ b/app/src/main/java/es/verdnatura/presentation/view/feature/articulo/fragment/ItemCardFragment.kt @@ -238,11 +238,8 @@ class ItemCardFragment( response.observe(viewLifecycleOwner, Observer { binding.splashProgress.visibility = GONE - if (it.isError) { - ma.messageWithSound(it.errorMessage, true, false) - } else { - getItemCard(itemInfoG!!.id.toString()) - } + getItemCard(itemInfoG!!.id.toString()) + }) addressLosesList.observe(viewLifecycleOwner, Observer { @@ -565,12 +562,11 @@ class ItemCardFragment( //Tarea 5652 , quitar código cuando está asignada tarea val test = true if (test) { - binding.splashProgress.visibility = View.VISIBLE + // binding.splashProgress.visibility = View.VISIBLE viewModel.getAddress() quantityToDiscard = value } else { - println("dardebaja") try { if (itemB.action == "itemStockUpdateRemove") { @@ -686,6 +682,7 @@ class ItemCardFragment( i += 1 } listBarcodes.removeAt(posDelete) + viewModel.barcodesEdit( itemFk = itemInfoG!!.id, value = code, diff --git a/app/src/main/java/es/verdnatura/presentation/view/feature/articulo/fragment/ItemCardViewModel.kt b/app/src/main/java/es/verdnatura/presentation/view/feature/articulo/fragment/ItemCardViewModel.kt index f226b82d..ac32a7d3 100644 --- a/app/src/main/java/es/verdnatura/presentation/view/feature/articulo/fragment/ItemCardViewModel.kt +++ b/app/src/main/java/es/verdnatura/presentation/view/feature/articulo/fragment/ItemCardViewModel.kt @@ -9,9 +9,9 @@ import es.verdnatura.domain.formatWithQuotes import es.verdnatura.presentation.base.BaseViewModel import es.verdnatura.presentation.base.getMessageFromAllResponse import es.verdnatura.presentation.base.nameofFunction +import es.verdnatura.presentation.common.ItemBarCodeSalix import es.verdnatura.presentation.common.ItemDiscardSalixShortage import es.verdnatura.presentation.common.ResponseItemVO -import es.verdnatura.presentation.common.itemBarCodeSalix import es.verdnatura.presentation.view.feature.articulo.model.AddressLoses import es.verdnatura.presentation.view.feature.articulo.model.AddressLosesList import es.verdnatura.presentation.view.feature.articulo.model.ItemCardVO @@ -50,8 +50,10 @@ class ItemCardViewModel(var context: Context) : BaseViewModel(context) { itemFk: Number, warehouseFk: Int, ) { - silex.getItemCard(itemFk, warehouseFk) - .enqueue(object : SilexCallback(context) { + //Tarea 6276 + // salix.getCard(itemFk = itemFk, warehouseFk = warehouseFk) + silex.getItemCard(itemFk, warehouseFk) + .enqueue(object : SalixCallback(context) { override fun onError(t: Throwable) { _itemcard.value = ItemCardVO( 0, @@ -170,13 +172,6 @@ class ItemCardViewModel(var context: Context) : BaseViewModel(context) { ResponseItemVO(isError = false, response = response.message()) } - override fun onError(t: Throwable) { - super.onError(t) - _response.value = ResponseItemVO( - isError = true, - errorMessage = getMessageFromAllResponse(nameofFunction(this), t.message!!) - ) - } }) } @@ -193,13 +188,6 @@ class ItemCardViewModel(var context: Context) : BaseViewModel(context) { ResponseItemVO(isError = false, response = response.message()) } - override fun onError(t: Throwable) { - _response.value = ResponseItemVO( - isError = true, - errorMessage = getMessageFromAllResponse(nameofFunction(this), t.message!!) - ) - } - }) } @@ -226,12 +214,6 @@ class ItemCardViewModel(var context: Context) : BaseViewModel(context) { ) { salix.updateItem(itemFk, hashMapOf("stems" to value)) .enqueue(object : SalixCallback(context) { - override fun onError(t: Throwable) { - _response.value = ResponseItemVO( - isError = true, - errorMessage = getMessageFromAllResponse(nameofFunction(this), t.message!!) - ) - } override fun onSuccess(response: Response) { _response.value = @@ -246,12 +228,6 @@ class ItemCardViewModel(var context: Context) : BaseViewModel(context) { ) { salix.updateItem(itemFk, hashMapOf("comment" to value)) .enqueue(object : SalixCallback(context) { - override fun onError(t: Throwable) { - _response.value = ResponseItemVO( - isError = true, - errorMessage = getMessageFromAllResponse(nameofFunction(this), t.message!!) - ) - } override fun onSuccess(response: Response) { _response.value = ResponseItemVO(isError = false) @@ -263,8 +239,9 @@ class ItemCardViewModel(var context: Context) : BaseViewModel(context) { itemFk: Int, value: String, delete: Boolean - ) {//Tarea 5134 cambiar Silex para obtener el id y así poder hacer un DELETE y un PATCH - // salix.barcodes_edit(idBarcode:Int, ) + ) { + //Tarea 6276 + //salix.barcodesDelete(itemFk = itemFk, barcode = value) silex.barcodes_edit(value, itemFk, delete) .enqueue(object : SilexCallback(context) { override fun onError(t: Throwable) { @@ -288,7 +265,7 @@ class ItemCardViewModel(var context: Context) : BaseViewModel(context) { fun barcodesEditSalix(itemFk: Int, barCodeValue: String) { salix.barcodes_edit( - itemBarCodeSalix(itemFk, barCodeValue) + ItemBarCodeSalix(itemFk, barCodeValue) ) .enqueue(object : SilexCallback(context) { override fun onError(t: Throwable) { @@ -340,29 +317,9 @@ class ItemCardViewModel(var context: Context) : BaseViewModel(context) { fun getAddress() { salix.getAddressSalix("""{ "include": [ { "relation": "address", "scope": { "fields": { "nickname": true } } } ] }""") - .enqueue(object : SilexCallback>(context) { - override fun onError(t: Throwable) { - val listError: ArrayList = ArrayList() - listError.add(AddressLoses(isError = true, errorMessage = t.message!!)) - _addressLosesList.value = AddressLosesList(listError) - } - + .enqueue(object : SalixCallback>(context) { override fun onSuccess(response: Response>) { - if (response.body() != null) { - _addressLosesList.value = response.body()?.let { AddressLosesList(it) } - } else { - val listError: ArrayList = ArrayList() - listError.add( - AddressLoses( - isError = true, - errorMessage = getMessageFromAllResponse( - nameofFunction(this), - response.message() - ) - ) - ) - _addressLosesList.value = AddressLosesList(listError) - } + _addressLosesList.value = response.body()?.let { AddressLosesList(it) } } }) } diff --git a/app/src/main/java/es/verdnatura/presentation/view/feature/diadeventa/adapter/DayOfSaleAdapter.kt b/app/src/main/java/es/verdnatura/presentation/view/feature/diadeventa/adapter/DayOfSaleAdapter.kt index 9e21e394..51b4aec4 100644 --- a/app/src/main/java/es/verdnatura/presentation/view/feature/diadeventa/adapter/DayOfSaleAdapter.kt +++ b/app/src/main/java/es/verdnatura/presentation/view/feature/diadeventa/adapter/DayOfSaleAdapter.kt @@ -1,7 +1,9 @@ package es.verdnatura.presentation.view.feature.diadeventa.adapter +import android.os.Build import android.view.LayoutInflater import android.view.ViewGroup +import androidx.annotation.RequiresApi import androidx.core.content.ContextCompat import androidx.recyclerview.widget.RecyclerView import es.verdnatura.R @@ -30,6 +32,7 @@ class DayOfSaleAdapter( override fun getItemCount() = items.size + @RequiresApi(Build.VERSION_CODES.O) override fun onBindViewHolder(holder: ItemHolder, position: Int) { holder.bind(items[position]) } @@ -38,6 +41,7 @@ class DayOfSaleAdapter( val binding: ItemShelvingdayofsaleRowBinding ) : RecyclerView.ViewHolder(binding.root) { private val res = binding.root.context.resources + @RequiresApi(Build.VERSION_CODES.O) fun bind(item: ItemShelvingSaleDate) { binding.apply { this.item = item diff --git a/app/src/main/java/es/verdnatura/presentation/view/feature/diadeventa/fragment/DayOfSaleFragment.kt b/app/src/main/java/es/verdnatura/presentation/view/feature/diadeventa/fragment/DayOfSaleFragment.kt index 65700706..966ccc70 100644 --- a/app/src/main/java/es/verdnatura/presentation/view/feature/diadeventa/fragment/DayOfSaleFragment.kt +++ b/app/src/main/java/es/verdnatura/presentation/view/feature/diadeventa/fragment/DayOfSaleFragment.kt @@ -3,10 +3,8 @@ package es.verdnatura.presentation.view.feature.diadeventa.fragment import android.content.Context import android.graphics.drawable.Drawable import android.os.Build -import android.view.View import android.view.inputmethod.EditorInfo import android.widget.ImageView -import androidx.lifecycle.Observer import androidx.recyclerview.widget.LinearLayoutManager import es.verdnatura.R import es.verdnatura.databinding.FragmentItemdayofsaleCardBinding @@ -61,7 +59,6 @@ class DayOfSaleFragment( } listIcons.add(iconParking) - binding.mainToolbar.toolbarIcons.adapter = ToolBarAdapterTooltip(listIcons, object : OnOptionsSelectedListener { override fun onOptionsItemSelected(item: Drawable) { @@ -83,8 +80,9 @@ class DayOfSaleFragment( 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.toString().isNullOrEmpty()) { - getItemsSaleDate(binding.scanInput.text.toString()) - itemScan = binding.scanInput.text.toString() + viewModel.itemShelvingGetSaleDate(binding.scanInput.text.toString()) + binding.mainToolbar.toolbarTitle.text = + entryPoint + ":" + binding.scanInput.text.toString().uppercase() } binding.scanInput.setText("") ma.hideKeyboard(binding.scanInput) @@ -93,24 +91,24 @@ class DayOfSaleFragment( false } - binding.mainToolbar.backButton.setOnClickListener { requireActivity().onBackPressed() } } - private fun getItemsSaleDate(vShelvingFK: String) { - binding.splashProgress.visibility = View.VISIBLE - viewModel.itemShelvingGetSaleDate(vShelvingFK) - - } - override fun observeViewModel() { with(viewModel) { - itemShelvingSaleDateList.observe(viewLifecycleOwner, Observer { - binding.splashProgress.visibility = View.GONE + itemShelvingSaleDateList.observe(viewLifecycleOwner) { + if (it.list.isEmpty()) { + customDialog.setTitle(getString(R.string.noResults)) + .setDescription(getString(R.string.wagoonNoSaleToday)) + .setOkButton(getString(R.string.close)) { + customDialog.dismiss() + }.show() + + } adapter = DayOfSaleAdapter( it.list, onPasillerosItemClickListener = pasillerosItemClickListener!! @@ -119,33 +117,13 @@ class DayOfSaleFragment( binding.itemexpeditionstateRecyclerview.layoutManager = LinearLayoutManager(requireContext(), LinearLayoutManager.VERTICAL, false) - if (it.list.isEmpty()) { - customDialog.setTitle(getString(R.string.noResults)) - .setDescription(getString(R.string.wagoonNoSaleToday)) - .setOkButton(getString(R.string.close)) { - customDialog.dismiss() - }.show() - } else { + } - if (it.list.get(0).isError) { - ma.messageWithSound( - it.list.get(0).errorMessage, - it.list.get(0).isError, - isPlayed = false - ) - } - } - - }) - - response.observe(viewLifecycleOwner, Observer { + response.observe(viewLifecycleOwner) { if (it.isError) { - - binding.splashProgress.visibility = View.GONE ma.messageWithSound(it.errorMessage, true, false) } else { - customDialog.setTitle(getString(R.string.info)) .setDescription(getString(R.string.parkingOk)) .setOkButton(getString(R.string.close)) { @@ -154,7 +132,7 @@ class DayOfSaleFragment( } - }) + } } } @@ -169,14 +147,16 @@ class DayOfSaleFragment( customDialogList.dismiss() }.setValue("").show() - customDialogList.getEditText().requestFocus() ma.hideKeyboard(customDialogList.getEditText()) - customDialogList.getEditText().setOnEditorActionListener { _, actionId, _ -> if (actionId == EditorInfo.IME_ACTION_SEARCH || actionId == EditorInfo.IME_ACTION_DONE || actionId == 0 || actionId == 5) { if (customDialogList.getValue().isNotEmpty()) { - parking(customDialogList.getValue()) + viewModel.setParking( + parking = customDialogList.getValue(), + scanItem = itemScan + ) + customDialogList.dismiss() } customDialogList.setValue("") ma.hideKeyboard(customDialogList.getEditText()) @@ -187,14 +167,6 @@ class DayOfSaleFragment( } - fun parking(parking: String) { - viewModel.setParking( - parking = parking, - scanItem = itemScan - ) - customDialogList.dismiss() - } - } diff --git a/app/src/main/java/es/verdnatura/presentation/view/feature/diadeventa/fragment/DayOfSaleViewModel.kt b/app/src/main/java/es/verdnatura/presentation/view/feature/diadeventa/fragment/DayOfSaleViewModel.kt index 5a77c754..83e220a1 100644 --- a/app/src/main/java/es/verdnatura/presentation/view/feature/diadeventa/fragment/DayOfSaleViewModel.kt +++ b/app/src/main/java/es/verdnatura/presentation/view/feature/diadeventa/fragment/DayOfSaleViewModel.kt @@ -13,7 +13,6 @@ import es.verdnatura.presentation.common.Event import es.verdnatura.presentation.common.ResponseItemVO import es.verdnatura.presentation.view.feature.diadeventa.model.ItemShelvingSaleDate import es.verdnatura.presentation.view.feature.diadeventa.model.ItemShelvingSaleDateList -import retrofit2.Call import retrofit2.Response class DayOfSaleViewModel(val context: Context) : BaseViewModel(context) { @@ -77,31 +76,10 @@ class DayOfSaleViewModel(val context: Context) : BaseViewModel(context) { }) } - /* fun getListFromJSON(json: JsonObject): MutableList { - val gson = Gson() - var list = mutableListOf() - var expeditionState: Map = gson.fromJson(json, object : TypeToken>() {}.type) - expeditionState.forEach { - list.add(itemsExpeditionDynamics(key=it.key,value=it.value.toString())) - } - return list - }*/ - fun setParking(scanItem: String, parking: String) { - salix.setParking(arrayListOf(scanItem, parking).formatWithQuotes()) .enqueue(object : SalixCallback(context) { - override fun onResponse(call: Call, response: Response) { - _response.value = ResponseItemVO(isError = false, response = response.message()) - } - - override fun onError(t: Throwable) { - _response.value = ResponseItemVO( - isError = true, - errorMessage = getMessageFromAllResponse(nameofFunction(this), t.message!!) - ) - } }) } diff --git a/app/src/main/java/es/verdnatura/presentation/view/feature/historicoshelving/fragment/ItemShelvingLogFragment.kt b/app/src/main/java/es/verdnatura/presentation/view/feature/historicoshelving/fragment/ItemShelvingLogFragment.kt index c88c64cb..5bc64597 100644 --- a/app/src/main/java/es/verdnatura/presentation/view/feature/historicoshelving/fragment/ItemShelvingLogFragment.kt +++ b/app/src/main/java/es/verdnatura/presentation/view/feature/historicoshelving/fragment/ItemShelvingLogFragment.kt @@ -1,9 +1,7 @@ package es.verdnatura.presentation.view.feature.historicoshelving.fragment import android.content.Context -import android.view.View import android.view.inputmethod.EditorInfo -import androidx.lifecycle.Observer import androidx.recyclerview.widget.LinearLayoutManager import es.verdnatura.R import es.verdnatura.databinding.FragmentItemshelvinglogBinding @@ -32,8 +30,6 @@ class ItemShelvingLogFragment( override fun init() { customDialog = CustomDialog(requireContext()) - // customDialogList = CustomDialogList(requireContext()) - setEvents() setToolBar(getString(R.string.itemShelvingLog)) super.init() @@ -54,7 +50,6 @@ class ItemShelvingLogFragment( 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.toString().isNotEmpty()) { - binding.splashProgress.visibility = View.VISIBLE viewModel.itemShelvingLogGet(binding.scanInput.text.toString()) itemScan = binding.scanInput.text.toString() } @@ -64,7 +59,6 @@ class ItemShelvingLogFragment( } false } - binding.mainToolbar.backButton.setOnClickListener { requireActivity().onBackPressed() } @@ -73,16 +67,7 @@ class ItemShelvingLogFragment( override fun observeViewModel() { with(viewModel) { - itemShelvingLogList.observe(viewLifecycleOwner, Observer { - binding.splashProgress.visibility = View.GONE - adapter = ItemShelvingLogAdapter( - it.list, - onPasillerosItemClickListener = pasillerosItemClickListener!! - ) - binding.itemshelvinglogRecyclerview.adapter = adapter - binding.itemshelvinglogRecyclerview.layoutManager = - LinearLayoutManager(requireContext(), LinearLayoutManager.VERTICAL, false) - setToolBar(getString(R.string.itemShelvingLog) + ":" + itemScan) + itemShelvingLogList.observe(viewLifecycleOwner) { if (it.list.isEmpty()) { customDialog.setTitle(getString(R.string.noResults)) @@ -91,17 +76,16 @@ class ItemShelvingLogFragment( customDialog.dismiss() }.show() } else { - - if (it.list.get(0).isError) { - customDialog.setTitle(getString(R.string.error)) - .setDescription(it.list.get(0).errorMessage) - .setOkButton(getString(R.string.close)) { - customDialog.dismiss() - }.show() - } + adapter = ItemShelvingLogAdapter( + it.list, + onPasillerosItemClickListener = pasillerosItemClickListener!! + ) + binding.itemshelvinglogRecyclerview.adapter = adapter + binding.itemshelvinglogRecyclerview.layoutManager = + LinearLayoutManager(requireContext(), LinearLayoutManager.VERTICAL, false) + setToolBar(getString(R.string.itemShelvingLog) + ":" + itemScan) } - - }) + } } } diff --git a/app/src/main/java/es/verdnatura/presentation/view/feature/historicoshelving/fragment/ItemShelvingLogViewModel.kt b/app/src/main/java/es/verdnatura/presentation/view/feature/historicoshelving/fragment/ItemShelvingLogViewModel.kt index 558bfe18..145ebd95 100644 --- a/app/src/main/java/es/verdnatura/presentation/view/feature/historicoshelving/fragment/ItemShelvingLogViewModel.kt +++ b/app/src/main/java/es/verdnatura/presentation/view/feature/historicoshelving/fragment/ItemShelvingLogViewModel.kt @@ -4,11 +4,9 @@ import android.content.Context import androidx.lifecycle.LiveData import androidx.lifecycle.MutableLiveData import androidx.lifecycle.Transformations -import es.verdnatura.domain.SilexCallback +import es.verdnatura.domain.SalixCallback import es.verdnatura.domain.formatWithQuotes import es.verdnatura.presentation.base.BaseViewModel -import es.verdnatura.presentation.base.getMessageFromAllResponse -import es.verdnatura.presentation.base.nameofFunction import es.verdnatura.presentation.common.Event import es.verdnatura.presentation.view.feature.historicoshelving.model.ItemShelvingLog import es.verdnatura.presentation.view.feature.historicoshelving.model.ItemShelvingLogList @@ -27,30 +25,13 @@ class ItemShelvingLogViewModel(val context: Context) : BaseViewModel(context) { //silex.itemShelvingLog_get(vShelvingFK) salix.itemShelvingLogGet(params = listOf(vShelvingFK).formatWithQuotes()) .enqueue(object : - SilexCallback>(context) { + SalixCallback>(context) { override fun onSuccess(response: Response>) { - if (response.body() != null) { - _itemShelvingLogList.value = response.body()?.let { - ItemShelvingLogList(it) - } - + _itemShelvingLogList.value = response.body()?.let { + ItemShelvingLogList(it) } } - override fun onError(t: Throwable) { - val listError: ArrayList = ArrayList() - listError.add( - ItemShelvingLog( - isError = true, - errorMessage = getMessageFromAllResponse( - nameofFunction(this), - t.message!! - ) - ) - ) - _itemShelvingLogList.value = ItemShelvingLogList(listError) - } - }) } diff --git a/app/src/main/java/es/verdnatura/presentation/view/feature/historicoshelving/model/ItemShelvingLog.kt b/app/src/main/java/es/verdnatura/presentation/view/feature/historicoshelving/model/ItemShelvingLog.kt index 5d270142..efd2cdf7 100644 --- a/app/src/main/java/es/verdnatura/presentation/view/feature/historicoshelving/model/ItemShelvingLog.kt +++ b/app/src/main/java/es/verdnatura/presentation/view/feature/historicoshelving/model/ItemShelvingLog.kt @@ -19,7 +19,7 @@ class ItemShelvingLog( var created: String = "" @RequiresApi(Build.VERSION_CODES.O) get(){ - return field.isoToString(returnOnlyDate = true) + return field.isoToString(returnOnlyDate = false) } } diff --git a/app/src/main/java/es/verdnatura/presentation/view/feature/historicovehiculo/fragment/HistoricoVehiculoFragment.kt b/app/src/main/java/es/verdnatura/presentation/view/feature/historicovehiculo/fragment/HistoricoVehiculoFragment.kt index ecc8e2ed..0d53bf02 100644 --- a/app/src/main/java/es/verdnatura/presentation/view/feature/historicovehiculo/fragment/HistoricoVehiculoFragment.kt +++ b/app/src/main/java/es/verdnatura/presentation/view/feature/historicovehiculo/fragment/HistoricoVehiculoFragment.kt @@ -1,6 +1,8 @@ package es.verdnatura.presentation.view.feature.historicovehiculo.fragment +import android.os.Build import android.view.View +import androidx.annotation.RequiresApi import androidx.lifecycle.Observer import androidx.recyclerview.widget.LinearLayoutManager import es.verdnatura.R @@ -14,7 +16,7 @@ import java.util.Date class HistoricoVehiculoFragment( - var numberPlate: String = "" + private var numberPlate: String = "" ) : BaseFragment( HistoricoVehiculoViewModel::class ) { @@ -37,39 +39,30 @@ class HistoricoVehiculoFragment( super.init() } - private fun setEvents() { binding.mainToolbar.backButton.setOnClickListener { requireActivity().onBackPressed() } } + @RequiresApi(Build.VERSION_CODES.O) override fun observeViewModel() { with(viewModel) { loadHistoricoVehiculoList.observe(viewLifecycleOwner, Observer { event -> event.getContentIfNotHandled().notNull { - binding.splashProgress.visibility = View.GONE - adapter = HistoricoVehiculoAdapter(it.list) - binding.historicovehiculoRecyclerview.adapter = adapter - binding.historicovehiculoRecyclerview.layoutManager = - LinearLayoutManager(requireContext(), LinearLayoutManager.VERTICAL, false) - navigateToToday(it) if (it.list.isEmpty()) { ma.messageWithSound( - getString(R.string.lookWithpermission), true, true, getString( + getString(R.string.lookWithpermission), isError = true, isPlayed = true, getString( R.string.info ) ) } else { - if (it.list[0].isError) { - ma.messageWithSound( - it.list[0].errorMessage, true, true, getString( - R.string.info - ) - ) - - } + adapter = HistoricoVehiculoAdapter(it.list) + binding.historicovehiculoRecyclerview.adapter = adapter + binding.historicovehiculoRecyclerview.layoutManager = + LinearLayoutManager(requireContext(), LinearLayoutManager.VERTICAL, false) + navigateToToday(it) } } @@ -77,6 +70,7 @@ class HistoricoVehiculoFragment( } } + @RequiresApi(Build.VERSION_CODES.O) private fun navigateToToday(it: ItemHistoricoVehiculoList) { var positionToday = 0 val sdf = SimpleDateFormat(getString(R.string.dateFormat)) diff --git a/app/src/main/java/es/verdnatura/presentation/view/feature/historicovehiculo/fragment/HistoricoVehiculoViewModel.kt b/app/src/main/java/es/verdnatura/presentation/view/feature/historicovehiculo/fragment/HistoricoVehiculoViewModel.kt index 0de9b8b5..d8a4557a 100644 --- a/app/src/main/java/es/verdnatura/presentation/view/feature/historicovehiculo/fragment/HistoricoVehiculoViewModel.kt +++ b/app/src/main/java/es/verdnatura/presentation/view/feature/historicovehiculo/fragment/HistoricoVehiculoViewModel.kt @@ -6,8 +6,6 @@ import androidx.lifecycle.Transformations import es.verdnatura.domain.SalixCallback import es.verdnatura.domain.formatWithQuotes import es.verdnatura.presentation.base.BaseViewModel -import es.verdnatura.presentation.base.getMessageFromAllResponse -import es.verdnatura.presentation.base.nameofFunction import es.verdnatura.presentation.common.Event import es.verdnatura.presentation.view.feature.historicovehiculo.model.ItemHistoricoVehiculo import es.verdnatura.presentation.view.feature.historicovehiculo.model.ItemHistoricoVehiculoList @@ -29,19 +27,6 @@ class HistoricoVehiculoViewModel(var context: Context) : BaseViewModel(context) response.body()?.let { ItemHistoricoVehiculoList(it) } } - override fun onError(t: Throwable) { - val listError: ArrayList = ArrayList() - listError.add( - ItemHistoricoVehiculo( - isError = true, - errorMessage = getMessageFromAllResponse( - nameofFunction(this), - t.message!! - ) - ) - ) - _historicovehiculoList.value = ItemHistoricoVehiculoList(listError) - } }) } } diff --git a/app/src/main/java/es/verdnatura/presentation/view/feature/inventario/fragment/InventaryFragment.kt b/app/src/main/java/es/verdnatura/presentation/view/feature/inventario/fragment/InventaryFragment.kt index cdbeb787..faa99570 100644 --- a/app/src/main/java/es/verdnatura/presentation/view/feature/inventario/fragment/InventaryFragment.kt +++ b/app/src/main/java/es/verdnatura/presentation/view/feature/inventario/fragment/InventaryFragment.kt @@ -6,10 +6,10 @@ import android.graphics.drawable.Drawable import android.os.Build import android.view.View import android.widget.ImageView -import androidx.lifecycle.Observer import androidx.recyclerview.widget.LinearLayoutManager import es.verdnatura.R import es.verdnatura.databinding.FragmentInventaryBinding +import es.verdnatura.domain.toast import es.verdnatura.presentation.base.BaseFragment import es.verdnatura.presentation.common.OnInvetoryNichoClickListener import es.verdnatura.presentation.common.OnOptionsSelectedListener @@ -53,17 +53,13 @@ class InventaryFragment : override fun init() { - binding.splashProgress.visibility = View.VISIBLE viewModel.itemShelvingBuyerGet() - binding.filterBuyer.text = getData(BUYER) buyerId = getData(BUYERID) - if (!buyerId.isBlank()) { - binding.splashProgress.visibility = View.VISIBLE + if (buyerId.isNotBlank()) { viewModel.getInventory(buyerId.toInt(), getDataInt(WAREHOUSEFK)) } binding.filterBuyer.setOnClickListener { - //SimpleSearchDialogCompat(context,getString(R.string.compradores),getString(R.string.escribirparteNombre),null,initData(), SimpleSearchDialogCompat(context, getString(R.string.compradores), getString(R.string.escribirparteNombre), @@ -73,27 +69,22 @@ class InventaryFragment : binding.filterBuyer.text = (nombre.title) buyerId = nombre.getBuyerId() - saveBuyer(nombre.getBuyerNickname(),nombre.getBuyerId()) + saveBuyer(nombre.getBuyerNickname(), nombre.getBuyerId()) viewModel.getInventory( nombre.getBuyerId().toInt(), getDataInt(WAREHOUSEFK) ) - binding.splashProgress.visibility = View.VISIBLE baseSearchDialogCompat.dismiss() }).show() } - - customDialogInput = CustomDialogInput(requireContext()) customDialog = CustomDialog(requireContext()) - binding.splashProgress.visibility = View.VISIBLE binding.mainToolbar.toolbarTitle.text = getString(R.string.itemShelvingRadar) setToolBar() setEvents() super.init() } - private fun setToolBar() { ma.hideBottomNavigation(View.GONE) val listIcons: ArrayList = ArrayList() @@ -115,7 +106,6 @@ class InventaryFragment : buyerId.toInt(), getDataInt(WAREHOUSEFK) ) - binding.splashProgress.visibility = View.VISIBLE } else { ma.messageWithSound( getString(R.string.selectBuyer), @@ -125,7 +115,6 @@ class InventaryFragment : ) } - } } @@ -161,7 +150,7 @@ class InventaryFragment : ) || it.producer?.contains( binding.filterItemFk.text.toString(), true - )== true || it.longName?.contains( + ) == true || it.longName?.contains( binding.filterItemFk.text.toString(), ignoreCase = true ) == true @@ -189,13 +178,11 @@ class InventaryFragment : override fun observeViewModel() { with(viewModel) { - buyersList.observe(viewLifecycleOwner, Observer { - binding.splashProgress.visibility = View.GONE + buyersList.observe(viewLifecycleOwner) { createBuyerList(it.list) - }) + } - inventaryList.observe(viewLifecycleOwner, Observer { - binding.splashProgress.visibility = View.GONE + inventaryList.observe(viewLifecycleOwner) { it -> listInvetory = ArrayList() listInvetoryAux = ArrayList() it.list.forEach { @@ -204,14 +191,11 @@ class InventaryFragment : listInvetoryAux.add(it) } } - adapter = InventoryAdapter(listInvetory, object : OnInvetoryNichoClickListener { override fun onInvetoryNichoClickListener(item: ItemInventaryVO) { - customDialog.setTitle(item.itemFk.toString() + "\n" + item.longName) .setDescription(getString(R.string.quantityReal) + item.nicho + ")") .setOkButton(getString(R.string.pull)) { - binding.splashProgress.visibility = View.VISIBLE viewModel.itemTrash( item.itemFk!!.toInt(), getDataInt(WAREHOUSEFK), @@ -238,48 +222,33 @@ class InventaryFragment : ) } - }) + } - response.observe(viewLifecycleOwner, Observer { - binding.splashProgress.visibility = View.GONE - if (it.isError) { - ma.messageWithSound(it.errorMessage, true, true) - - } else { - changeOfflineValue(itemClicked) - } - }) + response.observe(viewLifecycleOwner) { + changeOfflineValue(itemClicked) + } } } - @SuppressLint("NotifyDataSetChanged") private fun changeOfflineValue(item: ItemInventaryVO) { try { listInvetory.removeAt(listInvetory.indexOf(item)) listInvetoryAux.removeAt(listInvetoryAux.indexOf(item)) - } catch (excep: Exception) { + } catch (ex: Exception) { + ex.message!!.toast(requireContext()) } adapter?.notifyDataSetChanged() - } - - //sergio:añadido para compradores private fun createBuyerList(list: List) { items.clear() - list.forEach { buyer -> - if (!buyer.isError) { - try { - items.add(SearchBuyerModel(buyer.nickname, buyer.userFk)) - } catch (e: Exception) { - - } + if (list.isNotEmpty()) + list.forEach { buyer -> + items.add(SearchBuyerModel(buyer.nickname, buyer.userFk)) } - } } - } diff --git a/app/src/main/java/es/verdnatura/presentation/view/feature/inventario/fragment/InventaryViewModel.kt b/app/src/main/java/es/verdnatura/presentation/view/feature/inventario/fragment/InventaryViewModel.kt index 6f5cb947..6b4360ae 100644 --- a/app/src/main/java/es/verdnatura/presentation/view/feature/inventario/fragment/InventaryViewModel.kt +++ b/app/src/main/java/es/verdnatura/presentation/view/feature/inventario/fragment/InventaryViewModel.kt @@ -80,36 +80,9 @@ class InventaryViewModel(val context: Context) : BaseViewModel(context) { //sergio para obtener comprador fun itemShelvingBuyerGet() { salix.getBuyers("""{"order":"nickname"}""").enqueue(object : - SilexCallback>(context) { - override fun onError(t: Throwable) { - val listError: ArrayList = ArrayList() - listError.add( - BuyerVO( - 0, "", - isError = true, - errorMessage = getMessageFromAllResponse(nameofFunction(this), t.message!!) - ) - ) - _buyersList.value = BuyerListVO(listError) - } - + SalixCallback>(context) { override fun onSuccess(response: Response>) { - if (response.body() != null) { - _buyersList.value = response.body()?.let { BuyerListVO(it) } - } else { - val listError: ArrayList = ArrayList() - listError.add( - BuyerVO( - 0, "", - isError = true, - errorMessage = getMessageFromAllResponse( - nameofFunction(this), - response.message() - ) - ) - ) - _buyersList.value = BuyerListVO(listError) - } + _buyersList.value = response.body()?.let { BuyerListVO(it) } } }) @@ -125,20 +98,6 @@ class InventaryViewModel(val context: Context) : BaseViewModel(context) { _inventaryList.value = response.body()?.let { InventaryListVO(it) } } - override fun onError(t: Throwable) { - val listError: ArrayList = ArrayList() - listError.add( - ItemInventaryVO( - isError = true, - errorMessage = getMessageFromAllResponse( - nameofFunction(this), - t.message!! - ) - ) - ) - _inventaryList.value = InventaryListVO(listError) - } - }) } @@ -203,44 +162,16 @@ class InventaryViewModel(val context: Context) : BaseViewModel(context) { _response.value = ResponseItemVO(isError = false, response = response.message()) } - override fun onError(t: Throwable) { - _response.value = ResponseItemVO( - isError = true, - errorMessage = getMessageFromAllResponse(nameofFunction(this), t.message!!) - ) - } }) } - fun department_getHasMistake() { - + fun departmentGetHasMistake() { salix.department_getHasMistake() .enqueue(object : SalixCallback>(context) { - override fun onError(t: Throwable) { - val listError: ArrayList = ArrayList() - listError.add( - DepartmentMistake( - isError = true, - errorMessage = getMessageFromAllResponse( - nameofFunction(this), - t.message!! - ) - ) - ) - _mistakeDepartmentList.value = departmentMistakeList(listError) - } - override fun onSuccess(response: Response>) { - if (response.body() != null) { - _mistakeDepartmentList.value = - response.body()?.let { departmentMistakeList(it) } - } else { - val listError: ArrayList = ArrayList() - listError.add(DepartmentMistake()) - _mistakeDepartmentList.value = departmentMistakeList(listError) - } + _mistakeDepartmentList.value = + response.body()?.let { departmentMistakeList(it) } } - }) } @@ -270,70 +201,26 @@ class InventaryViewModel(val context: Context) : BaseViewModel(context) { }) } - fun workerMistakeType_get() { - //Tarea 5134 + fun workerMistakeTypeGet() { salix.workerMistakesTypes() .enqueue(object : SilexCallback>(context) { - override fun onError(t: Throwable) { - val listError: ArrayList = ArrayList() - listError.add( - MistakeType( - isError = true, - errorMessage = getMessageFromAllResponse( - nameofFunction(this), - t.message!! - ), - description = "" - ) - ) - _mistakeWorkerList.value = workerMistakeTypeList(listError) - } override fun onSuccess(response: Response>) { - if (response.body() != null) { - _mistakeWorkerList.value = - response.body()?.let { workerMistakeTypeList(it) } - } else { - val listError: ArrayList = ArrayList() - listError.add( - MistakeType( - isError = true, - errorMessage = getMessageFromAllResponse( - nameofFunction(this), - response.message() - ), - description = "" - ) - ) - _mistakeWorkerList.value = workerMistakeTypeList(listError) - } + _mistakeWorkerList.value = + response.body()?.let { workerMistakeTypeList(it) } + } }) } - fun workerMistake_Add( + fun workerMistakeAdd( vUserFk: Int, vTypeFk: String ) { salix.workerMistakesAdd(WorkerMistakeSalix(vUserFk, vTypeFk)) .enqueue(object : - SilexCallback(context) { - override fun onError(t: Throwable) { - _responseAddMistake.value = ResponseItemVO( - isError = true, - errorMessage = getMessageFromAllResponse(nameofFunction(this), t.message!!) - ) - } - - override fun onSuccess(response: Response) { - _responseAddMistake.value = - ResponseItemVO( - isError = false, - response = response.message() - ) - - } + SalixCallback(context) { }) } diff --git a/app/src/main/java/es/verdnatura/presentation/view/feature/main/activity/MainActivity.kt b/app/src/main/java/es/verdnatura/presentation/view/feature/main/activity/MainActivity.kt index c9dfa64b..6a83a7e8 100644 --- a/app/src/main/java/es/verdnatura/presentation/view/feature/main/activity/MainActivity.kt +++ b/app/src/main/java/es/verdnatura/presentation/view/feature/main/activity/MainActivity.kt @@ -50,7 +50,7 @@ import es.verdnatura.presentation.view.feature.delivery.model.ClientTicket import es.verdnatura.presentation.view.feature.diadeventa.fragment.DayOfSaleFragment import es.verdnatura.presentation.view.feature.historicoarticulo.fragment.HistoricoArticuloFragment import es.verdnatura.presentation.view.feature.historicoshelving.fragment.ItemShelvingLogFragment -import es.verdnatura.presentation.view.feature.historicoshelvinglog.fragment.shelvingLogFragment +import es.verdnatura.presentation.view.feature.historicoshelvinglog.fragment.ShelvingLogFragment import es.verdnatura.presentation.view.feature.historicovehiculo.fragment.HistoricoVehiculoFragment import es.verdnatura.presentation.view.feature.inventario.fragment.InventaryFragment import es.verdnatura.presentation.view.feature.inventario.fragment.InventaryParkingFragment @@ -83,7 +83,7 @@ import es.verdnatura.presentation.view.feature.ticket.fragment.TicketAdvanceFrag import es.verdnatura.presentation.view.feature.ubicador.fragment.AutomaticAddItemFragment import es.verdnatura.presentation.view.feature.ubicador.fragment.AutomaticAddItemFragmentTEST 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.fragment.WorkermistakeFragment import es.verdnatura.presentation.view.feature.workermistake.fragment.PackingMistakeFragment import kotlinx.coroutines.DelicateCoroutinesApi import kotlinx.coroutines.Dispatchers @@ -637,7 +637,7 @@ class MainActivity : BaseActivity(), OnPasillerosItemClickL } getString(R.string.titleLogShelving) -> { - addFragmentOnTop(shelvingLogFragment.newInstance(item.title)) + addFragmentOnTop(ShelvingLogFragment.newInstance(item.title)) } getString(R.string.titleWorkerMistake) -> { diff --git a/app/src/main/res/layout/fragment_historicovehiculo.xml b/app/src/main/res/layout/fragment_historicovehiculo.xml index e4d131cf..5b7d4a95 100644 --- a/app/src/main/res/layout/fragment_historicovehiculo.xml +++ b/app/src/main/res/layout/fragment_historicovehiculo.xml @@ -1,9 +1,7 @@ - - - + - - + app:layout_constraintTop_toTopOf="parent"> + + android:textSize="@dimen/body2" /> + - + android:textSize="@dimen/body2" /> - - + android:gravity="center" + android:text="@string/OutTimed" + android:textColor="@color/verdnatura_white" + android:textSize="@dimen/body2" /> @@ -65,47 +60,16 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:clipToPadding="false" - tools:listitem="@layout/item_historicovehiculo_row"/> + tools:listitem="@layout/item_historicovehiculo_row" /> - - - ' - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_inventary.xml b/app/src/main/res/layout/fragment_inventary.xml index 12a28097..33ca7084 100644 --- a/app/src/main/res/layout/fragment_inventary.xml +++ b/app/src/main/res/layout/fragment_inventary.xml @@ -1,8 +1,7 @@ - - + + app:layout_constraintTop_toTopOf="parent"> - - - - - + android:layout_height="match_parent" + android:orientation="horizontal"> + + - - + @@ -115,13 +110,10 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:clipToPadding="false" - tools:listitem="@layout/item_inventary_row"/> + tools:listitem="@layout/item_inventary_row" /> - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_itemdayofsale_card.xml b/app/src/main/res/layout/fragment_itemdayofsale_card.xml index f9866a38..9c843b82 100644 --- a/app/src/main/res/layout/fragment_itemdayofsale_card.xml +++ b/app/src/main/res/layout/fragment_itemdayofsale_card.xml @@ -1,16 +1,12 @@ - - - + - - + android:orientation="vertical"> + + android:hint="@string/Escaneaetiqueta" + android:inputType="text" + android:lines="1" + android:maxLines="1" + android:textColor="@color/verdnatura_white" + android:textColorHint="@android:color/darker_gray" /> + + android:textSize="@dimen/body2" /> + android:textSize="@dimen/body2" /> + android:textSize="@dimen/body2" /> + android:textSize="@dimen/body2" /> + android:gravity="center" + android:text="Stock" + android:textColor="@color/verdnatura_white" + android:textSize="@dimen/body2" /> + - @@ -115,47 +110,19 @@ android:clipToPadding="false" android:visibility="visible" tools:listitem="@layout/item_expeditionstate_row" /> - > + + - ' - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_itemshelvinglog.xml b/app/src/main/res/layout/fragment_itemshelvinglog.xml index 1c57e6ee..05f6c68d 100644 --- a/app/src/main/res/layout/fragment_itemshelvinglog.xml +++ b/app/src/main/res/layout/fragment_itemshelvinglog.xml @@ -1,16 +1,12 @@ - - - + - - + android:orientation="vertical"> - - - - + + + android:text="Item" + android:textColor="@color/verdnatura_white" + android:textSize="@dimen/body2" /> - + android:gravity="center" + android:text="Nombre" + android:textColor="@color/verdnatura_white" + android:textSize="@dimen/body2" /> + android:text="Parking" + android:textColor="@color/verdnatura_white" + android:textSize="@dimen/body2" + android:visibility="gone" /> + android:gravity="center" + android:text="Carro" + android:textColor="@color/verdnatura_white" + android:textSize="@dimen/body2" /> - - + android:paddingRight="@dimen/layout_margin_min" + android:text="Cantidad" + android:textColor="@color/verdnatura_white" + android:textSize="@dimen/body2" /> + - + - > + + + - ' - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_shelvinglog.xml b/app/src/main/res/layout/fragment_shelvinglog.xml index 6adfd507..eca6b80d 100644 --- a/app/src/main/res/layout/fragment_shelvinglog.xml +++ b/app/src/main/res/layout/fragment_shelvinglog.xml @@ -1,16 +1,12 @@ - - - + - - + android:orientation="vertical"> - - - - + - - - - - - - + + - - > + + + - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_workermistake.xml b/app/src/main/res/layout/fragment_workermistake.xml index 7f5514b9..0256de6b 100644 --- a/app/src/main/res/layout/fragment_workermistake.xml +++ b/app/src/main/res/layout/fragment_workermistake.xml @@ -3,7 +3,6 @@ xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools"> - @@ -50,7 +49,6 @@ android:layout_width="match_parent" android:layout_weight="1" android:backgroundTint="@android:color/white" - android:drawableEnd="@drawable/ic_arrow_drop_down_black_24dp" android:focusable="false" android:hint="@string/buscarDepartamento" android:inputType="text" @@ -59,12 +57,11 @@ android:textAlignment="center" android:textColor="@color/verdnatura_pumpkin_orange" android:textColorHint="@android:color/darker_gray" - android:visibility="visible" /> - + android:visibility="visible" + app:drawableEndCompat="@drawable/ic_arrow_drop_down_black_24dp" /> - @@ -90,7 +87,7 @@ android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" - android:text="Apellidos" + android:text="@string/surname" android:textColor="@color/verdnatura_white" android:textSize="@dimen/body2" /> @@ -114,9 +111,6 @@ - - ' - - - - - - - - \ No newline at end of file