Fixed bugs and updated readme.md

This commit is contained in:
2024-12-16 12:14:17 +04:00
parent eef73591e2
commit 7fba7cb3c7
3 changed files with 12 additions and 10 deletions

View File

@@ -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 @@
- [ ] Выход из аккаунта
- [ ] **Страница с расписанием на неделю** (в горизонтальной ориентации)
- [ ] **Синхронизация с календарём**
- [ ] Отправка уведомлений за Х минут до начала занятий
- [ ] Отправка уведомлений за Х минут до начала занятий
- [ ] Подробное расписание занятий в ВУЦ
- [ ] Перемены между парами

View File

@@ -91,7 +91,7 @@ class MainActivity : ComponentActivity() {
val lessons = remember { mutableStateOf<List<Lesson>>(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<Year?>(null) }
val loadedWeeks = remember { mutableStateOf<List<Int>>(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())

View File

@@ -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(