From bb4667fc3177670e22b4946b248fe55aea2efec8 Mon Sep 17 00:00:00 2001 From: lensferno Date: Fri, 28 Oct 2022 14:02:51 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=EF=BC=9A=E6=98=9F=E6=9C=9F?= =?UTF-8?q?=E5=A4=A9=E8=AF=BE=E7=A8=8B=E9=83=A8=E5=88=86=E5=8F=82=E6=95=B0?= =?UTF-8?q?=E9=94=99=E8=AF=AF=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mywust/core/parser/undergraduate/CourseTableParser.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/mywust-core/src/main/java/cn/linghang/mywust/core/parser/undergraduate/CourseTableParser.java b/mywust-core/src/main/java/cn/linghang/mywust/core/parser/undergraduate/CourseTableParser.java index c570c73..46681b8 100644 --- a/mywust-core/src/main/java/cn/linghang/mywust/core/parser/undergraduate/CourseTableParser.java +++ b/mywust-core/src/main/java/cn/linghang/mywust/core/parser/undergraduate/CourseTableParser.java @@ -71,11 +71,12 @@ public class CourseTableParser implements Parser> { // 靠行位置来确定节次,而不是靠time字段的节次数据确定(因为太不好处理了) // 具体算法就是行索引x2 + 1就是开始的节次(索引从0开始) // 对于只有一个小节的课程,这类课程多数是在线课程,实际选课的时候照样会和其他课冲突,因此这里一律按照两小节大课处理 - int lineIndex = girdCount / 7; + int lineIndex = (girdCount - 1) / 7; course.setStartSection(lineIndex * 2 + 1); course.setEndSection(lineIndex * 2 + 2); - course.setWeekDay(girdCount % 7); + int weekDay = girdCount % 7; + course.setWeekDay(weekDay == 0 ? 7 : weekDay); // 提取周次信息,根据老项目,可能会有用","分成两段周次信息,但根据实际测试没有发现类似的课程 String time = timeElements.isEmpty() ? "" : timeElements.get(i).text();