diff --git a/src/main/java/ac/kr/deu/connect/luck/event/EventRepository.java b/src/main/java/ac/kr/deu/connect/luck/event/EventRepository.java index 4457cbc..14e94be 100644 --- a/src/main/java/ac/kr/deu/connect/luck/event/EventRepository.java +++ b/src/main/java/ac/kr/deu/connect/luck/event/EventRepository.java @@ -12,4 +12,5 @@ public interface EventRepository extends JpaRepository { void deleteByManager(User manager); List findAllByStatus(EventStatus status); + List findAllByManager(User manager); } diff --git a/src/main/java/ac/kr/deu/connect/luck/event/EventService.java b/src/main/java/ac/kr/deu/connect/luck/event/EventService.java index 89905b7..d935946 100644 --- a/src/main/java/ac/kr/deu/connect/luck/event/EventService.java +++ b/src/main/java/ac/kr/deu/connect/luck/event/EventService.java @@ -1,6 +1,8 @@ package ac.kr.deu.connect.luck.event; import ac.kr.deu.connect.luck.event.dto.EventDetailResponse; +import ac.kr.deu.connect.luck.event.dto.EventRequest; +import ac.kr.deu.connect.luck.event_application.EventApplication; import ac.kr.deu.connect.luck.image.ImageUploader; import ac.kr.deu.connect.luck.user.User; import ac.kr.deu.connect.luck.user.UserRepository; @@ -35,6 +37,21 @@ public List getEvents(EventStatus eventStatus) { return events.stream().map(eventMapper::toEventResponse).toList(); } + /** + * email 로 이벤트 목록 조회 + * + * @param email 이벤트 매니저 email + * @return 이벤트 목록 + */ + public List getEvents(String email) { + List events; + User user = userRepository.findByEmail(email).orElseThrow( + () -> new IllegalArgumentException("해당 유저가 존재하지 않습니다.") + ); + events = eventRepository.findAllByManager(user); + return events.stream().map(eventMapper::toEventResponse).toList(); + } + /** * 이벤트 상세 조회 * @@ -51,21 +68,15 @@ public EventDetailResponse getEvent(Long id) { /** * 이벤트 생성 * - * @param title 이벤트 제목 - * @param content 이벤트 내용 - * @param zipCode 우편번호 - * @param streetAddress 도로명 주소 - * @param detailAddress 상세 주소 - * @param startAt 시작 일시 - * 예시) 2021-08-01T00:00:00 - * 형식) yyyy-MM-dd'T'HH:mm:ss - * @param endAt 종료 일시 + * @param eventRequest 이벤트 생성 요청 폼 * @param multipartFile 이벤트 대표 이미지 * null이면 기본 이미지 사용 * @param managerEmail 매니저 이름 * @return 생성된 이벤트 */ - public Event createEvent(String title, String content, String zipCode, String streetAddress, String detailAddress, String startAt, String endAt, MultipartFile multipartFile, String managerEmail) { + public Event createEvent(EventRequest eventRequest, MultipartFile multipartFile, String managerEmail) { + Event eventSaved = eventMapper.toEvent(eventRequest); + User user = userRepository.findByEmail(managerEmail).orElseThrow( () -> new IllegalArgumentException("해당 유저가 존재하지 않습니다.") ); @@ -74,37 +85,23 @@ public Event createEvent(String title, String content, String zipCode, String st if (multipartFile != null) { image = imageUploader.uploadImage(multipartFile).getData().getUrl(); } - Event event = Event.builder() - .title(title) - .content(content) - .zipCode(zipCode) - .streetAddress(streetAddress) - .detailAddress(detailAddress) - .startAt(LocalDateTime.parse(startAt)) - .endAt(LocalDateTime.parse(endAt)) - .imageUrl(image) - .status(EventStatus.OPEN_FOR_APPLICATION) - .manager(user) - .build(); - return eventRepository.save(event); + eventSaved.setImageUrl(image); + eventSaved.setManager(user); + eventSaved.setStatus(EventStatus.OPEN_FOR_APPLICATION); + + return eventRepository.save(eventSaved); } /** * 이벤트 수정 * * @param id 이벤트 UID - * @param title 이벤트 제목 - * @param content 이벤트 내용 - * @param zipCode 우편번호 - * @param streetAddress 도로명주소 - * @param detailAddress 상세주소 - * @param startAt 시작 시간 - * @param endAt 종료 시간 + * @param eventRequest 이벤트 생성 요청 폼 * @param multipartFile 이벤트 대표 이미지 * @param managerEmail 이벤트 매니저 이메일 * @return 수정된 이벤트 */ - public Event updateEvent(Long id, String title, String content, String zipCode, String streetAddress, String detailAddress, String startAt, String endAt, MultipartFile multipartFile, String managerEmail) { + public Event updateEvent(Long id, EventRequest eventRequest, MultipartFile multipartFile, String managerEmail) { Event findEvent = eventRepository.findById(id).orElseThrow( () -> new IllegalArgumentException("해당 이벤트가 존재하지 않습니다.") ); @@ -117,32 +114,32 @@ public Event updateEvent(Long id, String title, String content, String zipCode, String image = imageUploader.uploadImage(multipartFile).getData().getUrl(); findEvent.setImageUrl(image); } - if (title != null) { - findEvent.setTitle(title); + if (eventRequest.title() != null) { + findEvent.setTitle(eventRequest.title()); } - if (content != null) { - findEvent.setContent(content); + if (eventRequest.content() != null) { + findEvent.setContent(eventRequest.content()); } - if (zipCode != null) { - findEvent.setZipCode(zipCode); + if (eventRequest.zipCode() != null) { + findEvent.setZipCode(eventRequest.zipCode()); } - if (streetAddress != null) { - findEvent.setStreetAddress(streetAddress); + if (eventRequest.streetAddress() != null) { + findEvent.setStreetAddress(eventRequest.streetAddress()); } - if (detailAddress != null) { - findEvent.setDetailAddress(detailAddress); + if (eventRequest.detailAddress() != null) { + findEvent.setDetailAddress(eventRequest.detailAddress()); } - if (startAt != null) { - findEvent.setStartAt(LocalDateTime.parse(startAt)); + if (eventRequest.startAt() != null) { + findEvent.setStartAt(eventRequest.startAt()); } - if (endAt != null) { - findEvent.setEndAt(LocalDateTime.parse(endAt)); + if (eventRequest.endAt() != null) { + findEvent.setEndAt(eventRequest.endAt()); } return eventRepository.save(findEvent); } diff --git a/src/main/java/ac/kr/deu/connect/luck/event/controller/EventController.java b/src/main/java/ac/kr/deu/connect/luck/event/controller/EventController.java index 785e5e5..c431a67 100644 --- a/src/main/java/ac/kr/deu/connect/luck/event/controller/EventController.java +++ b/src/main/java/ac/kr/deu/connect/luck/event/controller/EventController.java @@ -1,12 +1,15 @@ package ac.kr.deu.connect.luck.event.controller; import ac.kr.deu.connect.luck.event.EventService; +import ac.kr.deu.connect.luck.event.EventStatus; +import ac.kr.deu.connect.luck.event.dto.EventRequest; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import java.security.Principal; @Controller @RequestMapping("/event") @@ -17,14 +20,65 @@ public class EventController { @GetMapping public String getEvent(Model model) { - model.addAttribute("events", eventService.getEvents(null)); + model.addAttribute("events", eventService.getEvents((EventStatus) null)); //나중에 인자 신청 가능한 이벤트로 바꿔야함 return "event/event-list"; } + @GetMapping("/my") + public String getMyFoodTruck(Model model, Principal principal) { + model.addAttribute("events", eventService.getEvents(principal.getName())); + return "event/my_event_list"; + } + @GetMapping("/{id}") public String getEventDetail(@PathVariable("id") Long id, Model model) { model.addAttribute("event", eventService.getEvent(id)); return "event/event-form"; } + @GetMapping("/register") + public String getEventRegister(Model model) { + return "event/event_register"; + } + + @PostMapping("/create") + public String registerEventPost( + Principal principal, + EventRequest eventRequest, @RequestParam("multipartFile") MultipartFile multipartFile + ){ + eventService.createEvent(eventRequest, multipartFile, principal.getName()); + return "redirect:/event/my"; + } + + @GetMapping("/delete/{id}") + public String getEventDelete(@PathVariable("id") Long id, Principal principal) { + eventService.deleteEvent(id, principal.getName()); + return "redirect:/event/my"; + } + + @GetMapping("/edit/{id}") + public String getEventUpdate(@PathVariable("id") Long id, Model model) { + model.addAttribute("event", eventService.getEvent(id)); + return "event/event_update"; + } + + @PostMapping("/update") + public String updateEventPost( + @RequestParam("eventId") Long id, + Principal principal, + EventRequest eventRequest, + @RequestParam("multipartFile") MultipartFile multipartFile + ){ + eventService.updateEvent(id, eventRequest, multipartFile, principal.getName()); + return "redirect:/event/my"; + } + @PostMapping("/statusUpdate/{id}") + public String updateEventPost( + @PathVariable("id") Long id, + Principal principal, + @RequestParam("status") EventStatus eventStatus + ){ + eventService.changeEventStatus(id, eventStatus, principal.getName()); + return "redirect:/event/my"; + } } diff --git a/src/main/java/ac/kr/deu/connect/luck/event/controller/EventRestController.java b/src/main/java/ac/kr/deu/connect/luck/event/controller/EventRestController.java index 96acb4e..fbacc75 100644 --- a/src/main/java/ac/kr/deu/connect/luck/event/controller/EventRestController.java +++ b/src/main/java/ac/kr/deu/connect/luck/event/controller/EventRestController.java @@ -39,8 +39,8 @@ public ResponseEntity getEvent(@PathVariable Long id) { return ResponseEntity.ok(eventService.getEvent(id)); } - - @PostMapping(consumes = MediaType.MULTIPART_FORM_DATA_VALUE) + //서비스 로직 수정함 레스트도 수정되어야할듯 + /*@PostMapping(consumes = MediaType.MULTIPART_FORM_DATA_VALUE) @PreAuthorize("hasRole('ROLE_EVENT_MANAGER')") @Operation(summary = "이벤트 생성", description = "이벤트 생성\n이벤트 주소입력 시 카카오 우편번호 서비스를 사용해서 주소를 입력받아야함.") public ResponseEntity createEvent( @@ -72,7 +72,7 @@ public ResponseEntity updateEvent( @Parameter(description = "이벤트 대표 이미지") @RequestPart(value = "image", required = false) MultipartFile multipartFile, Principal principal) { return ResponseEntity.ok(eventService.updateEvent(id, title, content, zipCode, streetAddress, detailAddress, startAt, endAt, multipartFile, principal.getName())); - } + }*/ @DeleteMapping("/{id}") diff --git a/src/main/java/ac/kr/deu/connect/luck/event_application/EventApplication.java b/src/main/java/ac/kr/deu/connect/luck/event_application/EventApplication.java index 777af71..928bd64 100644 --- a/src/main/java/ac/kr/deu/connect/luck/event_application/EventApplication.java +++ b/src/main/java/ac/kr/deu/connect/luck/event_application/EventApplication.java @@ -20,6 +20,8 @@ public class EventApplication extends BaseEntity { @ManyToOne private Event event; + private Long foodTruckId; + @ManyToOne private User foodTruckManager; diff --git a/src/main/java/ac/kr/deu/connect/luck/event_application/EventApplicationController.java b/src/main/java/ac/kr/deu/connect/luck/event_application/EventApplicationController.java new file mode 100644 index 0000000..7a3253e --- /dev/null +++ b/src/main/java/ac/kr/deu/connect/luck/event_application/EventApplicationController.java @@ -0,0 +1,45 @@ +package ac.kr.deu.connect.luck.event_application; +import ac.kr.deu.connect.luck.event.EventService; +import ac.kr.deu.connect.luck.user.UserService; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import java.security.Principal; + +@Controller +@RequestMapping("/apply") +@RequiredArgsConstructor +public class EventApplicationController { + + private final EventService eventService; + private final UserService userService; + private final EventApplicationService eventApplicationService; + + @GetMapping("/{id}") + public String getEventDetail(@PathVariable("id") Long id, Model model, Principal principal) { + model.addAttribute("event", eventService.getEvent(id)); + model.addAttribute("user", userService.findUserByEmail(principal.getName())); + return "event/event-apply"; + } + + //푸드트럭 id 이용해서 푸드트럭 사장 정보에서 푸드트럭 id에 맞는 푸드트럭 빼와서 푸드트럭 이미지랑 그런거 보여줘여할듯 아직 미구현 + @GetMapping("/list/{id}") + public String getApplyList(@PathVariable("id") Long id, Model model, Principal principal) { + model.addAttribute("user", userService.findUserByEmail(principal.getName())); + model.addAttribute("applications", eventApplicationService.getEventApplications(id)); + return "event/my_apply_list"; + } + + @PostMapping("/create") + public String registerFoodTruckPost( + Principal principal, + EventApplicationRequest eventApplicationRequest + ){ + eventApplicationService.createEventApplication(eventApplicationRequest, principal.getName()); + return "redirect:/event"; + } +} diff --git a/src/main/java/ac/kr/deu/connect/luck/event_application/EventApplicationRequest.java b/src/main/java/ac/kr/deu/connect/luck/event_application/EventApplicationRequest.java index a7428d7..8aaba1a 100644 --- a/src/main/java/ac/kr/deu/connect/luck/event_application/EventApplicationRequest.java +++ b/src/main/java/ac/kr/deu/connect/luck/event_application/EventApplicationRequest.java @@ -2,7 +2,16 @@ import io.swagger.v3.oas.annotations.media.Schema; +import io.swagger.v3.oas.annotations.media.Schema; + public record EventApplicationRequest( + @Schema(description = "이벤트 ID", example = "1") + Long eventId, + + @Schema(description = "푸드트럭 ID", example = "2") + Long foodTruckId, + @Schema(description = "신청 메시지", example = "죠희 타코야키 잘 만들어요") String comment) { } + diff --git a/src/main/java/ac/kr/deu/connect/luck/event_application/EventApplicationRestController.java b/src/main/java/ac/kr/deu/connect/luck/event_application/EventApplicationRestController.java index 53d1a00..1bdc379 100644 --- a/src/main/java/ac/kr/deu/connect/luck/event_application/EventApplicationRestController.java +++ b/src/main/java/ac/kr/deu/connect/luck/event_application/EventApplicationRestController.java @@ -39,7 +39,8 @@ public List getMyEventApplicationsForEventManager( return eventApplicationService.getMyEventApplicationsForEventManager(eventId, principal.getName()); } - @PostMapping("/application") + //서비스 로직 수정했는데 Rest 로직은 수정 못하겠음 남주 SOS 바람 + /*@PostMapping("/application") @PreAuthorize("hasRole('ROLE_FOOD_TRUCK_MANAGER')") @Operation(summary = "이벤트 신청", description = "푸드트럭 매니저가 이벤트에 신청하는 API
푸드트럭 매니저만 사용 가능합니다") public ResponseEntity applyEvent( @@ -47,7 +48,7 @@ public ResponseEntity applyEvent( @RequestBody EventApplicationRequest eventApplicationRequest, Principal principal) { return ResponseEntity.ok(eventApplicationService.createEventApplication(eventApplicationRequest, id, principal.getName())); - } + }*/ @PostMapping("/event/{eventId}/applications/{applicationId}") diff --git a/src/main/java/ac/kr/deu/connect/luck/event_application/EventApplicationService.java b/src/main/java/ac/kr/deu/connect/luck/event_application/EventApplicationService.java index be5be20..262a740 100644 --- a/src/main/java/ac/kr/deu/connect/luck/event_application/EventApplicationService.java +++ b/src/main/java/ac/kr/deu/connect/luck/event_application/EventApplicationService.java @@ -52,11 +52,10 @@ public List getMyEventApplicationsForEventManager(Long eventId * 지원서 신규 작성 메소드 * * @param eventApplicationRequest 이벤트 요청 폼 - * @param eventId 이벤트 키 * @param email 신청자(푸드트럭 매니저) 이메일 * @return 생성된 신규 지원서 */ - public EventApplication createEventApplication(EventApplicationRequest eventApplicationRequest, Long eventId, String email) { + public EventApplication createEventApplication(EventApplicationRequest eventApplicationRequest, String email) { EventApplication eventApplicationSaved = eventApplicationMapper.toEventApplication(eventApplicationRequest); // 유저 정보 조회 @@ -66,10 +65,10 @@ public EventApplication createEventApplication(EventApplicationRequest eventAppl throw new CustomException(CustomErrorCode.USER_ID_NOT_MATCH); } - Event evnet = eventRepository.findById(eventId).orElseThrow(() -> new CustomException(CustomErrorCode.EVENT_NOT_FOUND)); + Event event = eventRepository.findById(eventApplicationRequest.eventId()).orElseThrow(() -> new CustomException(CustomErrorCode.EVENT_NOT_FOUND)); eventApplicationSaved.setFoodTruckManager(user); - eventApplicationSaved.setEvent(evnet); + eventApplicationSaved.setEvent(event); eventApplicationSaved.setStatus(ApplicationStatus.PENDING); return eventApplicationRepository.save(eventApplicationSaved); diff --git a/src/main/java/ac/kr/deu/connect/luck/food_truck/controller/FoodTruckReviewController.java b/src/main/java/ac/kr/deu/connect/luck/food_truck/controller/FoodTruckReviewController.java index 7622aa6..e856d35 100644 --- a/src/main/java/ac/kr/deu/connect/luck/food_truck/controller/FoodTruckReviewController.java +++ b/src/main/java/ac/kr/deu/connect/luck/food_truck/controller/FoodTruckReviewController.java @@ -6,6 +6,7 @@ import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.http.MediaType; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; @@ -89,5 +90,6 @@ public String editFoodTruckReview( ) { foodTruckReviewService.saveFoodTruckReview(id, foodTruckReview, principal.getName(), reviewId); return "redirect:/user"; + } } -} + diff --git a/src/main/java/ac/kr/deu/connect/luck/image/ImageUploader.java b/src/main/java/ac/kr/deu/connect/luck/image/ImageUploader.java index 88c4303..8f49054 100644 --- a/src/main/java/ac/kr/deu/connect/luck/image/ImageUploader.java +++ b/src/main/java/ac/kr/deu/connect/luck/image/ImageUploader.java @@ -1,7 +1,5 @@ package ac.kr.deu.connect.luck.image; -import ac.kr.deu.connect.luck.exception.CustomErrorCode; -import ac.kr.deu.connect.luck.exception.CustomException; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; import org.springframework.http.HttpEntity; @@ -48,7 +46,10 @@ public ImageUploadResponse uploadImage(MultipartFile file) { return response.getBody(); } catch (Exception e) { log.error("Image upload failed: {}", e.getMessage()); - throw new CustomException(CustomErrorCode.IMAGE_UPLOAD_FAILED); + ImageUploadResponse response = new ImageUploadResponse(); + response.setData(new ImageUploadResponse.Data()); + response.getData().setUrl("https://picsum.photos/1600/900"); + return response; } } } diff --git a/src/main/resources/data.sql b/src/main/resources/data.sql index 02a799e..e73116c 100644 --- a/src/main/resources/data.sql +++ b/src/main/resources/data.sql @@ -1,3 +1,4 @@ + -- User table INSERT INTO users (created_at, updated_at, email, name, password, phone) diff --git a/src/main/resources/templates/event/event-apply.html b/src/main/resources/templates/event/event-apply.html new file mode 100644 index 0000000..9409ba1 --- /dev/null +++ b/src/main/resources/templates/event/event-apply.html @@ -0,0 +1,45 @@ + + + + + +
+

푸드트럭 신청

+
+ +
+

신청할 푸드트럭

+ + +
+ +
+

신청서 작성

+
+ + +
+
+ + + +
+
+ + +
+ \ No newline at end of file diff --git a/src/main/resources/templates/event/event-form.html b/src/main/resources/templates/event/event-form.html index 8a89b13..c3da880 100644 --- a/src/main/resources/templates/event/event-form.html +++ b/src/main/resources/templates/event/event-form.html @@ -1,7 +1,54 @@ +
+

이벤트 상세 조회

+

+ + +
+ Event Image +
+ + + +

담당자:

+ + +

+ 이벤트 상태: + + + + + + + +

+ + +
+

이벤트 내용: + +

+
+ + +
+

이벤트 주소: + +

+
+ + +
+

시작 일시:

+

종료 일시:

+
+ + +
\ No newline at end of file diff --git a/src/main/resources/templates/event/event-list.html b/src/main/resources/templates/event/event-list.html index ca52803..7f7a80c 100644 --- a/src/main/resources/templates/event/event-list.html +++ b/src/main/resources/templates/event/event-list.html @@ -9,46 +9,63 @@

이벤트 목록

-
+
+ + +
+
-
+
Event Image

-

+

+

+ 이벤트 상태: + + + + + + + +

자세히 보기 문의하기 - 신청하기 + + 신청하기 + + 신청하기
+ - - diff --git a/src/main/resources/templates/event/event_register.html b/src/main/resources/templates/event/event_register.html new file mode 100644 index 0000000..205b3ea --- /dev/null +++ b/src/main/resources/templates/event/event_register.html @@ -0,0 +1,61 @@ + + + + +
+

이벤트 생성

+
+
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ + +
+ + + +
+
+
+ \ No newline at end of file diff --git a/src/main/resources/templates/event/event_update.html b/src/main/resources/templates/event/event_update.html new file mode 100644 index 0000000..03b9579 --- /dev/null +++ b/src/main/resources/templates/event/event_update.html @@ -0,0 +1,68 @@ + + + + +
+

이벤트 수정

+
+ + + +
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ + + +
+ Event Image +
+
+ + + +
+
+
+ \ No newline at end of file diff --git a/src/main/resources/templates/event/my_apply_list.html b/src/main/resources/templates/event/my_apply_list.html new file mode 100644 index 0000000..ca4acfa --- /dev/null +++ b/src/main/resources/templates/event/my_apply_list.html @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/main/resources/templates/event/my_event_list.html b/src/main/resources/templates/event/my_event_list.html new file mode 100644 index 0000000..39159db --- /dev/null +++ b/src/main/resources/templates/event/my_event_list.html @@ -0,0 +1,52 @@ + + + + +
+ +
+

내 이벤트 목록

+ + +
+
+ +
+
+ Event Image +
+
+

+

+

+ + 신청서 조회 + 이벤트 수정 + 이벤트 삭제 +
+
+ + + +
+
+
+
+
+
+
+
+ diff --git a/src/main/resources/templates/food_truck/food-truck-review-form.html b/src/main/resources/templates/food_truck/food-truck-review-form.html new file mode 100644 index 0000000..a1faed5 --- /dev/null +++ b/src/main/resources/templates/food_truck/food-truck-review-form.html @@ -0,0 +1,32 @@ + + + + +

리뷰 작성

+
+
+ + +
+ + +
+
+ + +
+
+ + +
+ +
+
+
+ diff --git a/src/main/resources/templates/food_truck/food_truck_detail.html b/src/main/resources/templates/food_truck/food_truck_detail.html index b3b988b..465aacc 100644 --- a/src/main/resources/templates/food_truck/food_truck_detail.html +++ b/src/main/resources/templates/food_truck/food_truck_detail.html @@ -56,7 +56,7 @@

후기

- + diff --git a/src/main/resources/templates/food_truck/food_truck_list.html b/src/main/resources/templates/food_truck/food_truck_list.html index 7a3732f..6f890aa 100644 --- a/src/main/resources/templates/food_truck/food_truck_list.html +++ b/src/main/resources/templates/food_truck/food_truck_list.html @@ -25,9 +25,9 @@

- 후기보기 + 리뷰 작성 - 메뉴보기 + 자세히 보기
diff --git a/src/main/resources/templates/fragments/nav-bar.html b/src/main/resources/templates/fragments/nav-bar.html index 2a8c98d..62e2b75 100644 --- a/src/main/resources/templates/fragments/nav-bar.html +++ b/src/main/resources/templates/fragments/nav-bar.html @@ -45,7 +45,7 @@