diff --git a/app/schemas/pl.szczodrzynski.edziennik.data.db.AppDb/100.json b/app/schemas/pl.szczodrzynski.edziennik.data.db.AppDb/100.json index 6633ad78..716d491b 100644 --- a/app/schemas/pl.szczodrzynski.edziennik.data.db.AppDb/100.json +++ b/app/schemas/pl.szczodrzynski.edziennik.data.db.AppDb/100.json @@ -2,11 +2,11 @@ "formatVersion": 1, "database": { "version": 100, - "identityHash": "26b54e8e64642eb693587f983aaf3adc", + "identityHash": "4c141460d807d32d00faad4fb3c12522", "entities": [ { "tableName": "grades", - "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`profileId` INTEGER NOT NULL, `gradeId` INTEGER NOT NULL, `gradeName` TEXT NOT NULL, `gradeType` INTEGER NOT NULL, `gradeValue` REAL NOT NULL, `gradeWeight` REAL NOT NULL, `gradeColor` INTEGER NOT NULL, `code` TEXT, `gradeCategory` TEXT, `gradeDescription` TEXT, `gradeComment` TEXT, `gradeSemester` INTEGER NOT NULL, `teacherId` INTEGER NOT NULL, `subjectId` INTEGER NOT NULL, `addedDate` INTEGER NOT NULL, `gradeValueMax` REAL, `gradeClassAverage` REAL, `gradeParentId` INTEGER, `gradeIsImprovement` INTEGER NOT NULL, `keep` INTEGER NOT NULL, PRIMARY KEY(`profileId`, `gradeId`))", + "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`profileId` INTEGER NOT NULL, `gradeId` INTEGER NOT NULL, `gradeName` TEXT NOT NULL, `gradeType` INTEGER NOT NULL, `gradeValue` REAL NOT NULL, `gradeWeight` REAL NOT NULL, `gradeColor` INTEGER NOT NULL, `gradeCategory` TEXT, `gradeDescription` TEXT, `gradeComment` TEXT, `gradeSemester` INTEGER NOT NULL, `teacherId` INTEGER NOT NULL, `subjectId` INTEGER NOT NULL, `addedDate` INTEGER NOT NULL, `gradeValueMax` REAL, `gradeClassAverage` REAL, `gradeParentId` INTEGER, `gradeIsImprovement` INTEGER NOT NULL, `keep` INTEGER NOT NULL, PRIMARY KEY(`profileId`, `gradeId`))", "fields": [ { "fieldPath": "profileId", @@ -50,12 +50,6 @@ "affinity": "INTEGER", "notNull": true }, - { - "fieldPath": "code", - "columnName": "code", - "affinity": "TEXT", - "notNull": false - }, { "fieldPath": "category", "columnName": "gradeCategory", @@ -2320,7 +2314,7 @@ "views": [], "setupQueries": [ "CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)", - "INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, '26b54e8e64642eb693587f983aaf3adc')" + "INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, '4c141460d807d32d00faad4fb3c12522')" ] } } \ No newline at end of file diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/librus/data/api/LibrusApiBehaviourGrades.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/librus/data/api/LibrusApiBehaviourGrades.kt index 514da126..9d9e3015 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/librus/data/api/LibrusApiBehaviourGrades.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/librus/data/api/LibrusApiBehaviourGrades.kt @@ -58,8 +58,7 @@ class LibrusApiBehaviourGrades(override val data: DataLibrus, semester = 1, teacherId = -1, subjectId = 1, - addedDate = profile.getSemesterStart(1).inMillis, - code = null + addedDate = profile.getSemesterStart(1).inMillis ) data.gradeList.add(semester1StartGradeObject) @@ -87,8 +86,7 @@ class LibrusApiBehaviourGrades(override val data: DataLibrus, semester = 2, teacherId = -1, subjectId = 1, - addedDate = profile.getSemesterStart(2).inMillis, - code = null + addedDate = profile.getSemesterStart(2).inMillis ) data.gradeList.add(semester2StartGradeObject) @@ -160,8 +158,7 @@ class LibrusApiBehaviourGrades(override val data: DataLibrus, semester = semester, teacherId = teacherId, subjectId = 1, - addedDate = addedDate, - code = null + addedDate = addedDate ).apply { valueMax = valueTo } diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/librus/data/api/LibrusApiDescriptiveGrades.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/librus/data/api/LibrusApiDescriptiveGrades.kt index 3d04285c..d77d1bf4 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/librus/data/api/LibrusApiDescriptiveGrades.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/librus/data/api/LibrusApiDescriptiveGrades.kt @@ -68,8 +68,7 @@ class LibrusApiDescriptiveGrades(override val data: DataLibrus, semester = semester, teacherId = teacherId, subjectId = subjectId, - addedDate = addedDate, - code = null + addedDate = addedDate ) data.gradeList.add(gradeObject) diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/librus/data/api/LibrusApiGrades.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/librus/data/api/LibrusApiGrades.kt index 526d8904..7c2d60f3 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/librus/data/api/LibrusApiGrades.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/librus/data/api/LibrusApiGrades.kt @@ -82,8 +82,7 @@ class LibrusApiGrades(override val data: DataLibrus, semester = semester, teacherId = teacherId, subjectId = subjectId, - addedDate = addedDate, - code = null + addedDate = addedDate ) grade.getJsonObject("Improvement")?.also { diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/librus/data/api/LibrusApiPointGrades.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/librus/data/api/LibrusApiPointGrades.kt index 64b87635..ee9fdfdf 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/librus/data/api/LibrusApiPointGrades.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/librus/data/api/LibrusApiPointGrades.kt @@ -59,8 +59,7 @@ class LibrusApiPointGrades(override val data: DataLibrus, semester = semester, teacherId = teacherId, subjectId = subjectId, - addedDate = addedDate, - code = null + addedDate = addedDate ).apply { valueMax = category?.valueTo ?: 0f } diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/librus/data/api/LibrusApiTextGrades.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/librus/data/api/LibrusApiTextGrades.kt index a9504348..ce4cbcc2 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/librus/data/api/LibrusApiTextGrades.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/librus/data/api/LibrusApiTextGrades.kt @@ -63,8 +63,7 @@ class LibrusApiTextGrades(override val data: DataLibrus, semester = semester, teacherId = teacherId, subjectId = subjectId, - addedDate = addedDate, - code = null + addedDate = addedDate ) data.gradeList.add(gradeObject) diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/mobidziennik/data/api/MobidziennikApiGrades.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/mobidziennik/data/api/MobidziennikApiGrades.kt index 3d709dba..91ddedf0 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/mobidziennik/data/api/MobidziennikApiGrades.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/mobidziennik/data/api/MobidziennikApiGrades.kt @@ -81,8 +81,7 @@ class MobidziennikApiGrades(val data: DataMobidziennik, rows: List) { semester = semester, teacherId = teacherId, subjectId = subjectId, - addedDate = addedDate, - code = null + addedDate = addedDate ) if (data.profile?.empty == true) { diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/mobidziennik/data/web/MobidziennikWebGrades.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/mobidziennik/data/web/MobidziennikWebGrades.kt index 95c960fd..dcf77fee 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/mobidziennik/data/web/MobidziennikWebGrades.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/mobidziennik/data/web/MobidziennikWebGrades.kt @@ -128,8 +128,7 @@ class MobidziennikWebGrades(override val data: DataMobidziennik, semester = gradeSemester, teacherId = teacherId, subjectId = subjectId, - addedDate = gradeAddedDateMillis, - code = null + addedDate = gradeAddedDateMillis ) gradeObject.classAverage = gradeClassAverage diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/podlasie/data/api/PodlasieApiFinalGrades.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/podlasie/data/api/PodlasieApiFinalGrades.kt index 7353f20b..04023f5f 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/podlasie/data/api/PodlasieApiFinalGrades.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/podlasie/data/api/PodlasieApiFinalGrades.kt @@ -57,8 +57,7 @@ class PodlasieApiFinalGrades(val data: DataPodlasie, val rows: List) semester = semester, teacherId = -1, subjectId = subject.id, - addedDate = addedDate, - code = null + addedDate = addedDate ) data.gradeList.add(gradeObject) @@ -95,8 +94,7 @@ class PodlasieApiFinalGrades(val data: DataPodlasie, val rows: List) semester = semester, teacherId = -1, subjectId = subject.id, - addedDate = addedDate, - code = null + addedDate = addedDate ) data.gradeList.add(proposedGradeObject) diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/podlasie/data/api/PodlasieApiGrades.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/podlasie/data/api/PodlasieApiGrades.kt index 5cdb68d8..1531d6b2 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/podlasie/data/api/PodlasieApiGrades.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/podlasie/data/api/PodlasieApiGrades.kt @@ -26,8 +26,8 @@ class PodlasieApiGrades(val data: DataPodlasie, val rows: List) { val weight = grade.getFloat("Weight") ?: 0f val includeToAverage = grade.getInt("IncludeToAverage") != 0 val color = grade.getString("Color")?.let { Color.parseColor(it) } ?: -1 - val category = grade.getString("Category") ?: "" - val code = grade.getString("Code") ?: "" + val category = grade.getString("Category") + val code = grade.getString("Code") val comment = grade.getString("Comment") ?: "" val semester = grade.getString("TermShortcut")?.length ?: data.currentSemester @@ -41,6 +41,12 @@ class PodlasieApiGrades(val data: DataPodlasie, val rows: List) { val addedDate = grade.getString("ReceivedDate")?.let { Date.fromY_m_d(it).inMillis } ?: System.currentTimeMillis() + val categoryText: String = when { + code != null && category != null -> "$code - $category" + code != null -> code + else -> category ?: "" + } + val gradeObject = Grade( profileId = data.profileId, id = id, @@ -49,14 +55,13 @@ class PodlasieApiGrades(val data: DataPodlasie, val rows: List) { value = value, weight = if (includeToAverage) weight else 0f, color = color, - category = category, + category = categoryText, description = null, comment = comment, semester = semester, teacherId = teacher.id, subjectId = subject.id, - addedDate = addedDate, - code = code + addedDate = addedDate ) data.gradeList.add(gradeObject) diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeGradeSummary.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeGradeSummary.kt index 372eadc4..a2f561dc 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeGradeSummary.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeGradeSummary.kt @@ -66,8 +66,7 @@ class VulcanHebeGradeSummary( semester = data.studentSemesterNumber, teacherId = -1, subjectId = subjectId, - addedDate = addedDate, - code = null + addedDate = addedDate ) data.gradeList.add(gradeObject) diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeGrades.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeGrades.kt index a8a689e9..0414bd0a 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeGrades.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeGrades.kt @@ -91,6 +91,12 @@ class VulcanHebeGrades( else columnColor + val categoryFormattedText: String = when { + code != null && category != null -> "$code - $categoryText" + code != null -> code + else -> categoryText ?: "" + } + val gradeObject = Grade( profileId = profileId, id = id, @@ -99,8 +105,7 @@ class VulcanHebeGrades( value = value ?: 0.0f, weight = weight, color = color, - category = categoryText, - code = code, + category = categoryFormattedText, description = finalDescription, comment = null, semester = getSemester(column), diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/db/AppDb.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/db/AppDb.kt index dbdd20f4..e9c49dd7 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/db/AppDb.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/db/AppDb.kt @@ -44,7 +44,7 @@ import pl.szczodrzynski.edziennik.data.db.migration.* TimetableManual::class, Note::class, Metadata::class -], version = 101) +], version = 100) @TypeConverters( ConverterTime::class, ConverterDate::class, @@ -188,8 +188,7 @@ abstract class AppDb : RoomDatabase() { Migration97(), Migration98(), Migration99(), - Migration100(), - Migration101() + Migration100() ).allowMainThreadQueries().build() } } diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/db/entity/Grade.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/db/entity/Grade.kt index 6fc144eb..5bf3bd86 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/db/entity/Grade.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/db/entity/Grade.kt @@ -29,12 +29,6 @@ open class Grade( @ColumnInfo(name = "gradeColor") var color: Int, - /** - * Applies only for Vulcan (i think) - */ - @ColumnInfo(name = "code") - var code: String?, - @ColumnInfo(name = "gradeCategory") var category: String?, @ColumnInfo(name = "gradeDescription") diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/db/full/GradeFull.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/db/full/GradeFull.kt index 677957d7..fc6e7f19 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/db/full/GradeFull.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/db/full/GradeFull.kt @@ -10,12 +10,12 @@ import pl.szczodrzynski.edziennik.data.db.entity.Noteable class GradeFull( profileId: Int, id: Long, name: String, type: Int, - value: Float, weight: Float, color: Int, code: String?, + value: Float, weight: Float, color: Int, category: String?, description: String?, comment: String?, semester: Int, teacherId: Long, subjectId: Long, addedDate: Long = System.currentTimeMillis() ) : Grade( profileId, id, name, type, - value, weight, color, code, + value, weight, color, category, description, comment, semester, teacherId, subjectId, addedDate ), Noteable { diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/db/migration/Migration101.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/db/migration/Migration101.kt deleted file mode 100644 index 060d761c..00000000 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/db/migration/Migration101.kt +++ /dev/null @@ -1,15 +0,0 @@ -/* - * Copyright (c) Kuba Szczodrzyński 2022-10-25. - * Copyright (c) Franciszek Pilch 2024-06-14. - */ - -package pl.szczodrzynski.edziennik.data.db.migration - -import androidx.room.migration.Migration -import androidx.sqlite.db.SupportSQLiteDatabase - -class Migration101 : Migration(100, 101) { - override fun migrate(database: SupportSQLiteDatabase) { - database.execSQL("ALTER TABLE grades ADD COLUMN code TEXT DEFAULT NULL;") - } -} \ No newline at end of file diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/ui/grades/viewholder/GradeViewHolder.kt b/app/src/main/java/pl/szczodrzynski/edziennik/ui/grades/viewholder/GradeViewHolder.kt index 57d0551b..a75d87a8 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/ui/grades/viewholder/GradeViewHolder.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/ui/grades/viewholder/GradeViewHolder.kt @@ -30,11 +30,6 @@ class GradeViewHolder( @Suppress("PARAMETER_NAME_CHANGED_ON_OVERRIDE") override fun onBind(activity: AppCompatActivity, app: App, grade: GradeFull, position: Int, adapter: GradesAdapter) { val manager = app.gradesManager - val gradeCategoryText: String = when { - grade.category != null && grade.code != null -> "${grade.code} - ${grade.category}" - grade.code != null -> grade.code!! - else -> grade.category!! - } b.gradeName.setGrade(grade, manager, bigView = true) @@ -45,15 +40,15 @@ class GradeViewHolder( if (grade.isImprovement) app.getString(R.string.grades_improvement_category_format, "") else - if (grade.code != null) gradeCategoryText else null + grade.category } else { b.gradeDescription.text = grade.getNoteSubstituteText(adapter.showNotes) ?: grade.description b.gradeCategory.text = if (grade.isImprovement) - app.getString(R.string.grades_improvement_category_format, gradeCategoryText) + app.getString(R.string.grades_improvement_category_format, grade.category) else - gradeCategoryText + grade.category } if (adapter.showNotes) diff --git a/app/src/main/res/layout/dialog_grade_details.xml b/app/src/main/res/layout/dialog_grade_details.xml index 0f087432..961327af 100644 --- a/app/src/main/res/layout/dialog_grade_details.xml +++ b/app/src/main/res/layout/dialog_grade_details.xml @@ -157,23 +157,6 @@ android:textIsSelectable="true" tools:text="@string/dialog_grade_details_no_category" /> - - - - Addressbuch herunterladen… Sperren des Startbildschirm-Layouts Sie können keine Elemente auf dem Startbildschirm bearbeiten - Notenspaltencode - (kein Notenspaltencode) diff --git a/app/src/main/res/values-en/strings.xml b/app/src/main/res/values-en/strings.xml index 0527a07e..411b3176 100644 --- a/app/src/main/res/values-en/strings.xml +++ b/app/src/main/res/values-en/strings.xml @@ -1436,6 +1436,4 @@ All lessons: Lock home screen layout You will not be able to edit items on the home screen - Grade column code - (no column code) diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 9baaf29a..cd3f799b 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1556,6 +1556,4 @@ Odśwież wybrany tydzień Zablokuj układ ekranu głównego Nie będzie można edytować przedmiotów na ekranie głównym - Kod oceny - (brak kodu)