분류 전체보기 224

[Library Management System] 25.10.21 | (구현) 도서 검색, 도서 상세, 이전 기록 목록 이동

[ 작업한 내용 ]# Frontend1. 도서 검색 메뉴 생성- Header에 도서 검색 메뉴 생성2. 도서 전체 목록 조회- 도서 전체 목록을 페이지당 10개의 도서를 조회하여 보여줌3. 도서 검색- ALL, TITLE, AUTHOR 타입별 키워드로 조회- 검색 시 페이지당 10개의 도서 조회4. 도서 상세 페이지에서 목록으로 이동 시 이전 페이지로 이동- navigate(-1)이 아닌 세션으로 type, keyword, page, size를 저장하여 목록으로 이동 시 이전 기록 그대로 조회한 페이지로 이동- 단, keyword가 있는지 먼저 확인을 하여 키워드가 있으면 검색어 그대로 조회, 없으면 검색 후 도서 상세페이지로 이동한 것이 아니기 때문에 이전 페이지를 보여줌.

[Library Management System] 25.10.18 (67일) | (구현) 공용 도서 상세 조회

[ 작업한 내용 ]# frontend1. 도서 상세페이지 라우트 추가- /books/:bookId로 경로와 요소 정의}/> 2. 도서 상세 api 연결- useParams()를 사용하여 bookId 전달 받기.- API 호출하여 데이터 처리 후 화면에 출력하기.const { bookId } = useParams();localhost:8080/api/v1/boosk/${bookId}3. 스타일- 대출이 가능하면 초록색, 불가면 빨간색으로 처리- 대출이 가능하면 대출하기 버튼이 활성화, 불가하면 비활성화

[Library Management System] 25.10.17 (66일) | (구현) 공용 공지사항 검색 기능

[ 작업한 내용 ]# Frontend1. 공지사항 목록 페이지 검색 기능 추가- 총 데이터 건수와 현재 페이지와 총 페이지 수를 상단 좌측에 보여주도록 하였다. (예: 총 90건 | 1/90 페이지)- 검색어 입력창과 검색버튼은 상단 우측에 배치했다.- 공지 검색 조회 시 검색어에 해당한 데이터를 목록으로 출력한다.- 데이터가 없다면 '등록된 게시물이 없습니다.'를 출력해 줘야하기 때문에 부분을 변수로 처리하였다. 즉, if-else()문을 사용하여 데이터가 있으면 데이터를 출력하고 없으면 else 블럭에 작성한 등록된 게시물이 없다는 문구가 출력된다.- 페이징 기능이 있기 때문에 데이터가 없으면 page 번호가 화면에 출력이 안되지만 이전(prev), 다음(next) 버튼은 비활성화 되도록 수정 하였..

[Library Management System] 25.10.09 (65일) | (리팩토링) 공용 공지 수정 (전체, 상세, 검색) 관리자 공지 부분 수정(등록, 수정,삭제, 전체, 상세, 검색)

[ 작업한 내용 ]# Backend1. 공용: 공지사항 전체 목록 조회 (페이징)- Controller에서 RequestParam의 속성 name을 value로 변경.- Controller와 Service 사이에서 반환과 결과를 저장할 때 Page타입에서 PageResponse로 수정.- Service에서 Repository에서 조회한 값을 List로 형변환 하였는데 불필요하다고 판단하여 삭제하고 조회한 결과를 Page로 맵핑하여 저장.2. 공용: 공지사항 상세 조회- 주석 내용만 수정3. 공용: 공지사항 검색 목록 보기 (페이징)- Controller에서 RequestParam의 속성 name을 value로 변경.- Controller와 Service 사이에서 반환과 결과를 저장할 때 Page타입에서 ..

[Library Management System] 25.10.08 (64일) | (UI) zustand, Header/Footer/Layout 컴포넌트화, 회원가입, (리팩토링) 리뷰 관련 api 기능 재정의

