餐厅点餐系统后端完整代码
时间: 2023-07-29 15:12:28 浏览: 57
很抱歉,由于餐厅点餐系统后端的实现方式和具体技术选型因人而异,完整代码也会因此而异。
但是,我可以为您提供一个简单的Java后端代码示例,以供参考:
```java
// 餐厅点餐系统后端代码示例
@RestController
public class OrderController {
@Autowired
private OrderService orderService;
// 添加订单
@PostMapping("/order")
public ResponseEntity<Order> addOrder(@RequestBody Order order) {
Order newOrder = orderService.addOrder(order);
return new ResponseEntity<>(newOrder, HttpStatus.CREATED);
}
// 查询订单
@GetMapping("/order/{id}")
public ResponseEntity<Order> getOrder(@PathVariable("id") Long id) {
Order order = orderService.getOrderById(id);
if (order != null) {
return new ResponseEntity<>(order, HttpStatus.OK);
} else {
return new ResponseEntity<>(HttpStatus.NOT_FOUND);
}
}
// 更新订单
@PutMapping("/order/{id}")
public ResponseEntity<Order> updateOrder(@PathVariable("id") Long id, @RequestBody Order order) {
Order updatedOrder = orderService.updateOrder(id, order);
if (updatedOrder != null) {
return new ResponseEntity<>(updatedOrder, HttpStatus.OK);
} else {
return new ResponseEntity<>(HttpStatus.NOT_FOUND);
}
}
// 删除订单
@DeleteMapping("/order/{id}")
public ResponseEntity<Void> deleteOrder(@PathVariable("id") Long id) {
orderService.deleteOrder(id);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
}
@Service
public class OrderService {
private List<Order> orders = new ArrayList<>();
private Long currentOrderId = 1L;
// 添加订单
public Order addOrder(Order order) {
order.setId(currentOrderId);
orders.add(order);
currentOrderId++;
return order;
}
// 查询订单
public Order getOrderById(Long id) {
for (Order order : orders) {
if (order.getId() == id) {
return order;
}
}
return null;
}
// 更新订单
public Order updateOrder(Long id, Order newOrder) {
for (Order order : orders) {
if (order.getId() == id) {
order.setCustomerName(newOrder.getCustomerName());
order.setTableNumber(newOrder.getTableNumber());
return order;
}
}
return null;
}
// 删除订单
public void deleteOrder(Long id) {
orders.removeIf(order -> order.getId() == id);
}
}
public class Order {
private Long id;
private String customerName;
private int tableNumber;
private List<MenuItem> items;
// getter和setter方法省略
}
public class MenuItem {
private String name;
private String description;
private double price;
// getter和setter方法省略
}
```
这是一个简单的餐厅点餐系统后端代码示例,包括订单的增删改查功能。这里使用了Spring Boot框架和RESTful API设计风格,使用了内存数据存储,没有使用数据库。实际开发中,可以根据具体需求和技术选型进行相应的修改和扩展。