1
0
Code Issues Pull Requests Packages Projects Releases Wiki Activity GitHub Gitee

我的订单点击跳转订单详情页;订单详情页展示订单总金额;立即下单可以选择商品数量

This commit is contained in:
2023-03-21 16:36:13 +08:00
parent 87eaf03b9d
commit 0e83116550
12 changed files with 290 additions and 141 deletions

View File

@@ -14,6 +14,7 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
@@ -40,13 +41,16 @@ public class OrderService {
SnowflakeManager snowflakeManager = new SnowflakeManager(1L, 1L);
long orderId = snowflakeManager.nextValue();
// 订单总金额
BigDecimal totalPrice = new BigDecimal(0);
// 创建订单
Order order = new Order();
order.setId(orderId);
order.setUserId(userId);
order.setOrderDate(LocalDateTime.now());
order.setOrderStatus(OrderStatus.PENDING.getValue());
orderDao.insertOrder(order);
// 创建订单详情
for (OrderDetail orderItem : orderItemList) {
@@ -66,7 +70,16 @@ public class OrderService {
orderItem.setId(null);
orderItem.setOrderId(orderId);
orderItem.setUnitPrice(retailPrice);
// 计入订单总价
BigDecimal goodPrice = BigDecimal.valueOf(retailPrice * orderItem.getGoodCount());
totalPrice = totalPrice.add(goodPrice);
}
// 订单总价
order.setOrderPrice(totalPrice);
orderDao.insertOrder(order);
orderDao.batchInsertOrderDetail(orderItemList);
return orderId;
}

View File

@@ -46,8 +46,8 @@
<!-- 创建订单 -->
<insert id="insertOrder" parameterType="com.cxyxiaomo.epp.common.pojo.Order" useGeneratedKeys="true"
keyProperty="orderId">
INSERT INTO `order` (id, user_id, order_date, order_status)
VALUES (#{id}, #{userId}, #{orderDate,javaType=java.time.LocalDateTime,jdbcType=TIMESTAMP}, #{orderStatus})
INSERT INTO `order` (id, user_id, order_date, order_status, order_price)
VALUES (#{id}, #{userId}, #{orderDate,javaType=java.time.LocalDateTime,jdbcType=TIMESTAMP}, #{orderStatus}, #{orderPrice})
</insert>
<!-- 批量插入订单详情 -->