Class MenuItemReviewsController
java.lang.Object
edu.ucsb.cs156.example.controllers.ApiController
edu.ucsb.cs156.example.controllers.MenuItemReviewsController
@RequestMapping("/api/menuitemreviews")
@RestController
public class MenuItemReviewsController
extends ApiController
This is a REST controller for MenuItemReviews
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionList all menu item reviewsDelete a MenuItemReviewsGet a single menuitemreviews by idpostMenuItemReview
(long itemId, String reviewerEmail, int stars, String comments, LocalDateTime dateReviewed) Create a new reviewupdateMenuItemReviews
(Long id, @Valid MenuItemReviews incoming) Update a single menuitemreviewsMethods inherited from class edu.ucsb.cs156.example.controllers.ApiController
genericMessage, getCurrentUser, handleGenericException
-
Constructor Details
-
MenuItemReviewsController
public MenuItemReviewsController()
-
-
Method Details
-
allMenuItemReviews
@PreAuthorize("hasRole(\'ROLE_USER\')") @GetMapping("/all") public Iterable<MenuItemReviews> allMenuItemReviews()List all menu item reviews- Returns:
- an iterable of MenuItemReviews
-
postMenuItemReview
@PreAuthorize("hasRole(\'ROLE_ADMIN\')") @PostMapping("/post") public MenuItemReviews postMenuItemReview(@RequestParam long itemId, @RequestParam String reviewerEmail, @RequestParam int stars, @RequestParam String comments, @RequestParam("dateReviewed") @DateTimeFormat(iso=DATE_TIME) LocalDateTime dateReviewed) throws com.fasterxml.jackson.core.JsonProcessingException Create a new review- Parameters:
itemId
- the item being reviewedreviewerEmail
- the email of the reviewerstars
- the rating given by reviewercomments
- the comments given by reviewerdateReviewed
- the date- Returns:
- the saved menuitemreview
- Throws:
com.fasterxml.jackson.core.JsonProcessingException
-
getById
@PreAuthorize("hasRole(\'ROLE_USER\')") @GetMapping("") public MenuItemReviews getById(@RequestParam Long id) Get a single menuitemreviews by id- Parameters:
id
- the id of the menuitemreviews- Returns:
- a MenuItemReviews
-
updateMenuItemReviews
@PreAuthorize("hasRole(\'ROLE_ADMIN\')") @PutMapping("") public MenuItemReviews updateMenuItemReviews(@RequestParam Long id, @RequestBody @Valid @Valid MenuItemReviews incoming) Update a single menuitemreviews- Parameters:
id
- id of the menuitemreviews to updateincoming
- the new menuitemreviews- Returns:
- the updated menuitemreviews object
-
deleteMenuItemReviews
@PreAuthorize("hasRole(\'ROLE_ADMIN\')") @DeleteMapping("") public Object deleteMenuItemReviews(@RequestParam Long id) Delete a MenuItemReviews- Parameters:
id
- the id of the menuItemReviews to delete- Returns:
- a message indicating the menuItemReviews was deleted
-