release version

This commit is contained in:
Enrique Blasco 2020-05-14 02:58:48 +02:00
parent 7d3da7c5b4
commit d4819c4e08
24 changed files with 154 additions and 83 deletions

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project version="4"> <project version="4">
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" project-jdk-name="1.8" project-jdk-type="JavaSDK"> <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" /> <output url="file://$PROJECT_DIR$/build/classes" />
</component> </component>
<component name="ProjectType"> <component name="ProjectType">

View File

@ -29,6 +29,11 @@ android {
enabled = true enabled = true
} }
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
} }
dependencies { dependencies {

BIN
app/release/newapp.apk Normal file

Binary file not shown.

1
app/release/output.json Normal file
View File

@ -0,0 +1 @@
[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":1,"versionName":"5.0","enabled":true,"outputFile":"app-release.apk","fullName":"release","baseName":"release","dirName":""},"path":"app-release.apk","properties":{}}]

View File

@ -13,11 +13,17 @@
android:supportsRtl="true" android:supportsRtl="true"
android:theme="@style/AppTheme" android:theme="@style/AppTheme"
android:usesCleartextTraffic="true"> android:usesCleartextTraffic="true">
<activity android:name=".presentation.view.feature.imageview.activity.ImageViewActivity"/> <activity android:name=".presentation.view.feature.imageview.activity.ImageViewActivity" android:configChanges="orientation"
android:screenOrientation="portrait"/>
<activity <activity
android:name=".presentation.view.feature.main.activity.MainActivity" android:name=".presentation.view.feature.main.activity.MainActivity"
android:windowSoftInputMode="stateHidden" /> android:windowSoftInputMode="stateHidden"
<activity android:name=".presentation.view.feature.login.activity.LoginActivity"> android:configChanges="orientation"
android:screenOrientation="portrait"/>
<activity
android:name=".presentation.view.feature.login.activity.LoginActivity"
android:configChanges="orientation"
android:screenOrientation="portrait">
<intent-filter> <intent-filter>
<action android:name="android.intent.action.MAIN" /> <action android:name="android.intent.action.MAIN" />

View File

@ -8,8 +8,8 @@ import java.util.concurrent.TimeUnit
class ApiUtils { class ApiUtils {
companion object { companion object {
const val BASE_URL:String = "http://192.168.1.108:8000/" //const val BASE_URL:String = "http://192.168.1.108:8000/"
//const val BASE_URL:String = "https://app.verdnatura.es/" const val BASE_URL:String = "https://app.verdnatura.es/"
fun getApiService():VerdnaturaService{ fun getApiService():VerdnaturaService{
val retrofit = Retrofit.Builder() val retrofit = Retrofit.Builder()
.baseUrl(BASE_URL) .baseUrl(BASE_URL)

View File

@ -1,10 +1,7 @@
package es.verdnatura.domain package es.verdnatura.domain
import es.verdnatura.presentation.view.feature.shelvingparking.model.ItemShelvingParkingVO
import es.verdnatura.presentation.view.feature.ubicador.model.ItemUbicadorVO import es.verdnatura.presentation.view.feature.ubicador.model.ItemUbicadorVO
import retrofit2.Call import retrofit2.Call
import java.util.*
import kotlin.collections.ArrayList
class GetUbicadorUserCase : RestClient() { class GetUbicadorUserCase : RestClient() {

View File

@ -28,7 +28,7 @@ interface VerdnaturaService {
@Body params: List<String>): @Body params: List<String>):
Call<String> Call<String>
@POST("almacenv2/version") @POST("almacennew/version")
fun version(@Header("aplicacion") aplicacion: String, fun version(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -39,7 +39,7 @@ interface VerdnaturaService {
//AJUSTES ========================================================================> //AJUSTES ========================================================================>
@POST("almacenv2/sector_get") @POST("almacennew/sector_get")
fun getSectors(@Header("aplicacion") aplicacion: String, fun getSectors(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -51,7 +51,7 @@ interface VerdnaturaService {
//PASILLEROS ========================================================================> //PASILLEROS ========================================================================>
//CONSULTAR ARTICULO ========================================================================> //CONSULTAR ARTICULO ========================================================================>
@POST("almacenv2/item_card") @POST("almacennew/item_card")
fun getItemCard(@Header("aplicacion") aplicacion: String, fun getItemCard(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -60,7 +60,7 @@ interface VerdnaturaService {
@Body params: List<String>): @Body params: List<String>):
Call<ItemCardVO> Call<ItemCardVO>
@POST("almacenv2/item_Stock_Update") @POST("almacennew/item_Stock_Update")
fun itemStockUpdate(@Header("aplicacion") aplicacion: String, fun itemStockUpdate(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -69,7 +69,7 @@ interface VerdnaturaService {
@Body params: List<String>): @Body params: List<String>):
Call<String> Call<String>
@POST("almacenv2/item_placement_save") @POST("almacennew/item_placement_save")
fun itemPlacementSave(@Header("aplicacion") aplicacion: String, fun itemPlacementSave(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -78,7 +78,7 @@ interface VerdnaturaService {
@Body params: List<String>): @Body params: List<String>):
Call<String> Call<String>
@POST("almacenv2/buy_updateGrouping") @POST("almacennew/buy_updateGrouping")
fun updateGrouping(@Header("aplicacion") aplicacion: String, fun updateGrouping(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -87,7 +87,7 @@ interface VerdnaturaService {
@Body params: List<String>): @Body params: List<String>):
Call<String> Call<String>
@POST("almacenv2/buy_updatePacking") @POST("almacennew/buy_updatePacking")
fun updatePacking(@Header("aplicacion") aplicacion: String, fun updatePacking(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -96,7 +96,7 @@ interface VerdnaturaService {
@Body params: List<String>): @Body params: List<String>):
Call<String> Call<String>
@POST("almacenv2/itemSaveMin") @POST("almacennew/itemSaveMin")
fun itemSaveMin(@Header("aplicacion") aplicacion: String, fun itemSaveMin(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -106,7 +106,7 @@ interface VerdnaturaService {
Call<String> Call<String>
@POST("almacenv2/barcodes_edit") @POST("almacennew/barcodes_edit")
fun barcodes_edit(@Header("aplicacion") aplicacion: String, fun barcodes_edit(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -116,7 +116,7 @@ interface VerdnaturaService {
Call<String> Call<String>
//BUSCAR ITEM ========================================================================> //BUSCAR ITEM ========================================================================>
@POST("almacenv2/getItemUbication") @POST("almacennew/getItemUbication")
fun searchItemsUbicador(@Header("aplicacion") aplicacion: String, fun searchItemsUbicador(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -126,7 +126,7 @@ interface VerdnaturaService {
Call<List<ItemLocationVO>> Call<List<ItemLocationVO>>
//INVENTARIO ========================================================================> //INVENTARIO ========================================================================>
@POST("almacenv2/itemShelvingRadar") @POST("almacennew/itemShelvingRadar")
fun itemShelvingRadar(@Header("aplicacion") aplicacion: String, fun itemShelvingRadar(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -135,7 +135,7 @@ interface VerdnaturaService {
@Body params: List<String>): @Body params: List<String>):
Call<List<ItemInventaryVO>> Call<List<ItemInventaryVO>>
@POST("almacenv2/faultsReview") @POST("almacennew/faultsReview")
fun faultsReview(@Header("aplicacion") aplicacion: String, fun faultsReview(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -144,7 +144,7 @@ interface VerdnaturaService {
@Body params: List<String>): @Body params: List<String>):
Call<List<ItemFaltasVO>> Call<List<ItemFaltasVO>>
@POST("almacenv2/faultsReview_isChecked") @POST("almacennew/faultsReview_isChecked")
fun faultsReview_isChecked(@Header("aplicacion") aplicacion: String, fun faultsReview_isChecked(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -154,7 +154,7 @@ interface VerdnaturaService {
Call<String> Call<String>
//SHELVING PARKING ========================================================================> //SHELVING PARKING ========================================================================>
@POST("almacenv2/shelvingParking_get") @POST("almacennew/shelvingParking_get")
fun shelvingParking_get(@Header("aplicacion") aplicacion: String, fun shelvingParking_get(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -164,7 +164,7 @@ interface VerdnaturaService {
Call<List<ItemShelvingParkingVO>> Call<List<ItemShelvingParkingVO>>
//UBICADOR ========================================================================> //UBICADOR ========================================================================>
@POST("almacenv2/itemShelvingList") @POST("almacennew/itemShelvingList")
fun itemShelvingList(@Header("aplicacion") aplicacion: String, fun itemShelvingList(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -173,7 +173,7 @@ interface VerdnaturaService {
@Body params: List<String>): @Body params: List<String>):
Call<List<ItemUbicadorVO>> Call<List<ItemUbicadorVO>>
@POST("almacenv2/itemShelvingMake") @POST("almacennew/itemShelvingMake")
fun itemShelvingMake(@Header("aplicacion") aplicacion: String, fun itemShelvingMake(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -182,7 +182,7 @@ interface VerdnaturaService {
@Body params: List<String>): @Body params: List<String>):
Call<String> Call<String>
@POST("almacenv2/itemShelvingMake_multi") @POST("almacennew/itemShelvingMake_multi")
fun itemShelvingMake_multi(@Header("aplicacion") aplicacion: String, fun itemShelvingMake_multi(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -191,7 +191,7 @@ interface VerdnaturaService {
@Body params: List<Any>): @Body params: List<Any>):
Call<String> Call<String>
@POST("almacenv2/shelvingPark") @POST("almacennew/shelvingPark")
fun shelvingPark(@Header("aplicacion") aplicacion: String, fun shelvingPark(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -200,7 +200,7 @@ interface VerdnaturaService {
@Body params: List<String>): @Body params: List<String>):
Call<String> Call<String>
@POST("almacenv2/shelvingChange") @POST("almacennew/shelvingChange")
fun shelvingChange(@Header("aplicacion") aplicacion: String, fun shelvingChange(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -209,7 +209,7 @@ interface VerdnaturaService {
@Body params: List<String>): @Body params: List<String>):
Call<String> Call<String>
@POST("almacenv2/clearShelvingList") @POST("almacennew/clearShelvingList")
fun clearShelvingList(@Header("aplicacion") aplicacion: String, fun clearShelvingList(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -218,7 +218,7 @@ interface VerdnaturaService {
@Body params: List<String>): @Body params: List<String>):
Call<String> Call<String>
@POST("almacenv2/itemShelvingTransfer") @POST("almacennew/itemShelvingTransfer")
fun itemShelvingTransfer(@Header("aplicacion") aplicacion: String, fun itemShelvingTransfer(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,
@ -227,7 +227,7 @@ interface VerdnaturaService {
@Body params: List<String>): @Body params: List<String>):
Call<String> Call<String>
@POST("almacenv2/itemShelvingDelete") @POST("almacennew/itemShelvingDelete")
fun itemShelvingDelete(@Header("aplicacion") aplicacion: String, fun itemShelvingDelete(@Header("aplicacion") aplicacion: String,
@Header("version") version: String, @Header("version") version: String,
@Header("user") user: String, @Header("user") user: String,

View File

@ -23,6 +23,7 @@ abstract class BaseFragment<T : ViewDataBinding, V : BaseViewModel>(viewModelCla
protected val SECTORDESCRIP = "sectordescrip" protected val SECTORDESCRIP = "sectordescrip"
protected val SECTORFK = "sectorFk" protected val SECTORFK = "sectorFk"
protected val WAREHOUSEFK = "warehouseFk" protected val WAREHOUSEFK = "warehouseFk"
protected val RECORDAR = "recordar"
protected val viewModel: V by viewModel(viewModelClass) protected val viewModel: V by viewModel(viewModelClass)
protected lateinit var binding: T protected lateinit var binding: T

View File

@ -8,7 +8,6 @@ import es.verdnatura.presentation.view.feature.buscaritem.model.ItemLocationVO
import es.verdnatura.presentation.view.feature.faltas.model.ItemFaltasVO import es.verdnatura.presentation.view.feature.faltas.model.ItemFaltasVO
import es.verdnatura.presentation.view.feature.inventario.model.ItemInventaryVO import es.verdnatura.presentation.view.feature.inventario.model.ItemInventaryVO
import es.verdnatura.presentation.view.feature.pasillero.model.PasillerosItemVO import es.verdnatura.presentation.view.feature.pasillero.model.PasillerosItemVO
import es.verdnatura.presentation.view.feature.ubicador.model.ItemEscanerVO
import es.verdnatura.presentation.view.feature.ubicador.model.ItemUbicadorVO import es.verdnatura.presentation.view.feature.ubicador.model.ItemUbicadorVO
interface OnOptionsSelectedListener { interface OnOptionsSelectedListener {

View File

@ -4,6 +4,7 @@ package es.verdnatura.presentation.view.feature.articulo.fragment
import android.content.Intent import android.content.Intent
import android.content.SharedPreferences import android.content.SharedPreferences
import android.graphics.drawable.Drawable
import android.view.View import android.view.View
import android.view.inputmethod.EditorInfo import android.view.inputmethod.EditorInfo
import androidx.lifecycle.Observer import androidx.lifecycle.Observer
@ -13,6 +14,7 @@ import es.verdnatura.databinding.FragmentItemCardBinding
import es.verdnatura.presentation.base.BaseFragment import es.verdnatura.presentation.base.BaseFragment
import es.verdnatura.presentation.common.OnBarcodeRowClickListener import es.verdnatura.presentation.common.OnBarcodeRowClickListener
import es.verdnatura.presentation.common.OnItemCardRowClickListener import es.verdnatura.presentation.common.OnItemCardRowClickListener
import es.verdnatura.presentation.common.OnOptionsSelectedListener
import es.verdnatura.presentation.common.loadUrl import es.verdnatura.presentation.common.loadUrl
import es.verdnatura.presentation.view.component.CustomDialog import es.verdnatura.presentation.view.component.CustomDialog
import es.verdnatura.presentation.view.component.CustomDialogInput import es.verdnatura.presentation.view.component.CustomDialogInput
@ -24,6 +26,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.ItemCardVO import es.verdnatura.presentation.view.feature.articulo.model.ItemCardVO
import es.verdnatura.presentation.view.feature.imageview.activity.ImageViewActivity import es.verdnatura.presentation.view.feature.imageview.activity.ImageViewActivity
import es.verdnatura.presentation.view.feature.inventario.adapter.ToolBarAdapter
import es.verdnatura.presentation.view.feature.main.activity.MainActivity import es.verdnatura.presentation.view.feature.main.activity.MainActivity
import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.activity_main.*
import kotlinx.android.synthetic.main.fragment_item_card.* import kotlinx.android.synthetic.main.fragment_item_card.*
@ -65,9 +68,25 @@ class ItemCardFragment(
if (!itemFk.isNullOrEmpty()){ if (!itemFk.isNullOrEmpty()){
getItemCard(itemFk) getItemCard(itemFk)
} }
setToolBar()
super.init() super.init()
} }
private fun setToolBar(){
val listIcons:ArrayList<Drawable> = ArrayList()
val iconReload : Drawable = resources.getDrawable(R.drawable.ic_autorenew_black_24dp,resources.newTheme())
listIcons.add(iconReload)
toolbar_icons.adapter = ToolBarAdapter(listIcons,object: OnOptionsSelectedListener {
override fun onOptionsItemSelected(item: Drawable) {
if (item == iconReload){
splash_progress.visibility = View.VISIBLE
getItemCard(itemFk)
}
}
})
toolbar_icons.layoutManager = LinearLayoutManager(requireContext(), LinearLayoutManager.HORIZONTAL, false)
}
private fun setEvents(){ private fun setEvents(){
edit_itemFk.requestFocus() edit_itemFk.requestFocus()

View File

@ -4,7 +4,6 @@ import android.view.LayoutInflater
import android.view.ViewGroup import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import es.verdnatura.databinding.ItemLocationRowBinding import es.verdnatura.databinding.ItemLocationRowBinding
import es.verdnatura.presentation.common.OnLocationRowClickListener
import es.verdnatura.presentation.common.OnPasillerosItemClickListener import es.verdnatura.presentation.common.OnPasillerosItemClickListener
import es.verdnatura.presentation.view.feature.buscaritem.model.ItemLocationVO import es.verdnatura.presentation.view.feature.buscaritem.model.ItemLocationVO
import es.verdnatura.presentation.view.feature.pasillero.model.PasillerosItemVO import es.verdnatura.presentation.view.feature.pasillero.model.PasillerosItemVO

View File

@ -10,11 +10,9 @@ import es.verdnatura.R
import es.verdnatura.databinding.FragmentBuscarItemBinding import es.verdnatura.databinding.FragmentBuscarItemBinding
import es.verdnatura.domain.notNull import es.verdnatura.domain.notNull
import es.verdnatura.presentation.base.BaseFragment import es.verdnatura.presentation.base.BaseFragment
import es.verdnatura.presentation.common.OnLocationRowClickListener
import es.verdnatura.presentation.common.OnPasillerosItemClickListener import es.verdnatura.presentation.common.OnPasillerosItemClickListener
import es.verdnatura.presentation.view.component.CustomDialog import es.verdnatura.presentation.view.component.CustomDialog
import es.verdnatura.presentation.view.feature.buscaritem.adapter.LocationAdapter import es.verdnatura.presentation.view.feature.buscaritem.adapter.LocationAdapter
import es.verdnatura.presentation.view.feature.buscaritem.model.ItemLocationVO
import es.verdnatura.presentation.view.feature.main.activity.MainActivity import es.verdnatura.presentation.view.feature.main.activity.MainActivity
import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.activity_main.*
import kotlinx.android.synthetic.main.fragment_buscar_item.* import kotlinx.android.synthetic.main.fragment_buscar_item.*

View File

@ -3,17 +3,16 @@ package es.verdnatura.presentation.view.feature.faltas.fragment
import android.content.Context import android.content.Context
import android.content.SharedPreferences import android.content.SharedPreferences
import android.graphics.drawable.Drawable import android.graphics.drawable.Drawable
import android.os.Bundle
import android.view.View import android.view.View
import android.view.inputmethod.EditorInfo import android.view.inputmethod.EditorInfo
import androidx.lifecycle.Observer import androidx.lifecycle.Observer
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import es.verdnatura.R import es.verdnatura.R
import es.verdnatura.databinding.FragmentFaltasBinding import es.verdnatura.databinding.FragmentFaltasBinding
import es.verdnatura.domain.notNull
import es.verdnatura.presentation.base.BaseFragment import es.verdnatura.presentation.base.BaseFragment
import es.verdnatura.presentation.common.OnFaltasNichoClickListener import es.verdnatura.presentation.common.OnFaltasNichoClickListener
import es.verdnatura.presentation.common.OnFaltasReviewClickListener import es.verdnatura.presentation.common.OnFaltasReviewClickListener
import es.verdnatura.presentation.common.OnOptionsSelectedListener import es.verdnatura.presentation.common.OnOptionsSelectedListener
import es.verdnatura.presentation.common.OnPasillerosItemClickListener import es.verdnatura.presentation.common.OnPasillerosItemClickListener
import es.verdnatura.presentation.view.component.CustomDialog import es.verdnatura.presentation.view.component.CustomDialog
@ -21,7 +20,6 @@ import es.verdnatura.presentation.view.component.CustomDialogInput
import es.verdnatura.presentation.view.feature.faltas.adapter.FaltasAdapter import es.verdnatura.presentation.view.feature.faltas.adapter.FaltasAdapter
import es.verdnatura.presentation.view.feature.faltas.model.ItemFaltasVO import es.verdnatura.presentation.view.feature.faltas.model.ItemFaltasVO
import es.verdnatura.presentation.view.feature.inventario.adapter.ToolBarAdapter import es.verdnatura.presentation.view.feature.inventario.adapter.ToolBarAdapter
import es.verdnatura.presentation.view.feature.main.activity.MainActivity import es.verdnatura.presentation.view.feature.main.activity.MainActivity
import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.activity_main.*
import kotlinx.android.synthetic.main.fragment_faltas.* import kotlinx.android.synthetic.main.fragment_faltas.*
@ -39,6 +37,8 @@ class FaltasFragment : BaseFragment<FragmentFaltasBinding, FaltasViewModel>(Falt
private var listInvetoryAux:ArrayList<ItemFaltasVO> = ArrayList() private var listInvetoryAux:ArrayList<ItemFaltasVO> = ArrayList()
private lateinit var customDialog: CustomDialog private lateinit var customDialog: CustomDialog
private var pasillerosItemClickListener: OnPasillerosItemClickListener? = null private var pasillerosItemClickListener: OnPasillerosItemClickListener? = null
private var reload = false
private var hideLoad = true
companion object { companion object {
fun newInstance() = FaltasFragment() fun newInstance() = FaltasFragment()
@ -51,20 +51,31 @@ class FaltasFragment : BaseFragment<FragmentFaltasBinding, FaltasViewModel>(Falt
override fun getLayoutId(): Int = R.layout.fragment_faltas override fun getLayoutId(): Int = R.layout.fragment_faltas
override fun init() { override fun onCreate(savedInstanceState: Bundle?) {
splash_progress.visibility = View.VISIBLE
activity!!.main_bottom_navigation.visibility = View.GONE
toolbar_title.text = "faultsReview"
setToolBar()
val prefs: SharedPreferences = activity!!.getSharedPreferences(PREFS_USER,0) val prefs: SharedPreferences = activity!!.getSharedPreferences(PREFS_USER,0)
user = prefs.getString(USER,"").toString() user = prefs.getString(USER,"").toString()
password = prefs.getString(PASSWORD,"").toString() password = prefs.getString(PASSWORD,"").toString()
sectorFk = prefs.getInt(SECTORFK,1).toString() sectorFk = prefs.getInt(SECTORFK,1).toString()
warehouseFk = prefs.getInt(WAREHOUSEFK,1).toString() warehouseFk = prefs.getInt(WAREHOUSEFK,1).toString()
viewModel.getFaltas(user,password,warehouseFk) viewModel.getFaltas(user,password,warehouseFk)
super.onCreate(savedInstanceState)
}
override fun init() {
splash_progress.visibility = View.VISIBLE
activity!!.main_bottom_navigation.visibility = View.GONE
toolbar_title.text = "faultsReview"
setToolBar()
customDialogInput = CustomDialogInput(requireContext()) customDialogInput = CustomDialogInput(requireContext())
customDialog = CustomDialog(requireContext()) customDialog = CustomDialog(requireContext())
setEvents() setEvents()
if (reload){
reload = false
hideLoad = false
splash_progress.visibility = View.VISIBLE
viewModel.getFaltas(user,password,warehouseFk)
}
super.init() super.init()
} }
@ -117,10 +128,12 @@ class FaltasFragment : BaseFragment<FragmentFaltasBinding, FaltasViewModel>(Falt
override fun observeViewModel() { override fun observeViewModel() {
with(viewModel){ with(viewModel){
loadFaltasList.observe(viewLifecycleOwner, Observer { event -> faltasList.observe(viewLifecycleOwner, Observer {
if (hideLoad){
event.getContentIfNotHandled().notNull {
splash_progress.visibility = View.GONE splash_progress.visibility = View.GONE
}else{
hideLoad = true
}
listInvetory = ArrayList() listInvetory = ArrayList()
listInvetoryAux = ArrayList() listInvetoryAux = ArrayList()
it.list.forEach { it.list.forEach {
@ -163,7 +176,7 @@ class FaltasFragment : BaseFragment<FragmentFaltasBinding, FaltasViewModel>(Falt
},pasillerosItemClickListener!!) },pasillerosItemClickListener!!)
location_recyclerview.adapter = adapter location_recyclerview.adapter = adapter
location_recyclerview.layoutManager = LinearLayoutManager(requireContext(), LinearLayoutManager.VERTICAL, false) location_recyclerview.layoutManager = LinearLayoutManager(requireContext(), LinearLayoutManager.VERTICAL, false)
}
}) })
@ -198,6 +211,9 @@ class FaltasFragment : BaseFragment<FragmentFaltasBinding, FaltasViewModel>(Falt
} }
listInvetoryAux.removeAt(position) listInvetoryAux.removeAt(position)
adapter?.notifyDataSetChanged() adapter?.notifyDataSetChanged()
reload = true
} }

View File

@ -3,13 +3,13 @@ package es.verdnatura.presentation.view.feature.inventario.fragment
import android.content.Context import android.content.Context
import android.content.SharedPreferences import android.content.SharedPreferences
import android.graphics.drawable.Drawable import android.graphics.drawable.Drawable
import android.os.Bundle
import android.view.View import android.view.View
import android.view.inputmethod.EditorInfo import android.view.inputmethod.EditorInfo
import androidx.lifecycle.Observer import androidx.lifecycle.Observer
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import es.verdnatura.R import es.verdnatura.R
import es.verdnatura.databinding.FragmentInventaryBinding import es.verdnatura.databinding.FragmentInventaryBinding
import es.verdnatura.domain.notNull
import es.verdnatura.presentation.base.BaseFragment import es.verdnatura.presentation.base.BaseFragment
import es.verdnatura.presentation.common.OnInvetoryNichoClickListener import es.verdnatura.presentation.common.OnInvetoryNichoClickListener
import es.verdnatura.presentation.common.OnOptionsSelectedListener import es.verdnatura.presentation.common.OnOptionsSelectedListener
@ -38,6 +38,8 @@ class InventaryFragment : BaseFragment<FragmentInventaryBinding,InventaryViewMod
private var listInvetoryAux:ArrayList<ItemInventaryVO> = ArrayList() private var listInvetoryAux:ArrayList<ItemInventaryVO> = ArrayList()
private lateinit var customDialog: CustomDialog private lateinit var customDialog: CustomDialog
private var pasillerosItemClickListener: OnPasillerosItemClickListener? = null private var pasillerosItemClickListener: OnPasillerosItemClickListener? = null
private var reload = false
private var hideLoad = true
companion object { companion object {
fun newInstance() = InventaryFragment() fun newInstance() = InventaryFragment()
@ -50,23 +52,31 @@ class InventaryFragment : BaseFragment<FragmentInventaryBinding,InventaryViewMod
super.onAttach(context) super.onAttach(context)
} }
override fun init() { override fun onCreate(savedInstanceState: Bundle?) {
val prefs: SharedPreferences = activity!!.getSharedPreferences(PREFS_USER,0) val prefs: SharedPreferences = activity!!.getSharedPreferences(PREFS_USER,0)
user = prefs.getString(USER,"").toString() user = prefs.getString(USER,"").toString()
password = prefs.getString(PASSWORD,"").toString() password = prefs.getString(PASSWORD,"").toString()
sectorFk = prefs.getInt(SECTORFK,1).toString() sectorFk = prefs.getInt(SECTORFK,1).toString()
warehouseFk = prefs.getInt(WAREHOUSEFK,1).toString() warehouseFk = prefs.getInt(WAREHOUSEFK,1).toString()
viewModel.getInventory(user,password,sectorFk) viewModel.getInventory(user,password,sectorFk)
super.onCreate(savedInstanceState)
}
override fun init() {
customDialogInput = CustomDialogInput(requireContext()) customDialogInput = CustomDialogInput(requireContext())
customDialog = CustomDialog(requireContext()) customDialog = CustomDialog(requireContext())
activity!!.main_bottom_navigation.visibility = View.GONE activity!!.main_bottom_navigation.visibility = View.GONE
splash_progress.visibility = View.VISIBLE splash_progress.visibility = View.VISIBLE
toolbar_title.text = "itemShelvingRadar" toolbar_title.text = "itemShelvingRadar"
setToolBar() setToolBar()
setEvents() setEvents()
if (reload){
reload = false
splash_progress.visibility = View.VISIBLE
hideLoad = false
viewModel.getInventory(user,password,sectorFk)
}
super.init() super.init()
} }
@ -119,12 +129,19 @@ class InventaryFragment : BaseFragment<FragmentInventaryBinding,InventaryViewMod
} }
} }
override fun observeViewModel() { override fun observeViewModel() {
with(viewModel){ with(viewModel){
loadInventaryList.observe(viewLifecycleOwner, Observer { event ->
event.getContentIfNotHandled().notNull {
inventaryList.observe(viewLifecycleOwner, Observer {
if (hideLoad){
splash_progress.visibility = View.GONE splash_progress.visibility = View.GONE
}else{
hideLoad = true
}
listInvetory = ArrayList() listInvetory = ArrayList()
listInvetoryAux = ArrayList() listInvetoryAux = ArrayList()
it.list.forEach { it.list.forEach {
@ -163,7 +180,8 @@ class InventaryFragment : BaseFragment<FragmentInventaryBinding,InventaryViewMod
},onPasillerosItemClickListener = pasillerosItemClickListener!!) },onPasillerosItemClickListener = pasillerosItemClickListener!!)
location_recyclerview.adapter = adapter location_recyclerview.adapter = adapter
location_recyclerview.layoutManager = LinearLayoutManager(requireContext(), LinearLayoutManager.VERTICAL, false) location_recyclerview.layoutManager = LinearLayoutManager(requireContext(), LinearLayoutManager.VERTICAL, false)
}
}) })
@ -198,6 +216,9 @@ class InventaryFragment : BaseFragment<FragmentInventaryBinding,InventaryViewMod
} }
listInvetoryAux.removeAt(position) listInvetoryAux.removeAt(position)
adapter?.notifyDataSetChanged() adapter?.notifyDataSetChanged()
reload = true
} }

View File

@ -20,7 +20,6 @@ class InventaryViewModel : BaseViewModel() {
private val getInventaryUserCase: GetInventaryUserCase = GetInventaryUserCase() private val getInventaryUserCase: GetInventaryUserCase = GetInventaryUserCase()
private val getItemCardUserCase: GetItemCardUserCase = GetItemCardUserCase() private val getItemCardUserCase: GetItemCardUserCase = GetItemCardUserCase()
private val _inventaryList by lazy { MutableLiveData<InventaryListVO>() } private val _inventaryList by lazy { MutableLiveData<InventaryListVO>() }
val inventaryList: LiveData<InventaryListVO> val inventaryList: LiveData<InventaryListVO>
get() = _inventaryList get() = _inventaryList
@ -52,6 +51,7 @@ class InventaryViewModel : BaseViewModel() {
val listError:ArrayList<ItemInventaryVO> = ArrayList() val listError:ArrayList<ItemInventaryVO> = ArrayList()
listError.add(ItemInventaryVO(isError = true,errorMessage = "Error en la llamada de itemShelvingRadar")) listError.add(ItemInventaryVO(isError = true,errorMessage = "Error en la llamada de itemShelvingRadar"))
_inventaryList.value = InventaryListVO(listError) _inventaryList.value = InventaryListVO(listError)
} }
} }

View File

@ -30,10 +30,18 @@ class LoginFragment : BaseFragment<FragmentLoginBinding,LoginViewModel> (LoginVi
splash_progress.visibility = View.VISIBLE splash_progress.visibility = View.VISIBLE
viewModel.login(edittext_username.text.toString(),edittext_password.text.toString()) viewModel.login(edittext_username.text.toString(),edittext_password.text.toString())
}) })
textview_remember_password.setOnClickListener {
edittext_username.setText("")
edittext_password.setText("")
switch_remember.isChecked = false
saveRemember(false)
}
} }
private fun checkUser(){ private fun checkUser(){
val prefs: SharedPreferences = activity!!.getSharedPreferences(PREFS_USER,0) val prefs: SharedPreferences = activity!!.getSharedPreferences(PREFS_USER,0)
if (prefs.getBoolean(RECORDAR,false)){
edittext_username.setText(prefs.getString(USER,"")) edittext_username.setText(prefs.getString(USER,""))
edittext_password.setText(prefs.getString(PASSWORD,"")) edittext_password.setText(prefs.getString(PASSWORD,""))
if (edittext_password.text.toString().isNotEmpty()){ if (edittext_password.text.toString().isNotEmpty()){
@ -41,6 +49,8 @@ class LoginFragment : BaseFragment<FragmentLoginBinding,LoginViewModel> (LoginVi
} }
} }
}
override fun observeViewModel() { override fun observeViewModel() {
with(viewModel){ with(viewModel){
loginitem.observe(viewLifecycleOwner, Observer { loginitem.observe(viewLifecycleOwner, Observer {
@ -53,10 +63,12 @@ class LoginFragment : BaseFragment<FragmentLoginBinding,LoginViewModel> (LoginVi
splash_progress.visibility = View.VISIBLE splash_progress.visibility = View.VISIBLE
saveUserFkPref(it) saveUserFkPref(it)
if (switch_remember.isChecked) { if (switch_remember.isChecked) {
saveUserAccesPref(edittext_username.text.toString(),edittext_password.text.toString()) saveRemember(true)
}else{ }else{
saveUserAccesPref("","") saveRemember(false)
} }
saveUserAccesPref(edittext_username.text.toString(),edittext_password.text.toString())
loginSalix(user = edittext_username.text.toString(),password = edittext_password.text.toString()) loginSalix(user = edittext_username.text.toString(),password = edittext_password.text.toString())
} }
@ -78,7 +90,13 @@ class LoginFragment : BaseFragment<FragmentLoginBinding,LoginViewModel> (LoginVi
version.observe(viewLifecycleOwner, Observer { version.observe(viewLifecycleOwner, Observer {
splash_progress.visibility = View.INVISIBLE splash_progress.visibility = View.INVISIBLE
if (it){ if (it){
customDialog.setTitle("Atención").setDescription("La aplicación se encuentra en fase de desarrollo. Algunas funcionalidades están desactivadas y se van a ir añadiendo de forma progresiva.").setOkButton("Entrar"){
goToMain() goToMain()
customDialog.hide()
}.setKoButton("Cancelar"){
customDialog.hide()
}.show()
}else{ }else{
customDialog.setTitle("Error").setDescription("Existe una versión nueva, es recomendable actualizar.").setOkButton("Actualizar"){ customDialog.setTitle("Error").setDescription("Existe una versión nueva, es recomendable actualizar.").setOkButton("Actualizar"){
val openURL = Intent(Intent.ACTION_VIEW) val openURL = Intent(Intent.ACTION_VIEW)
@ -116,6 +134,13 @@ class LoginFragment : BaseFragment<FragmentLoginBinding,LoginViewModel> (LoginVi
editor.apply() editor.apply()
} }
private fun saveRemember(remember:Boolean){
val prefs: SharedPreferences = activity!!.getSharedPreferences(PREFS_USER,0)
val editor = prefs.edit()
editor.putBoolean(RECORDAR,remember)
editor.apply()
}
private fun goToMain(){ private fun goToMain(){
val intent = Intent(activity,MainActivity::class.java) val intent = Intent(activity,MainActivity::class.java)
startActivity(intent) startActivity(intent)

View File

@ -116,11 +116,11 @@ class MainActivity : BaseActivity<ActivityMainBinding>() , OnPasillerosItemClick
true true
} }
"Sacadores" -> { "Sacadores" -> {
selectedItemMenu.title.toast(this@MainActivity) "Función Sacadores desactivada".toast(this@MainActivity)
true true
} }
"Controladores" -> { "Controladores" -> {
selectedItemMenu.title.toast(this@MainActivity) "Función Controladores desactivada".toast(this@MainActivity)
true true
} }
"Ajustes" -> { "Ajustes" -> {

View File

@ -4,11 +4,8 @@ import android.view.LayoutInflater
import android.view.ViewGroup import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import es.verdnatura.databinding.ItemEscanerRowBinding import es.verdnatura.databinding.ItemEscanerRowBinding
import es.verdnatura.databinding.ItemUbicationRowBinding
import es.verdnatura.presentation.common.OnAutomaticItemClickListener import es.verdnatura.presentation.common.OnAutomaticItemClickListener
import es.verdnatura.presentation.common.loadUrl
import es.verdnatura.presentation.view.feature.ubicador.model.ItemEscanerVO import es.verdnatura.presentation.view.feature.ubicador.model.ItemEscanerVO
import es.verdnatura.presentation.view.feature.ubicador.model.ItemUbicadorVO
class AutomaticAdapter ( class AutomaticAdapter (
private val items: List<ItemEscanerVO>, private val items: List<ItemEscanerVO>,

View File

@ -4,15 +4,12 @@ import android.view.LayoutInflater
import android.view.ViewGroup import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import es.verdnatura.R import es.verdnatura.R
import es.verdnatura.databinding.ItemShelvingparkingRowBinding
import es.verdnatura.databinding.ItemUbicationRowBinding import es.verdnatura.databinding.ItemUbicationRowBinding
import es.verdnatura.presentation.common.OnMoreClickListener import es.verdnatura.presentation.common.OnMoreClickListener
import es.verdnatura.presentation.common.OnPasillerosItemClickListener import es.verdnatura.presentation.common.OnPasillerosItemClickListener
import es.verdnatura.presentation.common.OnVisibleClickListener import es.verdnatura.presentation.common.OnVisibleClickListener
import es.verdnatura.presentation.common.loadUrl import es.verdnatura.presentation.common.loadUrl
import es.verdnatura.presentation.view.feature.pasillero.model.PasillerosItemVO import es.verdnatura.presentation.view.feature.pasillero.model.PasillerosItemVO
import es.verdnatura.presentation.view.feature.shelvingparking.adapter.ShelvingParkingAdapter
import es.verdnatura.presentation.view.feature.shelvingparking.model.ItemShelvingParkingVO
import es.verdnatura.presentation.view.feature.ubicador.model.ItemUbicadorVO import es.verdnatura.presentation.view.feature.ubicador.model.ItemUbicadorVO
class UbicadorAdapter ( class UbicadorAdapter (

View File

@ -7,7 +7,6 @@ import androidx.lifecycle.Observer
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import es.verdnatura.R import es.verdnatura.R
import es.verdnatura.databinding.FragmentAutomaticAddItemBinding import es.verdnatura.databinding.FragmentAutomaticAddItemBinding
import es.verdnatura.domain.notNull
import es.verdnatura.presentation.base.BaseFragment import es.verdnatura.presentation.base.BaseFragment
import es.verdnatura.presentation.common.OnAutomaticItemClickListener import es.verdnatura.presentation.common.OnAutomaticItemClickListener
import es.verdnatura.presentation.view.component.CustomDialog import es.verdnatura.presentation.view.component.CustomDialog
@ -15,13 +14,9 @@ import es.verdnatura.presentation.view.component.CustomDialogInput
import es.verdnatura.presentation.view.component.CustomDialogUbicador import es.verdnatura.presentation.view.component.CustomDialogUbicador
import es.verdnatura.presentation.view.feature.main.activity.MainActivity import es.verdnatura.presentation.view.feature.main.activity.MainActivity
import es.verdnatura.presentation.view.feature.ubicador.adapter.AutomaticAdapter import es.verdnatura.presentation.view.feature.ubicador.adapter.AutomaticAdapter
import es.verdnatura.presentation.view.feature.ubicador.adapter.UbicadorAdapter
import es.verdnatura.presentation.view.feature.ubicador.model.ItemEscanerVO import es.verdnatura.presentation.view.feature.ubicador.model.ItemEscanerVO
import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.activity_main.*
import kotlinx.android.synthetic.main.fragment_automatic_add_item.* import kotlinx.android.synthetic.main.fragment_automatic_add_item.*
import kotlinx.android.synthetic.main.fragment_automatic_add_item.edit_matricula
import kotlinx.android.synthetic.main.fragment_automatic_add_item.splash_progress
import kotlinx.android.synthetic.main.fragment_ubicador.*
import kotlinx.android.synthetic.main.toolbar.* import kotlinx.android.synthetic.main.toolbar.*
class AutomaticAddItemFragment( class AutomaticAddItemFragment(

View File

@ -1,6 +1,5 @@
package es.verdnatura.presentation.view.feature.ubicador.fragment package es.verdnatura.presentation.view.feature.ubicador.fragment
import android.app.Activity
import android.content.Context import android.content.Context
import android.content.SharedPreferences import android.content.SharedPreferences
import android.graphics.drawable.Drawable import android.graphics.drawable.Drawable

View File

@ -3,14 +3,10 @@ package es.verdnatura.presentation.view.feature.ubicador.fragment
import androidx.lifecycle.LiveData import androidx.lifecycle.LiveData
import androidx.lifecycle.MutableLiveData import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.Transformations import androidx.lifecycle.Transformations
import androidx.lifecycle.ViewModel
import es.verdnatura.domain.GetShelvingParkingUserCase
import es.verdnatura.domain.GetUbicadorUserCase import es.verdnatura.domain.GetUbicadorUserCase
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.shelvingparking.model.ItemShelvingParkingListVO
import es.verdnatura.presentation.view.feature.shelvingparking.model.ItemShelvingParkingVO
import es.verdnatura.presentation.view.feature.ubicador.model.ItemUbicadorListVO import es.verdnatura.presentation.view.feature.ubicador.model.ItemUbicadorListVO
import es.verdnatura.presentation.view.feature.ubicador.model.ItemUbicadorVO import es.verdnatura.presentation.view.feature.ubicador.model.ItemUbicadorVO
import retrofit2.Call import retrofit2.Call

View File

@ -141,7 +141,7 @@
android:layout_marginEnd="16dp" android:layout_marginEnd="16dp"
android:paddingStart="@dimen/layout_margin_3" android:paddingStart="@dimen/layout_margin_3"
android:paddingEnd="@dimen/layout_margin_3" android:paddingEnd="@dimen/layout_margin_3"
android:text="¿No recuerdas tu contraseña? Contacta con informática" android:text="Borrar datos de acceso"
android:textAllCaps="false" android:textAllCaps="false"
android:textColor="@color/verdnatura_white" android:textColor="@color/verdnatura_white"
android:textStyle="normal" android:textStyle="normal"