diff --git a/pages/order/cg-order-detail.vue b/pages/order/cg-order-detail.vue index f9a4f4c..9251c9c 100644 --- a/pages/order/cg-order-detail.vue +++ b/pages/order/cg-order-detail.vue @@ -821,8 +821,17 @@ }, function(res) { console.log("🚀 ~ res:", res) - self.detail.trade[groupIdx][idx].light_price = res.data.lists.set_light_price - self.selectedTimes.push({ group: groupIdx, idx, roomId }); + const lightPrice = res.data.lists.set_light_price + self.detail.trade[groupIdx][idx].light_price = lightPrice + self.selectedTimes.push({ + group: groupIdx, + idx, + roomId, + light_price: lightPrice, + start_time: self.detail.trade[groupIdx][idx].start_time, + end_time: self.detail.trade[groupIdx][idx].end_time, + day_time: self.detail.trade[groupIdx][idx].day_time + }); } ) self.loadding = false @@ -844,13 +853,21 @@ self.lightPrice = 0 self.selectedTimes.forEach(sel => { if (!roomMap[sel.roomId]) roomMap[sel.roomId] = []; - // 获取时间段 - const item = trade[sel.group] && trade[sel.group][sel.idx]; - console.log("🚀 ~ item:", item) - if (item) { - roomMap[sel.roomId].push(`${item.start_time}-${item.end_time}`); - self.lightDateTime = item.day_time - self.lightPrice += parseFloat(item.light_price) + // 优先从 selectedTimes 中获取 light_price(修复后) + if (sel.light_price) { + roomMap[sel.roomId].push(`${sel.start_time}-${sel.end_time}`); + if (!self.lightDateTime && sel.day_time) { + self.lightDateTime = sel.day_time + } + self.lightPrice += parseFloat(sel.light_price) + } else { + // 兼容旧数据:如果 selectedTimes 中没有,从 detail.trade 中获取 + const item = trade[sel.group] && trade[sel.group][sel.idx]; + if (item) { + roomMap[sel.roomId].push(`${item.start_time}-${item.end_time}`); + self.lightDateTime = item.day_time + self.lightPrice += parseFloat(item.light_price || 0) + } } });