0208 일지

Yesol Lee·2023년 2월 8일
0

개발일지 - 2023

목록 보기
21/32

프로젝트

SMS 관련

SMS 템플릿 변경

특정 조건으로 SMS 발송 시 사용하는 텍스트 템플릿이 변경되어서 코드를 수정했다. 단순 텍스트만 바꾸면 될 줄 알았는데 전송하는 조건이 좀더 세분화되어서 자바 코드도 수정해야 하는 상황이었다.
과정 정보를 문자에 넣어주어야 하는데, 해당 과정에 시험이 있는지 여부, 이수조건 여부, 상시/비상시 여부 등을 따져야 해서 생각보다 오래 걸렸다.

  1. template text 수정함 : 기본 텍스트, 경우 1 서브텍스트, 경우 2 서브텍스트로 나누어 조건에 따라 텍스트를 조합하도록 변경하였다.
  2. sql 쿼리, vo 수정 : 새로운 조건 판별에 필요한 컬럼값 하나를 더 가져오도록 sql 쿼리를 수정하였다.
  3. 템플릿 key코드 수정 : 템플릿 내용, 템플릿 발송 대상, 발송 키워드 등을 정하는 데 템플릿 키 코드가 들어가는데, 새로운 템플릿이 생겼으니 값을 변경해주었다.
  4. js파일의 템플릿 키 코드 수정 : ajax를 호출하는 각 js 파일에서 쿼리 스트링 값으로 넘겨주는 템플릿 키 코드를 수정하였다.

아이디로 발송 시 에러 해결

템플릿 수정을 거의 다 했을 무렵, 운영에서 문자발송 시도 시 에러가 뜬다는 이야기를 들었다. 처음에는 한 번에 너무 많은 사람을 선택해서 그런가 싶었는데, 120명에게 보내기 클릭 시에도 멀쩡한 부분이 50명 보내기할때 에러가 뜨길래 인원과는 관련 없을 거라고 추측했다.
운영 로그를 찾아보니, 해당 화면에서 들어가지 말아야 조건으로 가서 그 안에 있는 함수에서 에러가 나고 있었다.
아이디로 검색하는 기능은 2가지가 있는데, 하나는 유저 아이디만 전달하는 것, 나머지는 유저아이디 + 과정 정보를 '_' 언더바로 연결해서 가져온 값을 split해서 검색하는 기능이었다.
테스트한 곳은 아이디만 사용하는 곳이었는데, 언더바 split을 하는 로직을 타길래 데이터를 잘 보니 어떤 사용자의 아이디에 언더바가 들어가 있는 것을 확인할 수 있었다. 즉 내 코드도 문제가 있었지만, 아이디 생성 규칙에도 문제가 있었던 것이다.

해결

  1. 분기 조건에서 언더바 사용하는 부분 최소화 : 언젠가는 split한 번은 해야하니 완전히 없앨수는 없어서 언더바가 아닌 다른 split 조건을 생각해야 했다. 그 조건은 아이디에 들어갈 가능성이 없어야 한다.
  2. 아이디 생성 규칙 정규식 수정 : 구글 검색을 통해 언더바, 대시, 마침표는 허용하되 나머지 기호는 허용하지 않는 이메일 명명규칙을 찾아 변경하였다.
  3. 분기 조건 ~ 물결로 변경 : js에서는 3가지 정보를 join할 때, java에서는 그걸 split할 때 조건을 ~ 표시로 변경하였다.

회원가입 관련

아이디 생성규칙 정규식 변경

JavaScript: HTML Form - email validation

  • 기호는 . _ -만 사용가능)
let regex = new RegExp(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/); // @앞자리 특수기호는 _, -, .만 허용
if(regex.test(user_id) == false){
    alert("이메일 형식으로 입력하셔야합니다.");
}

필수입력값 추가

  • 모든 페이지에서 소속 필수컬럼 지정 완료
    ­- 회사검색, 학교검색 팝업에 결과 없는 경우 안내문구 추가
profile
문서화를 좋아하는 개발자

0개의 댓글