|
|
@@ -38,13 +38,17 @@ export default function CartPage() {
|
|
|
queries: cart.items.map(item => ({
|
|
|
queryKey: ['cart-goods', item.id],
|
|
|
queryFn: async () => {
|
|
|
+ console.debug('商品查询开始:', item.id, item.name)
|
|
|
const response = await goodsClient[':id'].$get({
|
|
|
param: { id: item.id }
|
|
|
})
|
|
|
if (response.status !== 200) {
|
|
|
+ console.debug('商品查询失败:', item.id, response.status)
|
|
|
throw new Error('获取商品详情失败')
|
|
|
}
|
|
|
- return response.json()
|
|
|
+ const data = await response.json()
|
|
|
+ console.debug('商品查询成功:', item.id, data.name, '库存:', data.stock)
|
|
|
+ return data
|
|
|
},
|
|
|
enabled: item.id > 0,
|
|
|
staleTime: 5 * 60 * 1000, // 5分钟缓存
|
|
|
@@ -53,11 +57,21 @@ export default function CartPage() {
|
|
|
|
|
|
// 创建商品ID到最新商品信息的映射
|
|
|
const goodsMap = new Map()
|
|
|
+ console.debug('开始构建goodsMap,购物车商品数量:', cart.items.length)
|
|
|
goodsQueries.forEach((query, index) => {
|
|
|
if (query.data && cart.items[index]) {
|
|
|
- goodsMap.set(cart.items[index].id, query.data)
|
|
|
+ const itemId = cart.items[index].id
|
|
|
+ goodsMap.set(itemId, query.data)
|
|
|
+ console.debug('添加到goodsMap:', itemId, query.data.name, '库存:', query.data.stock)
|
|
|
+ } else if (cart.items[index]) {
|
|
|
+ console.debug('查询无数据:', cart.items[index].id, 'query状态:', {
|
|
|
+ isLoading: query.isLoading,
|
|
|
+ isError: query.isError,
|
|
|
+ data: query.data
|
|
|
+ })
|
|
|
}
|
|
|
})
|
|
|
+ console.debug('goodsMap构建完成,大小:', goodsMap.size)
|
|
|
|
|
|
// 全选/取消全选
|
|
|
const toggleSelectAll = () => {
|
|
|
@@ -252,6 +266,10 @@ export default function CartPage() {
|
|
|
const goodsPrice = latestGoods?.price || item.price
|
|
|
const goodsImage = latestGoods?.imageFile?.fullUrl || item.image
|
|
|
const goodsStock = latestGoods?.stock || item.stock
|
|
|
+ console.debug('商品信息:', item.id, '名称:', goodsName, '库存:', goodsStock,
|
|
|
+ 'goodsMap中有:', goodsMap.has(item.id),
|
|
|
+ 'latestGoods:', latestGoods ? '有' : '无',
|
|
|
+ 'item.stock:', item.stock)
|
|
|
|
|
|
return (
|
|
|
<View key={item.id} className="goods-item">
|
|
|
@@ -304,6 +322,7 @@ export default function CartPage() {
|
|
|
</View>
|
|
|
}
|
|
|
/>
|
|
|
+ {console.debug('库存提示检查:', item.id, 'goodsStock:', goodsStock, '<=3?', goodsStock <= 3)}
|
|
|
{goodsStock <= 3 && (
|
|
|
<View className="stock-mask">
|
|
|
仅剩{goodsStock}件
|