更新了商品类别

This commit is contained in:
chen-xin-zhi 2024-12-19 14:24:01 +08:00
parent 562ac2af62
commit f951a9b652
4 changed files with 32 additions and 8 deletions

View File

@ -76,7 +76,7 @@ public class OrderController {
*/
@PostMapping("/add/cart")
@Transactional(rollbackFor = Exception.class)
@Operation(summary = "用户通过购物车创建订单", description = "参数:")
@Operation(summary = "用户通过购物车创建订单", description = "参数:购物车订单创建请求体权限所有人方法名addCartOrder")
public BaseResponse<Long> addCartOrder(@RequestBody CartOrderAddRequest cartOrderAddRequest, HttpServletRequest request) {
if (cartOrderAddRequest == null) {
throw new BusinessException(ErrorCode.PARAMS_ERROR);
@ -86,15 +86,14 @@ public class OrderController {
Long userId = loginUser.getId();
// 封装成订单创建请求体
OrderMainInfoAddRequest orderMainInfoAddRequest = new OrderMainInfoAddRequest();
BeanUtils.copyProperties(cartOrderAddRequest, orderMainInfoAddRequest);
// 校验购物车数据是否准确
List<CartOrderItemAddRequest> cartOrderItemAddRequestList = cartOrderAddRequest.getCartOrderItemAddRequestList();
boolean isAccurate = cartRecordService.validIsConsistent(cartOrderItemAddRequestList);
ThrowUtils.throwIf(!isAccurate, ErrorCode.SYSTEM_ERROR, "当前购物车中的某些商品已下架或者库存不足,无法生成订单");
// 获取购物车id列表
List<Long> cartIds = cartOrderItemAddRequestList.stream().map(CartOrderItemAddRequest::getCartRecordId).toList();
// 根据id列表获取购物车商品信息

View File

@ -31,7 +31,7 @@ public interface CartRecordService extends IService<CartRecord> {
/**
* 根据购物车订单明细列表校验购物车商品项的准确性
* 在提交订单页校验购物车商品项的准确性
*/
boolean validIsConsistent(List<CartOrderItemAddRequest> cartOrderItemAddRequestList);

View File

@ -175,11 +175,30 @@ public class CartRecordServiceImpl extends ServiceImpl<CartRecordMapper, CartRec
/**
* 根据购物车订单明细列表校验购物车商品项的准确性
* 在提交订单页校验购物车商品项的准确性
*/
@Override
public boolean validIsConsistent(List<CartOrderItemAddRequest> cartOrderItemAddRequestList) {
return false;
// 封装map集合购物车id, 购买数量
Map<Long, Integer> map = new HashMap<>();
for (CartOrderItemAddRequest cartOrderItemAddRequest : cartOrderItemAddRequestList) {
Long cartRecordId = cartOrderItemAddRequest.getCartRecordId();
Integer quantity = cartOrderItemAddRequest.getQuantity();
map.put(cartRecordId, quantity);
}
// 修改购物车商品项的购买数量
List<Long> cartRecordIds = cartOrderItemAddRequestList.stream().map(CartOrderItemAddRequest::getCartRecordId).toList();
QueryWrapper<CartRecord> queryWrapper = new QueryWrapper<>();
queryWrapper.in("id", cartRecordIds);
List<CartRecord> cartRecordList = this.list(queryWrapper);
for (CartRecord cartRecord : cartRecordList) {
Long id = cartRecord.getId();
Integer quantity = map.get(id);
cartRecord.setQuantity(quantity);
}
List<Long> cartIds = getInvalidCartIds(cartRecordList);
return cartIds.isEmpty();
}

View File

@ -1,6 +1,12 @@
package com.cultural.heritage.test;
import java.util.ArrayList;
import java.util.List;
public class A {
public Long num = 10L;
public static void main(String[] args) {
List<String> list = new ArrayList<>();
System.out.println(list.isEmpty());
}
}