Skip to content

Commit 5705336

Browse files
committed
fix(singleflight): use extracted student ID for stable keys across sessions
1 parent 051b7f9 commit 5705336

4 files changed

Lines changed: 10 additions & 10 deletions

File tree

internal/academic/handler.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,8 @@ func (s *AcademicServiceImpl) GetScores(ctx context.Context, _ *academic.GetScor
5353
if err != nil {
5454
return nil, fmt.Errorf("Academic.GetScores: Get login data fail %w", err)
5555
}
56-
stuId := loginData.Id
57-
isGraduate := utils.IsGraduate(stuId)
56+
stuId := metainfoContext.ExtractIDFromLoginData(loginData)
57+
isGraduate := utils.IsGraduate(loginData.Id)
5858
key := singleflight.Key(constants.SingleflightScoresPrefix, stuId, isGraduate)
5959
if isGraduate {
6060
scores, err := singleflight.Do(key, func() ([]*yjsy.Mark, error) {

internal/classroom/handler.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,8 +89,8 @@ func (s *ClassroomServiceImpl) GetExamRoomInfo(ctx context.Context, req *classro
8989
if err != nil {
9090
return nil, fmt.Errorf("Classroom.GetExamRoomInfo: Get login data fail %w", err)
9191
}
92-
stuId := loginData.Id
93-
isGraduate := utils.IsGraduate(stuId)
92+
stuId := metainfoContext.ExtractIDFromLoginData(loginData)
93+
isGraduate := utils.IsGraduate(loginData.Id)
9494
key := singleflight.Key(constants.SingleflightExamRoomsPrefix, stuId, req.GetTerm(), isGraduate)
9595

9696
rooms, err := singleflight.Do(key, func() ([]*model.ExamRoomInfo, error) {

internal/course/handler.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,8 @@ func (s *CourseServiceImpl) GetCourseList(ctx context.Context, req *course.Cours
5252
if err != nil {
5353
return nil, fmt.Errorf("Course.GetCourseList: Get login data fail %w", err)
5454
}
55-
stuId := loginData.Id
56-
isGraduate := utils.IsGraduate(stuId)
55+
stuId := metainfoContext.ExtractIDFromLoginData(loginData)
56+
isGraduate := utils.IsGraduate(loginData.Id)
5757
isRefresh := req.IsRefresh != nil && *req.IsRefresh
5858
key := singleflight.Key(constants.SingleflightCourseListPrefix, stuId, req.Term, isGraduate, isRefresh)
5959

@@ -82,8 +82,8 @@ func (s *CourseServiceImpl) GetTermList(ctx context.Context, req *course.TermLis
8282
if err != nil {
8383
return nil, fmt.Errorf("Course.GetTermList: Get login data fail %w", err)
8484
}
85-
stuId := loginData.Id
86-
isGraduate := utils.IsGraduate(stuId)
85+
stuId := metainfoContext.ExtractIDFromLoginData(loginData)
86+
isGraduate := utils.IsGraduate(loginData.Id)
8787
key := singleflight.Key(constants.SingleflightCourseTermsPrefix, stuId, isGraduate)
8888

8989
res, err := singleflight.Do(key, func() ([]string, error) {

internal/user/handler.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,8 +68,8 @@ func (s *UserServiceImpl) GetUserInfo(ctx context.Context, request *user.GetUser
6868
resp.Base = base.BuildBaseResp(err)
6969
return resp, nil
7070
}
71-
stuId := loginData.Id
72-
isGraduate := utils.IsGraduate(stuId)
71+
stuId := metainfoContext.ExtractIDFromLoginData(loginData)
72+
isGraduate := utils.IsGraduate(loginData.Id)
7373
key := singleflight.Key(constants.SingleflightUserInfoPrefix, stuId, isGraduate)
7474

7575
info, err := singleflight.Do(key, func() (*db.Student, error) {

0 commit comments

Comments
 (0)