> $items 明细数组(引用修改:写入 image,移除 image_ids) */ public function resolve(array &$items): void { $fileIds = []; foreach ($items as $line) { foreach ((array) ($line['image_ids'] ?? []) as $fileId) { if ($fileId !== '' && $fileId !== null) { $fileIds[] = (int) $fileId; } } } $fileUrls = []; if ($fileIds !== []) { foreach (SysFileModel::query()->whereIn('id', array_unique($fileIds))->get() as $file) { $fileUrls[$file->id] = $file->preview_url; } } foreach ($items as &$product) { $product['image'] = ''; foreach ((array) ($product['image_ids'] ?? []) as $fileId) { if ($fileId !== '' && $fileId !== null && isset($fileUrls[(int) $fileId])) { $product['image'] = $fileUrls[(int) $fileId]; break; } } unset($product['image_ids']); } } }