feat: boxPickingPrepared refs #7855

This commit is contained in:
Sergio De la torre 2024-09-04 12:20:13 +02:00
parent f569c45f80
commit 48a88985ad
14 changed files with 393 additions and 126 deletions

View File

@ -95,6 +95,11 @@
<theme>@style/AppTheme</theme>
</config>
</layout>
<layout url="file://$PROJECT_DIR$/app/src/main/res/layout/fragment_automatic_add_expedition.xml">
<config>
<theme>@style/AppTheme</theme>
</config>
</layout>
<layout url="file://$PROJECT_DIR$/app/src/main/res/layout/fragment_automatic_add_item.xml">
<config>
<theme>@style/AppTheme</theme>
@ -155,6 +160,16 @@
<theme>@style/AppTheme</theme>
</config>
</layout>
<layout url="file://$PROJECT_DIR$/app/src/main/res/layout/fragment_item_expeditionstate_prepared_card.xml">
<config>
<theme>@style/AppTheme</theme>
</config>
</layout>
<layout url="file://$PROJECT_DIR$/app/src/main/res/layout/fragment_itemexpeditionstate_card.xml">
<config>
<theme>@style/AppTheme</theme>
</config>
</layout>
<layout url="file://$PROJECT_DIR$/app/src/main/res/layout/fragment_login.xml">
<config>
<theme>@style/AppTheme</theme>
@ -170,6 +185,16 @@
<theme>@style/AppTheme</theme>
</config>
</layout>
<layout url="file://$PROJECT_DIR$/app/src/main/res/layout/fragment_parking.xml">
<config>
<theme>@style/AppTheme</theme>
</config>
</layout>
<layout url="file://$PROJECT_DIR$/app/src/main/res/layout/fragment_parking_expedition.xml">
<config>
<theme>@style/AppTheme</theme>
</config>
</layout>
<layout url="file://$PROJECT_DIR$/app/src/main/res/layout/fragment_roadmap_truck_list.xml">
<config>
<theme>@style/AppTheme</theme>
@ -226,6 +251,11 @@
<theme>@style/AppTheme</theme>
</config>
</layout>
<layout url="file://$PROJECT_DIR$/app/src/main/res/layout/item_expeditionstate_row.xml">
<config>
<theme>@style/AppTheme</theme>
</config>
</layout>
<layout url="file://$PROJECT_DIR$/app/src/main/res/layout/item_expeditiontruck_row.xml">
<config>
<theme>@style/AppTheme</theme>
@ -338,21 +368,28 @@
</select>
</component>
<component name="ChangeListManager">
<list default="true" id="fa688d1c-dbee-4864-9e33-4d84ef9afca8" name="Default Changelist" comment="feat itemGetBalance refs #6769">
<list default="true" id="fa688d1c-dbee-4864-9e33-4d84ef9afca8" name="Default Changelist" comment="feat: regularizar Parking #7817">
<change afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/paletizador/fragment/ExpeditionPreparedStateFragment.kt" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/src/main/res/drawable/ic_scan_prepared.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/src/main/res/drawable/ic_ubicador_expedition.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/src/main/res/layout/fragment_automatic_add_expedition.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/src/main/res/layout/fragment_parking_expedition.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/appInsightsSettings.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/appInsightsSettings.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/domain/ConstAndValues.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/domain/ConstAndValues.kt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/domain/SalixService.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/domain/SalixService.kt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/ajustes/adapter/AjustesAdapter.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/ajustes/adapter/AjustesAdapter.kt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/ajustes/fragment/AjustesFragment.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/ajustes/fragment/AjustesFragment.kt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/ajustes/fragment/AjustesViewModel.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/ajustes/fragment/AjustesViewModel.kt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/ajustes/model/AjustesItemVO.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/ajustes/model/AjustesItemVO.kt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/viewmodels/DeliveryViewModel.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/viewmodels/DeliveryViewModel.kt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/main/activity/MainActivity.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/main/activity/MainActivity.kt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/main/activity/MainActivityViewModel.kt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/main/model/ItemMenuVO.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/main/model/ItemMenuVO.kt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/paletizador/fragment/ExpeditionScanSorterFragment.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/paletizador/fragment/ExpeditionScanSorterFragment.kt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/paletizador/fragment/ExpeditionScanSorterViewModel.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/paletizador/fragment/ExpeditionScanSorterViewModel.kt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/paletizador/fragment/ExpeditionStateViewModel.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/paletizador/fragment/ExpeditionStateViewModel.kt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/paletizador/fragment/ExpeditionTruckListFragment.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/paletizador/fragment/ExpeditionTruckListFragment.kt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/paletizador/fragment/ExpeditionTruckListViewModel.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/paletizador/fragment/ExpeditionTruckListViewModel.kt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/paletizador/model/ItemExpeditionTruckVO.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/paletizador/model/ItemExpeditionTruckVO.kt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/pasillero/fragment/PasilleroViewModel.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/pasillero/fragment/PasilleroViewModel.kt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/pasillero/model/PasillerosItemVO.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/pasillero/model/PasillerosItemVO.kt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/res/layout/fragment_ajustes.xml" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/res/layout/fragment_ajustes.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/res/layout/fragment_login.xml" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/res/layout/fragment_login.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/ubicador/adapter/AutomaticAdapter.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/ubicador/adapter/AutomaticAdapter.kt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/ubicador/adapter/AutomaticAdapterTEST.kt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/ubicador/fragment/AutomaticAddItemFragment.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/ubicador/fragment/AutomaticAddItemFragment.kt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/res/layout/fragment_automatic_add_item.xml" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/res/layout/fragment_automatic_add_item.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/res/values-es/strings.xml" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/res/values-es/strings.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/res/values-fr/strings.xml" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/res/values-fr/strings.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/res/values-pt/strings.xml" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/res/values-pt/strings.xml" afterDir="false" />
@ -516,62 +553,62 @@
<option name="showLibraryContents" value="true" />
<option name="showMembers" value="true" />
</component>
<component name="PropertiesComponent"><![CDATA[{
"keyToString": {
"Android App.app.executor": "Run",
"ApkExportedModule": "Gestor_Almacén.app",
"DEBUGGABLE_DEVICE": "zebra_technologies-tc21-21114523025303",
"DEBUGGABLE_PROCESS": "es.verdnatura.sfusion",
"DEBUGGER_ID": "Auto",
"ExportApk.ApkPathForGestor_Almacén.app": "C:\\Users\\sergiodt\\AndroidStudioProjects\\vn-warehouseManager\\app",
"Gradle.vn-warehouseManager [clean].executor": "Run",
"Gradle.vn-warehouseManager.executor": "Run",
"KotlinFunctionFindUsagesOptions.isSearchForTextOccurrences": "true",
"PROJECT_TRUSTED_KEY": "true",
"RunOnceActivity.OpenProjectViewOnStart": "true",
"RunOnceActivity.ShowReadmeOnStart": "true",
"RunOnceActivity.cidr.known.project.marker": "true",
"RunOnceActivity.readMode.enableVisualFormatting": "true",
"SHARE_PROJECT_CONFIGURATION_FILES": "true",
"SHOW_ALL_PROCESSES": "false",
"ScreenRecorder.SavePath": "C:\\Users\\sergiodt",
"android-custom-viewC:/Users/sergiodt/.gradle/caches/modules-2/files-2.1/androidx.recyclerview/recyclerview/1.2.1/f0f93e67af3f7417bdd560d5142f6dec4fe629c3/recyclerview-1.2.1-sources.jar!/androidx/recyclerview/widget/RecyclerView.java_SELECTED": "RecyclerView",
"android-custom-viewC:/Users/sergiodt/AppData/Local/Android/Sdk/sources/android-29/android/widget/TextView.java_SELECTED": "TextView",
"android-custom-viewC:/Users/sergiodt/AppData/Local/Android/Sdk/sources/android-33/android/view/View.java_SELECTED": "View",
"android-custom-viewC:/Users/sergiodt/AppData/Local/Android/Sdk/sources/android-34/android/view/View.java_SELECTED": "View",
"android-custom-viewC:/Users/sergiodt/AppData/Local/Android/Sdk/sources/android-34/android/widget/CompoundButton.java_SELECTED": "CompoundButton",
"android-custom-viewC:/Users/sergiodt/AppData/Local/Android/Sdk/sources/android-34/android/widget/TextView.java_SELECTED": "TextView",
"cf.first.check.clang-format": "false",
"cidr.known.project.marker": "true",
"com.developerphil.adbidea.selecteddevices": "G65TY9DQN7X4BIE6",
"com.google.services.firebase.aqiPopupShown": "true",
"git-widget-placeholder": "dev__6078",
"ignore.virus.scanning.warn.message": "true",
"kotlin-language-version-configured": "true",
"last_directory_selection": "C:/Users/sergiodt/AndroidStudioProjects/vn-warehouseManager/app/src/main/res/drawable",
"last_opened_file_path": "C:/Users/sergiodt/AndroidStudioProjects/Rocket.Chat.Android",
"project.structure.last.edited": "Modules",
"project.structure.proportion": "0.17",
"project.structure.side.proportion": "0.2",
"run.code.analysis.last.selected.profile": "pProject Default",
"settings.editor.selected.configurable": "preferences.editor.code.editing"
<component name="PropertiesComponent">{
&quot;keyToString&quot;: {
&quot;Android App.app.executor&quot;: &quot;Run&quot;,
&quot;ApkExportedModule&quot;: &quot;Gestor_Almacén.app&quot;,
&quot;DEBUGGABLE_DEVICE&quot;: &quot;zebra_technologies-tc21-21114523025303&quot;,
&quot;DEBUGGABLE_PROCESS&quot;: &quot;es.verdnatura.sfusion&quot;,
&quot;DEBUGGER_ID&quot;: &quot;Auto&quot;,
&quot;ExportApk.ApkPathForGestor_Almacén.app&quot;: &quot;C:\\Users\\sergiodt\\AndroidStudioProjects\\vn-warehouseManager\\app&quot;,
&quot;Gradle.vn-warehouseManager [clean].executor&quot;: &quot;Run&quot;,
&quot;Gradle.vn-warehouseManager.executor&quot;: &quot;Run&quot;,
&quot;KotlinFunctionFindUsagesOptions.isSearchForTextOccurrences&quot;: &quot;true&quot;,
&quot;PROJECT_TRUSTED_KEY&quot;: &quot;true&quot;,
&quot;RunOnceActivity.OpenProjectViewOnStart&quot;: &quot;true&quot;,
&quot;RunOnceActivity.ShowReadmeOnStart&quot;: &quot;true&quot;,
&quot;RunOnceActivity.cidr.known.project.marker&quot;: &quot;true&quot;,
&quot;RunOnceActivity.readMode.enableVisualFormatting&quot;: &quot;true&quot;,
&quot;SHARE_PROJECT_CONFIGURATION_FILES&quot;: &quot;true&quot;,
&quot;SHOW_ALL_PROCESSES&quot;: &quot;false&quot;,
&quot;ScreenRecorder.SavePath&quot;: &quot;C:\\Users\\sergiodt&quot;,
&quot;android-custom-viewC:/Users/sergiodt/.gradle/caches/modules-2/files-2.1/androidx.recyclerview/recyclerview/1.2.1/f0f93e67af3f7417bdd560d5142f6dec4fe629c3/recyclerview-1.2.1-sources.jar!/androidx/recyclerview/widget/RecyclerView.java_SELECTED&quot;: &quot;RecyclerView&quot;,
&quot;android-custom-viewC:/Users/sergiodt/AppData/Local/Android/Sdk/sources/android-29/android/widget/TextView.java_SELECTED&quot;: &quot;TextView&quot;,
&quot;android-custom-viewC:/Users/sergiodt/AppData/Local/Android/Sdk/sources/android-33/android/view/View.java_SELECTED&quot;: &quot;View&quot;,
&quot;android-custom-viewC:/Users/sergiodt/AppData/Local/Android/Sdk/sources/android-34/android/view/View.java_SELECTED&quot;: &quot;View&quot;,
&quot;android-custom-viewC:/Users/sergiodt/AppData/Local/Android/Sdk/sources/android-34/android/widget/CompoundButton.java_SELECTED&quot;: &quot;CompoundButton&quot;,
&quot;android-custom-viewC:/Users/sergiodt/AppData/Local/Android/Sdk/sources/android-34/android/widget/TextView.java_SELECTED&quot;: &quot;TextView&quot;,
&quot;cf.first.check.clang-format&quot;: &quot;false&quot;,
&quot;cidr.known.project.marker&quot;: &quot;true&quot;,
&quot;com.developerphil.adbidea.selecteddevices&quot;: &quot;G65TY9DQN7X4BIE6&quot;,
&quot;com.google.services.firebase.aqiPopupShown&quot;: &quot;true&quot;,
&quot;git-widget-placeholder&quot;: &quot;dev__6078&quot;,
&quot;ignore.virus.scanning.warn.message&quot;: &quot;true&quot;,
&quot;kotlin-language-version-configured&quot;: &quot;true&quot;,
&quot;last_directory_selection&quot;: &quot;C:/Users/sergiodt/AndroidStudioProjects/vn-warehouseManager/app/src/main/res/drawable&quot;,
&quot;last_opened_file_path&quot;: &quot;C:/Users/sergiodt/AndroidStudioProjects/vn-warehouseManager/app/src/main/res/layout&quot;,
&quot;project.structure.last.edited&quot;: &quot;Modules&quot;,
&quot;project.structure.proportion&quot;: &quot;0.17&quot;,
&quot;project.structure.side.proportion&quot;: &quot;0.2&quot;,
&quot;run.code.analysis.last.selected.profile&quot;: &quot;pProject Default&quot;,
&quot;settings.editor.selected.configurable&quot;: &quot;preferences.editor.code.editing&quot;
},
"keyToStringList": {
"ExportApk.BuildVariants": [
"betaRelease"
&quot;keyToStringList&quot;: {
&quot;ExportApk.BuildVariants&quot;: [
&quot;betaRelease&quot;
],
"com.android.tools.idea.sqlite.queryhistory": [
"select * from expedition where routeFk=182933;",
"select * from expedition;",
"select * from expeditionPending;",
"select * from expedition where id = 7753995;\n\n",
"\nselect * from expedition where id = 7753995;"
&quot;com.android.tools.idea.sqlite.queryhistory&quot;: [
&quot;select * from expedition where routeFk=182933;&quot;,
&quot;select * from expedition;&quot;,
&quot;select * from expeditionPending;&quot;,
&quot;select * from expedition where id = 7753995;\n\n&quot;,
&quot;\nselect * from expedition where id = 7753995;&quot;
],
"kotlin-gradle-user-dirs": [
"C:\\Users\\sergiodt\\.gradle"
&quot;kotlin-gradle-user-dirs&quot;: [
&quot;C:\\Users\\sergiodt\\.gradle&quot;
]
}
}]]></component>
}</component>
<component name="PsdUISettings">
<option name="MODULE_TAB" value="Properties" />
<option name="LAST_EDITED_SIGNING_CONFIG" value="debug" />
@ -579,9 +616,9 @@
</component>
<component name="RecentsManager">
<key name="CopyFile.RECENT_KEYS">
<recent name="C:\Users\sergiodt\AndroidStudioProjects\vn-warehouseManager\app\src\main\res\layout" />
<recent name="C:\Users\sergiodt\AndroidStudioProjects\vn-warehouseManager\app\src\main\res\drawable" />
<recent name="C:\Users\sergiodt\AndroidStudioProjects\vn-warehouseManager\app\src\main\java\es\verdnatura\domain" />
<recent name="C:\Users\sergiodt\AndroidStudioProjects\vn-warehouseManager\app\src\main\res\layout" />
<recent name="C:\Users\sergiodt\AndroidStudioProjects\vn-warehouseManager\app\src\main\res\xml" />
<recent name="C:\Users\sergiodt\AndroidStudioProjects\vn-warehouseManager\app\src\main\res\raw" />
</key>
@ -600,11 +637,11 @@
<recent name="es.verdnatura.presentation.view.feature.historicoshelving.fragment" />
</key>
<key name="CopyKotlinDeclarationDialog.RECENTS_KEY">
<recent name="es.verdnatura.presentation.view.feature.paletizador.fragment" />
<recent name="es.verdnatura.presentation.view.feature.parking.fragment" />
<recent name="es.verdnatura.presentation.view.feature.collection.fragment" />
<recent name="es.verdnatura.domain" />
<recent name="es.verdnatura.presentation.view.feature.truck.adapter" />
<recent name="es.verdnatura.presentation.view.feature.truck.fragment" />
<recent name="es.verdnatura.presentation.view.feature.main.activity" />
</key>
<key name="CopyClassDialog.RECENTS_KEY">
<recent name="es.verdnatura.presentation.view.feature.delivery.activity" />
@ -1198,7 +1235,7 @@
<entry key="branch">
<value>
<list>
<option value="dev" />
<option value="dev_6078" />
</list>
</value>
</entry>
@ -1269,7 +1306,7 @@
<line-breakpoint enabled="true" type="kotlin-function">
<url>file://$PROJECT_DIR$/app/src/main/java/es/verdnatura/domain/SalixCallback.kt</url>
<line>72</line>
<properties class="es.verdnatura.domain.SalixCallback" method="errorSalixMessage">
<properties class="es.verdnatura.domain.SalixCallback" method="onError">
<option name="WATCH_EXIT" value="false" />
</properties>
<option name="timeStamp" value="11" />

View File

@ -212,6 +212,7 @@ class DeliveryViewModel(val context: Context) : BaseViewModel(context) {
// No se quita ResponseItem ya que en caso de fallo hay que guardar datos
salix.addExpeditionState(expeditions).enqueue(object : SalixCallback<Unit>(context) {
override fun onSuccess(response: Response<Unit>) {
super.onSuccess(response)
_responseStateAdd.value = ResponseItemVO("", false, "", 0)
}

View File

@ -98,6 +98,7 @@ import es.verdnatura.presentation.view.feature.packingHolland.fragment.PackingHo
import es.verdnatura.presentation.view.feature.paletizador.fragment.CmrExpeditionPalletFragment
import es.verdnatura.presentation.view.feature.paletizador.fragment.ExpeditionPalletDetailFragment
import es.verdnatura.presentation.view.feature.paletizador.fragment.ExpeditionPalletFragment
import es.verdnatura.presentation.view.feature.paletizador.fragment.ExpeditionPreparedStateFragment
import es.verdnatura.presentation.view.feature.paletizador.fragment.ExpeditionScanFragment
import es.verdnatura.presentation.view.feature.paletizador.fragment.ExpeditionScanSorterFragment
import es.verdnatura.presentation.view.feature.paletizador.fragment.ExpeditionStateFragment
@ -659,6 +660,11 @@ class MainActivity : BaseActivity<ActivityMainBinding>(), OnPasillerosItemClickL
addFragmentOnTop(UbicadorFragmentNew.newInstance(entryPoint))
}
//Tarea 7855
getString(R.string.scanPreparedExpedition) -> {
addFragmentOnTop(ExpeditionPreparedStateFragment.newInstance())
}
getString(R.string.titleAuto) -> {
addFragmentOnTop(AutomaticAddItemFragment.newInstance(entryPoint, item.title))
}

View File

@ -0,0 +1,133 @@
package es.verdnatura.presentation.view.feature.paletizador.fragment
import android.view.KeyEvent
import android.view.View
import android.view.inputmethod.EditorInfo
import androidx.recyclerview.widget.LinearLayoutManager
import es.verdnatura.R
import es.verdnatura.databinding.FragmentAutomaticAddExpeditionBinding
import es.verdnatura.presentation.base.BaseFragment
import es.verdnatura.presentation.common.OnAutomaticItemClickListener
import es.verdnatura.presentation.common.itemScanValue
import es.verdnatura.presentation.view.feature.delivery.model.ExpeditionSalix
import es.verdnatura.presentation.view.feature.delivery.model.Expeditions
import es.verdnatura.presentation.view.feature.delivery.viewmodels.DeliveryViewModel
import es.verdnatura.presentation.view.feature.ubicador.adapter.AutomaticAdapter
@Suppress("UNUSED_ANONYMOUS_PARAMETER")
class ExpeditionPreparedStateFragment(
) : BaseFragment<FragmentAutomaticAddExpeditionBinding, DeliveryViewModel>(
DeliveryViewModel::class
) {
private var adapter: AutomaticAdapter? = null
private var contador = 0
private var isScanned = false
private val listExpeditions: ArrayList<ExpeditionSalix> = arrayListOf()
companion object {
fun newInstance() = ExpeditionPreparedStateFragment()
}
override fun getLayoutId(): Int = R.layout.fragment_automatic_add_expedition
override fun init() {
ma.hideBottomNavigation(View.GONE)
binding.mainToolbar.toolbarTitle.text = getString(R.string.scanExpeditions)
setEvents()
setViews()
setToolBar()
super.init()
}
private fun setToolBar() {
binding.mainToolbar.toolbarSubtitle.visibility = View.VISIBLE
}
private fun setSubtitle() {
binding.mainToolbar.toolbarSubtitle.text =
getString(R.string.countNumber, getString(R.string.label), contador)
}
private fun setViews() {
adapter =
AutomaticAdapter(listExpeditions.map { it.expeditionFk.toLong() } as ArrayList<Long>,
object : OnAutomaticItemClickListener {
override fun onAutomaticItemClickListener(position: Int) {
contador -= 1
setSubtitle()
if (listExpeditions.size > position) {
listExpeditions.removeAt(position)
}
adapter!!.updateItems(listExpeditions.map { it.expeditionFk.toLong() } as ArrayList<Long>)
}
})
binding.itemsRecyclerview.adapter = adapter
binding.itemsRecyclerview.layoutManager =
LinearLayoutManager(requireContext(), LinearLayoutManager.VERTICAL, false)
}
private fun setEvents() {
binding.editMatricula.requestFocus()
binding.editMatricula.setOnEditorActionListener { v, actionId, event ->
if (actionId == EditorInfo.IME_ACTION_SEARCH || actionId == EditorInfo.IME_ACTION_DONE || actionId == 0 || actionId == 5) {
isScanned =
event != null && event.action == KeyEvent.ACTION_DOWN && event.keyCode == KeyEvent.KEYCODE_ENTER
if (binding.editMatricula.text.toString().isNotEmpty()) {
contador += 1
setSubtitle()
try {
listExpeditions.add(
ExpeditionSalix(
expeditionFk = itemScanValue(
textScanned_filterDouble(binding.editMatricula.text.toString()),
arrayOf("expedition"),
"id"
).toString().toLong(), stateCode = "PREPARED", isScanned = 0
)
)
adapter!!.updateItems(listExpeditions.map { it.expeditionFk.toLong() } as ArrayList<Long>)
binding.itemsRecyclerview.scrollToPosition(0)
} catch (ex: Exception) {
ma.messageWithSound(ex.message.toString(), isError = true, isPlayed = true)
}
}
binding.editMatricula.setText("")
ma.hideKeyboard(binding.editMatricula)
return@setOnEditorActionListener true
} else {
ma.messageWithSound(
getString(R.string.diferentAction), isError = true, isPlayed = true
)
}
return@setOnEditorActionListener false
}
binding.buttonFinalizar.setOnClickListener {
if (listExpeditions.isNotEmpty()) viewModel.expeditionStateAddSalix(
Expeditions(
listExpeditions
)
) else ma.onMyBackPressed()
}
binding.mainToolbar.backButton.setOnClickListener {
ma.onMyBackPressed()
}
}
override fun observeViewModel() {
with(viewModel) {
responseStateAdd.observe(viewLifecycleOwner) {
ma.onMyBackPressed()
}
}
}
}

View File

@ -12,6 +12,7 @@ import es.verdnatura.presentation.base.BaseViewModel
import es.verdnatura.presentation.common.ResponseItemVO
import es.verdnatura.presentation.view.feature.pasillero.model.CodeWorkerAction
import es.verdnatura.presentation.view.feature.pasillero.model.PasillerosItemVO
import es.verdnatura.presentation.view.feature.pasillero.model.WorkerActionSalix
import retrofit2.Response
class PasilleroViewModel(context: Context) : BaseViewModel(context) {
@ -78,6 +79,17 @@ class PasilleroViewModel(context: Context) : BaseViewModel(context) {
)
)
//tarea 7855
/* _pasillerositem.add(
PasillerosItemVO(
1,
R.drawable.ic_scan_prepared,
contextApp.getString(R.string.scanPreparedExpedition),
R.string.scanPreparedExpedition,
contextApp.getString(R.string.scanPreparedExpedition)
)
)*/
_pasillerositem.add(
PasillerosItemVO(
@ -757,13 +769,13 @@ class PasilleroViewModel(context: Context) : BaseViewModel(context) {
codeActivity: CodeWorkerAction
) {
//Tarea 6078
/* salix.workerActivityAdd(WorkerActionSalix(codeActivity.toString()))
salix.workerActivityAdd(WorkerActionSalix(codeActivity.toString()))
.enqueue(object : SalixCallback<Any>(contextApp) {
override fun onSuccess(response: Response<Any>) {
}
})*/
})
}

View File

@ -5,20 +5,23 @@ import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView
import es.verdnatura.databinding.ItemEscanerRowBinding
import es.verdnatura.presentation.common.OnAutomaticItemClickListener
import es.verdnatura.presentation.view.feature.ubicador.model.ItemEscanerVO
class AutomaticAdapter(
private val items: List<ItemEscanerVO>,
private var items: List<Long>,
private val onAutomaticItemClickListener: OnAutomaticItemClickListener
) : RecyclerView.Adapter<AutomaticAdapter.ItemHolder>() {
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ItemHolder {
return ItemHolder(
ItemEscanerRowBinding.inflate(LayoutInflater.from(parent.context), parent, false)
)
}
fun updateItems( list: List<Long>){
items = list
notifyDataSetChanged()
}
override fun getItemCount() = items.size
override fun onBindViewHolder(holder: ItemHolder, position: Int) {
@ -32,10 +35,12 @@ class AutomaticAdapter (
val binding: ItemEscanerRowBinding
) : RecyclerView.ViewHolder(binding.root) {
private val res = binding.root.context.resources
fun bind(item: ItemEscanerVO) {
binding.apply {
fun bind(item: Long) {
binding.itemfkText.text = item.toString()
/* binding.apply {
this.item = item
}
}*/
}
}
}

View File

@ -1,41 +0,0 @@
package es.verdnatura.presentation.view.feature.ubicador.adapter
import android.view.LayoutInflater
import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView
import es.verdnatura.databinding.ItemEscanerRowBinding
import es.verdnatura.presentation.common.OnAutomaticItemClickListener
class AutomaticAdapterTEST(
private val items: List<Long>,
private val onAutomaticItemClickListener: OnAutomaticItemClickListener
) : RecyclerView.Adapter<AutomaticAdapterTEST.ItemHolder>() {
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ItemHolder {
return ItemHolder(
ItemEscanerRowBinding.inflate(LayoutInflater.from(parent.context), parent, false)
)
}
override fun getItemCount() = items.size
override fun onBindViewHolder(holder: ItemHolder, position: Int) {
holder.bind(items[position])
holder.binding.root.setOnClickListener {
onAutomaticItemClickListener.onAutomaticItemClickListener(position)
}
}
inner class ItemHolder(
val binding: ItemEscanerRowBinding
) : RecyclerView.ViewHolder(binding.root) {
private val res = binding.root.context.resources
fun bind(item: Long) {
binding.itemfkText.text = item.toString()
/* binding.apply {
this.item = item
}*/
}
}
}

View File

@ -10,7 +10,7 @@ import es.verdnatura.domain.ConstAndValues.WAREHOUSEFK
import es.verdnatura.presentation.base.BaseFragment
import es.verdnatura.presentation.common.OnAutomaticItemClickListener
import es.verdnatura.presentation.common.itemScanValue
import es.verdnatura.presentation.view.feature.ubicador.adapter.AutomaticAdapterTEST
import es.verdnatura.presentation.view.feature.ubicador.adapter.AutomaticAdapter
import java.lang.Boolean.TRUE
@Suppress("UNUSED_ANONYMOUS_PARAMETER")
@ -21,7 +21,7 @@ class AutomaticAddItemFragment(
AutomaticAddItemViewModel::class
) {
private var adapter: AutomaticAdapterTEST? = null
private var adapter: AutomaticAdapter? = null
private var listItems: ArrayList<Long> = ArrayList()
private var contador = 0
@ -50,7 +50,7 @@ class AutomaticAddItemFragment(
}
private fun setViews() {
adapter = AutomaticAdapterTEST(listItems, object : OnAutomaticItemClickListener {
adapter = AutomaticAdapter(listItems, object : OnAutomaticItemClickListener {
override fun onAutomaticItemClickListener(position: Int) {
contador -= 1
setSubtitle()

View File

@ -0,0 +1,88 @@
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools">
<data>
<variable
name="viewModel"
type="es.verdnatura.presentation.view.feature.ubicador.model.ItemUbicadorVO" />
</data>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingTop="@dimen/toolbar_height"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/textinputlayout_matricula"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:textColorHint="@android:color/darker_gray">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/edit_matricula"
style="@style/InputLineTextSearch"
android:layout_width="match_parent"
android:backgroundTint="@android:color/white"
android:hint="@string/scanLabelExpedition"
android:inputType="text"
android:lines="1"
android:maxLines="1"
android:textColor="@color/verdnatura_white"
android:textColorHint="@android:color/darker_gray" />
</com.google.android.material.textfield.TextInputLayout>
<Button
android:id="@+id/button_finalizar"
style="@style/DefaultButton"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginEnd="16dp"
android:layout_weight="1"
android:background="@drawable/btn_orange"
android:text="@string/end"
android:textColor="@color/verdnatura_white"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/textview_remember_user" />
</LinearLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/items_recyclerview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:clipToPadding="false"
tools:listitem="@layout/item_escaner_row" />
</LinearLayout>
<include
android:id="@+id/main_toolbar"
layout="@layout/toolbar_fragment"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
</layout>

View File

@ -42,7 +42,7 @@
style="@style/InputLineTextSearch"
android:layout_width="match_parent"
android:backgroundTint="@android:color/white"
android:hint="@string/Escaneamatricula"
android:hint="@string/scanLabel"
android:inputType="text"
android:lines="1"
android:maxLines="1"

View File

@ -854,5 +854,12 @@
<string name="errorSignActivity">Vuelve a pulsar para intentar firmar</string>
<string name="runActivityStop">Iniciar parada</string>
<string name="errorEntriesNotification">Vuelve a intentarlo. Datos guardados pero no se ha enviado notificación</string>
<string name="scanLabel">Escanea etiqueta</string>
<string name="scanPreparedExpedition">Escanear cajas preparadas</string>
<string name="txtParkingExpedition">Escanea las expediciones y la matrícula del carro</string>
<string name="countNumber">%1$s%2$d</string>
<string name="diferentAction">ACTION ID DIFERENTE</string>
<string name="scanExpeditions">Escanear cajas</string>
</resources>

View File

@ -854,5 +854,11 @@
<string name="errorSignActivity">Vuelve a pulsar para intentar firmar</string>
<string name="runActivityStop">Iniciar parada</string>
<string name="errorEntriesNotification">Vuelve a intentarlo. Datos guardados pero no se ha enviado notificación</string>
<string name="scanLabel">Escanea etiqueta</string>
<string name="scanPreparedExpedition">Escanear cajas preparadas</string>
<string name="txtParkingExpedition">Escanea las expediciones y la matrícula del carro</string>
<string name="countNumber">%1$s%2$d</string>
<string name="diferentAction">ACTION ID DIFERENTE</string>
<string name="scanExpeditions">Escanear cajas</string>
</resources>

View File

@ -854,5 +854,12 @@
<string name="errorSignActivity">Vuelve a pulsar para intentar firmar</string>
<string name="runActivityStop">Iniciar parada</string>
<string name="errorEntriesNotification">Vuelve a intentarlo. Datos guardados pero no se ha enviado notificación</string>
<string name="scanLabel">Escanea etiqueta</string>
<string name="scanPreparedExpedition">Escanear cajas preparadas</string>
<string name="txtParkingExpedition">Escanea las expediciones y la matrícula del carro</string>
<string name="countNumber">%1$s%2$d</string>
<string name="diferentAction">ACTION ID DIFERENTE</string>
<string name="scanExpeditions">Escanear cajas</string>
</resources>

View File

@ -856,5 +856,11 @@
<string name="errorSignActivity">Vuelve a pulsar para intentar firmar</string>
<string name="runActivityStop">Iniciar parada</string>
<string name="errorEntriesNotification">Vuelve a intentarlo. Datos guardados pero no se ha enviado notificación</string>
<string name="scanLabel">Escanea etiqueta</string>
<string name="txtParkingExpedition">Escanea las expediciones y la matrícula del carro</string>
<string name="countNumber">%1$s%2$d</string>
<string name="diferentAction">ACTION ID DIFERENTE</string>
<string name="scanPreparedExpedition">Escanear cajas preparadas</string>
<string name="scanExpeditions">Escanear cajas</string>
</resources>