Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DEV-42] 연계전공 및 편입 등 추가 정보 파싱 #286

Merged
merged 6 commits into from
Nov 24, 2024

Conversation

tiemo0708
Copy link
Collaborator

@tiemo0708 tiemo0708 commented Nov 23, 2024

✅ 작업 내용

  • 연계전공 및 편입 정보 파싱 추가
    • user 테이블에 연계전공명과 편입 정보를 나타내는 필드를 추가하였습니다(associated_major, transfer_status).
    • StudentCategory에 연계전공과 편입 관련 카테고리를 추가하고, 연계전공 및 편입의 처리 로직을 수정하였습니다.
    • 연계전공 파싱을 구현하였으며, associated_major 필드를 통해 해당 학생의 연계 전공명을 제대로 저장하도록 하였습니다.
    • 편입 관련 파싱을 구현하여 transfer_status 필드에 편입 정보를 저장하도록 하였습니다.

🤔 고민했던 부분

  • 연계전공 수강 과목 및 교양 관리

    연계전공을 할 경우 전공과 함께 수강해야 하는 교양 과목이 늘어났습니다. 이에 따라 StudentCategoryASSOCIATED_MAJOR연계전공 필수선택 교양을 추가했습니다. 교양의 경우 융합 학문 기초 교양 또는 계열 교양으로 나뉘는 경우가 있는데 두 가지를 따로 넣지 않고 묶어서 연계 교양 필수연계 교양 선택으로 정의했습니다.

  • 편입생의 교양 수강 관리

    편입의 경우, 교양 과목 구분이 없어져 어떤 교양 과목을 수강해도 상관이 없게 됩니다(단, 기독교 관련 과목 1회 제외). 이를 반영하기 위해 GraduationCategory에 새로운 편입 교양 항목을 추가할지 고민했지만, 우선 기존 교양 항목을 사용하여 일관성을 유지하는 방향으로 결정했습니다.

  • 편입 정보 파싱

    편입 여부는 성적표의 "입학" 정보에서 파싱하였습니다. 예를 들어, "입학 - 일반3/1편입(2021/03/02)"와 같이 나타나는 정보를 활용했습니다. 처음에는 단순히 편입 여부만 저장하려고 했으나, 편입 관련 세부 정보를 갖는 것이 유용할 것 같아 (일반3/1) 부분을 파싱하여 저장하도록 하였습니다.

🔊 도움이 필요한 부분

  • 연계전공과 편입생 관련해서 추가로 고려해야 할 부분이나 개선할 사항이 있을지 검토해주시면 감사하겠습니다.

- 연계전공 테스트 추가: StudentCategory가 ASSOCIATED_MAJOR인지 확인하고 연계전공명이 제대로 파싱되는지 검증
- 편입 테스트 추가: StudentCategory가 TRANSFER인지 확인하고 transfer_status에 편입 정보가 올바르게 파싱되는지 검증
Copy link

@tiemo0708 tiemo0708 added the ✨ feat 새로운 기능 개발 혹은 기존 기능 변경 label Nov 23, 2024
Copy link

codecov bot commented Nov 23, 2024

Codecov Report

Attention: Patch coverage is 88.88889% with 2 lines in your changes missing coverage. Please review.

Project coverage is 83.77%. Comparing base (ebd657a) to head (b5d8b40).
Report is 1 commits behind head on develop.

Files with missing lines Patch % Lines
...arsing/application/service/ParsingTextService.java 0.00% 0 Missing and 1 partial ⚠️
...secase/update/UpdateStudentInformationCommand.java 66.66% 1 Missing ⚠️
Additional details and impacted files

Impacted file tree graph

@@              Coverage Diff              @@
##             develop     #286      +/-   ##
=============================================
+ Coverage      83.54%   83.77%   +0.23%     
- Complexity       581      583       +2     
=============================================
  Files            152      152              
  Lines           2418     2429      +11     
  Branches          87       86       -1     
=============================================
+ Hits            2020     2035      +15     
+ Misses           352      351       -1     
+ Partials          46       43       -3     
Files with missing lines Coverage Δ
...be/graduation/domain/model/GraduationCategory.java 81.81% <100.00%> (+4.04%) ⬆️
...igraduatebe/parsing/domain/ParsingInformation.java 93.82% <100.00%> (+3.70%) ⬆️
...tebe/parsing/domain/ParsingStudentCategoryDto.java 100.00% <100.00%> (ø)
...ervice/update/UpdateStudentInformationService.java 100.00% <100.00%> (ø)
...igraduatebe/user/domain/model/StudentCategory.java 100.00% <100.00%> (ø)
...uate/myongjigraduatebe/user/domain/model/User.java 91.66% <100.00%> (+0.28%) ⬆️
...ructure/adapter/persistence/mapper/UserMapper.java 100.00% <100.00%> (ø)
...arsing/application/service/ParsingTextService.java 95.12% <0.00%> (+2.26%) ⬆️
...secase/update/UpdateStudentInformationCommand.java 63.63% <66.66%> (+0.30%) ⬆️

... and 1 file with indirect coverage changes


Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update ebd657a...b5d8b40. Read the comment docs.

---- 🚨 Try these New Features:

@github-actions github-actions bot added the D-5 label Nov 23, 2024
@pull-request-size pull-request-size bot added size/M and removed size/L labels Nov 24, 2024
@tiemo0708
Copy link
Collaborator Author

편입 파싱 부분 중복 테스크로 인해 제거하였습니다.

@github-actions github-actions bot added D-4 and removed D-5 labels Nov 24, 2024
Copy link
Member

@stophwan stophwan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

고생하셨습니다!! 💯

@k-kbk k-kbk merged commit 9d12cf2 into develop Nov 24, 2024
5 checks passed
@k-kbk k-kbk deleted the feature/DEV-42-parsing_associated_major_and_transfer branch November 24, 2024 15:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
D-4 ✨ feat 새로운 기능 개발 혹은 기존 기능 변경 size/M
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants