어느 비전공자의 개발일지

fullcalenda 캘린더 [사용자] 부서,개인 일정관리 본문

백엔드 개발자/2022년 국비 학원 프로젝트

fullcalenda 캘린더 [사용자] 부서,개인 일정관리

vndn629 2023. 7. 24. 10:00

프로젝트 설명

: 기업내 간단한 그룹웨어를 구현

프로젝트 UI/UX

: Notion 페이지

: 기간 : 2022.03.27 ~ 2022.04.01 Figma를 이용한 설계진행

: DA#을 통한 데이터베이스 모델링

주요기능

: 회원관리/게시판/주소록/일정관리/전자결재

추가했던날 : 2022.04.15 풀캘린더 [사용자] 일정 부서 & 일정 구현하기.

​지난내용

내용 - 우리가 계획 하는 그룹웨어는 부서별,개인별 일정이 각자 따로따로 있다.

팀장급이상은 부서에 일정을 적어 부서에 공지를 띄울수도 있고, 개인일정을 작성할수도 있어야 한다.

팀장급밑은 부서 일정을 볼수는 있지만 작성할수 없고, 개인일정을 등록할수 있다.

추가내용

내용 -

[관리자]인 [ 오부장 ] D5부서에서 공지글을 올렸을때

[사용자]인 [ 임차장 ] D5이 일정에서 부서를 클릭했을때 [오부장]이올린 D5부서 공지글이 보여야 한다.

또한 [사용자]가 개인일정을 눌렀을때 [오부장]이 썼던 [개인일정]이 공유 되지 않고 자신만의 [개인일정]이 나와야 한다.


현재 임차장[부서코드 : D5] 의 화면

처음에 개인일정을 눌렀을때 [오부장의 개인일정]이 같이 나왔었다.

Controller에서 간단하게 세션을통해 로그인한 userNo을 ScheduleDTO에 담아 xml에 AND조건을 통해 #{ userNo }를 추가해준것 만으로도 지금 로그인한 사용자 userNo 개인 일정만 보이게 되었다.

하지만 문제가 발생했다.

부서 일정을 클릭하면 현재 임차장 [부서코드 : D5 ]의 일정 공지글이 나와야 한다. -> 오부장이 쓴 글이 나와야함 ( 같은부서 )

 

해결 방법

: 방법은 간단했다 . xml에 동적쿼리를 주었다.

<if> 문으로 divide 가 '개인' 으로 들어 왔을때만 userNo을 주면 해결이 되었다.


수정후 확인

: 이제 부서 오부장이 올렸던 부서 공지도 잘나오고 , 임차장[개인일정]이 오부장과 겹치지 않고 잘 나오게 되었다.

그리고 한가지더 ,

[사용자]가 부서를 클릭했을땐 일정추가,수정,삭제가 불가능 하니, display = "none"으로 감춰 주면 끝이난다.

반응형