Punch refactoring(1)

이종호·2020년 12월 28일
0

리팩토링

목록 보기
1/1

작년 10~11월에 작성한 코드들을 리팩토링 하기 위해 다시 꺼내어 보았다.
우선 매우 많은 문제들이 있었지만, 가장 큰 이유는 DB에 대한 접속이 쓸데없이 여러군데 있을 것 같다는 문제였다.

  1. 5개의 쿼리를 2개의 쿼리로 만들고
    connection.commit()과 connection.rollback()을 이용해서 더욱 안전한 쿼리 만들기

입력:
1. token (-> student.logId)
2. qrNum (-> num, class Code)
3. allowTime

출력:
1. 현재 학생이 해당 수업을 등록하고 있는지(아니면, 등록 후 진행)
2. 수업이 열린 상태인지?
3. 수업 시간에 맞춰 해당 학생의 출석 상태를 수정

바꿀 방안
token의 logId와 QR의 classCode를 이용하여 student, classList, Student_has_class, attendance를 땡겨오고, (출석은.. 따로 때겨와야 할 지도 모르겠다.)
그리고 확인과 update를 하나의 try-catch문에 넣고 commit과 rollback을 사용해 안전한 쿼리를 만들어보자.

profile
열심히 사는 사람

0개의 댓글