Skip to content

Commit

Permalink
정렬 기준 태그 오류 수정 및 필요없는 값 제거 (#267)
Browse files Browse the repository at this point in the history
  • Loading branch information
asp345 authored Sep 1, 2024
1 parent 1123bf4 commit be33a07
Show file tree
Hide file tree
Showing 4 changed files with 7 additions and 10 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ package com.wafflestudio.snu4t.sugangsnu.job.sync.service

import com.wafflestudio.snu4t.bookmark.repository.BookmarkRepository
import com.wafflestudio.snu4t.common.cache.Cache
import com.wafflestudio.snu4t.common.enum.SortCriteria
import com.wafflestudio.snu4t.coursebook.data.Coursebook
import com.wafflestudio.snu4t.coursebook.repository.CoursebookRepository
import com.wafflestudio.snu4t.lecturebuildings.data.Campus
Expand Down Expand Up @@ -130,7 +129,6 @@ class SugangSnuSyncServiceImpl(
credit = parsedTag.credit.sorted().map { "${it}학점" },
instructor = parsedTag.instructor.filterNotNull().filter { it.isNotBlank() }.sorted(),
category = parsedTag.category.filterNotNull().filter { it.isNotBlank() }.sorted(),
sortCriteria = SortCriteria.values().map { it.fullName }.filterNot { it == "기본값" }.sorted()
)
}
val tagList = tagListRepository.findByYearAndSemester(coursebook.year, coursebook.semester)
Expand Down
11 changes: 5 additions & 6 deletions core/src/main/kotlin/common/enum/SortCriteria.kt
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package com.wafflestudio.snu4t.common.enum

import com.fasterxml.jackson.annotation.JsonValue
import com.wafflestudio.snu4t.common.extension.asc
import com.wafflestudio.snu4t.common.extension.desc
import com.wafflestudio.snu4t.lectures.data.EvInfo
import com.wafflestudio.snu4t.lectures.data.Lecture
Expand All @@ -15,18 +14,18 @@ enum class SortCriteria(
) {
ID(1, "기본값"),
RATING_DESC(2, "평점 높은 순"),
RATING_ASC(3, "평점 낮은"),
COUNT_DESC(4, "강의평 많은"),
COUNT_ASC(5, "강의평 적은 순");
COUNT_DESC(3, "강의평 많은");
// RATING_ASC(4, "평점 낮은 순"),
// COUNT_ASC(5, "강의평 적은 순");

companion object {
private val nameMap = values().associateBy { it.fullName }
fun getOfName(sortCriteriaName: String?): SortCriteria? = nameMap[sortCriteriaName]
fun getSort(sortCriteria: SortCriteria?): Sort = when (sortCriteria) {
RATING_DESC -> (Lecture::evInfo / EvInfo::avgRating).desc()
RATING_ASC -> (Lecture::evInfo / EvInfo::avgRating).asc()
COUNT_DESC -> (Lecture::evInfo / EvInfo::count).desc()
COUNT_ASC -> (Lecture::evInfo / EvInfo::count).asc()
// RATING_ASC -> (Lecture::evInfo / EvInfo::avgRating).asc()
// COUNT_ASC -> (Lecture::evInfo / EvInfo::count).asc()
else -> Sort.unsorted()
}
}
Expand Down
1 change: 0 additions & 1 deletion core/src/main/kotlin/tag/data/TagList.kt
Original file line number Diff line number Diff line change
Expand Up @@ -32,5 +32,4 @@ data class TagCollection(
val credit: List<String>,
val instructor: List<String>,
val category: List<String>,
val sortCriteria: List<String> = listOf()
)
3 changes: 2 additions & 1 deletion core/src/main/kotlin/tag/data/TagListResponse.kt
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package com.wafflestudio.snu4t.tag.data

import com.fasterxml.jackson.annotation.JsonProperty
import com.wafflestudio.snu4t.common.enum.SortCriteria

data class TagListResponse(
val classification: List<String>,
Expand All @@ -21,6 +22,6 @@ fun TagListResponse(tagList: TagList) = TagListResponse(
credit = tagList.tagCollection.credit,
instructor = tagList.tagCollection.instructor,
category = tagList.tagCollection.category,
sortCriteria = tagList.tagCollection.sortCriteria,
sortCriteria = SortCriteria.values().sortedBy { it.value }.map { it.fullName }.filterNot { it == "기본값" },
updatedAt = tagList.updatedAt.toEpochMilli()
)

0 comments on commit be33a07

Please sign in to comment.