三层Spring应用开发:领域驱动设计与用户交互实现
1. 领域模型基础
1.1 订单实体
订单(Order)代表客户的一次下单行为,客户一次只能创建一个新订单。订单包含了订单项目(OrderItem),这些项目包含了产品类型和购买数量的信息。以下是订单类的部分定义:
private BigDecimal amount;
private Set<OrderItem> orderItems;
private Date dateOrder;
private OrderRepository orderRepository;
private SupplyService supplyService;
private static final long serialVersionUID = 2525105011114628958L;
订单类实现了对订单项目的可视化展示、添加和移除操作,并维护订单的状态。
1.2 供应服务
供应服务(SupplyService)提供了商品可用性检查和预订服务。以下是供应服务接口的定义:
package it.freshfruits.domain.service;
import it.freshfruits.domain.vo.OrderItem;
import it.freshfruits.domain.vo.QuantityAndItemVO;
import java.util.List;
import java.util.Ma