From 7fba7cb3c7b898bee37f5422cef2a96375595eb7 Mon Sep 17 00:00:00 2001 From: StepanovPlaton Date: Mon, 16 Dec 2024 12:14:17 +0400 Subject: [PATCH] Fixed bugs and updated readme.md --- README.md | 8 +++++--- .../java/com/example/ssau_schedule/MainActivity.kt | 12 ++++++------ .../java/com/example/ssau_schedule/widget/Widget.kt | 2 +- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 0a6f348..fb91c07 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Расписание СамГУ -> **Расписание СамГУ** - это нативное Android-приложение приложение, позволяющее студентам СамГУ просматривать своё учебное расписание в удобном формате на своём мобильном устройстве +> **Расписание СамГУ** - это нативное Android-приложение, позволяющее студентам [СамГУ](https://ssau.ru) просматривать своё [учебное расписание](https://ssau.ru/rasp) в удобном формате на своём мобильном устройстве | ![](./screenshots/2s.png) | ![](./screenshots/2l.png) | ![](./screenshots/2w.png) | |:-:|:-:|:-:| @@ -8,7 +8,7 @@ ## Функционал - Приветственная страница с логотипом университета - Форма входа в личный кабинет - - Используется API официального сервера университета, поэтому для авторизации используется логин и пароль от [личного кабинета студента](https://lk.ssau.ru) + - Проведён реверс-инжиниринг нового [личного кабинета студента](https://lk.ssau.ru), используется API официального сервера университета, поэтому для авторизации используется учётная запись университета - Страница расписания по дням - Загрузка расписания в фоновом режиме создаёт эффект бесконечной прокрутки - Использованы официальные цвета [личного кабинета студента](https://lk.ssau.ru) @@ -47,4 +47,6 @@ - [ ] Выход из аккаунта - [ ] **Страница с расписанием на неделю** (в горизонтальной ориентации) - [ ] **Синхронизация с календарём** -- [ ] Отправка уведомлений за Х минут до начала занятий \ No newline at end of file +- [ ] Отправка уведомлений за Х минут до начала занятий +- [ ] Подробное расписание занятий в ВУЦ +- [ ] Перемены между парами \ No newline at end of file diff --git a/app/src/main/java/com/example/ssau_schedule/MainActivity.kt b/app/src/main/java/com/example/ssau_schedule/MainActivity.kt index 0ba4832..c74d46a 100644 --- a/app/src/main/java/com/example/ssau_schedule/MainActivity.kt +++ b/app/src/main/java/com/example/ssau_schedule/MainActivity.kt @@ -91,7 +91,7 @@ class MainActivity : ComponentActivity() { val lessons = remember { mutableStateOf>(listOf()) } val animationScope = rememberCoroutineScope() val pagerState = rememberPagerState( - initialPage = Utils.Date.getDayOfWeek(Date()) - 1, pageCount = { Int.MAX_VALUE }) + initialPage = Utils.Date.getDayOfWeek(Date()), pageCount = { Int.MAX_VALUE }) val studyYear = remember { mutableStateOf(null) } val loadedWeeks = remember { mutableStateOf>(listOf()) } val workStarted = remember { mutableStateOf(false) } @@ -141,7 +141,7 @@ class MainActivity : ComponentActivity() { studyYear.value = generalData.year val day = Utils.Date.addDays( Date(), - pagerState.currentPage - Utils.Date.getDayOfWeek(Date())+1 + pagerState.currentPage - Utils.Date.getDayOfWeek(Date()) ) var week = generalData.year.getWeekOfDate(day) if (!loadedWeeks.value.contains(week)) getLessons(generalData, week) @@ -224,7 +224,7 @@ class MainActivity : ComponentActivity() { Date(), pagerState.currentPage - Utils.Date.getDayOfWeek( Date() - )+1 + ) ) ), color = MaterialTheme.colorScheme.primary, @@ -258,10 +258,10 @@ class MainActivity : ComponentActivity() { HorizontalPager(state = pagerState) { page -> val todayLessons = lessons.value.filter { lesson -> lesson.dayOfWeek - 1 == Utils.Date.getDayOfWeek( - Utils.Date.addDays(Date(), page - Utils.Date.getDayOfWeek(Date())+1) + Utils.Date.addDays(Date(), page - Utils.Date.getDayOfWeek(Date())) ) && - lesson.week == Utils.Date.getWeekOfStudyYear( - Utils.Date.addDays(Date(), page - Utils.Date.getDayOfWeek(Date())+1) + lesson.week - 1 == Utils.Date.getWeekOfStudyYear( + Utils.Date.addDays(Date(), page - Utils.Date.getDayOfWeek(Date())) ) }.sortedBy { lesson -> lesson.beginTime } if (todayLessons.isEmpty()) diff --git a/app/src/main/java/com/example/ssau_schedule/widget/Widget.kt b/app/src/main/java/com/example/ssau_schedule/widget/Widget.kt index 430a270..9e00b3d 100644 --- a/app/src/main/java/com/example/ssau_schedule/widget/Widget.kt +++ b/app/src/main/java/com/example/ssau_schedule/widget/Widget.kt @@ -65,7 +65,7 @@ class ScheduleWidget : GlanceAppWidget() { it ) ) && - lesson.week == Utils.Date.getWeekOfStudyYear(Date()) + lesson.week - 1 == Utils.Date.getWeekOfStudyYear(Date()) }.sortedBy { lesson -> lesson.beginTime } Box(