[ 작업한 내용 ]# Frontend1. zustand로 사용자 인증 정보 관리- zustand 설치- useUserStore.jsx 생성하여 store create하기- 유저 정보 불러오기, 유저 설정, 로그아웃 설정 2. Header, Footer, Layout 컴포넌트화 설정- 중복되는 부분인 header, footer를 컴포넌트화 하기- 홈, 로그인, 회원가입 화면의 위치는 공통적이기 때문에 Layout 컴포넌트를 생성하여 Header, Footer 사이에 Outlet을 두어 관리 3. 회원가입 화면 및 기능 구현- 기존에 만든 FocusPlaceholderInput 컴포넌트 활용하여 입력칸으로 사용- 회원가입 api 연결 4. 도서 전체목록 조회 후 페이징 기능 구현- 도서 전체목록 api 연결..

[Library Management System] 25.10.06 (62일) | (리팩토링) 사용자 리뷰 전체 목록 조회/ 책 리뷰 상세 조회/ 책 리뷰 수정/ 책 리뷰 삭제/ 책 리뷰 검색

[ 작업한 내용 ]# UserReviewController- Service 계층으로 파라미터 전달 후 결과를 받아서 저장할 타입을 Page에서 PageResponse로 변경@GetMapping("/me/reviews")public ResponseEntity allListReview( @RequestParam(name = "page", defaultValue = "0") int page, @RequestParam(name = "size", defaultValue = "10") int size, @AuthenticationPrincipal User user) { // 서비스로직 PageResponse responseDTO = userReviewService.allListReview(page, s..

[Library Management System] 25.10.05 (61일) | (리팩토링) 사용자 내 도서 대출 내역/ 사용자 책 리뷰 작성

[ 작업한 내용 ]# UserLoanListResDTO- 내 도서 대출 내역 응답 DTO- 도서 대출 고유번호, 책 제목, 저자, 출판사, 출판일, 대출일, 반납일- Loan 엔티티를 파라미터로 받는 생성자 함수 정의** 변경사항 없음@Getterpublic class UserLoanListResDTO { private Long id; private String bookTitle; private String author; private String publisher; private LocalDate publishedDate; private LocalDateTime loanDate; private LocalDateTime returnDate; public UserLoanListResDTO(L..

[Library Management System] 25.10.04 (60일) | (리팩토링) 관리자 도서 대출 반납 처리/ 도서 대출 연장 처리/ 도서 분실 처리

[ 작업한 내용 ]# AdminLoanReturnResDTO- 도서 대출 반납 처리 응답 DTO- 도서 대출 고유번호, 사용자 아이디, 책 제목, 반납일, 상태(id, username, bookTitle, returnDate, status) 으로 엔티티별로 묶어서 응답- Loan 엔티티를 파라미터로 받는 생성자 함수 정의** 변경사항 없음@Getterpublic class AdminLoanReturnResDTO { private Long id; private String username; private String bookTitle; private LocalDateTime returnDate; private LoanStatus status; public AdminLoanReturnResDTO(..

[Library Management System] 25.10.03 (59일) | (리팩토링) 관리자 도서 대출 등록/도서 대출 전체 목록 조회/도서 대출 상세 조회/도서 대출 타입별 검색

[ 작업한 내용 ]# AdminLoanCreateReqDTO- 도서 대출 등록 요청 DTO- 사용자 고유번호, 도서 고유번호 (userId, bookId)** 변경사항 없음@Getterpublic class AdminLoanCreateReqDTO { private Long userId; private Long bookId;}# AdminLoanCreateResDTO- 도서 대출 등록 응답 DTO- loan, borrower, borrowedBook으로 엔티티별로 묶어서 응답- 대출 내역 고유번호, 대출일, 반납일, 사용자 고유번호, 사용자 아이디, 도서 고유번호, 도서명, 도서 상태 (id, loanDate, dueDate, userId, username, bookId, bookTitle, bookS..