WaitListOrderController.java
package waitorder.controller;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.web.bind.annotation.*;
import waitorder.entity.WaitListOrderVO;
import waitorder.service.WaitListOrderService;
import static org.springframework.http.ResponseEntity.ok;
/**
* @author fdse
*/
@RestController
@RequestMapping("/api/v1/waitorderservice")
public class WaitListOrderController {
@Autowired
private WaitListOrderService waitListOrderService;
private static final Logger LOGGER = LoggerFactory.getLogger(WaitListOrderController.class);
@GetMapping(path = "/welcome")
public String home() {
return "Welcome to [ Wait Order Service ] !";
}
@PostMapping(path = "/order")
public HttpEntity createNewOrder(@RequestBody WaitListOrderVO createOrder, @RequestHeader HttpHeaders headers) {
WaitListOrderController.LOGGER.info("[createWaitOrder][Create Wait Order][from {} to {} at {}]", createOrder.getFrom(), createOrder.getTo(), createOrder.getDate());
return ok(waitListOrderService.create(createOrder, headers));
}
@GetMapping(path = "/orders")
public HttpEntity getAllOrders(@RequestHeader HttpHeaders headers){
LOGGER.info("[getAllOrders][Get All Orders]");
return ok(waitListOrderService.getAllOrders(headers));
}
@GetMapping(path = "/waitlistorders")
public HttpEntity getWaitListOrders(@RequestHeader HttpHeaders headers){
LOGGER.info("[getWaitListOrders][Get All Wait List Orders]");
return ok(waitListOrderService.getAllWaitListOrders(headers));
}
}