[업무기록_이슈] 리스트 정렬 순서 미세한 변동

프젝맨·2021년 10월 13일
0

업무

목록 보기
3/3
post-thumbnail

업무개요

주문 관리 list에서 배송준비인 주문건을 배송중으로 상태를 변경하면, 순서가 미세하게 달라지는 issue를 발견하였습니다.
예를 들면, 1,2,3,4,5 라는 순서로 있는 주문건 중 3번의 주문건의 상태를 변경하면 1,2,4,3,5 이렇게 순서가 미세하게 달라졌습니다.

업무흐름

1. controller 위치 확인
2. 정렬 기준 sql query 확인

우선 정렬 기준에 대한 문제이기 때문에, 정렬 기준을 정하는 sql을 먼저 확인하였습니다. sql에서 아래처럼 주문 일자를 기준으로 정렬을 하고 있었습니다.

ORDER BY OD.C_ORDER_DETAIL_DETE DESC

문법상 오류는 없으니 잘 돌아가고, 주문일자를 기준으로 정렬되니 다시 이슈가 생기는 케이스를 확인하였습니다. 이슈가 생기는 케이스를 확인하니 주문일자가 동일하였고, 주문일자는 동일하니 상태처리 후 받아온 순서대로 변경되는 것을 확인하였습니다. 그래서 정렬 기준에 주문일자와 상세주문번호 2개의 기준으로 수정하였습니다.

ORDER BY OD.C_ORDER_DETAIL_DETE, OD.C_ORDER_DETAIL_CD DESC

이후 주문일자가 동일하더라도 그 다음으로 상세주문번호 순서로 정렬을 해주니, 순서 변동 이슈는 해결되었습니다.

고찰

고유값은 동일할 수 가 없기 때문에 정렬기준에 적합한 것 같습니다. 만약 동일한 값이 정렬 기준으로 되어야 한다면, 고유값을 정렬 기준으로 추가해야겠다는 것을 배웠습니다.

profile
프젝맨입니다.

0개의 댓글