From ce62d38ffd06549b872cc8fcfa06470435da20d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=90=E9=A3=9E=E6=B4=8B?= <15778543+xufeiyang6017@user.noreply.gitee.com> Date: Tue, 6 Jan 2026 16:18:11 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E4=B8=8B=E6=9E=B6?= =?UTF-8?q?=E6=9D=83=E9=99=90=E9=AA=8C=E8=AF=81sellerId=E4=B8=BA=E7=A9=BA?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加 goodsDetail.seller?.userId 字段检查 - 解决creatorId为空导致无法下架的问题 --- pages/goods-update/goods-update.js | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/pages/goods-update/goods-update.js b/pages/goods-update/goods-update.js index bd2f94d..27b1cbd 100644 --- a/pages/goods-update/goods-update.js +++ b/pages/goods-update/goods-update.js @@ -404,6 +404,18 @@ Page({ if (res && res.code === 200 && res.data) { const product = res.data; + console.log('=== API返回的product原始数据 ==='); + console.log('product对象的所有key:', Object.keys(product)); + console.log('product中是否包含seller相关字段:'); + console.log(' - sellerId:', product.sellerId); + console.log(' - seller_id:', product.seller_id); + console.log(' - seller:', product.seller); + console.log(' - userId:', product.userId); + console.log(' - user_id:', product.user_id); + console.log(' - creator:', product.creator); + console.log(' - 创建人ID:', product.creatorId); + console.log(' - 创建人ID:', product.creator_id); + // 只过滤hidden状态的商品 if (product.status === 'hidden') { wx.showToast({ @@ -770,9 +782,9 @@ Page({ // 隐藏编辑弹窗 this.hideEditModal(); - - // 重新加载商品详情 - this.loadGoodsDetail(productId); + + // 重新加载商品详情,传入当前数据保持创建人和创建时间不变 + this.loadGoodsDetail(productId, this.data.goodsDetail); } else { wx.showToast({ title: '更新失败', @@ -889,19 +901,23 @@ Page({ console.log('准备下架商品 - 开始权限验证'); const goodsDetail = this.data.goodsDetail; - const productSellerId = goodsDetail.sellerId || goodsDetail.product?.sellerId || ''; + console.log('完整goodsDetail结构:', JSON.stringify(goodsDetail, null, 2)); + + const productSellerId = goodsDetail.sellerId || goodsDetail.seller_id || goodsDetail.userId || goodsDetail.user_id || + goodsDetail.creatorId || goodsDetail.creator_id || goodsDetail.product?.sellerId || + goodsDetail.product?.seller_id || goodsDetail.product?.userId || goodsDetail.seller?.userId || ''; const contactPhone = goodsDetail.contact_phone || goodsDetail.product_contact || ''; const userPhone = getLocalPhoneNumber(); const currentUserId = wx.getStorageSync('userId'); console.log('当前用户手机号:', userPhone); - console.log('当前用户userId:', currentUserId); - console.log('商品sellerId(创建人):', productSellerId); + console.log('当前用户userId:', currentUserId, '(类型:', typeof currentUserId, ')'); + console.log('商品sellerId(创建人):', productSellerId, '(类型:', typeof productSellerId, ')'); console.log('商品联系人电话:', contactPhone); Promise.all([ checkIsAdmin(userPhone), - Promise.resolve({ isCreator: currentUserId === productSellerId }) + Promise.resolve({ isCreator: String(currentUserId) === String(productSellerId) }) ]) .then(([adminResult, creatorResult]) => { const isAdmin = adminResult;