diff --git a/app/build.gradle b/app/build.gradle index e96e12d5..cac794bc 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -13,8 +13,9 @@ android { applicationId "es.verdnatura" minSdkVersion 21 //21 targetSdkVersion 30 - versionCode 132 - versionName = "9.1Beta" + versionCode 133 + versionName = "9.2Beta" + //versionName = "9.1Beta" versionCode 132 //versionName = "9Beta"// versionCode 131 //versionName = "8.9" versionCode 130 //versionName = "8.9Beta" versionCode 129 diff --git a/app/release/output-metadata.json b/app/release/output-metadata.json index a1b3053b..c0126070 100644 --- a/app/release/output-metadata.json +++ b/app/release/output-metadata.json @@ -11,8 +11,8 @@ "type": "SINGLE", "filters": [], "attributes": [], - "versionCode": 132, - "versionName": "9.1Beta", + "versionCode": 133, + "versionName": "9.2Beta", "outputFile": "app-release.apk" } ], diff --git a/app/release/vn-pickingBeta.apk b/app/release/vn-pickingBeta.apk new file mode 100644 index 00000000..0c32e68e Binary files /dev/null and b/app/release/vn-pickingBeta.apk differ diff --git a/app/src/main/java/es/verdnatura/presentation/base/BaseFragment.kt b/app/src/main/java/es/verdnatura/presentation/base/BaseFragment.kt index 3a9c97df..ef9e1000 100644 --- a/app/src/main/java/es/verdnatura/presentation/base/BaseFragment.kt +++ b/app/src/main/java/es/verdnatura/presentation/base/BaseFragment.kt @@ -13,12 +13,9 @@ import android.speech.RecognitionListener import android.speech.RecognizerIntent import android.speech.SpeechRecognizer import android.speech.tts.TextToSpeech -import android.speech.tts.UtteranceProgressListener -import android.util.Log import android.view.LayoutInflater import android.view.View import android.view.ViewGroup -import android.widget.ImageView import androidx.activity.result.contract.ActivityResultContracts import androidx.annotation.LayoutRes import androidx.databinding.DataBindingUtil @@ -29,7 +26,6 @@ import com.google.gson.Gson import com.google.gson.reflect.TypeToken import es.verdnatura.R import es.verdnatura.databinding.ToolbarFragmentBinding -import es.verdnatura.domain.ConstAndValues import es.verdnatura.domain.ConstAndValues.SECTORFKDEFAULT import es.verdnatura.domain.ConstAndValues.WAREHOUSEFKDEFAULT import es.verdnatura.domain.toast @@ -38,6 +34,7 @@ import es.verdnatura.presentation.view.feature.main.activity.MainActivity import org.koin.androidx.viewmodel.ext.android.viewModel import timber.log.Timber import java.util.* +import kotlin.collections.ArrayList import kotlin.reflect.KClass @@ -52,8 +49,8 @@ abstract class BaseFragment(viewModelCla protected val TOKEN = "token" protected val SECTORDESCRIP = "sectordescrip" protected val SECTORFK = "sectorFk" - protected val NUMBEROFWAGONS="operatorNumberOfWagons" - protected val PRINTERNAME= "printername" + protected val NUMBEROFWAGONS = "operatorNumberOfWagons" + protected val PRINTERNAME = "printername" protected val PRINTERFK = "printerFk" protected val WAREHOUSEFK = "warehouseFk" protected val REMEMBER = "recordar" @@ -64,6 +61,7 @@ abstract class BaseFragment(viewModelCla protected val ITEMPACKING = "itemPackingType" protected val ITEMPACKINGFK = "itemPackingTypeFk" + //protected val VOZ = "voz" //nuevo campo número carros ajustes y campos para guardar el buyerid y buyernickname protected val BUYER = "buyernickname" @@ -71,9 +69,9 @@ abstract class BaseFragment(viewModelCla protected val WAGON = "wagon" protected val TAGSTYPE = "tagstype" protected val WAREHOUSEFK_DEFAULT = 60 - protected val DATENOVEHICLE="DATENOVEHICLE" - protected val DEPARTMENTMISTAKE="DEPARTMENTMISTAKE" - protected val DEPARTMENTMISTAKEID="DEPARTMENTMISTAKEID" + protected val DATENOVEHICLE = "DATENOVEHICLE" + protected val DEPARTMENTMISTAKE = "DEPARTMENTMISTAKE" + protected val DEPARTMENTMISTAKEID = "DEPARTMENTMISTAKEID" protected val viewModel: V by viewModel(viewModelClass) protected lateinit var binding: T @@ -108,9 +106,9 @@ abstract class BaseFragment(viewModelCla override fun onAttach(context: Context) { super.onAttach(context) - if ((requireActivity().componentName).toString().contains("MainActivity")){ + if ((requireActivity().componentName).toString().contains("MainActivity")) { - ma=activity as MainActivity + ma = activity as MainActivity } } @@ -133,23 +131,21 @@ abstract class BaseFragment(viewModelCla init() }*/ -override fun onViewCreated(view: View, savedInstanceState: Bundle?) -{ - super.onViewCreated(view,savedInstanceState) - initDataBinding() - getBundleArguments() - observeViewModel() - runSound() - //requestRecordAudioPermission() - //requestRecordAudioPermissionNew() + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + initDataBinding() + getBundleArguments() + observeViewModel() + runSound() + //requestRecordAudioPermission() + //requestRecordAudioPermissionNew() - //sergio: para llamadas con SIP - //requestCallPhonePermissionNew() - init() + //sergio: para llamadas con SIP + //requestCallPhonePermissionNew() + init() - -} + } @LayoutRes abstract fun getLayoutId(): Int @@ -210,21 +206,22 @@ override fun onViewCreated(view: View, savedInstanceState: Bundle?) addBindingVariables() } - fun textScanned_filterDouble(textScanned: String):String{ + fun textScanned_filterDouble(textScanned: String): String { - if (textScanned.length>13) { + if (textScanned.length > 13) { var size = textScanned.length - if (textScanned.substring((size / 2), size) == textScanned.substring(0, size / 2) - ) { + if (textScanned.substring((size / 2), size) == textScanned.substring(0, size / 2) + ) { return textScanned.substring(0, size / 2) } } - return textScanned + return textScanned } - fun getTooltip(image: Int):String { + + fun getTooltip(image: Int): String { return when (image) { //itemCard @@ -233,75 +230,77 @@ override fun onViewCreated(view: View, savedInstanceState: Bundle?) } R.drawable.ic_history_black_24dp -> getString(R.string.showHistoricalItem) //presacador - R.drawable.ic_local_parking_black_24dp->getString(R.string.allowParking) + R.drawable.ic_local_parking_black_24dp -> getString(R.string.allowParking) //collection - R.drawable.ic_print_black_24dp->getString(R.string.printTicket) - R.drawable.ic_playlist_add_black_24dp->getString(R.string.addItem) - R.drawable.ic_worker->getString(R.string.showFacePicker) - R.drawable.phone_call->getString(R.string.callPicker) - R.drawable.car->getString(R.string.allowSelectVehicle) - R.drawable.car_off->getString(R.string.allowTakeoffVehicle) + R.drawable.ic_print_black_24dp -> getString(R.string.printTicket) + R.drawable.ic_playlist_add_black_24dp -> getString(R.string.addItem) + R.drawable.ic_worker -> getString(R.string.showFacePicker) + R.drawable.phone_call -> getString(R.string.callPicker) + R.drawable.car -> getString(R.string.allowSelectVehicle) + R.drawable.car_off -> getString(R.string.allowTakeoffVehicle) //REPETIDO:R.drawable.ic_history_black_24dp->"Realiza llamada al sacador" //sacador - R.drawable.ic_add_black_24dp->getString(R.string.newCollection) + R.drawable.ic_add_black_24dp -> getString(R.string.newCollection) //REPETIDO: R.drawable.car->"Permite coger vehículo" //ubicador: //REPETIDO: R.drawable.ic_add_black_24dp->"Genera colección para sacar" //REPETIDO: ic_autorenew_black_24dp //historico articulo - R.drawable.ic_transaction->getString(R.string.showFilter) - R.drawable.alpha_f_circle_outline->getString(R.string.showFaults) - R.drawable.alpha_b_circle_outline->getString(R.string.showTrash) + R.drawable.ic_transaction -> getString(R.string.showFilter) + R.drawable.alpha_f_circle_outline -> getString(R.string.showFaults) + R.drawable.alpha_b_circle_outline -> getString(R.string.showTrash) - R.drawable.filter_outline->getString(R.string.filterFlower) + R.drawable.filter_outline -> getString(R.string.filterFlower) - R.drawable.ic_mode_edit_black_24dp->getString(R.string.allowChangeShelving) - R.drawable.ic_delete_forever_black_24dp->getString(R.string.deleteAllitems) - R.drawable.ic_flash_auto_black_24dp->getString(R.string.allowAutomaticAddItem) - R.drawable.ic_logo_salix->getString(R.string.accessSalix) + R.drawable.ic_mode_edit_black_24dp -> getString(R.string.allowChangeShelving) + R.drawable.ic_delete_forever_black_24dp -> getString(R.string.deleteAllitems) + R.drawable.ic_flash_auto_black_24dp -> getString(R.string.allowAutomaticAddItem) + R.drawable.ic_logo_salix -> getString(R.string.accessSalix) - else -> {""} + else -> { + "" + } } - } + } override fun onInit(status: Int) { - /* if (status == TextToSpeech.SUCCESS) { - val spanish = Locale("es", "ES") - textToSpeech!!.language = spanish - textToSpeech!!.setOnUtteranceProgressListener(object : UtteranceProgressListener() { - override fun onDone(utteranceId: String?) { - //Log.i("SPEEAK", "on done") - requireActivity().runOnUiThread(Runnable { - if (mSpeechRecognizer != null) { - mSpeechRecognizer!!.destroy() - mSpeechRecognizer = null - } - initialize() + /* if (status == TextToSpeech.SUCCESS) { + val spanish = Locale("es", "ES") + textToSpeech!!.language = spanish + textToSpeech!!.setOnUtteranceProgressListener(object : UtteranceProgressListener() { + override fun onDone(utteranceId: String?) { + //Log.i("SPEEAK", "on done") + requireActivity().runOnUiThread(Runnable { + if (mSpeechRecognizer != null) { + mSpeechRecognizer!!.destroy() + mSpeechRecognizer = null + } + initialize() - }) - } + }) + } - override fun onError(utteranceId: String?) { - "Error to speak".toast(requireContext()) - } + override fun onError(utteranceId: String?) { + "Error to speak".toast(requireContext()) + } - override fun onStart(utteranceId: String?) { - Log.i("SPEEAK", "on start") - runSound() + override fun onStart(utteranceId: String?) { + Log.i("SPEEAK", "on start") + runSound() - } + } - }) - } else { - "La voz no se ha podido iniciar".toast(requireContext()) - }*/ + }) + } else { + "La voz no se ha podido iniciar".toast(requireContext()) + }*/ } private fun runSound() { // Get the maximum media/music volume - //sergio: se quita por no utilizar - // val maxVolume = mAudioManager?.mediaMaxVolume + //sergio: se quita por no utilizar + // val maxVolume = mAudioManager?.mediaMaxVolume // mAudioManager?.setMediaVolume(maxVolume!!) } @@ -326,21 +325,21 @@ override fun onViewCreated(view: View, savedInstanceState: Bundle?) override fun onReadyForSpeech(params: Bundle?) { isOnReadyForSpeech = true - // Log.i("Speech", "onReadyForSpeech") + // Log.i("Speech", "onReadyForSpeech") } override fun onBeginningOfSpeech() { - // Log.i("Speech", "onBeginningOfSpeech") + // Log.i("Speech", "onBeginningOfSpeech") } override fun onRmsChanged(rmsdB: Float) {} override fun onBufferReceived(buffer: ByteArray?) { - // Log.i("Speech", "onBufferReceived") + // Log.i("Speech", "onBufferReceived") } override fun onEndOfSpeech() { - // Log.i("Speech", "onEndOfSpeech") + // Log.i("Speech", "onEndOfSpeech") } override fun onError(error: Int) { @@ -444,53 +443,51 @@ override fun onViewCreated(view: View, savedInstanceState: Bundle?) }*/ - /*sergio:deprecated - private fun requestRecordAudioPermission() { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { - val requiredPermission: String = Manifest.permission.RECORD_AUDIO - val res = requireContext().checkCallingOrSelfPermission(requiredPermission) - // If the user previously denied this permission then show a message explaining why - // this permission is needed - if (res == PackageManager.PERMISSION_DENIED) { - requestPermissions(arrayOf(requiredPermission), 101) + /*sergio:deprecated + private fun requestRecordAudioPermission() { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { + val requiredPermission: String = Manifest.permission.RECORD_AUDIO + val res = requireContext().checkCallingOrSelfPermission(requiredPermission) + // If the user previously denied this permission then show a message explaining why + // this permission is needed + if (res == PackageManager.PERMISSION_DENIED) { + requestPermissions(arrayOf(requiredPermission), 101) - } - } - }*/ + } + } + }*/ - private fun requestCallPhonePermission(){ + private fun requestCallPhonePermission() { val permissionLauncher = registerForActivityResult( ActivityResultContracts.RequestPermission() ) { isGranted -> if (isGranted) { Timber.i("permisos ok") - } - - else { + } else { Timber.i("Denegados permisos") } } permissionLauncher.launch(Manifest.permission.CALL_PHONE) } + private fun requestRecordAudioPermissionNew() { val permissionLauncher = registerForActivityResult( ActivityResultContracts.RequestPermission() - ) + ) { isGranted -> if (isGranted) { - Timber.i("permisos ok") - } - - else { + Timber.i("permisos ok") + } else { Timber.i("Denegados permisos") } } permissionLauncher.launch(Manifest.permission.RECORD_AUDIO) } + private fun requestCallPhonePermissionNew() { val permissionLauncher = registerForActivityResult( @@ -499,9 +496,7 @@ override fun onViewCreated(view: View, savedInstanceState: Bundle?) { isGranted -> if (isGranted) { Timber.i("permisos ok") - } - - else { + } else { Timber.i("Denegados permisos") } } @@ -510,59 +505,64 @@ override fun onViewCreated(view: View, savedInstanceState: Bundle?) } fun hideBackButton(tool: ToolbarFragmentBinding) { - tool.backButton.visibility=View.INVISIBLE + tool.backButton.visibility = View.INVISIBLE } + fun cancelSpeech() { if (mSpeechRecognizer != null) { mSpeechRecognizer!!.destroy() mSpeechRecognizer = null } } + private fun getDefaults(key: String?, context: Context?): String? { val preferences = PreferenceManager.getDefaultSharedPreferences(context) return preferences.getString(key, null) } - fun getData(name:String):String{ - val prefs: SharedPreferences = requireActivity().getSharedPreferences(PREFS_USER, 0) - return when (name){ - TOKEN->prefs.getString(name, "").toString() - ANDROID_ID->prefs.getString(name, "0").toString() - USERFK->prefs.getString(USERFK, "").toString() //el id - USER->prefs.getString(USER, "").toString() - PASSWORD -> prefs.getString(PASSWORD, "").toString() - SECTORFK->prefs.getInt(name, SECTORFKDEFAULT).toString() - WAREHOUSEFK->prefs.getInt(name, WAREHOUSEFKDEFAULT).toString() - //VOZ->prefs.getString(name, "NO").toString() - WAGON->prefs.getInt(name, 2).toString() - TAGSTYPE-> prefs.getString(name, getString(R.string.stickers)).toString() - SECTORDESCRIP->prefs.getString(name,getString(R.string.Sinsector)).toString() - BUYER->prefs.getString(name,"").toString() - BUYERID->prefs.getString(name,"").toString() - DATENOVEHICLE->prefs.getString(name,"0").toString() - DEPARTMENTMISTAKE->prefs.getString(name,"").toString() - DEPARTMENTMISTAKEID->prefs.getString(name,"").toString() - PRINTERFK->prefs.getInt(name,0).toString() - PRINTERNAME->prefs.getString(name,getString(R.string.noprinter)).toString() - NUMBEROFWAGONS->prefs.getInt(name,1).toString() - TRAINFK->prefs.getString(name,"").toString() - TRAINNAME->prefs.getString(name,"").toString() - ITEMPACKING->prefs.getString(name,"").toString() - ITEMPACKINGFK->prefs.getString(name,"").toString() - "base_url"->{ + fun getData(name: String): String { + val prefs: SharedPreferences = requireActivity().getSharedPreferences(PREFS_USER, 0) + return when (name) { + TOKEN -> prefs.getString(name, "").toString() + ANDROID_ID -> prefs.getString(name, "0").toString() + USERFK -> prefs.getString(USERFK, "").toString() //el id + USER -> prefs.getString(USER, "").toString() + PASSWORD -> prefs.getString(PASSWORD, "").toString() + SECTORFK -> prefs.getInt(name, SECTORFKDEFAULT).toString() + WAREHOUSEFK -> prefs.getInt(name, WAREHOUSEFKDEFAULT).toString() + //VOZ->prefs.getString(name, "NO").toString() + WAGON -> prefs.getInt(name, 2).toString() + TAGSTYPE -> prefs.getString(name, getString(R.string.stickers)).toString() + SECTORDESCRIP -> prefs.getString(name, getString(R.string.Sinsector)).toString() + BUYER -> prefs.getString(name, "").toString() + BUYERID -> prefs.getString(name, "").toString() + DATENOVEHICLE -> prefs.getString(name, "0").toString() + DEPARTMENTMISTAKE -> prefs.getString(name, "").toString() + DEPARTMENTMISTAKEID -> prefs.getString(name, "").toString() + PRINTERFK -> prefs.getInt(name, 0).toString() + PRINTERNAME -> prefs.getString(name, getString(R.string.noprinter)).toString() + NUMBEROFWAGONS -> prefs.getInt(name, 1).toString() + TRAINFK -> prefs.getString(name, "").toString() + TRAINNAME -> prefs.getString(name, "").toString() + ITEMPACKING -> prefs.getString(name, "").toString() + ITEMPACKINGFK -> prefs.getString(name, "").toString() + + "base_url" -> { val preferences = PreferenceManager.getDefaultSharedPreferences(context) - preferences.getString(getString(R.string.baseurl),"").toString() + preferences.getString(getString(R.string.baseurl), "").toString() } - "base_urlSalix"->{ + "base_urlSalix" -> { val preferences = PreferenceManager.getDefaultSharedPreferences(context) - preferences.getString(getString(R.string.base_urlSalix),"").toString() + preferences.getString(getString(R.string.base_urlSalix), "").toString() + } + else -> { + "" } - else -> {""} } } - fun removeSector(){ + fun removeSector() { val prefs: SharedPreferences = requireActivity().getSharedPreferences(PREFS_USER, 0) val editor = prefs.edit() editor.remove(SECTORFK).commit() @@ -570,6 +570,7 @@ override fun onViewCreated(view: View, savedInstanceState: Bundle?) editor.remove(WAREHOUSEFK).commit() } + fun setDefaults(key: String?, value: String?, context: Context?) { val preferences: SharedPreferences = PreferenceManager.getDefaultSharedPreferences(context) @@ -578,14 +579,15 @@ override fun onViewCreated(view: View, savedInstanceState: Bundle?) editor.commit() } - fun removePrinter(){ + fun removePrinter() { val prefs: SharedPreferences = requireActivity().getSharedPreferences(PREFS_USER, 0) val editor = prefs.edit() editor.remove(PRINTERFK).commit() editor.remove(PRINTERNAME).commit() } - fun saveData(name:String,value:String){ + + fun saveData(name: String, value: String) { val prefs: SharedPreferences = requireActivity().getSharedPreferences(PREFS_USER, 0) val editor = prefs.edit() @@ -600,7 +602,7 @@ override fun onViewCreated(view: View, savedInstanceState: Bundle?) editorPref.commit() } - "base_urlSalix"->{ + "base_urlSalix" -> { val preferences = PreferenceManager.getDefaultSharedPreferences(context) val editorPref = preferences.edit() editorPref.putString("base_urlSalix", value) @@ -617,14 +619,14 @@ override fun onViewCreated(view: View, savedInstanceState: Bundle?) } - fun saveDataInt(name:String,value:Int){ + fun saveDataInt(name: String, value: Int) { val prefs: SharedPreferences = requireActivity().getSharedPreferences(PREFS_USER, 0) val editor = prefs.edit() - when (name){ - name-> editor.putInt(name, value) - ANDROID_ID->editor.putInt(name, value) + when (name) { + name -> editor.putInt(name, value) + ANDROID_ID -> editor.putInt(name, value) } editor.apply() @@ -632,6 +634,20 @@ override fun onViewCreated(view: View, savedInstanceState: Bundle?) } + fun saveWorkingForms(list: ArrayList) { + val prefs: SharedPreferences = requireActivity().getSharedPreferences(PREFS_USER, 0) + val editor = prefs.edit() + editor.putString("workingForms", list.toString()) + editor.apply() + } + + fun getWorkingForms(): Array { + val prefs: SharedPreferences = requireActivity().getSharedPreferences(PREFS_USER, 0) + val jsonStr: String? = prefs.getString("workingForms", null) + val gson = Gson() + val lista: Array = gson.fromJson(jsonStr, Array::class.java) + return lista + } fun saveBuyer(buyernickname: String) { val prefs: SharedPreferences = requireActivity().getSharedPreferences(PREFS_USER, 0) @@ -679,10 +695,10 @@ override fun onViewCreated(view: View, savedInstanceState: Bundle?) gson.fromJson(json, object : TypeToken>() {}.type) tutorialMap.forEach { - list.add(it.key +":"+ it.value) + list.add(it.key + ":" + it.value) } - return list + return list } diff --git a/app/src/main/java/es/verdnatura/presentation/view/feature/collection/fragment/CollectionFragment.kt b/app/src/main/java/es/verdnatura/presentation/view/feature/collection/fragment/CollectionFragment.kt index 81f5ead3..7f01114a 100644 --- a/app/src/main/java/es/verdnatura/presentation/view/feature/collection/fragment/CollectionFragment.kt +++ b/app/src/main/java/es/verdnatura/presentation/view/feature/collection/fragment/CollectionFragment.kt @@ -9,6 +9,7 @@ import android.net.Uri import android.os.Build import android.os.Bundle import android.speech.SpeechRecognizer +import android.util.Log import android.view.View import android.view.View.GONE import android.view.View.VISIBLE @@ -150,6 +151,8 @@ class CollectionFragment( override fun onResume() { + if (type==CONTROLADOR && storedBackPosition!=0){ + setListPosition(storedBackPosition, true)} super.onResume() scanRequest() } @@ -1394,7 +1397,7 @@ class CollectionFragment( private fun saleTrackingReplace(position: Int, type: String) { //Tarea #4371 se quita para ver si funciona correctamente - binding.splashProgress.visibility=VISIBLE + //binding.splashProgress.visibility=VISIBLE viewModel.saleTrackingReplace( getData(USER), getData(PASSWORD), diff --git a/app/src/main/java/es/verdnatura/presentation/view/feature/login/fragment/LoginFragment.kt b/app/src/main/java/es/verdnatura/presentation/view/feature/login/fragment/LoginFragment.kt index 683df6d6..866b6046 100644 --- a/app/src/main/java/es/verdnatura/presentation/view/feature/login/fragment/LoginFragment.kt +++ b/app/src/main/java/es/verdnatura/presentation/view/feature/login/fragment/LoginFragment.kt @@ -2,10 +2,12 @@ package es.verdnatura.presentation.view.feature.login.fragment //import es.verdnatura.presentation.view.feature.login.model.LoginItemVO import android.annotation.SuppressLint +import android.app.AlertDialog import android.content.Intent import android.content.SharedPreferences import android.content.pm.PackageInfo import android.content.pm.PackageManager +import android.icu.text.Transliterator import android.net.Uri import android.provider.Settings import android.view.KeyEvent @@ -23,6 +25,7 @@ import kotlinx.coroutines.* import java.lang.Boolean.TRUE import kotlin.system.exitProcess + class LoginFragment : BaseFragment(LoginViewModel::class) { private lateinit var customDialog: CustomDialog @@ -118,6 +121,9 @@ class LoginFragment : BaseFragment(LoginVi true } + binding.edittextServer.setOnClickListener { + // showWorkingForms() + } } @@ -130,6 +136,57 @@ class LoginFragment : BaseFragment(LoginVi } + private fun showWorkingForms() { + + /*Log.d("VERDNATURA::", "click")*/ + val listForms: ArrayList = ArrayList() + + listForms.add( + workForms( + "Producción", + "https://app.verdnatura.es", + "https://salix.verdnatura.es" + ) + ) + listForms.add( + workForms( + "Test", + "https://test-app.verdnatura.es", + "https://test-salix.verdnatura.es" + ) + ) + listForms.add(workForms("Añadir otra forma", " ", " ")) + + val array = arrayOfNulls(listForms.size) + var showList: ArrayList = ArrayList() + + for (l in listForms){ + showList.add(l.name) + } + + val builder = AlertDialog.Builder(this.context) + builder.setTitle(getString(R.string.selectWorkingForm)) + builder.setItems(showList.toArray(array)) { _, which -> + val selected = array[which] + showList.forEach { + if (it == selected) { + + binding.edittextServer.setText(it) + saveData( + "base_urlSalix", + it) + + return@forEach + } + } + + + } + + val dialog = builder.create() + dialog.show() + } + private fun checkUser() { val prefs: SharedPreferences = requireActivity().getSharedPreferences(PREFS_USER, 0) if (prefs.getBoolean(REMEMBER, false)) { @@ -219,10 +276,10 @@ class LoginFragment : BaseFragment(LoginVi ) - /* viewModel.operator_getNumberOfWagons( - binding.edittextUsername.text.toString(), - binding.edittextPassword.text.toString() - )*/ + /* viewModel.operator_getNumberOfWagons( + binding.edittextUsername.text.toString(), + binding.edittextPassword.text.toString() + )*/ viewModel.worker_getPrinter( binding.edittextUsername.text.toString(), @@ -298,7 +355,7 @@ class LoginFragment : BaseFragment(LoginVi customDialog.dismiss() }.show() } - viewModel.operator_getNumberOfWagons(getData(USER),getData(PASSWORD)) + viewModel.operator_getNumberOfWagons(getData(USER), getData(PASSWORD)) viewModel.device_checkLogin( binding.edittextUsername.text.toString(), @@ -398,13 +455,13 @@ class LoginFragment : BaseFragment(LoginVi saveTokenPref(it.token) //Tarea 4351 quitar el if y poner e device_checkLogin a continuación del response de operator_add - viewModel.operator_add(getData(USER),getData(PASSWORD)) + viewModel.operator_add(getData(USER), getData(PASSWORD)) - /* viewModel.device_checkLogin( - binding.edittextUsername.text.toString(), - binding.edittextPassword.text.toString(), - getData(ANDROID_ID) - )*/ + /* viewModel.device_checkLogin( + binding.edittextUsername.text.toString(), + binding.edittextPassword.text.toString(), + getData(ANDROID_ID) + )*/ } } @@ -490,3 +547,5 @@ class LoginFragment : BaseFragment(LoginVi } + +data class workForms(val name: String, val urlSilex: String, val urlSalix: String) diff --git a/app/src/main/res/layout/fragment_login.xml b/app/src/main/res/layout/fragment_login.xml index 25a415fd..c2d4d3b1 100644 --- a/app/src/main/res/layout/fragment_login.xml +++ b/app/src/main/res/layout/fragment_login.xml @@ -55,6 +55,7 @@ android:maxLines="1" android:textColor="@color/verdnatura_white" android:textColorHint="@android:color/darker_gray" /> + Filtro ítem Actualizado CMR no escaneado + Selecciona la forma de trabajo: diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index d5dde003..b8db19d9 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -93,6 +93,7 @@ Packing type Downstairs Select a wagon + Select a way of work : Inventory Radar Search buyer Write here