diff --git a/src/main/java/com/example/building/dto/CreateOrderRequest.java b/src/main/java/com/example/building/dto/CreateOrderRequest.java index 4db6a29..34b450b 100644 --- a/src/main/java/com/example/building/dto/CreateOrderRequest.java +++ b/src/main/java/com/example/building/dto/CreateOrderRequest.java @@ -70,5 +70,20 @@ public class CreateOrderRequest { * 销售单价(用户可自定义) */ private BigDecimal price; + + /** + * 长度(cm) + */ + private BigDecimal length; + + /** + * 宽度(cm) + */ + private BigDecimal width; + + /** + * 面积(m²) + */ + private BigDecimal area; } } diff --git a/src/main/java/com/example/building/entity/OrderItem.java b/src/main/java/com/example/building/entity/OrderItem.java index fd8214a..3cafa71 100644 --- a/src/main/java/com/example/building/entity/OrderItem.java +++ b/src/main/java/com/example/building/entity/OrderItem.java @@ -86,6 +86,21 @@ public class OrderItem { */ private BigDecimal subtotal; + /** + * 长度(cm) + */ + private BigDecimal length; + + /** + * 宽度(cm) + */ + private BigDecimal width; + + /** + * 面积(m²) + */ + private BigDecimal area; + @TableField(fill = FieldFill.INSERT) private LocalDateTime createdAt; } diff --git a/src/main/java/com/example/building/service/impl/OrderServiceImpl.java b/src/main/java/com/example/building/service/impl/OrderServiceImpl.java index 3508fd1..9ef0bce 100644 --- a/src/main/java/com/example/building/service/impl/OrderServiceImpl.java +++ b/src/main/java/com/example/building/service/impl/OrderServiceImpl.java @@ -113,6 +113,9 @@ public class OrderServiceImpl implements OrderService { item.setDescription(product.getDescription()); item.setPrice(price); item.setQuantity(itemDTO.getQuantity()); + item.setLength(itemDTO.getLength()); + item.setWidth(itemDTO.getWidth()); + item.setArea(itemDTO.getArea()); item.setSubtotal(subtotal); orderItems.add(item); @@ -364,6 +367,9 @@ public class OrderServiceImpl implements OrderService { item.setDescription(product.getDescription()); item.setPrice(price); item.setQuantity(itemDTO.getQuantity()); + item.setLength(itemDTO.getLength()); + item.setWidth(itemDTO.getWidth()); + item.setArea(itemDTO.getArea()); item.setSubtotal(subtotal); orderItems.add(item); orderItemMapper.insert(item); diff --git a/src/main/resources/db/migration/V13__add_order_item_size_fields.sql b/src/main/resources/db/migration/V13__add_order_item_size_fields.sql new file mode 100644 index 0000000..1f7b97b --- /dev/null +++ b/src/main/resources/db/migration/V13__add_order_item_size_fields.sql @@ -0,0 +1,4 @@ +-- 添加商品长度、宽度、面积字段 +ALTER TABLE order_items ADD COLUMN length DECIMAL(10,2) COMMENT '长度(cm)'; +ALTER TABLE order_items ADD COLUMN width DECIMAL(10,2) COMMENT '宽度(cm)'; +ALTER TABLE order_items ADD COLUMN area DECIMAL(10,4) COMMENT '面积(m²)'; \ No newline at end of file