hookehuyr

fix: 修复确认收货时使用错误订单ID的问题

在确认收货逻辑中,之前直接使用transactionId更新订单状态,现在改为先通过transactionId查找对应订单,再使用正确的订单ID进行更新
<!--
* @Date: 2022-09-19 14:11:06
* @LastEditors: hookehuyr hookehuyr@gmail.com
* @LastEditTime: 2025-08-09 18:33:54
* @LastEditTime: 2025-08-09 18:43:38
* @FilePath: /jgdl/src/pages/myOrders/index.vue
* @Description: 订单管理页面
-->
......@@ -1481,11 +1481,15 @@ const performDeleteOrder = async (orderId) => {
const handleConfirmReceiveSuccess = async ({ merchantId, transactionId, merchantTradeNo }) => {
try {
// 调用买家查询收货状态接口
const response = await receiptOrderStatusAPI({ order_id: transactionId })
const response = await receiptOrderStatusAPI({ transaction_id: transactionId })
if (response.code && response.data && response.data.status === 11) {
// 接口返回状态为11,确认收货成功
await updateOrderStatus(transactionId, 11, {}, 'buy')
// 通过transactionId找到对应的订单
const order = boughtOrders.value.find(o => o.transaction_id === transactionId)
if (order) {
await updateOrderStatus(order.id, 11, {}, 'buy')
}
Taro.showToast({
title: '确认收货成功',
......@@ -1498,7 +1502,11 @@ const handleConfirmReceiveSuccess = async ({ merchantId, transactionId, merchant
}
} catch (error) {
// 查询收货状态失败,即使接口调用失败,也更新本地状态
await updateOrderStatus(transactionId, 11, {}, 'buy')
// 通过transactionId找到对应的订单
const order = boughtOrders.value.find(o => o.transaction_id === transactionId)
if (order) {
await updateOrderStatus(order.id, 11, {}, 'buy')
}
}
}
......