From 8546bb6039cfe9a77ed6e05868c63a40828f1295 Mon Sep 17 00:00:00 2001 From: rodrigmatrix Date: Thu, 13 Jun 2019 22:52:55 -0300 Subject: [PATCH] Corrigido erro ao exibir algumas disciplinas --- app/build.gradle | 4 ++-- .../sippa/Fragments/DisciplinasFragment.kt | 13 +++++++++--- .../sippa/Serializer/Serializer.kt | 21 +++++++++++-------- 3 files changed, 24 insertions(+), 14 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 3c990a7..ab471dc 100755 --- a/app/build.gradle +++ b/app/build.gradle @@ -12,8 +12,8 @@ android { applicationId "com.rodrigmatrix.sippa" minSdkVersion 21 targetSdkVersion 28 - versionCode 11 - versionName "2.0.2" + versionCode 12 + versionName "2.0.3" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } testOptions { diff --git a/app/src/main/java/com/rodrigmatrix/sippa/Fragments/DisciplinasFragment.kt b/app/src/main/java/com/rodrigmatrix/sippa/Fragments/DisciplinasFragment.kt index aea655b..6646fd4 100755 --- a/app/src/main/java/com/rodrigmatrix/sippa/Fragments/DisciplinasFragment.kt +++ b/app/src/main/java/com/rodrigmatrix/sippa/Fragments/DisciplinasFragment.kt @@ -43,13 +43,13 @@ class DisciplinasFragment : Fragment(), CoroutineScope { swiperefresh?.setProgressBackgroundColorSchemeColor(ContextCompat.getColor(view.context, R.color.colorSwipeRefresh)) swiperefresh?.setOnRefreshListener { val jsession = database.studentDao().getStudent().jsession - launch(handler) { + launch(handler){ setClasses(jsession, database) } } val jsession = database.studentDao().getStudent().jsession swiperefresh.isRefreshing = true - launch(handler){ + launch{ setClasses(jsession, database) } } @@ -66,6 +66,12 @@ class DisciplinasFragment : Fragment(), CoroutineScope { super.onDestroy() } private val handler = CoroutineExceptionHandler { _, throwable -> + runOnUiThread { + job.cancel() + swiperefresh?.isRefreshing = false + coroutineContext.cancel() + Snackbar.make(view!!, "Erro ao exibir disciplinas. Por favor, me envie um email(email na tela sobre)", Snackbar.LENGTH_LONG).show() + } Log.e("Exception", ":$throwable") } @@ -112,6 +118,7 @@ class DisciplinasFragment : Fragment(), CoroutineScope { if(parsed){ try { if(classes.size != 0){ + println(classes) runOnUiThread { recyclerView_disciplinas.layoutManager = LinearLayoutManager(context) recyclerView_disciplinas.adapter = DisciplinasAdapter(classes) @@ -129,7 +136,7 @@ class DisciplinasFragment : Fragment(), CoroutineScope { swiperefresh.isRefreshing = false Snackbar.make(view!!, "Erro ao exibir disciplinas. Tente novamente", Snackbar.LENGTH_LONG).show() } - println(e) + println("exce $e") } } } diff --git a/app/src/main/java/com/rodrigmatrix/sippa/Serializer/Serializer.kt b/app/src/main/java/com/rodrigmatrix/sippa/Serializer/Serializer.kt index d94131b..757dba6 100755 --- a/app/src/main/java/com/rodrigmatrix/sippa/Serializer/Serializer.kt +++ b/app/src/main/java/com/rodrigmatrix/sippa/Serializer/Serializer.kt @@ -71,21 +71,24 @@ class Serializer { } 2 -> { var arr = it.text() - var date = arr.replaceRange(10, arr.length, "") - var content = arr.replaceRange(0,10, "") - classPlan.classDate = date - when (content) { - "" -> classPlan.classPlanned = "Plano não cadastrado" - else -> classPlan.classPlanned = content + var date = "Data não cadastrada" + var content = "Plano não cadastrado" + if(arr.isNotEmpty() && arr.length >= 10){ + date = arr.replaceRange(10, arr.length, "") + content = arr.replaceRange(0,10, "") } - + classPlan.classDate = date + classPlan.classPlanned = content } 3 -> { var arr = it.text() when { arr != "" -> { - var content = arr.replaceRange(0,10, "") - when (content) { + var content = "" + if(arr.isNotEmpty() && arr.length >= 10){ + content = arr.replaceRange(0,10, "") + } + when(content){ "" -> classPlan.classDiary = "Não cadastrado" else -> classPlan.classDiary = content }