Get All Orders
This commit is contained in:
@@ -4,6 +4,7 @@ import de.htwsaar.webshop.model.OrderModel;
|
||||
import de.htwsaar.webshop.model.OrderStatus;
|
||||
import de.htwsaar.webshop.repository.entities.Order;
|
||||
import de.htwsaar.webshop.service.OrderService;
|
||||
import de.htwsaar.webshop.service.SessionService;
|
||||
import de.htwsaar.webshop.service.ValidatorService;
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@@ -11,8 +12,10 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.bind.support.SessionStatus;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
import static de.htwsaar.webshop.config.ControllerPathConfig.ORDER_BASE;
|
||||
import static de.htwsaar.webshop.config.ControllerPathConfig.ORDER_GET_ALL;
|
||||
@@ -25,11 +28,13 @@ public class OrderController {
|
||||
|
||||
private final OrderService orderService;
|
||||
private final ValidatorService validatorService;
|
||||
private final SessionService sessionService;
|
||||
|
||||
@Autowired
|
||||
public OrderController(OrderService orderService, ValidatorService validatorService) {
|
||||
public OrderController(OrderService orderService, ValidatorService validatorService, SessionService sessionService) {
|
||||
this.orderService = orderService;
|
||||
this.validatorService = validatorService;
|
||||
this.sessionService = sessionService;
|
||||
}
|
||||
|
||||
@RequestMapping(path = ORDER_GET_ALL, method = RequestMethod.GET, produces = "application/json")
|
||||
@@ -43,6 +48,19 @@ public class OrderController {
|
||||
return ResponseEntity.ok(orders.stream().map(Order::toModel).toList());
|
||||
}
|
||||
|
||||
@RequestMapping(path = ORDER_GET_ALL, method = RequestMethod.TRACE, produces = "application/json")
|
||||
public ResponseEntity<List<OrderModel>> getAll(HttpServletRequest request,
|
||||
@RequestParam(value = PARAM_EMAIL) String email,
|
||||
@RequestParam(value = PARAM_SESSION) UUID token) {
|
||||
logRequest(request);
|
||||
if (!sessionService.isAdmin(token, email)) {
|
||||
log.warn("[{}] Account isn't allowed to make request {}", request.getRequestURI(), email);
|
||||
return ResponseEntity.badRequest().build();
|
||||
}
|
||||
|
||||
return ResponseEntity.ok(orderService.findAll().stream().map(Order::toModel).toList());
|
||||
}
|
||||
|
||||
@RequestMapping(path = ORDER_BASE, method = RequestMethod.GET, produces = "application/json")
|
||||
public ResponseEntity<OrderModel> get(HttpServletRequest request,
|
||||
@RequestParam(value = PARAM_ID) Long orderId) {
|
||||
|
||||
@@ -7,6 +7,8 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public interface OrderService {
|
||||
List<Order> findAll();
|
||||
|
||||
Order save(Order order);
|
||||
|
||||
Order save(OrderModel model);
|
||||
|
||||
@@ -31,6 +31,11 @@ public class OrderServiceImpl implements OrderService {
|
||||
this.articleService = articleService;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Order> findAll() {
|
||||
return orderRepository.findAll();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Order save(Order order) {
|
||||
return orderRepository.save(order);
|
||||
|
||||
Reference in New Issue
Block a user