refs #4677 delivery→picking
This commit is contained in:
parent
c014dbfd2d
commit
0c65053b4f
|
@ -1,17 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
|
||||||
<component name="deploymentTargetDropDown">
|
|
||||||
<runningDeviceTargetSelectedWithDropDown>
|
|
||||||
<Target>
|
|
||||||
<type value="RUNNING_DEVICE_TARGET" />
|
|
||||||
<deviceKey>
|
|
||||||
<Key>
|
|
||||||
<type value="SERIAL_NUMBER" />
|
|
||||||
<value value="21114523025303" />
|
|
||||||
</Key>
|
|
||||||
</deviceKey>
|
|
||||||
</Target>
|
|
||||||
</runningDeviceTargetSelectedWithDropDown>
|
|
||||||
<timeTargetWasSelectedWithDropDown value="2023-07-20T08:53:09.136304500Z" />
|
|
||||||
</component>
|
|
||||||
</project>
|
|
|
@ -82,22 +82,39 @@
|
||||||
</select>
|
</select>
|
||||||
</component>
|
</component>
|
||||||
<component name="ChangeListManager">
|
<component name="ChangeListManager">
|
||||||
<list default="true" id="fa688d1c-dbee-4864-9e33-4d84ef9afca8" name="Default Changelist" comment="refs #4676 delivery->picking">
|
<list default="true" id="fa688d1c-dbee-4864-9e33-4d84ef9afca8" name="Default Changelist" comment="refs #5891 inventoryParking">
|
||||||
<change afterPath="$PROJECT_DIR$/.idea/deploymentTargetDropDown.xml" afterDir="false" />
|
<change afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/component/CustomDialogInputNotes.kt" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/adapters/TicketAdapter.kt" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/fragments/TicketsFragment.kt" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/model/ClientTicket.kt" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/ubicador/adapter/AutomaticAdapterTEST.kt" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/ubicador/fragment/AutomaticAddItemFragmentTEST.kt" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/app/src/main/res/drawable/ic_location.xml" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/app/src/main/res/drawable/ic_note.xml" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/app/src/main/res/drawable/ic_note_add.xml" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/app/src/main/res/drawable/ic_phone.xml" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/app/src/main/res/layout/component_custom_edit_dialog_notes.xml" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/app/src/main/res/layout/fragment_route_config.xml" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/app/src/main/res/layout/fragment_tickets.xml" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/app/src/main/res/layout/item_ticket_row.xml" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/app/src/main/res/layout/item_ticket_sub_row.xml" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/.idea/deploymentTargetDropDown.xml" beforeDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.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/beta/release/output-metadata.json" beforeDir="false" afterPath="$PROJECT_DIR$/app/beta/release/output-metadata.json" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/app/beta/release/output-metadata.json" beforeDir="false" afterPath="$PROJECT_DIR$/app/beta/release/output-metadata.json" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/app/build.gradle" beforeDir="false" afterPath="$PROJECT_DIR$/app/build.gradle" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/app/build.gradle" beforeDir="false" afterPath="$PROJECT_DIR$/app/build.gradle" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/domain/SilexCallback.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/domain/SilexCallback.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/base/BaseFragment.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/base/BaseFragment.kt" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/domain/VerdnaturaService.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/domain/VerdnaturaService.kt" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/common/NetworkUtils.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/common/NetworkUtils.kt" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/common/UICallbacks.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/common/UICallbacks.kt" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/adapters/ExpeditionSummaryAdapter.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/adapters/ExpeditionSummaryAdapter.kt" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/common/UIExtensions.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/common/UIExtensions.kt" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/adapters/RouteAdapter.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/adapters/RouteAdapter.kt" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/fragments/RoutesFragment.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/fragments/RoutesFragment.kt" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/fragments/LoadUnloadFragment.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/delivery/fragments/LoadUnloadFragment.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/login/fragment/LoginFragment.kt" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/es/verdnatura/presentation/view/feature/login/fragment/LoginFragment.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/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/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/res/layout/fragment_expedition_summary.xml" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/res/layout/fragment_expedition_summary.xml" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/app/src/main/res/layout/item_escaner_row.xml" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/res/layout/item_escaner_row.xml" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/app/src/main/res/layout/fragment_route.xml" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/res/layout/fragment_route.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/layout/item_route_row.xml" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/res/layout/item_route_row.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" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/app/src/main/res/values/strings.xml" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/res/values/strings.xml" afterDir="false" />
|
||||||
</list>
|
</list>
|
||||||
<option name="SHOW_DIALOG" value="false" />
|
<option name="SHOW_DIALOG" value="false" />
|
||||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||||
|
@ -108,7 +125,7 @@
|
||||||
<component name="CodeInsightWorkspaceSettings">
|
<component name="CodeInsightWorkspaceSettings">
|
||||||
<option name="optimizeImportsOnTheFly" value="true" />
|
<option name="optimizeImportsOnTheFly" value="true" />
|
||||||
</component>
|
</component>
|
||||||
<component name="ExecutionTargetManager" SELECTED_TARGET="device_and_snapshot_combo_box_target[21114523025303]" />
|
<component name="ExecutionTargetManager" SELECTED_TARGET="device_and_snapshot_combo_box_target[C:\Users\sergiodt\.android\avd\Pixel_6_API_30.avd]" />
|
||||||
<component name="ExportToHTMLSettings">
|
<component name="ExportToHTMLSettings">
|
||||||
<option name="OPEN_IN_BROWSER" value="true" />
|
<option name="OPEN_IN_BROWSER" value="true" />
|
||||||
<option name="OUTPUT_DIRECTORY" value="C:\Program Files\Android\Android Studio\inspections" />
|
<option name="OUTPUT_DIRECTORY" value="C:\Program Files\Android\Android Studio\inspections" />
|
||||||
|
@ -253,41 +270,41 @@
|
||||||
<option name="showLibraryContents" value="true" />
|
<option name="showLibraryContents" value="true" />
|
||||||
<option name="showMembers" value="true" />
|
<option name="showMembers" value="true" />
|
||||||
</component>
|
</component>
|
||||||
<component name="PropertiesComponent"><![CDATA[{
|
<component name="PropertiesComponent">{
|
||||||
"keyToString": {
|
"keyToString": {
|
||||||
"ApkExportedModule": "Gestor_Almacén.app",
|
"ApkExportedModule": "Gestor_Almacén.app",
|
||||||
"ExportApk.ApkPathForGestor_Almacén.app": "C:\\Users\\sergiodt\\AndroidStudioProjects\\vn-warehouseManager\\app",
|
"ExportApk.ApkPathForGestor_Almacén.app": "C:\\Users\\sergiodt\\AndroidStudioProjects\\vn-warehouseManager\\app",
|
||||||
"PROJECT_TRUSTED_KEY": "true",
|
"PROJECT_TRUSTED_KEY": "true",
|
||||||
"RunOnceActivity.OpenProjectViewOnStart": "true",
|
"RunOnceActivity.OpenProjectViewOnStart": "true",
|
||||||
"RunOnceActivity.ShowReadmeOnStart": "true",
|
"RunOnceActivity.ShowReadmeOnStart": "true",
|
||||||
"RunOnceActivity.cidr.known.project.marker": "true",
|
"RunOnceActivity.cidr.known.project.marker": "true",
|
||||||
"SHARE_PROJECT_CONFIGURATION_FILES": "true",
|
"SHARE_PROJECT_CONFIGURATION_FILES": "true",
|
||||||
"ScreenRecorder.SavePath": "C:\\Users\\sergiodt\\device-2023-03-17-114045.mp4",
|
"ScreenRecorder.SavePath": "C:\\Users\\sergiodt\\device-2023-03-17-114045.mp4",
|
||||||
"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/.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",
|
||||||
"cidr.known.project.marker": "true",
|
"cidr.known.project.marker": "true",
|
||||||
"com.developerphil.adbidea.selecteddevices": "21114523025303",
|
"com.developerphil.adbidea.selecteddevices": "21114523025303",
|
||||||
"com.google.services.firebase.aqiPopupShown": "true",
|
"com.google.services.firebase.aqiPopupShown": "true",
|
||||||
"last_directory_selection": "C:/Users/sergiodt/AndroidStudioProjects/vn-warehouseManager/app/src/main/res/drawable",
|
"last_directory_selection": "C:/Users/sergiodt/AndroidStudioProjects/vn-warehouseManager/app/src/main/res/drawable",
|
||||||
"last_opened_file_path": "C:/Users/sergiodt/AndroidStudioProjects/vn-warehouseManager/app/src/main/res/drawable",
|
"last_opened_file_path": "C:/Users/sergiodt/AndroidStudioProjects/vn-warehouseManager/app/src/main/res/layout",
|
||||||
"project.structure.last.edited": "Project",
|
"project.structure.last.edited": "Project",
|
||||||
"project.structure.proportion": "0.17",
|
"project.structure.proportion": "0.17",
|
||||||
"project.structure.side.proportion": "0.2",
|
"project.structure.side.proportion": "0.2",
|
||||||
"run.code.analysis.last.selected.profile": "pProject Default",
|
"run.code.analysis.last.selected.profile": "pProject Default",
|
||||||
"settings.editor.selected.configurable": "reference.settingsdialog.project.gradle"
|
"settings.editor.selected.configurable": "reference.settingsdialog.project.gradle"
|
||||||
},
|
},
|
||||||
"keyToStringList": {
|
"keyToStringList": {
|
||||||
"ExportApk.BuildVariants": [
|
"ExportApk.BuildVariants": [
|
||||||
"generalRelease"
|
"betaRelease"
|
||||||
],
|
],
|
||||||
"com.android.tools.idea.sqlite.queryhistory": [
|
"com.android.tools.idea.sqlite.queryhistory": [
|
||||||
"select * from expedition e where e.addressFk= 34915",
|
"select * from expedition e where e.addressFk= 34915",
|
||||||
"select * from expedition e where e.id= 6872921",
|
"select * from expedition e where e.id= 6872921",
|
||||||
"select count(*) from expeditionPending\n",
|
"select count(*) from expeditionPending\n",
|
||||||
"select count(*) from expedition\n",
|
"select count(*) from expedition\n",
|
||||||
"select count(*) from expedition"
|
"select count(*) from expedition"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}]]></component>
|
}</component>
|
||||||
<component name="PsdUISettings">
|
<component name="PsdUISettings">
|
||||||
<option name="MODULE_TAB" value="Properties" />
|
<option name="MODULE_TAB" value="Properties" />
|
||||||
<option name="LAST_EDITED_SIGNING_CONFIG" value="debug" />
|
<option name="LAST_EDITED_SIGNING_CONFIG" value="debug" />
|
||||||
|
@ -295,8 +312,8 @@
|
||||||
</component>
|
</component>
|
||||||
<component name="RecentsManager">
|
<component name="RecentsManager">
|
||||||
<key name="CopyFile.RECENT_KEYS">
|
<key name="CopyFile.RECENT_KEYS">
|
||||||
<recent name="C:\Users\sergiodt\AndroidStudioProjects\vn-warehouseManager\app\src\main\res\drawable" />
|
|
||||||
<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\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\res\xml" />
|
<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" />
|
<recent name="C:\Users\sergiodt\AndroidStudioProjects\vn-warehouseManager\app\src\main\res\raw" />
|
||||||
<recent name="C:\Users\sergiodt\AndroidStudioProjects\vn-warehouseManager\app\src\main\java\es\verdnatura\presentation\view\feature" />
|
<recent name="C:\Users\sergiodt\AndroidStudioProjects\vn-warehouseManager\app\src\main\java\es\verdnatura\presentation\view\feature" />
|
||||||
|
@ -316,11 +333,11 @@
|
||||||
<recent name="es.verdnatura.presentation.view.feature.buffer.fragment" />
|
<recent name="es.verdnatura.presentation.view.feature.buffer.fragment" />
|
||||||
</key>
|
</key>
|
||||||
<key name="CopyKotlinDeclarationDialog.RECENTS_KEY">
|
<key name="CopyKotlinDeclarationDialog.RECENTS_KEY">
|
||||||
|
<recent name="es.verdnatura.presentation.view.component" />
|
||||||
|
<recent name="es.verdnatura.presentation.view.feature.ubicador.adapter" />
|
||||||
|
<recent name="es.verdnatura.presentation.view.feature.ubicador.fragment" />
|
||||||
<recent name="es.verdnatura.presentation.view.feature.delivery.adapters" />
|
<recent name="es.verdnatura.presentation.view.feature.delivery.adapters" />
|
||||||
<recent name="es.verdnatura.presentation.view.feature.delivery.fragments" />
|
<recent name="es.verdnatura.presentation.view.feature.delivery.fragments" />
|
||||||
<recent name="es.verdnatura.presentation.view.feature.inventario.fragment" />
|
|
||||||
<recent name="es.verdnatura.presentation.view.feature.packingHolland" />
|
|
||||||
<recent name="es.verdnatura.domain" />
|
|
||||||
</key>
|
</key>
|
||||||
</component>
|
</component>
|
||||||
<component name="RunManager" selected="Android App.app">
|
<component name="RunManager" selected="Android App.app">
|
||||||
|
@ -430,34 +447,6 @@
|
||||||
<option name="presentableId" value="Default" />
|
<option name="presentableId" value="Default" />
|
||||||
<updated>1618825571576</updated>
|
<updated>1618825571576</updated>
|
||||||
</task>
|
</task>
|
||||||
<task id="LOCAL-00122" summary="refs #4940 packingHolland">
|
|
||||||
<created>1679984799909</created>
|
|
||||||
<option name="number" value="00122" />
|
|
||||||
<option name="presentableId" value="LOCAL-00122" />
|
|
||||||
<option name="project" value="LOCAL" />
|
|
||||||
<updated>1679984799909</updated>
|
|
||||||
</task>
|
|
||||||
<task id="LOCAL-00123" summary="version 23.10 General">
|
|
||||||
<created>1679984837368</created>
|
|
||||||
<option name="number" value="00123" />
|
|
||||||
<option name="presentableId" value="LOCAL-00123" />
|
|
||||||
<option name="project" value="LOCAL" />
|
|
||||||
<updated>1679984837368</updated>
|
|
||||||
</task>
|
|
||||||
<task id="LOCAL-00124" summary="refs #4765 Refactor">
|
|
||||||
<created>1681201009353</created>
|
|
||||||
<option name="number" value="00124" />
|
|
||||||
<option name="presentableId" value="LOCAL-00124" />
|
|
||||||
<option name="project" value="LOCAL" />
|
|
||||||
<updated>1681201009354</updated>
|
|
||||||
</task>
|
|
||||||
<task id="LOCAL-00125" summary="refs #4830">
|
|
||||||
<created>1681292397190</created>
|
|
||||||
<option name="number" value="00125" />
|
|
||||||
<option name="presentableId" value="LOCAL-00125" />
|
|
||||||
<option name="project" value="LOCAL" />
|
|
||||||
<updated>1681292397191</updated>
|
|
||||||
</task>
|
|
||||||
<task id="LOCAL-00126" summary="refs varios">
|
<task id="LOCAL-00126" summary="refs varios">
|
||||||
<created>1681967763126</created>
|
<created>1681967763126</created>
|
||||||
<option name="number" value="00126" />
|
<option name="number" value="00126" />
|
||||||
|
@ -773,7 +762,35 @@
|
||||||
<option name="project" value="LOCAL" />
|
<option name="project" value="LOCAL" />
|
||||||
<updated>1689657014312</updated>
|
<updated>1689657014312</updated>
|
||||||
</task>
|
</task>
|
||||||
<option name="localTasksCounter" value="171" />
|
<task id="LOCAL-00171" summary="refs #4676 delivery->picking">
|
||||||
|
<created>1689846753642</created>
|
||||||
|
<option name="number" value="00171" />
|
||||||
|
<option name="presentableId" value="LOCAL-00171" />
|
||||||
|
<option name="project" value="LOCAL" />
|
||||||
|
<updated>1689846753642</updated>
|
||||||
|
</task>
|
||||||
|
<task id="LOCAL-00172" summary="refs ##5613 login">
|
||||||
|
<created>1689846825769</created>
|
||||||
|
<option name="number" value="00172" />
|
||||||
|
<option name="presentableId" value="LOCAL-00172" />
|
||||||
|
<option name="project" value="LOCAL" />
|
||||||
|
<updated>1689846825769</updated>
|
||||||
|
</task>
|
||||||
|
<task id="LOCAL-00173" summary="version 23.28 general y beta">
|
||||||
|
<created>1689846845251</created>
|
||||||
|
<option name="number" value="00173" />
|
||||||
|
<option name="presentableId" value="LOCAL-00173" />
|
||||||
|
<option name="project" value="LOCAL" />
|
||||||
|
<updated>1689846845251</updated>
|
||||||
|
</task>
|
||||||
|
<task id="LOCAL-00174" summary="refs #5891 inventoryParking">
|
||||||
|
<created>1690456054648</created>
|
||||||
|
<option name="number" value="00174" />
|
||||||
|
<option name="presentableId" value="LOCAL-00174" />
|
||||||
|
<option name="project" value="LOCAL" />
|
||||||
|
<updated>1690456054648</updated>
|
||||||
|
</task>
|
||||||
|
<option name="localTasksCounter" value="175" />
|
||||||
<servers />
|
<servers />
|
||||||
</component>
|
</component>
|
||||||
<component name="Vcs.Log.History.Properties">
|
<component name="Vcs.Log.History.Properties">
|
||||||
|
@ -874,9 +891,6 @@
|
||||||
</component>
|
</component>
|
||||||
<component name="VcsManagerConfiguration">
|
<component name="VcsManagerConfiguration">
|
||||||
<option name="ADD_EXTERNAL_FILES_SILENTLY" value="true" />
|
<option name="ADD_EXTERNAL_FILES_SILENTLY" value="true" />
|
||||||
<MESSAGE value="refs #4940" />
|
|
||||||
<MESSAGE value="refs #5513 testBack" />
|
|
||||||
<MESSAGE value="refs #5618 traducción" />
|
|
||||||
<MESSAGE value="refs lentitud al leer codigos y fallo al volver atrás" />
|
<MESSAGE value="refs lentitud al leer codigos y fallo al volver atrás" />
|
||||||
<MESSAGE value="refs #4678 preparar fallo conexión" />
|
<MESSAGE value="refs #4678 preparar fallo conexión" />
|
||||||
<MESSAGE value="version alfa" />
|
<MESSAGE value="version alfa" />
|
||||||
|
@ -899,7 +913,10 @@
|
||||||
<MESSAGE value="refs #5891" />
|
<MESSAGE value="refs #5891" />
|
||||||
<MESSAGE value="versionBeta 23.28 renovarToken" />
|
<MESSAGE value="versionBeta 23.28 renovarToken" />
|
||||||
<MESSAGE value="refs #4676 delivery->picking" />
|
<MESSAGE value="refs #4676 delivery->picking" />
|
||||||
<option name="LAST_COMMIT_MESSAGE" value="refs #4676 delivery->picking" />
|
<MESSAGE value="refs ##5613 login" />
|
||||||
|
<MESSAGE value="version 23.28 general y beta" />
|
||||||
|
<MESSAGE value="refs #5891 inventoryParking" />
|
||||||
|
<option name="LAST_COMMIT_MESSAGE" value="refs #5891 inventoryParking" />
|
||||||
</component>
|
</component>
|
||||||
<component name="XDebuggerManager">
|
<component name="XDebuggerManager">
|
||||||
<breakpoint-manager>
|
<breakpoint-manager>
|
||||||
|
|
|
@ -11,8 +11,8 @@
|
||||||
"type": "SINGLE",
|
"type": "SINGLE",
|
||||||
"filters": [],
|
"filters": [],
|
||||||
"attributes": [],
|
"attributes": [],
|
||||||
"versionCode": 216,
|
"versionCode": 220,
|
||||||
"versionName": "23.28Beta",
|
"versionName": "23.30Beta",
|
||||||
"outputFile": "app-beta-release.apk"
|
"outputFile": "app-beta-release.apk"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|
|
@ -8,7 +8,9 @@ import es.verdnatura.presentation.view.feature.ajustes.model.SectorItemVO
|
||||||
import es.verdnatura.presentation.view.feature.articulo.model.ItemPackingType
|
import es.verdnatura.presentation.view.feature.articulo.model.ItemPackingType
|
||||||
import es.verdnatura.presentation.view.feature.collection.SalixSaleQuantity
|
import es.verdnatura.presentation.view.feature.collection.SalixSaleQuantity
|
||||||
import es.verdnatura.presentation.view.feature.collection.listSaleSalix
|
import es.verdnatura.presentation.view.feature.collection.listSaleSalix
|
||||||
|
import es.verdnatura.presentation.view.feature.delivery.model.RouteInfo
|
||||||
import es.verdnatura.presentation.view.feature.historicoshelvinglog.model.ShelvingLogSalix
|
import es.verdnatura.presentation.view.feature.historicoshelvinglog.model.ShelvingLogSalix
|
||||||
|
import es.verdnatura.presentation.view.feature.inventario.model.ItemInventoryParking
|
||||||
import es.verdnatura.presentation.view.feature.login.model.DataUserSalix
|
import es.verdnatura.presentation.view.feature.login.model.DataUserSalix
|
||||||
import es.verdnatura.presentation.view.feature.login.model.LoginSalixVO
|
import es.verdnatura.presentation.view.feature.login.model.LoginSalixVO
|
||||||
import es.verdnatura.presentation.view.feature.login.model.OperatorSalix
|
import es.verdnatura.presentation.view.feature.login.model.OperatorSalix
|
||||||
|
@ -240,6 +242,23 @@ interface SalixService {
|
||||||
):
|
):
|
||||||
Call<Any>
|
Call<Any>
|
||||||
|
|
||||||
|
@POST("ItemShelvings/getInventory")
|
||||||
|
fun getInventoryParking(
|
||||||
|
@Query("parkingFrom") parkingFrom: String,
|
||||||
|
@Query("parkingTo") parkingTo: String
|
||||||
|
):
|
||||||
|
Call<List<ItemInventoryParking>>
|
||||||
|
|
||||||
|
@POST("Routes/{id}")
|
||||||
|
fun routeUpdate(
|
||||||
|
@Path("id") id: Number,
|
||||||
|
@Body route: RouteInfo,
|
||||||
|
|
||||||
|
):
|
||||||
|
Call<Any>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
interface SalixServiceSend {
|
interface SalixServiceSend {
|
||||||
|
|
|
@ -877,4 +877,14 @@ interface VerdnaturaService {
|
||||||
fun getRoutes(
|
fun getRoutes(
|
||||||
@Body vararg params: Any
|
@Body vararg params: Any
|
||||||
): Call<MutableList<RouteInfo>>
|
): Call<MutableList<RouteInfo>>
|
||||||
|
|
||||||
|
@POST("/delivery/addNote")
|
||||||
|
fun addNotes(
|
||||||
|
@Body vararg params: Any
|
||||||
|
): Call<Any>
|
||||||
|
|
||||||
|
@POST("/delivery/get_tickets")
|
||||||
|
fun getTickets(
|
||||||
|
@Body vararg params: Any
|
||||||
|
): Call<MutableList<ClientTicket>>
|
||||||
}
|
}
|
|
@ -6,6 +6,7 @@ import es.verdnatura.presentation.view.feature.articulo.model.BarcodeVO
|
||||||
import es.verdnatura.presentation.view.feature.articulo.model.ItemCardRowVO
|
import es.verdnatura.presentation.view.feature.articulo.model.ItemCardRowVO
|
||||||
import es.verdnatura.presentation.view.feature.articulo.model.ItemProposal
|
import es.verdnatura.presentation.view.feature.articulo.model.ItemProposal
|
||||||
import es.verdnatura.presentation.view.feature.buscaritem.model.ItemLocationVO
|
import es.verdnatura.presentation.view.feature.buscaritem.model.ItemLocationVO
|
||||||
|
import es.verdnatura.presentation.view.feature.delivery.model.ClientTicket
|
||||||
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.RouteInfo
|
import es.verdnatura.presentation.view.feature.delivery.model.RouteInfo
|
||||||
import es.verdnatura.presentation.view.feature.inventario.model.ItemInventaryVO
|
import es.verdnatura.presentation.view.feature.inventario.model.ItemInventaryVO
|
||||||
|
@ -57,6 +58,10 @@ interface OnItemImageRouteRowClickListener {
|
||||||
fun onItemImageRouteRowClickListener(item: RouteInfo, action: String)
|
fun onItemImageRouteRowClickListener(item: RouteInfo, action: String)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
interface OnItemButtonTicketRowClickListener {
|
||||||
|
fun onItemButtonTicketRowClickListener(item: ClientTicket, action: String)
|
||||||
|
}
|
||||||
|
|
||||||
interface OnAddressRowClickListener {
|
interface OnAddressRowClickListener {
|
||||||
fun onAddressRowClickListener(item: ExpeditionInfoSummary)
|
fun onAddressRowClickListener(item: ExpeditionInfoSummary)
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,9 +3,12 @@ package es.verdnatura.presentation.common
|
||||||
import android.app.Activity
|
import android.app.Activity
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
|
import android.content.pm.PackageInfo
|
||||||
|
import android.content.pm.PackageManager
|
||||||
import android.graphics.Bitmap
|
import android.graphics.Bitmap
|
||||||
import android.graphics.drawable.Drawable
|
import android.graphics.drawable.Drawable
|
||||||
import android.media.AudioManager
|
import android.media.AudioManager
|
||||||
|
import android.os.Build
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.text.InputType
|
import android.text.InputType
|
||||||
import android.view.View
|
import android.view.View
|
||||||
|
@ -179,3 +182,10 @@ val AudioManager.mediaMaxVolume: Int
|
||||||
// Extension property to get media/music current volume index
|
// Extension property to get media/music current volume index
|
||||||
val AudioManager.mediaCurrentVolume: Int
|
val AudioManager.mediaCurrentVolume: Int
|
||||||
get() = this.getStreamVolume(AudioManager.STREAM_MUSIC)
|
get() = this.getStreamVolume(AudioManager.STREAM_MUSIC)
|
||||||
|
|
||||||
|
fun PackageManager.getPackageInfoCompat(packageName: String, flags: Int = 0): PackageInfo =
|
||||||
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
|
||||||
|
getPackageInfo(packageName, PackageManager.PackageInfoFlags.of(flags.toLong()))
|
||||||
|
} else {
|
||||||
|
@Suppress("DEPRECATION") getPackageInfo(packageName, flags)
|
||||||
|
}
|
|
@ -0,0 +1,88 @@
|
||||||
|
package es.verdnatura.presentation.view.component
|
||||||
|
|
||||||
|
import android.app.Dialog
|
||||||
|
import android.content.Context
|
||||||
|
import android.text.InputType
|
||||||
|
import android.view.View
|
||||||
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
|
import com.google.android.material.textfield.TextInputEditText
|
||||||
|
import es.verdnatura.R
|
||||||
|
import es.verdnatura.databinding.ComponentCustomEditDialogBinding
|
||||||
|
import es.verdnatura.databinding.ComponentCustomEditDialogNotesBinding
|
||||||
|
|
||||||
|
|
||||||
|
class CustomDialogInputNotes(context: Context) : Dialog(context, R.style.DialogTheme) {
|
||||||
|
|
||||||
|
private var binding: ComponentCustomEditDialogNotesBinding =
|
||||||
|
ComponentCustomEditDialogNotesBinding.inflate(layoutInflater)
|
||||||
|
|
||||||
|
|
||||||
|
init {
|
||||||
|
|
||||||
|
setContentView(binding.root)
|
||||||
|
}
|
||||||
|
|
||||||
|
fun getEditText(): TextInputEditText {
|
||||||
|
|
||||||
|
return binding.customDialogValue
|
||||||
|
}
|
||||||
|
|
||||||
|
fun getValue(): String {
|
||||||
|
|
||||||
|
return binding.customDialogValue.text.toString()
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
fun setValue(value: String): CustomDialogInputNotes {
|
||||||
|
|
||||||
|
binding.customDialogValue.setText(value)
|
||||||
|
binding.customDialogValue.visibility = View.VISIBLE
|
||||||
|
|
||||||
|
return this
|
||||||
|
}
|
||||||
|
|
||||||
|
fun setTitle(title: String): CustomDialogInputNotes {
|
||||||
|
|
||||||
|
binding.customDialogTitle.visibility = View.VISIBLE
|
||||||
|
binding.customDialogTitle.text = title
|
||||||
|
|
||||||
|
return this
|
||||||
|
}
|
||||||
|
|
||||||
|
fun setDescription(description: String): CustomDialogInputNotes {
|
||||||
|
|
||||||
|
binding.customDialogDescription.visibility = View.VISIBLE
|
||||||
|
binding.customDialogDescription.text = description
|
||||||
|
|
||||||
|
return this
|
||||||
|
}
|
||||||
|
|
||||||
|
fun setOkButton(text: String, onButtonClicked: () -> Unit): CustomDialogInputNotes {
|
||||||
|
|
||||||
|
binding.customDialogButtonOk.visibility = View.VISIBLE
|
||||||
|
binding.customDialogButtonOk.text = text
|
||||||
|
binding.customDialogButtonOk.setOnClickListener { onButtonClicked() }
|
||||||
|
|
||||||
|
return this
|
||||||
|
}
|
||||||
|
|
||||||
|
fun setKoButton(text: String, onButtonClicked: () -> Unit): CustomDialogInputNotes {
|
||||||
|
|
||||||
|
binding.customDialogButtonKo.visibility = View.VISIBLE
|
||||||
|
binding.customDialogButtonKo.text = text
|
||||||
|
binding.customDialogButtonKo.setOnClickListener { onButtonClicked() }
|
||||||
|
|
||||||
|
return this
|
||||||
|
}
|
||||||
|
|
||||||
|
fun setInputText(typeClassNumber: Int = InputType.TYPE_CLASS_NUMBER) {
|
||||||
|
binding.customDialogValue.inputType = typeClassNumber
|
||||||
|
}
|
||||||
|
|
||||||
|
fun setFocusText() {
|
||||||
|
binding.customDialogValue.requestFocus()
|
||||||
|
}
|
||||||
|
fun getRecyclerView() : RecyclerView {
|
||||||
|
return binding.recyclerItems
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,159 @@
|
||||||
|
package es.verdnatura.presentation.view.feature.delivery.adapters
|
||||||
|
|
||||||
|
import android.view.LayoutInflater
|
||||||
|
import android.view.ViewGroup
|
||||||
|
import android.widget.LinearLayout
|
||||||
|
import android.widget.TextView
|
||||||
|
import androidx.core.content.ContextCompat
|
||||||
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
|
import es.verdnatura.R
|
||||||
|
import es.verdnatura.databinding.ItemTicketRowBinding
|
||||||
|
import es.verdnatura.presentation.common.OnItemButtonTicketRowClickListener
|
||||||
|
import es.verdnatura.presentation.view.feature.delivery.model.ClientTicket
|
||||||
|
|
||||||
|
|
||||||
|
class TicketAdapter(
|
||||||
|
private var items: MutableList<ClientTicket>,
|
||||||
|
private val onItemButtonTicketRowClickListener: OnItemButtonTicketRowClickListener,
|
||||||
|
) : RecyclerView.Adapter<TicketAdapter.ItemHolder>() {
|
||||||
|
|
||||||
|
|
||||||
|
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ItemHolder {
|
||||||
|
// items = setHeaders(items)
|
||||||
|
return ItemHolder(
|
||||||
|
ItemTicketRowBinding.inflate(
|
||||||
|
LayoutInflater.from(parent.context),
|
||||||
|
parent,
|
||||||
|
false
|
||||||
|
)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
fun setHeaders(list: MutableList<ClientTicket>): MutableList<ClientTicket> {
|
||||||
|
|
||||||
|
/* var prevCreated = ""
|
||||||
|
for (route in list) {
|
||||||
|
if (route.created.toString() != prevCreated) {
|
||||||
|
route.header = true
|
||||||
|
prevCreated = route.created.toString()
|
||||||
|
}
|
||||||
|
}*/
|
||||||
|
return list
|
||||||
|
}
|
||||||
|
|
||||||
|
fun updateList(newList: MutableList<ClientTicket>) {
|
||||||
|
// items = setHeaders(newList)
|
||||||
|
notifyDataSetChanged()
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun getItemCount() = items.size
|
||||||
|
|
||||||
|
override fun onBindViewHolder(holder: ItemHolder, position: Int) {
|
||||||
|
// items = setHeaders(items)
|
||||||
|
holder.bind(items[position])
|
||||||
|
|
||||||
|
/* holder.binding.root.setOnClickListener {
|
||||||
|
//onAddressRowClickListener.onAddressRowClickListener(items[position])
|
||||||
|
}*/
|
||||||
|
|
||||||
|
val viewTickets = holder.itemView.findViewById<LinearLayout>(R.id.layoutTickets)
|
||||||
|
viewTickets.removeAllViews()
|
||||||
|
|
||||||
|
// Inflate and add views for each ticket
|
||||||
|
val inflater = LayoutInflater.from(holder.itemView.context)
|
||||||
|
items[position].tickets.forEach { ticket ->
|
||||||
|
val v = inflater.inflate(R.layout.item_ticket_sub_row, null)
|
||||||
|
val txtTicket = v.findViewById<TextView>(R.id.txtTicket)
|
||||||
|
val txtPackage = v.findViewById<TextView>(R.id.packages)
|
||||||
|
val txtPackingType = v.findViewById<TextView>(R.id.packingType)
|
||||||
|
|
||||||
|
// Bind the ticket data to the views
|
||||||
|
txtTicket.text = ticket.Id.toString()
|
||||||
|
txtPackage.text = ticket.Packages.toString()
|
||||||
|
txtPackingType.text = ticket.PackingType
|
||||||
|
|
||||||
|
viewTickets.addView(v)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
inner class ItemHolder(
|
||||||
|
val binding: ItemTicketRowBinding
|
||||||
|
) : RecyclerView.ViewHolder(binding.root) {
|
||||||
|
private val res = binding.root.context.resources
|
||||||
|
fun bind(item: ClientTicket) {
|
||||||
|
binding.apply {
|
||||||
|
|
||||||
|
|
||||||
|
/* showTickets.setOnClickListener {
|
||||||
|
OnItemImageRouteRowClickListener.onItemImageRouteRowClickListener(item,"showTickets")
|
||||||
|
}
|
||||||
|
imageLoadVan.setOnClickListener {
|
||||||
|
OnItemImageRouteRowClickListener.onItemImageRouteRowClickListener(item,"loadVan")
|
||||||
|
}
|
||||||
|
linearLayoutShowTickets.setOnClickListener {
|
||||||
|
OnItemImageRouteRowClickListener.onItemImageRouteRowClickListener(item,"showTickets")
|
||||||
|
}
|
||||||
|
linearLayoutLoadVan.setOnClickListener {
|
||||||
|
OnItemImageRouteRowClickListener.onItemImageRouteRowClickListener(item,"loadVan")
|
||||||
|
}
|
||||||
|
|
||||||
|
if (item.header){
|
||||||
|
headerRouteLayout.visibility = View.VISIBLE
|
||||||
|
headerRoute.text = toDateString(item.created)
|
||||||
|
}else{
|
||||||
|
headerRouteLayout.visibility = View.GONE
|
||||||
|
|
||||||
|
|
||||||
|
}*/
|
||||||
|
if (!item.Note.isNullOrEmpty()) {
|
||||||
|
note.setColorFilter(
|
||||||
|
ContextCompat.getColor(
|
||||||
|
note.context,
|
||||||
|
R.color.verdnatura_dark_sky_blue
|
||||||
|
)
|
||||||
|
)
|
||||||
|
} else {
|
||||||
|
note.setColorFilter(
|
||||||
|
ContextCompat.getColor(
|
||||||
|
note.context,
|
||||||
|
R.color.verdnatura_white
|
||||||
|
)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
note.setOnClickListener {
|
||||||
|
onItemButtonTicketRowClickListener.onItemButtonTicketRowClickListener(
|
||||||
|
item,
|
||||||
|
"note"
|
||||||
|
)
|
||||||
|
}
|
||||||
|
addNote.setOnClickListener {
|
||||||
|
onItemButtonTicketRowClickListener.onItemButtonTicketRowClickListener(
|
||||||
|
item,
|
||||||
|
"addNote"
|
||||||
|
)
|
||||||
|
}
|
||||||
|
phone.setOnClickListener {
|
||||||
|
onItemButtonTicketRowClickListener.onItemButtonTicketRowClickListener(
|
||||||
|
item,
|
||||||
|
"call"
|
||||||
|
)
|
||||||
|
}
|
||||||
|
map.setOnClickListener {
|
||||||
|
onItemButtonTicketRowClickListener.onItemButtonTicketRowClickListener(
|
||||||
|
item,
|
||||||
|
"map"
|
||||||
|
)
|
||||||
|
}
|
||||||
|
unload.setOnClickListener {
|
||||||
|
onItemButtonTicketRowClickListener.onItemButtonTicketRowClickListener(
|
||||||
|
item,
|
||||||
|
"unload"
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
this.item = item
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -11,6 +11,7 @@ import android.view.View
|
||||||
import android.widget.ImageView
|
import android.widget.ImageView
|
||||||
import androidx.annotation.RequiresApi
|
import androidx.annotation.RequiresApi
|
||||||
import androidx.recyclerview.widget.LinearLayoutManager
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
|
import com.google.gson.Gson
|
||||||
import es.verdnatura.R
|
import es.verdnatura.R
|
||||||
import es.verdnatura.databinding.FragmentRouteBinding
|
import es.verdnatura.databinding.FragmentRouteBinding
|
||||||
import es.verdnatura.domain.notNull
|
import es.verdnatura.domain.notNull
|
||||||
|
@ -226,7 +227,11 @@ class RoutesFragment(
|
||||||
|
|
||||||
"showTickets" -> {
|
"showTickets" -> {
|
||||||
//println("La ruta de los tickets es: " + item.id)
|
//println("La ruta de los tickets es: " + item.id)
|
||||||
openAppDelivery(item)
|
//openAppDelivery(item)
|
||||||
|
ma.onPasillerosItemClickListener(
|
||||||
|
PasillerosItemVO(title = getString(R.string.tickets)),
|
||||||
|
Gson().toJson(item)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,509 @@
|
||||||
|
package es.verdnatura.presentation.view.feature.delivery.fragments
|
||||||
|
|
||||||
|
import android.Manifest
|
||||||
|
import android.app.Activity
|
||||||
|
import android.app.AlertDialog
|
||||||
|
import android.app.TimePickerDialog
|
||||||
|
import android.content.Intent
|
||||||
|
import android.content.pm.PackageInfo
|
||||||
|
import android.content.pm.PackageManager
|
||||||
|
import android.graphics.drawable.Drawable
|
||||||
|
import android.net.Uri
|
||||||
|
import android.os.Build
|
||||||
|
import android.view.View
|
||||||
|
import android.widget.ImageView
|
||||||
|
import android.widget.TextView
|
||||||
|
import androidx.annotation.RequiresApi
|
||||||
|
import androidx.core.app.ActivityCompat
|
||||||
|
import androidx.core.content.ContextCompat
|
||||||
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
|
import com.google.gson.Gson
|
||||||
|
import es.verdnatura.R
|
||||||
|
import es.verdnatura.databinding.FragmentTicketsBinding
|
||||||
|
import es.verdnatura.domain.notNull
|
||||||
|
import es.verdnatura.domain.toast
|
||||||
|
import es.verdnatura.presentation.base.BaseFragment
|
||||||
|
import es.verdnatura.presentation.common.*
|
||||||
|
import es.verdnatura.presentation.view.component.CustomDialogInputNotes
|
||||||
|
import es.verdnatura.presentation.view.feature.delivery.adapters.TicketAdapter
|
||||||
|
import es.verdnatura.presentation.view.feature.delivery.model.ClientTicket
|
||||||
|
import es.verdnatura.presentation.view.feature.delivery.model.ExpeditionInfoLoadUnload
|
||||||
|
import es.verdnatura.presentation.view.feature.delivery.model.RouteInfo
|
||||||
|
import es.verdnatura.presentation.view.feature.delivery.model.Ticket
|
||||||
|
import es.verdnatura.presentation.view.feature.delivery.viewmodels.DeliveryViewModel
|
||||||
|
import es.verdnatura.presentation.view.feature.pasillero.model.PasillerosItemVO
|
||||||
|
import java.util.Calendar
|
||||||
|
|
||||||
|
|
||||||
|
class TicketsFragment(
|
||||||
|
var title: String = "",
|
||||||
|
var route: RouteInfo
|
||||||
|
) : BaseFragment<FragmentTicketsBinding, DeliveryViewModel>(
|
||||||
|
DeliveryViewModel::class
|
||||||
|
) {
|
||||||
|
|
||||||
|
private var adapter: TicketAdapter? = null
|
||||||
|
private var pasillerosItemClickListener: OnPasillerosItemClickListener? = null
|
||||||
|
private lateinit var myListClientTicket: MutableList<ClientTicket>
|
||||||
|
|
||||||
|
companion object {
|
||||||
|
fun newInstance(title: String, entryPoint: String) =
|
||||||
|
TicketsFragment(title, Gson().fromJson(entryPoint, RouteInfo::class.java))
|
||||||
|
|
||||||
|
private const val REQUEST_CALL_PERMISSION = 1
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun getLayoutId(): Int = R.layout.fragment_tickets
|
||||||
|
|
||||||
|
@RequiresApi(Build.VERSION_CODES.O)
|
||||||
|
override fun init() {
|
||||||
|
super.init()
|
||||||
|
setEvents()
|
||||||
|
setToolBar()
|
||||||
|
binding.mainToolbar.toolbarTitle.text = route.name
|
||||||
|
println("La ruta es: " + route.toString())
|
||||||
|
callBack(viewModel.getTickets(route.id))
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun setTitle() {
|
||||||
|
|
||||||
|
binding.mainToolbar.toolbarSubtitle.text =
|
||||||
|
if (::myListClientTicket.isInitialized) {
|
||||||
|
myListClientTicket.filter { it.Signed == 1 }.size.toString() + "/" + myListClientTicket.size
|
||||||
|
} else {
|
||||||
|
"0/0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun callBack(callBackEndPoint: Unit) {
|
||||||
|
binding.splashProgress.visibility = View.VISIBLE
|
||||||
|
return callBackEndPoint
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@RequiresApi(Build.VERSION_CODES.O)
|
||||||
|
private fun setToolBar() {
|
||||||
|
ma.hideBottomNavigation(View.GONE)
|
||||||
|
binding.mainToolbar.toolbarSubtitle.setTextColor(requireContext().getColor((R.color.verdnatura_pumpkin_orange)))
|
||||||
|
binding.mainToolbar.toolbarTitle.visibility = View.VISIBLE
|
||||||
|
binding.mainToolbar.toolbarSubtitle.visibility = View.VISIBLE
|
||||||
|
binding.mainToolbar.toolbarIcons.visibility = View.VISIBLE
|
||||||
|
|
||||||
|
|
||||||
|
val listIcons: ArrayList<ImageView> = ArrayList()
|
||||||
|
val iconSettings = ImageView(context)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
iconSettings.setImageResource(R.drawable.ic_setting_ui)
|
||||||
|
|
||||||
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
|
||||||
|
iconSettings.tooltipText = getTooltip(R.drawable.ic_setting_ui)
|
||||||
|
|
||||||
|
}
|
||||||
|
listIcons.add(iconSettings)
|
||||||
|
|
||||||
|
|
||||||
|
binding.mainToolbar.toolbarIcons.adapter =
|
||||||
|
ToolBarAdapterTooltip(listIcons, object : OnOptionsSelectedListener {
|
||||||
|
|
||||||
|
override fun onOptionsItemSelected(item: Drawable) {
|
||||||
|
|
||||||
|
when (item) {
|
||||||
|
iconSettings.drawable -> {
|
||||||
|
/* //binding.itemcardLayout.visibility = View.GONE
|
||||||
|
binding.itemcardLayout.visibility = View.GONE
|
||||||
|
binding.ticketsRecyclerview.visibility = View.GONE
|
||||||
|
binding.layoutKmHour.visibility = View.VISIBLE
|
||||||
|
binding.kmStart.setText(binding.kmStart.toString())
|
||||||
|
binding.kmEnd.setText(binding.kmEnd.toString())
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
binding.mainToolbar.toolbarIcons.layoutManager =
|
||||||
|
LinearLayoutManager(requireContext(), LinearLayoutManager.HORIZONTAL, false)
|
||||||
|
binding.mainToolbar.toolbarIcons.visibility = View.VISIBLE
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun openAppDelivery(item: RouteInfo) {
|
||||||
|
val i = Intent()
|
||||||
|
val manager: PackageManager = requireContext().packageManager
|
||||||
|
val info: PackageInfo = manager.getPackageInfo(requireContext().packageName, 0)
|
||||||
|
val version = info.versionName
|
||||||
|
try {
|
||||||
|
if (version.contains("Beta")) {
|
||||||
|
i.setClassName(
|
||||||
|
"verdnatura.es.repartoverdnatura.sfusion",
|
||||||
|
"verdnatura.es.repartoverdnatura.Tickets"
|
||||||
|
)
|
||||||
|
} else {
|
||||||
|
i.setClassName(
|
||||||
|
"verdnatura.es.repartoverdnatura",
|
||||||
|
"verdnatura.es.repartoverdnatura.Tickets"
|
||||||
|
)
|
||||||
|
}
|
||||||
|
i.putExtra("plate", item.numberPlate)
|
||||||
|
i.putExtra("id", item.id.toString())
|
||||||
|
i.putExtra("agency", item.name)
|
||||||
|
i.putExtra("hour", item.hour)
|
||||||
|
i.putExtra("date", item.created.toString())
|
||||||
|
i.putExtra("m3", item.m3.toString())
|
||||||
|
i.putExtra("driver", item.driver)
|
||||||
|
i.putExtra("kmStart", item.kmStart.toString())
|
||||||
|
i.putExtra("kmEnd", item.kmEnd.toString())
|
||||||
|
i.putExtra("dEnd", item.finished)
|
||||||
|
i.putExtra("dStart", item.started)
|
||||||
|
i.putExtra("app", "picking")
|
||||||
|
startActivity(i)
|
||||||
|
} catch (e: Exception) {
|
||||||
|
getString(R.string.deliveryApp).toast(context)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private fun setEvents() {
|
||||||
|
binding.mainToolbar.backButton.setOnClickListener {
|
||||||
|
|
||||||
|
if (binding.layoutKmHour.visibility == View.VISIBLE) {
|
||||||
|
binding.ticketsRecyclerview.visibility = View.VISIBLE
|
||||||
|
binding.itemcardLayout.visibility = View.VISIBLE
|
||||||
|
binding.layoutKmHour.visibility = View.GONE
|
||||||
|
} else {
|
||||||
|
requireActivity().onBackPressed()
|
||||||
|
}
|
||||||
|
binding.saveButton.setOnClickListener {
|
||||||
|
binding.splashProgress.visibility = View.VISIBLE
|
||||||
|
route.kmStart = binding.kmStart.text.toString().toLong()
|
||||||
|
route.kmEnd = binding.kmEnd.text.toString().toLong()
|
||||||
|
viewModel.routeUpdate(route)
|
||||||
|
}
|
||||||
|
binding.hourInit.setOnFocusChangeListener { view, b ->
|
||||||
|
if (b) {
|
||||||
|
showTimePicker(binding.hourInit)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
binding.hourInit.setText("asdfasdf")
|
||||||
|
binding.buttonPicker.setOnClickListener {
|
||||||
|
println("hour start")
|
||||||
|
// showTimePicker(binding.hourEnd)
|
||||||
|
println("hour start")
|
||||||
|
}
|
||||||
|
binding.hourEnd.setOnClickListener {
|
||||||
|
println("hour end")
|
||||||
|
// showTimePicker(binding.hourEnd)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* binding.scanInput.addTextChangedListener(object : TextWatcher {
|
||||||
|
override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int) {
|
||||||
|
val searchText = s.toString().lowercase()
|
||||||
|
val filteredList = myListClientTicket.filter { route ->
|
||||||
|
route.toString().lowercase().contains(searchText)
|
||||||
|
}.toMutableList()
|
||||||
|
adapter!!.updateList(filteredList)
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun afterTextChanged(s: Editable?) {
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
|
||||||
|
@RequiresApi(Build.VERSION_CODES.O)
|
||||||
|
override fun observeViewModel() {
|
||||||
|
with(viewModel) {
|
||||||
|
loadRouteList.observe(viewLifecycleOwner) { event ->
|
||||||
|
event.getContentIfNotHandled().notNull {
|
||||||
|
binding.splashProgress.visibility = View.GONE
|
||||||
|
// createListRoutes(it.list)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
clientTicketList.observe(viewLifecycleOwner) {
|
||||||
|
binding.splashProgress.visibility = View.GONE
|
||||||
|
if (it.list.isNotEmpty()) {
|
||||||
|
createLisTickets(it.list)
|
||||||
|
setTitle()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
responseStateAdd.observe(viewLifecycleOwner) {
|
||||||
|
binding.splashProgress.visibility = View.GONE
|
||||||
|
}
|
||||||
|
response.observe(viewLifecycleOwner) {
|
||||||
|
binding.splashProgress.visibility = View.GONE
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun createLisTickets(list: MutableList<ClientTicket>) {
|
||||||
|
|
||||||
|
var myListClientTicketAux = list.distinctBy { it.Address }
|
||||||
|
|
||||||
|
for (clientTicket in myListClientTicketAux) {
|
||||||
|
val addressId = clientTicket.Address
|
||||||
|
val ticketsForClient = list.filter { it.Address == addressId }
|
||||||
|
val mappedTickets = ticketsForClient.map { ticket ->
|
||||||
|
Ticket(ticket.Id, ticket.Packages, ticket.PackingType, ticket.Note)
|
||||||
|
}
|
||||||
|
clientTicket.tickets = mappedTickets as MutableList<Ticket>
|
||||||
|
}
|
||||||
|
|
||||||
|
myListClientTicket = myListClientTicketAux as MutableList<ClientTicket>
|
||||||
|
|
||||||
|
for (m in myListClientTicket) {
|
||||||
|
println("address" + m.Address)
|
||||||
|
for (mt in m.tickets) {
|
||||||
|
println("address ${m.Address}tickets" + mt.Id)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
adapter = TicketAdapter(
|
||||||
|
myListClientTicket,
|
||||||
|
object : OnItemButtonTicketRowClickListener {
|
||||||
|
|
||||||
|
override fun onItemButtonTicketRowClickListener(
|
||||||
|
item: ClientTicket,
|
||||||
|
action: String
|
||||||
|
) {
|
||||||
|
when (action) {
|
||||||
|
"unload" -> {
|
||||||
|
ma.onPasillerosItemClickListener(
|
||||||
|
PasillerosItemVO(title = getString(R.string.titleDeliverySummary)),
|
||||||
|
route.id.toString()
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
"map" -> {
|
||||||
|
goMaps(item)
|
||||||
|
}
|
||||||
|
|
||||||
|
"note" -> {
|
||||||
|
showNotes(item)
|
||||||
|
}
|
||||||
|
|
||||||
|
"addNote" -> {
|
||||||
|
addNotes(item)
|
||||||
|
}
|
||||||
|
|
||||||
|
"call" -> {
|
||||||
|
showPhones(item)
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
},
|
||||||
|
)
|
||||||
|
|
||||||
|
binding.ticketsRecyclerview.addItemDecoration(
|
||||||
|
ItemDescorationCustomized(
|
||||||
|
resources.getDimensionPixelSize(
|
||||||
|
R.dimen.vertical_spacing
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
binding.ticketsRecyclerview.adapter = adapter
|
||||||
|
binding.ticketsRecyclerview.layoutManager =
|
||||||
|
LinearLayoutManager(requireContext(), LinearLayoutManager.VERTICAL, false)
|
||||||
|
adapter!!.notifyDataSetChanged()
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun addNotes(itemClient: ClientTicket) {
|
||||||
|
|
||||||
|
var customDialogInput = CustomDialogInputNotes(requireContext())
|
||||||
|
customDialogInput.setTitle("Notas")
|
||||||
|
|
||||||
|
var adapter: GeneralAdapter
|
||||||
|
var itemsNotes: List<GeneralItem> = listOf(
|
||||||
|
GeneralItem(code = "", text = getString(R.string.clientNot)),
|
||||||
|
GeneralItem(code = "", text = getString(R.string.clientAuthorization)),
|
||||||
|
GeneralItem(code = "", text = getString(R.string.clientReject)),
|
||||||
|
GeneralItem(code = "", text = getString(R.string.packagesMissing)),
|
||||||
|
GeneralItem(code = "", text = getString(R.string.clientDevolution)),
|
||||||
|
)
|
||||||
|
|
||||||
|
adapter = GeneralAdapter(itemsNotes, object : OnGeneralItemRowClickListener {
|
||||||
|
|
||||||
|
override fun OnGeneralItemRowClickListener(item: GeneralItem) {
|
||||||
|
itemClient.tickets.forEach { listClient ->
|
||||||
|
listClient.Note = customDialogInput.getValue()
|
||||||
|
}
|
||||||
|
customDialogInput.setValue(item.text.toString())
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
||||||
|
customDialogInput.getRecyclerView().adapter = adapter
|
||||||
|
customDialogInput.getRecyclerView().layoutManager =
|
||||||
|
LinearLayoutManager(requireContext(), LinearLayoutManager.VERTICAL, false)
|
||||||
|
customDialogInput.setOkButton(getString(R.string.save)) {
|
||||||
|
viewModel.addNotes(itemClient.tickets, customDialogInput.getValue())
|
||||||
|
}
|
||||||
|
.setKoButton(getString(R.string.cancel)) {
|
||||||
|
customDialogInput.cancel()
|
||||||
|
customDialogInput.dismiss()
|
||||||
|
}
|
||||||
|
customDialogInput.show()
|
||||||
|
|
||||||
|
/* val alertDialogBuilder = AlertDialog.Builder(context)
|
||||||
|
alertDialogBuilder.setTitle("Ingrese su texto")
|
||||||
|
|
||||||
|
val editText = EditText(context)
|
||||||
|
alertDialogBuilder.setView(editText)
|
||||||
|
|
||||||
|
alertDialogBuilder.setPositiveButton("Aceptar") { _, _ ->
|
||||||
|
val userInputText = editText.text.toString()
|
||||||
|
// Aquí puedes hacer lo que desees con el texto ingresado por el usuario
|
||||||
|
// Por ejemplo, mostrarlo en un Toast, guardarlo en una base de datos, etc.
|
||||||
|
}
|
||||||
|
|
||||||
|
alertDialogBuilder.setNegativeButton("Cancelar") { dialog, _ ->
|
||||||
|
dialog.cancel()
|
||||||
|
}
|
||||||
|
|
||||||
|
val alertDialog = alertDialogBuilder.create()
|
||||||
|
alertDialog.show()*/
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun showNotes(item: ClientTicket) {
|
||||||
|
|
||||||
|
val alertDialog = AlertDialog.Builder(requireContext()).create()
|
||||||
|
alertDialog.setTitle(getString(R.string.info))
|
||||||
|
alertDialog.setMessage(item.Note)
|
||||||
|
alertDialog.setButton(
|
||||||
|
AlertDialog.BUTTON_NEUTRAL, getString(R.string.close)
|
||||||
|
) { dialog, _ -> dialog.dismiss() }
|
||||||
|
alertDialog.show()
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private fun setListPosition(list: MutableList<ExpeditionInfoLoadUnload>) {
|
||||||
|
for (i in list.indices) {
|
||||||
|
binding.ticketsRecyclerview.scrollToPosition(i)
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
fun showPhones(clientClicked: ClientTicket) {
|
||||||
|
|
||||||
|
val phones = mutableListOf<String>().apply {
|
||||||
|
addAll(clientClicked.Phones)
|
||||||
|
add(clientClicked.SalePersonPhone)
|
||||||
|
}
|
||||||
|
val builder = AlertDialog.Builder(context)
|
||||||
|
builder.setTitle(getString(R.string.phones))
|
||||||
|
val listPhones = phones.toTypedArray()
|
||||||
|
builder.setItems(listPhones) { dialog, which ->
|
||||||
|
|
||||||
|
if (ContextCompat.checkSelfPermission(
|
||||||
|
requireContext(),
|
||||||
|
Manifest.permission.CALL_PHONE
|
||||||
|
) == PackageManager.PERMISSION_GRANTED
|
||||||
|
) {
|
||||||
|
val callIntent = Intent(Intent.ACTION_CALL)
|
||||||
|
callIntent.data = Uri.parse("tel:$which]")
|
||||||
|
startActivity(callIntent)
|
||||||
|
} else {
|
||||||
|
ActivityCompat.requestPermissions(
|
||||||
|
context as Activity,
|
||||||
|
arrayOf(Manifest.permission.CALL_PHONE),
|
||||||
|
REQUEST_CALL_PERMISSION
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
val dialog = builder.create()
|
||||||
|
dialog.show()
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
fun goMaps(item: ClientTicket) {
|
||||||
|
|
||||||
|
if (isGoogleMapsInstalled()) {
|
||||||
|
|
||||||
|
var uri: String
|
||||||
|
if (item.Latitude != null) {
|
||||||
|
uri = "geo:${item.Latitude},${item.Longitude}?q=" + item.ClientName +
|
||||||
|
" " + item.AddressName +
|
||||||
|
" " + item.City +
|
||||||
|
" " + item.PostalCode
|
||||||
|
|
||||||
|
} else {
|
||||||
|
uri = "geo:0,0?q=" + item.ClientName +
|
||||||
|
" " + item.AddressName +
|
||||||
|
" " + item.City +
|
||||||
|
" " + item.PostalCode
|
||||||
|
}
|
||||||
|
val locationIntent = Intent(Intent.ACTION_VIEW, Uri.parse(uri))
|
||||||
|
startActivity(locationIntent)
|
||||||
|
|
||||||
|
|
||||||
|
} else {
|
||||||
|
val builder = AlertDialog.Builder(requireContext())
|
||||||
|
builder.setMessage("Instalar Maps de Google")
|
||||||
|
builder.setCancelable(false)
|
||||||
|
builder.setPositiveButton(
|
||||||
|
"Install"
|
||||||
|
) { _, _ ->
|
||||||
|
val intent = Intent(
|
||||||
|
Intent.ACTION_VIEW,
|
||||||
|
Uri.parse("market://details?id=com.google.android.apps.maps")
|
||||||
|
)
|
||||||
|
startActivity(intent)
|
||||||
|
}
|
||||||
|
val dialog = builder.create()
|
||||||
|
dialog.show()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun isGoogleMapsInstalled(): Boolean {
|
||||||
|
|
||||||
|
return try {
|
||||||
|
val packageName = "com.google.android.apps.maps"
|
||||||
|
val packageManager = context?.packageManager
|
||||||
|
packageManager?.getPackageInfoCompat(packageName)
|
||||||
|
true
|
||||||
|
} catch (e: Exception) {
|
||||||
|
false
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun showTimePicker(textV: TextView) {
|
||||||
|
|
||||||
|
var mcurrentTime = Calendar.getInstance()
|
||||||
|
var hour = mcurrentTime[Calendar.HOUR_OF_DAY]
|
||||||
|
var minute = mcurrentTime[Calendar.MINUTE]
|
||||||
|
|
||||||
|
var mTimePicker = TimePickerDialog(
|
||||||
|
requireContext(),
|
||||||
|
{ _, selectedHour, selectedMinute -> textV.text = "$selectedHour:$selectedMinute" },
|
||||||
|
hour,
|
||||||
|
minute,
|
||||||
|
true
|
||||||
|
)
|
||||||
|
mTimePicker.setTitle(getString(R.string.selectTime))
|
||||||
|
mTimePicker.show()
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,42 @@
|
||||||
|
package es.verdnatura.presentation.view.feature.delivery.model
|
||||||
|
|
||||||
|
import es.verdnatura.presentation.view.feature.articulo.model.ItemPackingType
|
||||||
|
|
||||||
|
class ClientTicketList(
|
||||||
|
var list: MutableList<ClientTicket> = mutableListOf()
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
data class ClientTicket(
|
||||||
|
var Id: Int,
|
||||||
|
var Client: Int,
|
||||||
|
var ClientName: String,
|
||||||
|
var Address: Int,
|
||||||
|
var Packages: Int,
|
||||||
|
var AddressName: String,
|
||||||
|
var PostalCode: String,
|
||||||
|
var City: String,
|
||||||
|
var Warehouse: String?,
|
||||||
|
var SalePersonPhone: String,
|
||||||
|
var Note: String?,
|
||||||
|
var Phones: List<String>,
|
||||||
|
var Location: Location,
|
||||||
|
var Signed: Int,
|
||||||
|
var Latitude: String,
|
||||||
|
var Longitude: String,
|
||||||
|
var Polizon: Any?,
|
||||||
|
var PackingType: String,
|
||||||
|
var tickets: MutableList<Ticket>
|
||||||
|
)
|
||||||
|
|
||||||
|
data class Location(
|
||||||
|
var Longitude: String,
|
||||||
|
var Latitude: String
|
||||||
|
)
|
||||||
|
data class Ticket(
|
||||||
|
var Id: Int,
|
||||||
|
var Packages: Int,
|
||||||
|
var PackingType: String?,
|
||||||
|
var Note:String?
|
||||||
|
|
||||||
|
)
|
|
@ -9,6 +9,8 @@ import es.verdnatura.domain.SilexCallback
|
||||||
import es.verdnatura.presentation.base.BaseViewModel
|
import es.verdnatura.presentation.base.BaseViewModel
|
||||||
import es.verdnatura.presentation.common.Event
|
import es.verdnatura.presentation.common.Event
|
||||||
import es.verdnatura.presentation.common.ResponseItemVO
|
import es.verdnatura.presentation.common.ResponseItemVO
|
||||||
|
import es.verdnatura.presentation.view.feature.delivery.model.ClientTicket
|
||||||
|
import es.verdnatura.presentation.view.feature.delivery.model.ClientTicketList
|
||||||
import es.verdnatura.presentation.view.feature.delivery.model.DeliveryInfo
|
import es.verdnatura.presentation.view.feature.delivery.model.DeliveryInfo
|
||||||
import es.verdnatura.presentation.view.feature.delivery.model.ExpeditionInfoList
|
import es.verdnatura.presentation.view.feature.delivery.model.ExpeditionInfoList
|
||||||
import es.verdnatura.presentation.view.feature.delivery.model.ExpeditionInfoLoadUnload
|
import es.verdnatura.presentation.view.feature.delivery.model.ExpeditionInfoLoadUnload
|
||||||
|
@ -21,6 +23,9 @@ import es.verdnatura.presentation.view.feature.delivery.model.RouteDelivery
|
||||||
import es.verdnatura.presentation.view.feature.delivery.model.RouteDeliveryList
|
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 org.json.JSONArray
|
||||||
|
import org.json.JSONObject
|
||||||
import retrofit2.Response
|
import retrofit2.Response
|
||||||
|
|
||||||
class DeliveryViewModel(val context: Context) : BaseViewModel(context) {
|
class DeliveryViewModel(val context: Context) : BaseViewModel(context) {
|
||||||
|
@ -37,6 +42,9 @@ class DeliveryViewModel(val context: Context) : BaseViewModel(context) {
|
||||||
private val _routeList by lazy { MutableLiveData<RouteList>() }
|
private val _routeList by lazy { MutableLiveData<RouteList>() }
|
||||||
val routeList: LiveData<RouteList> = _routeList
|
val routeList: LiveData<RouteList> = _routeList
|
||||||
|
|
||||||
|
private val _clientTicketList by lazy { MutableLiveData<ClientTicketList>() }
|
||||||
|
val clientTicketList: LiveData<ClientTicketList> = _clientTicketList
|
||||||
|
|
||||||
private val _routeInfoList by lazy { MutableLiveData<RouteDeliveryList>() }
|
private val _routeInfoList by lazy { MutableLiveData<RouteDeliveryList>() }
|
||||||
val routeInfoList: LiveData<RouteDeliveryList> = _routeInfoList
|
val routeInfoList: LiveData<RouteDeliveryList> = _routeInfoList
|
||||||
|
|
||||||
|
@ -50,6 +58,11 @@ class DeliveryViewModel(val context: Context) : BaseViewModel(context) {
|
||||||
val responseStateAdd: LiveData<ResponseItemVO>
|
val responseStateAdd: LiveData<ResponseItemVO>
|
||||||
get() = _responseStateAdd
|
get() = _responseStateAdd
|
||||||
|
|
||||||
|
|
||||||
|
private val _response by lazy { MutableLiveData<ResponseItemVO>() }
|
||||||
|
val response: LiveData<ResponseItemVO> = _response
|
||||||
|
|
||||||
|
|
||||||
private val _expeditionList by lazy { MutableLiveData<ExpeditionList>() }
|
private val _expeditionList by lazy { MutableLiveData<ExpeditionList>() }
|
||||||
val expeditionList: LiveData<ExpeditionList> = _expeditionList
|
val expeditionList: LiveData<ExpeditionList> = _expeditionList
|
||||||
|
|
||||||
|
@ -241,6 +254,106 @@ class DeliveryViewModel(val context: Context) : BaseViewModel(context) {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun getTickets(
|
||||||
|
routeId: Long
|
||||||
|
) {
|
||||||
|
silex.getTickets(routeId)
|
||||||
|
.enqueue(object : SilexCallback<MutableList<ClientTicket>>(context) {
|
||||||
|
|
||||||
|
override fun onSuccess(response: Response<MutableList<ClientTicket>>) {
|
||||||
|
|
||||||
|
if (response.body() != null) {
|
||||||
|
_clientTicketList.value =
|
||||||
|
response.body()?.let { ClientTicketList(it) }
|
||||||
|
} else {
|
||||||
|
_clientTicketList.value = ClientTicketList()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun onError(t: Throwable) {
|
||||||
|
_clientTicketList.value = ClientTicketList()
|
||||||
|
super.onError(t)
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
fun addNote(
|
||||||
|
ticketFk: Int
|
||||||
|
) {
|
||||||
|
silex.addNotes(ticketFk)
|
||||||
|
.enqueue(object : SilexCallback<Any>(context) {
|
||||||
|
|
||||||
|
override fun onSuccess(response: Response<Any>) {
|
||||||
|
_responseStateAdd.value = ResponseItemVO()
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun onError(t: Throwable) {
|
||||||
|
_responseStateAdd.value = ResponseItemVO()
|
||||||
|
super.onError(t)
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
fun routeUpdate(
|
||||||
|
route: RouteInfo
|
||||||
|
) {
|
||||||
|
salix.routeUpdate(route.id, route)
|
||||||
|
.enqueue(object : SilexCallback<Any>(context) {
|
||||||
|
|
||||||
|
override fun onSuccess(response: Response<Any>) {
|
||||||
|
_response.value = ResponseItemVO()
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun onError(t: Throwable) {
|
||||||
|
_response.value = ResponseItemVO()
|
||||||
|
super.onError(t)
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
fun addNotes(
|
||||||
|
listTickets: MutableList<Ticket>,
|
||||||
|
note: String
|
||||||
|
|
||||||
|
|
||||||
|
) {
|
||||||
|
silex.addNotes( mapOf(
|
||||||
|
"Tickets" to listTickets.map { it.Id },
|
||||||
|
"note" to note))
|
||||||
|
.enqueue(object : SilexCallback<Any>(context) {
|
||||||
|
|
||||||
|
override fun onSuccess(response: Response<Any>) {
|
||||||
|
_response.value = ResponseItemVO()
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun onError(t: Throwable) {
|
||||||
|
_response.value = ResponseItemVO()
|
||||||
|
super.onError(t)
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
fun createJSONObject(listTickets: MutableList<Ticket>, note: String): String {
|
||||||
|
// Supongamos que tienes la lista de tickets y el valor como los siguientes:
|
||||||
|
// val listTickets: List<String> = listOf("4255452", "5454515")
|
||||||
|
// val note: String = "Mi nota"
|
||||||
|
|
||||||
|
// Crear el objeto JSON
|
||||||
|
val jsonObject = JSONObject()
|
||||||
|
val jsonArrayTickets = JSONArray(listTickets)
|
||||||
|
jsonObject.put("tickets", jsonArrayTickets)
|
||||||
|
jsonObject.put("note", note)
|
||||||
|
|
||||||
|
// Convertir el objeto JSON a un String
|
||||||
|
return jsonObject.toString()
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -6,6 +6,7 @@ package es.verdnatura.presentation.view.feature.main.activity
|
||||||
import NetworkUtils
|
import NetworkUtils
|
||||||
import PhotosFragment
|
import PhotosFragment
|
||||||
import android.content.SharedPreferences
|
import android.content.SharedPreferences
|
||||||
|
import android.graphics.Color
|
||||||
import android.media.MediaPlayer
|
import android.media.MediaPlayer
|
||||||
import android.net.Uri
|
import android.net.Uri
|
||||||
import android.os.Build
|
import android.os.Build
|
||||||
|
@ -47,6 +48,7 @@ import es.verdnatura.presentation.view.feature.delivery.fragments.LoadUnloadFrag
|
||||||
import es.verdnatura.presentation.view.feature.delivery.fragments.LogExpeditionFragment
|
import es.verdnatura.presentation.view.feature.delivery.fragments.LogExpeditionFragment
|
||||||
import es.verdnatura.presentation.view.feature.delivery.fragments.RoutesFragment
|
import es.verdnatura.presentation.view.feature.delivery.fragments.RoutesFragment
|
||||||
import es.verdnatura.presentation.view.feature.delivery.fragments.SummaryFragment
|
import es.verdnatura.presentation.view.feature.delivery.fragments.SummaryFragment
|
||||||
|
import es.verdnatura.presentation.view.feature.delivery.fragments.TicketsFragment
|
||||||
import es.verdnatura.presentation.view.feature.diadeventa.fragment.DayOfSaleFragment
|
import es.verdnatura.presentation.view.feature.diadeventa.fragment.DayOfSaleFragment
|
||||||
import es.verdnatura.presentation.view.feature.historicoarticulo.fragment.HistoricoArticuloFragment
|
import es.verdnatura.presentation.view.feature.historicoarticulo.fragment.HistoricoArticuloFragment
|
||||||
import es.verdnatura.presentation.view.feature.historicoshelving.fragment.itemShelvingLogFragment
|
import es.verdnatura.presentation.view.feature.historicoshelving.fragment.itemShelvingLogFragment
|
||||||
|
@ -80,6 +82,7 @@ import es.verdnatura.presentation.view.feature.sacador.model.CollectionVO
|
||||||
import es.verdnatura.presentation.view.feature.shelvingparking.fragment.ShelvingParkingFragment
|
import es.verdnatura.presentation.view.feature.shelvingparking.fragment.ShelvingParkingFragment
|
||||||
import es.verdnatura.presentation.view.feature.ticket.fragment.TicketAdvanceFragment
|
import es.verdnatura.presentation.view.feature.ticket.fragment.TicketAdvanceFragment
|
||||||
import es.verdnatura.presentation.view.feature.ubicador.fragment.AutomaticAddItemFragment
|
import es.verdnatura.presentation.view.feature.ubicador.fragment.AutomaticAddItemFragment
|
||||||
|
import es.verdnatura.presentation.view.feature.ubicador.fragment.AutomaticAddItemFragmentTEST
|
||||||
import es.verdnatura.presentation.view.feature.ubicador.fragment.UbicadorFragment
|
import es.verdnatura.presentation.view.feature.ubicador.fragment.UbicadorFragment
|
||||||
import es.verdnatura.presentation.view.feature.workermistake.adapter.WorkermistakeFragment
|
import es.verdnatura.presentation.view.feature.workermistake.adapter.WorkermistakeFragment
|
||||||
import es.verdnatura.presentation.view.feature.workermistake.fragment.PackingMistakeFragment
|
import es.verdnatura.presentation.view.feature.workermistake.fragment.PackingMistakeFragment
|
||||||
|
@ -653,7 +656,12 @@ class MainActivity : BaseActivity<ActivityMainBinding>(), OnPasillerosItemClickL
|
||||||
}
|
}
|
||||||
|
|
||||||
getString(R.string.titleAuto) -> {
|
getString(R.string.titleAuto) -> {
|
||||||
|
/* if ( (application as MobileApplication).userId== 19591){
|
||||||
|
"Testeo rayo".toast(this, Color.RED)*/
|
||||||
|
addFragmentOnTop(AutomaticAddItemFragmentTEST.newInstance(entryPoint, item.title))
|
||||||
|
/* }else{
|
||||||
addFragmentOnTop(AutomaticAddItemFragment.newInstance(entryPoint, item.title))
|
addFragmentOnTop(AutomaticAddItemFragment.newInstance(entryPoint, item.title))
|
||||||
|
}*/
|
||||||
}
|
}
|
||||||
|
|
||||||
getString(R.string.titleChecker) -> {
|
getString(R.string.titleChecker) -> {
|
||||||
|
@ -880,6 +888,10 @@ class MainActivity : BaseActivity<ActivityMainBinding>(), OnPasillerosItemClickL
|
||||||
getString(R.string.titleInventoryParking) -> {
|
getString(R.string.titleInventoryParking) -> {
|
||||||
addFragmentOnTop(InventaryParkingFragment.newInstance(item.title))
|
addFragmentOnTop(InventaryParkingFragment.newInstance(item.title))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getString(R.string.tickets) -> {
|
||||||
|
addFragmentOnTop(TicketsFragment.newInstance(item.title,entryPoint))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -170,7 +170,7 @@ class PasilleroViewModel(context: Context) : BaseViewModel(context) {
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
//Tarea 5891
|
//Tarea 5891
|
||||||
/* _pasillerositem.add(
|
_pasillerositem.add(
|
||||||
PasillerosItemVO(
|
PasillerosItemVO(
|
||||||
3,
|
3,
|
||||||
R.drawable.ic_inventory_parking,
|
R.drawable.ic_inventory_parking,
|
||||||
|
@ -180,7 +180,7 @@ class PasilleroViewModel(context: Context) : BaseViewModel(context) {
|
||||||
R.string.titleInventoryParkingDescrip
|
R.string.titleInventoryParkingDescrip
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
)*/
|
)
|
||||||
|
|
||||||
_pasillerositem.add(
|
_pasillerositem.add(
|
||||||
PasillerosItemVO(
|
PasillerosItemVO(
|
||||||
|
@ -633,5 +633,6 @@ class PasilleroViewModel(context: Context) : BaseViewModel(context) {
|
||||||
contextApp.getString(R.string.titleDeliveryRoute)
|
contextApp.getString(R.string.titleDeliveryRoute)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,10 @@
|
||||||
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:width="48dp"
|
||||||
|
android:height="48dp"
|
||||||
|
android:viewportWidth="960"
|
||||||
|
android:viewportHeight="960"
|
||||||
|
>
|
||||||
|
<path
|
||||||
|
android:fillColor="@android:color/white"
|
||||||
|
android:pathData="M480.09,470Q509,470 529.5,449.41Q550,428.82 550,399.91Q550,371 529.41,350.5Q508.82,330 479.91,330Q451,330 430.5,350.59Q410,371.18 410,400.09Q410,429 430.59,449.5Q451.18,470 480.09,470ZM480,801Q613,680 676.5,581.5Q740,483 740,408Q740,290.21 664.71,215.1Q589.42,140 480,140Q370.58,140 295.29,215.1Q220,290.21 220,408Q220,483 285,581.5Q350,680 480,801ZM480,880Q319,743 239.5,625.5Q160,508 160,408Q160,258 256.5,169Q353,80 480,80Q607,80 703.5,169Q800,258 800,408Q800,508 720.5,625.5Q641,743 480,880ZM480,400Q480,400 480,400Q480,400 480,400Q480,400 480,400Q480,400 480,400Q480,400 480,400Q480,400 480,400Q480,400 480,400Q480,400 480,400Z"/>
|
||||||
|
</vector>
|
|
@ -0,0 +1,9 @@
|
||||||
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:width="48dp"
|
||||||
|
android:height="48dp"
|
||||||
|
android:viewportWidth="960"
|
||||||
|
android:viewportHeight="960">
|
||||||
|
<path
|
||||||
|
android:fillColor="@android:color/white"
|
||||||
|
android:pathData="M319,710L641,710L641,650L319,650L319,710ZM319,540L641,540L641,480L319,480L319,540ZM220,880Q196,880 178,862Q160,844 160,820L160,140Q160,116 178,98Q196,80 220,80L581,80L800,299L800,820Q800,844 782,862Q764,880 740,880L220,880ZM551,326L551,140L220,140Q220,140 220,140Q220,140 220,140L220,820Q220,820 220,820Q220,820 220,820L740,820Q740,820 740,820Q740,820 740,820L740,326L551,326ZM220,140L220,140L220,326L220,326L220,140L220,326L220,326L220,820Q220,820 220,820Q220,820 220,820L220,820Q220,820 220,820Q220,820 220,820L220,140Q220,140 220,140Q220,140 220,140Z"/>
|
||||||
|
</vector>
|
|
@ -0,0 +1,10 @@
|
||||||
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:width="48dp"
|
||||||
|
android:height="48dp"
|
||||||
|
android:viewportWidth="960"
|
||||||
|
android:viewportHeight="960"
|
||||||
|
android:autoMirrored="true">
|
||||||
|
<path
|
||||||
|
android:fillColor="@android:color/white"
|
||||||
|
android:pathData="M450,726L510,726L510,597L640,597L640,537L510,537L510,407L450,407L450,537L320,537L320,597L450,597L450,726ZM220,880Q196,880 178,862Q160,844 160,820L160,140Q160,116 178,98Q196,80 220,80L581,80L800,299L800,820Q800,844 782,862Q764,880 740,880L220,880ZM551,326L551,140L220,140Q220,140 220,140Q220,140 220,140L220,820Q220,820 220,820Q220,820 220,820L740,820Q740,820 740,820Q740,820 740,820L740,326L551,326ZM220,140L220,140L220,326L220,326L220,140L220,326L220,326L220,820Q220,820 220,820Q220,820 220,820L220,820Q220,820 220,820Q220,820 220,820L220,140Q220,140 220,140Q220,140 220,140Z"/>
|
||||||
|
</vector>
|
|
@ -0,0 +1,9 @@
|
||||||
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:width="48dp"
|
||||||
|
android:height="48dp"
|
||||||
|
android:viewportWidth="960"
|
||||||
|
android:viewportHeight="960">
|
||||||
|
<path
|
||||||
|
android:fillColor="@android:color/white"
|
||||||
|
android:pathData="M776,473Q771,352 687,268Q603,184 482,179L482,119Q554,121 617.5,149.5Q681,178 729,226Q777,274 805.5,337.5Q834,401 836,473L776,473ZM607,473Q602,423 567,388.5Q532,354 482,349L482,289Q557,294 609.5,346Q662,398 667,473L607,473ZM795,840Q679,840 558.5,784Q438,728 335,625Q232,522 176,401.5Q120,281 120,165Q120,145.71 132.86,132.86Q145.71,120 165,120L305,120Q319,120 329,130Q339,140 343,155L369.93,280.64Q372,295 369.5,306.5Q367,318 358.77,326.23L259,427Q285,471 314,509Q343,547 378,581Q415,619 456,650.5Q497,682 542,706L637,608Q647,597 660.15,593Q673.3,589 686,591L805,617Q820,621 830,633.04Q840,645.09 840,660L840,795Q840,814.29 827.14,827.14Q814.29,840 795,840ZM229,372L310,290Q310,290 310,290Q310,290 310,290L287,180Q287,180 287,180Q287,180 287,180L180,180Q180,180 180,180Q180,180 180,180Q182,222 193.5,268.5Q205,315 229,372ZM598,735Q639,754 687,766Q735,778 780,780Q780,780 780,780Q780,780 780,780L780,673Q780,673 780,673Q780,673 780,673L677,652Q677,652 677,652Q677,652 677,652L598,735ZM229,372Q229,372 229,372Q229,372 229,372Q229,372 229,372Q229,372 229,372L229,372Q229,372 229,372Q229,372 229,372L229,372Q229,372 229,372Q229,372 229,372L229,372ZM598,735L598,735Q598,735 598,735Q598,735 598,735L598,735Q598,735 598,735Q598,735 598,735L598,735Q598,735 598,735Q598,735 598,735Q598,735 598,735Q598,735 598,735Z"/>
|
||||||
|
</vector>
|
|
@ -0,0 +1,111 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<androidx.cardview.widget.CardView 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"
|
||||||
|
style="@style/DialogTheme"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:layout_margin="@dimen/layout_margin_1"
|
||||||
|
app:cardBackgroundColor="@color/verdnatura_black_8"
|
||||||
|
app:cardCornerRadius="@dimen/dialog_radius">
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:padding="@dimen/layout_margin_1">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/custom_dialog_title"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginBottom="@dimen/layout_margin_1"
|
||||||
|
android:textAlignment="center"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
android:textSize="@dimen/h6"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:visibility="gone"
|
||||||
|
tools:text="¿Estás seguro de que deseas eliminar el dispositivo de celia?"
|
||||||
|
tools:visibility="visible" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/custom_dialog_description"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginBottom="@dimen/layout_margin_1"
|
||||||
|
android:textAlignment="center"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
android:textSize="@dimen/body1"
|
||||||
|
android:visibility="gone"
|
||||||
|
tools:text="Este cambio no podrá deshacerse a no ser que vuelvas a vincular el dispositivo"
|
||||||
|
tools:visibility="gone" />
|
||||||
|
|
||||||
|
<com.google.android.material.textfield.TextInputLayout
|
||||||
|
android:id="@+id/textinputlayout_username"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
|
||||||
|
android:textColorHint="@android:color/darker_gray">
|
||||||
|
|
||||||
|
<com.google.android.material.textfield.TextInputEditText
|
||||||
|
android:id="@+id/custom_dialog_value"
|
||||||
|
style="@style/DefaultButton.NormalButton"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="80dp"
|
||||||
|
android:background="@drawable/background_round"
|
||||||
|
android:inputType="text"
|
||||||
|
android:lines="5"
|
||||||
|
android:maxLines="10"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
android:textColorHint="@android:color/darker_gray"
|
||||||
|
android:imeOptions="actionDone"/>
|
||||||
|
|
||||||
|
<androidx.recyclerview.widget.RecyclerView
|
||||||
|
android:id="@+id/recycler_items"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:clipToPadding="false"
|
||||||
|
tools:listitem="@layout/item_general_row" />
|
||||||
|
|
||||||
|
</com.google.android.material.textfield.TextInputLayout>
|
||||||
|
|
||||||
|
<com.google.android.material.textfield.TextInputLayout
|
||||||
|
android:id="@+id/textinputlayout_two"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="@dimen/default_layout_margin"
|
||||||
|
android:textColorHint="@android:color/darker_gray"
|
||||||
|
android:visibility="gone">
|
||||||
|
|
||||||
|
<com.google.android.material.textfield.TextInputEditText
|
||||||
|
android:id="@+id/custom_dialog_value_two"
|
||||||
|
style="@style/DefaultButton.NormalButton"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:background="@drawable/background_round"
|
||||||
|
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/custom_dialog_button_ok"
|
||||||
|
style="@style/DefaultButton.NormalButton"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_marginTop="@dimen/layout_margin_1"
|
||||||
|
android:visibility="gone"
|
||||||
|
tools:text="@string/delete"
|
||||||
|
tools:visibility="visible" />
|
||||||
|
|
||||||
|
<Button
|
||||||
|
android:id="@+id/custom_dialog_button_ko"
|
||||||
|
style="@style/DefaultButton.TransparentButton"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_marginTop="@dimen/layout_margin_1"
|
||||||
|
android:layout_marginBottom="@dimen/layout_margin_1"
|
||||||
|
android:visibility="gone"
|
||||||
|
tools:text="@string/cancel"
|
||||||
|
tools:visibility="visible" />
|
||||||
|
</LinearLayout>
|
||||||
|
</androidx.cardview.widget.CardView>
|
|
@ -0,0 +1,229 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<layout xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||||
|
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
android:id="@+id/layout_km_hour"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView20"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="8dp"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:text="@string/km"
|
||||||
|
android:textAllCaps="true"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
android:textSize="18sp"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView28"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="8dp"
|
||||||
|
android:layout_marginTop="16dp"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:text="@string/hours"
|
||||||
|
android:textAllCaps="true"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
android:textSize="18sp"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintHorizontal_bias="1.0"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/linearLayout7" />
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/linearLayout2"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="1dp"
|
||||||
|
android:layout_marginStart="8dp"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:background="@color/colorPrimary"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/textView20" />
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/linearLayout6"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="8dp"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/linearLayout2">
|
||||||
|
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView2"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:text="@string/km_init"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
android:textSize="18sp" />
|
||||||
|
|
||||||
|
<EditText
|
||||||
|
android:id="@+id/editText"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:background="@color/verdnatura_white"
|
||||||
|
android:ems="10"
|
||||||
|
android:inputType="number"
|
||||||
|
android:padding="5dp"
|
||||||
|
android:text="0"
|
||||||
|
android:imeOptions="actionDone"
|
||||||
|
android:maxLines="1"/>
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/linearLayout7"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="8dp"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintHorizontal_bias="0.0"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/linearLayout6">
|
||||||
|
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView21"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:text="@string/km_end"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
android:textSize="18sp" />
|
||||||
|
|
||||||
|
<EditText
|
||||||
|
android:id="@+id/editText1"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:background="@color/verdnatura_white"
|
||||||
|
android:ems="10"
|
||||||
|
|
||||||
|
android:inputType="number"
|
||||||
|
android:padding="5dp"
|
||||||
|
android:text="0"
|
||||||
|
android:imeOptions="actionDone"
|
||||||
|
android:maxLines="1"/>
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/linearLayout8"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="1dp"
|
||||||
|
android:layout_marginStart="8dp"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:background="@color/colorPrimary"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/textView28" />
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/linearLayout9"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="8dp"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/linearLayout8">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView212"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
|
||||||
|
android:text="@string/hour_start"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
android:textSize="18sp" />
|
||||||
|
|
||||||
|
<EditText
|
||||||
|
android:id="@+id/editText12"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:background="@color/verdnatura_white"
|
||||||
|
android:ems="10"
|
||||||
|
|
||||||
|
android:padding="5dp"
|
||||||
|
android:text="00:00"
|
||||||
|
android:imeOptions="actionDone"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:focusable="false"/>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="8dp"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/linearLayout9">
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView2123"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
|
||||||
|
android:text="@string/hour_end"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
android:textSize="18sp" />
|
||||||
|
|
||||||
|
<EditText
|
||||||
|
android:id="@+id/editText123"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:background="@color/verdnatura_white"
|
||||||
|
android:ems="10"
|
||||||
|
android:padding="5dp"
|
||||||
|
android:text="00:00"
|
||||||
|
android:imeOptions="actionDone"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:focusable="false"/>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView37"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginBottom="17dp"
|
||||||
|
android:text="@string/save"
|
||||||
|
android:textAlignment="center"
|
||||||
|
android:textSize="18sp"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
/>
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
</layout>
|
|
@ -0,0 +1,336 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<layout xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||||
|
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent">
|
||||||
|
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/divider"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="1dp"
|
||||||
|
android:background="@color/verdnatura_pumpkin_orange"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:visibility="gone"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/main_toolbar">
|
||||||
|
</LinearLayout>
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/layout_km_hour"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="vertical"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toEndOf="@+id/divider"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/main_toolbar"
|
||||||
|
tools:visibility="visible">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView20"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="8dp"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:text="@string/km"
|
||||||
|
android:textAllCaps="true"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="@+id/layout_km_hour" />
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/linearLayout2"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="1dp"
|
||||||
|
android:layout_marginStart="8dp"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:background="@color/colorPrimary"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/textView20" />
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/linearLayout6"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="8dp"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/linearLayout2">
|
||||||
|
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView2"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:text="@string/km_init"
|
||||||
|
android:textColor="@color/verdnatura_white" />
|
||||||
|
|
||||||
|
<EditText
|
||||||
|
android:id="@+id/km_start"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:background="@color/verdnatura_white"
|
||||||
|
android:ems="10"
|
||||||
|
android:inputType="number"
|
||||||
|
android:padding="5dp"
|
||||||
|
android:text="0"
|
||||||
|
android:imeOptions="actionDone"
|
||||||
|
android:maxLines="1"/>
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/linearLayout7"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="8dp"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintHorizontal_bias="0.0"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/linearLayout6">
|
||||||
|
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView21"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:text="@string/km_end"
|
||||||
|
android:textColor="@color/verdnatura_white" />
|
||||||
|
|
||||||
|
<EditText
|
||||||
|
android:id="@+id/km_end"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:background="@color/verdnatura_white"
|
||||||
|
android:ems="10"
|
||||||
|
android:inputType="number"
|
||||||
|
android:padding="5dp"
|
||||||
|
android:text="0"
|
||||||
|
android:imeOptions="actionDone"
|
||||||
|
android:maxLines="1"/>
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView28"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="8dp"
|
||||||
|
android:layout_marginTop="16dp"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:text="@string/hours"
|
||||||
|
android:textAllCaps="true"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintHorizontal_bias="1.0"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/linearLayout7" />
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/linearLayout8"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="1dp"
|
||||||
|
android:layout_marginStart="8dp"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:background="@color/colorPrimary"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/textView28" />
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/linearLayout9"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="8dp"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/linearLayout8">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView212"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:text="@string/hour_start"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<EditText
|
||||||
|
android:id="@+id/hourInit"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:background="@color/verdnatura_white"
|
||||||
|
android:ems="10"
|
||||||
|
android:padding="5dp"
|
||||||
|
android:text="00:00"
|
||||||
|
android:imeOptions="actionDone"
|
||||||
|
android:maxLines="1"
|
||||||
|
/>
|
||||||
|
<ImageButton
|
||||||
|
android:id="@+id/buttonPicker"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="30dp"
|
||||||
|
android:layout_weight="1"
|
||||||
|
|
||||||
|
/>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="8dp"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/linearLayout9">
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView2123"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:text="@string/hour_end"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<EditText
|
||||||
|
android:id="@+id/hourEnd"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:background="@color/verdnatura_white"
|
||||||
|
android:ems="10"
|
||||||
|
android:padding="5dp"
|
||||||
|
android:text="00:00"
|
||||||
|
android:imeOptions="actionDone"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:focusable="true"/>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/saveButton"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="16dp"
|
||||||
|
android:layout_gravity="center"
|
||||||
|
android:text="@string/save"
|
||||||
|
android:textAlignment="center"
|
||||||
|
android:textSize="@dimen/h7"
|
||||||
|
android:textColor="@color/verdnatura_pumpkin_orange"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/hour_end"
|
||||||
|
/>
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/itemcard_layout"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="0dp"
|
||||||
|
android:padding="5dp"
|
||||||
|
android:orientation="vertical"
|
||||||
|
tools:ignore="ExtraText"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="@+id/divider"
|
||||||
|
android:visibility="visible"
|
||||||
|
>
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:descendantFocusability="blocksDescendants">
|
||||||
|
|
||||||
|
<androidx.recyclerview.widget.RecyclerView
|
||||||
|
android:id="@+id/tickets_recyclerview"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:clipToPadding="false"
|
||||||
|
android:visibility="visible"
|
||||||
|
tools:listitem="@layout/item_ticket_row" />
|
||||||
|
|
||||||
|
<TextClock
|
||||||
|
android:id="@+id/textClock"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content" />
|
||||||
|
</RelativeLayout>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<ScrollView
|
||||||
|
android:id="@+id/scroll_view"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="0dp"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent">
|
||||||
|
|
||||||
|
</ScrollView>
|
||||||
|
|
||||||
|
<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" />
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/splash_progress"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:background="@color/verdnatura_black_8_alpha_6"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
android:gravity="center">
|
||||||
|
|
||||||
|
<com.airbnb.lottie.LottieAnimationView
|
||||||
|
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="@dimen/verdnatura_logo_large_height"
|
||||||
|
app:lottie_autoPlay="true"
|
||||||
|
app:lottie_loop="true"
|
||||||
|
app:lottie_rawRes="@raw/orange_loading"
|
||||||
|
app:lottie_speed="2" />
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
</layout>
|
|
@ -39,7 +39,6 @@
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:textSize="@dimen/h5"
|
android:textSize="@dimen/h5"
|
||||||
android:textColor="@color/verdnatura_white"
|
android:textColor="@color/verdnatura_white"
|
||||||
android:text="@{Long.toString(item.item)}"
|
|
||||||
tool:text="45532"
|
tool:text="45532"
|
||||||
android:textStyle="bold"
|
android:textStyle="bold"
|
||||||
android:gravity="center_vertical"/>
|
android:gravity="center_vertical"/>
|
||||||
|
|
|
@ -0,0 +1,275 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<layout xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools">
|
||||||
|
|
||||||
|
<data>
|
||||||
|
|
||||||
|
<variable
|
||||||
|
name="item"
|
||||||
|
type="es.verdnatura.presentation.view.feature.delivery.model.ClientTicket" />
|
||||||
|
</data>
|
||||||
|
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent">
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/linearLayout3"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="@color/colorPrimaryDark"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent">
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="5dp"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:background="@color/colorPrimary"
|
||||||
|
android:orientation="vertical" />
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="@color/verdnatura_black_1"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:paddingStart="@dimen/ef_padding_small"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingEnd="1dp"
|
||||||
|
android:gravity="center_vertical">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView23"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginEnd="@dimen/ef_padding_small"
|
||||||
|
android:text="@string/Cliente"
|
||||||
|
android:textColor="@color/verdnatura_warm_grey" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView21"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@{String.valueOf(item.id)}"
|
||||||
|
app:autoSizeMaxTextSize="18sp"
|
||||||
|
android:textSize="18sp"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
tools:text="Cliente1"/>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView18"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="0.1"
|
||||||
|
android:textAlignment="viewEnd"
|
||||||
|
android:text="@string/consignatario"
|
||||||
|
android:textColor="@color/verdnatura_warm_grey"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView17"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:text="@{String.valueOf(item.address)}"
|
||||||
|
android:textAlignment="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
android:textSize="28sp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
tools:text="28058"/>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:paddingLeft="5dp"
|
||||||
|
android:paddingRight="5dp"
|
||||||
|
android:paddingBottom="5dp">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView25"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@{item.clientName}"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
android:textSize="18sp"
|
||||||
|
tools:text="LA FLOR VALENCIA"/>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView24"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@{item.addressName}"
|
||||||
|
android:textAllCaps="true"
|
||||||
|
android:textColor="@color/colorPrimary"
|
||||||
|
tools:text="C/ Les flors,1"/>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView27"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:layout_weight="0"
|
||||||
|
android:text="@{String.valueOf(item.postalCode)}"
|
||||||
|
android:textColor="@color/colorPrimary"
|
||||||
|
tools:text="46450"/>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView26"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="0"
|
||||||
|
android:text="@{item.city}"
|
||||||
|
android:textAllCaps="true"
|
||||||
|
android:textColor="@color/colorPrimary"
|
||||||
|
tools:text="valencia"
|
||||||
|
/>
|
||||||
|
</LinearLayout>
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/txtNote"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="0dp"
|
||||||
|
android:layout_weight="0"
|
||||||
|
|
||||||
|
android:text=""
|
||||||
|
android:textAllCaps="true"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
android:visibility="gone"/>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/layoutTickets"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="40dp"
|
||||||
|
android:background="@color/verdnatura_black_1"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:baselineAligned="false"
|
||||||
|
android:padding="@dimen/ef_padding_small">
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/btnNote"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:gravity="center"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
>
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/note"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="32dp"
|
||||||
|
|
||||||
|
app:srcCompat="@drawable/ic_note" />
|
||||||
|
</LinearLayout>
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/btnAddNote"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:gravity="center"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
>
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/addNote"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="32dp"
|
||||||
|
app:srcCompat="@drawable/ic_note_add" />
|
||||||
|
</LinearLayout>
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/btnPhone"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:gravity="center"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
>
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/phone"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="32dp"
|
||||||
|
app:srcCompat="@drawable/ic_phone" />
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/btnMap"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:gravity="center"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
|
||||||
|
>
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/map"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="32dp"
|
||||||
|
app:srcCompat="@drawable/ic_location" />
|
||||||
|
</LinearLayout>
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/btnUnload"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:gravity="center"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
>
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/unload"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="32dp"
|
||||||
|
app:srcCompat="@drawable/camion_descarga" />
|
||||||
|
</LinearLayout>
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/btnSign"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:gravity="center"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:padding="8dp">
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
</layout>
|
|
@ -0,0 +1,121 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout 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"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent">
|
||||||
|
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/linearLayout5"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="@color/verdnatura_black"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:padding="5dp"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent">
|
||||||
|
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView30"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginRight="8dp"
|
||||||
|
android:layout_weight="0"
|
||||||
|
android:text="@string/ticket"
|
||||||
|
android:textColor="@color/verdnatura_black_8"
|
||||||
|
android:textSize="18sp" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/txtTicket"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:text="2041368"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
android:textSize="18sp" />
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content">
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView32"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginRight="8dp"
|
||||||
|
android:layout_weight="0"
|
||||||
|
android:text="@string/packages"
|
||||||
|
android:textColor="@color/verdnatura_black_8"
|
||||||
|
android:textSize="20sp"
|
||||||
|
|
||||||
|
/>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/packages"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="2"
|
||||||
|
android:text="2"
|
||||||
|
android:textSize="20sp"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
/>
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/packingType"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="2"
|
||||||
|
android:text="H o V"
|
||||||
|
android:visibility="visible"
|
||||||
|
android:textSize="20sp"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
android:layout_marginLeft="5dp"/>
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:gravity="right"
|
||||||
|
android:textAlignment="gravity">
|
||||||
|
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView33"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginRight="0dp"
|
||||||
|
android:layout_weight="0"
|
||||||
|
|
||||||
|
android:text="Silla FV"
|
||||||
|
android:textColor="@color/verdnatura_white"
|
||||||
|
android:visibility="gone"
|
||||||
|
tools:visibility="gone" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/packintypedescrp"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginRight="8dp"
|
||||||
|
android:layout_weight="0"
|
||||||
|
android:text="@string/packingType"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:textColor="@color/verdnatura_black_8"
|
||||||
|
android:textSize="18sp"
|
||||||
|
/>
|
||||||
|
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
|
@ -605,8 +605,8 @@
|
||||||
<string name="quantityVisible">Indica la nueva cantidad visible</string>
|
<string name="quantityVisible">Indica la nueva cantidad visible</string>
|
||||||
<string name="checkItemShelvingSelect">Ecscanea o escribe la matrícula a resetear revisión</string>
|
<string name="checkItemShelvingSelect">Ecscanea o escribe la matrícula a resetear revisión</string>
|
||||||
<string name="selectParkingsCheckin">Indica parkings a revisar</string>
|
<string name="selectParkingsCheckin">Indica parkings a revisar</string>
|
||||||
<string name="selectParkingsFrom">Indica desde dónde hasta cual quieres revisar</string>
|
<string name="selectParkingsFrom">Indica desde qué parking quieres revisar</string>
|
||||||
<string name="selectParkingsTo">Indica el parking hasta donde quieres revisar</string>
|
<string name="selectParkingsTo">Indica hasta qué parking quieres revisar</string>
|
||||||
<string name="shelvingNotFound">Matrícula del carro no encontrada</string>
|
<string name="shelvingNotFound">Matrícula del carro no encontrada</string>
|
||||||
<string name="scanItemForChecking">Escanea artículo a verificar</string>
|
<string name="scanItemForChecking">Escanea artículo a verificar</string>
|
||||||
<string name="itemNotFoundScanAgain">Artículo no encontrado. Escanea de nuevo el carro</string>
|
<string name="itemNotFoundScanAgain">Artículo no encontrado. Escanea de nuevo el carro</string>
|
||||||
|
@ -623,5 +623,22 @@
|
||||||
<string name="namePallet">Número palet</string>
|
<string name="namePallet">Número palet</string>
|
||||||
<string name="sin_internet">NO INTERNET</string>
|
<string name="sin_internet">NO INTERNET</string>
|
||||||
<string name="deliveryApp">Asegúrate de tener la app de reparto instalada</string>
|
<string name="deliveryApp">Asegúrate de tener la app de reparto instalada</string>
|
||||||
|
<string name="phones">Teléfonos</string>
|
||||||
|
<string name="km">Kilómetros</string>
|
||||||
|
<string name="hours">Horas</string>
|
||||||
|
<string name="km_init">Km de inicio</string>
|
||||||
|
<string name="km_end">Km de fin</string>
|
||||||
|
<string name="hour_start">Hora de inicio</string>
|
||||||
|
<string name="hour_end">Hora de fin</string>
|
||||||
|
<string name="selectTime">Selecciona la hora</string>
|
||||||
|
<string name="packages">Bultos</string>
|
||||||
|
<string name="filterNoReview">Muestra los ítems no revisados</string>
|
||||||
|
<string name="resetReviewItems">Resetea los items revisados de un carro</string>
|
||||||
|
<string name="inventoryShowParking">Opción que selecciona los parkings a revisar</string>
|
||||||
|
<string name="clientNot">CLIENTE AUSENTE</string>
|
||||||
|
<string name="clientAuthorization">CLIENTE AUTORIZA DESCARGA A REPARTIDOR</string>
|
||||||
|
<string name="clientReject">CLIENTE RECHAZA PEDIDO</string>
|
||||||
|
<string name="packagesMissing">FALTAN BULTOS:</string>
|
||||||
|
<string name="clientDevolution">RECOGER DEVOLUCIÓN, NÚMERO DE RECLAMACIÓN:</string>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -208,7 +208,7 @@
|
||||||
<string name="parkingShelving">Aparcar carro</string>
|
<string name="parkingShelving">Aparcar carro</string>
|
||||||
<string name="parking">Parking</string>
|
<string name="parking">Parking</string>
|
||||||
<string name="addItemShelving">Añade item al carro</string>
|
<string name="addItemShelving">Añade item al carro</string>
|
||||||
<string name="save">ENREGISTRER</string>
|
<string name="save">Enregistrer</string>
|
||||||
<string name="allowChangeShelving">Permite cambiar la matrícula a un carro</string>
|
<string name="allowChangeShelving">Permite cambiar la matrícula a un carro</string>
|
||||||
<string name="deleteAllitems">Borra todos los items del carro</string>
|
<string name="deleteAllitems">Borra todos los items del carro</string>
|
||||||
<string name="changePriority">Cambia la prioridad de los items del carro. Cuanto más alta antes cogerán los sacadores.</string>
|
<string name="changePriority">Cambia la prioridad de los items del carro. Cuanto más alta antes cogerán los sacadores.</string>
|
||||||
|
@ -623,5 +623,22 @@
|
||||||
<string name="namePallet">Numéro de palette</string>
|
<string name="namePallet">Numéro de palette</string>
|
||||||
<string name="sin_internet">NO INTERNET</string>
|
<string name="sin_internet">NO INTERNET</string>
|
||||||
<string name="deliveryApp">Assurez-vous que l\'application de livraison est installée</string>
|
<string name="deliveryApp">Assurez-vous que l\'application de livraison est installée</string>
|
||||||
|
<string name="phones">Téléphone</string>
|
||||||
|
<string name="km">Kilomètres</string>
|
||||||
|
<string name="hours">Heures</string>
|
||||||
|
<string name="km_init">Kilométrage de départ</string>
|
||||||
|
<string name="km_end">Kilométrage de fin</string>
|
||||||
|
<string name="hour_start">Heure de départ</string>
|
||||||
|
<string name="hour_end">Heure de fin</string>
|
||||||
|
<string name="selectTime">Sélectionnez l\'heure</string>
|
||||||
|
<string name="packages">Colis</string>
|
||||||
|
<string name="filterNoReview">Muestra los ítems no revisados</string>
|
||||||
|
<string name="resetReviewItems">Resetea los items revisados de un carro</string>
|
||||||
|
<string name="inventoryShowParking">Opción que selecciona los parkings a revisar</string>
|
||||||
|
<string name="clientNot">CLIENT ABSENT</string>
|
||||||
|
<string name="clientAuthorization">CLIENT AUTORISE LA LIVRAISON AU LIVREUR</string>
|
||||||
|
<string name="clientReject">CLIENT REFUSE LA COMMANDE</string>
|
||||||
|
<string name="packagesMissing">COLIS MANQUANTS :</string>
|
||||||
|
<string name="clientDevolution">RECUEILLIR UN RETOUR, NUMÉRO DE RÉCLAMATION :</string>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -623,5 +623,22 @@
|
||||||
<string name="namePallet">Numero palet</string>
|
<string name="namePallet">Numero palet</string>
|
||||||
<string name="sin_internet">NO INTERNET</string>
|
<string name="sin_internet">NO INTERNET</string>
|
||||||
<string name="deliveryApp">Certifique-se de ter o aplicativo de entrega instalado</string>
|
<string name="deliveryApp">Certifique-se de ter o aplicativo de entrega instalado</string>
|
||||||
|
<string name="phones">Telefone</string>
|
||||||
|
<string name="km">Kilometros</string>
|
||||||
|
<string name="hours">Horas</string>
|
||||||
|
<string name="km_init">Km de inicio</string>
|
||||||
|
<string name="km_end">Km fim</string>
|
||||||
|
<string name="hour_start">Hora de inicio</string>
|
||||||
|
<string name="hour_end">Hora fim</string>
|
||||||
|
<string name="selectTime">Seleccione Hora</string>
|
||||||
|
<string name="packages">Volumes</string>
|
||||||
|
<string name="filterNoReview">Muestra los ítems no revisados</string>
|
||||||
|
<string name="resetReviewItems">Resetea los items revisados de un carro</string>
|
||||||
|
<string name="inventoryShowParking">Opción que selecciona los parkings a revisar</string>
|
||||||
|
<string name="clientNot">CLIENTE AUSENTE</string>
|
||||||
|
<string name="clientAuthorization">CLIENTE AUTORIZA DESCARGA AO ESTAFETA</string>
|
||||||
|
<string name="clientReject">CLIENTE REJEITA PEDIDO</string>
|
||||||
|
<string name="packagesMissing">FALTAM VOLUMES:</string>
|
||||||
|
<string name="clientDevolution">\"LEVANTAR DEVOLUÇÃO, NUMERO DE RECLAMAÇÃO: \"</string>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -610,10 +610,10 @@
|
||||||
<string name="titleInventoryParking">Inventory by parking</string>
|
<string name="titleInventoryParking">Inventory by parking</string>
|
||||||
<string name="titleInventoryParkingDescrip">Inventory by parking, you can select ubications</string>
|
<string name="titleInventoryParkingDescrip">Inventory by parking, you can select ubications</string>
|
||||||
<string name="quantityVisible">Indica la nueva cantidad visible</string>
|
<string name="quantityVisible">Indica la nueva cantidad visible</string>
|
||||||
<string name="checkItemShelvingSelect">Ecscanea o escribe la matrícula a resetear revisión</string>
|
<string name="checkItemShelvingSelect">Escanea o escribe la matrícula a resetear revisión</string>
|
||||||
<string name="selectParkingsCheckin">Indica parkings a revisar</string>
|
<string name="selectParkingsCheckin">Indica parkings a revisar</string>
|
||||||
<string name="selectParkingsFrom">Indica desde dónde hasta cual quieres revisar</string>
|
<string name="selectParkingsFrom">Indica desde qué parking quieres revisar</string>
|
||||||
<string name="selectParkingsTo">Indica el parking hasta donde quieres revisar</string>
|
<string name="selectParkingsTo">Indica hasta qué parking quieres revisar</string>
|
||||||
<string name="shelvingNotFound">Matrícula del carro no encontrada</string>
|
<string name="shelvingNotFound">Matrícula del carro no encontrada</string>
|
||||||
<string name="scanItemForChecking">Escanea artículo a verificar</string>
|
<string name="scanItemForChecking">Escanea artículo a verificar</string>
|
||||||
<string name="itemNotFoundScanAgain">Artículo no encontrado. Escanea de nuevo el carro</string>
|
<string name="itemNotFoundScanAgain">Artículo no encontrado. Escanea de nuevo el carro</string>
|
||||||
|
@ -622,4 +622,21 @@
|
||||||
<string name="scannerDelivery">Scan</string>
|
<string name="scannerDelivery">Scan</string>
|
||||||
<string name="sin_internet">NO INTERNET</string>
|
<string name="sin_internet">NO INTERNET</string>
|
||||||
<string name="deliveryApp">Make sure you have the delivery app installed</string>
|
<string name="deliveryApp">Make sure you have the delivery app installed</string>
|
||||||
|
<string name="phones">Phones</string>
|
||||||
|
<string name="km">Kilometers</string>
|
||||||
|
<string name="hours">Hours</string>
|
||||||
|
<string name="km_init">Start km</string>
|
||||||
|
<string name="km_end">Finish km</string>
|
||||||
|
<string name="hour_start">Start hour</string>
|
||||||
|
<string name="hour_end">Finish hour</string>
|
||||||
|
<string name="selectTime">Select Time</string>
|
||||||
|
<string name="packages">Packages</string>
|
||||||
|
<string name="filterNoReview">Muestra los ítems no revisados</string>
|
||||||
|
<string name="resetReviewItems">Resetea los items revisados de un carro</string>
|
||||||
|
<string name="inventoryShowParking">Opción que selecciona los parkings a revisar</string>
|
||||||
|
<string name="clientNot">CLIENTE AUSENTE</string>
|
||||||
|
<string name="clientAuthorization">CLIENTE AUTORIZA DESCARGA A REPARTIDOR</string>
|
||||||
|
<string name="clientReject">CLIENTE RECHAZA PEDIDO</string>
|
||||||
|
<string name="packagesMissing">FALTAN BULTOS:</string>
|
||||||
|
<string name="clientDevolution">RECOGER DEVOLUCIÓN, NÚMERO DE RECLAMACIÓN:</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
Loading…
Reference in New Issue