channel_uid); if (!$channel) { Log::error('channel left', ['data' => $this->channel_uid, 'uid' => $this->uid]); } if ($request->input('mode', 'read') === "read") { $mode = 'read'; } else { $mode = 'edit'; } $data = [ "id" => $this->uid, "content" => $this->content, "content_type" => $this->content_type, "html" => "", "book" => $this->book_id, "paragraph" => $this->paragraph, "word_start" => $this->word_start, "word_end" => $this->word_end, "editor" => UserApi::getByUuid($this->editor_uid), 'fork_at' => $this->fork_at, "updated_at" => $this->updated_at, ]; if ($channel) { $data['channel'] = $channel; $data['studio'] = StudioApi::getById($channel["studio_id"]); } if ($request->has('channels')) { $channels = explode(',', $request->input('channels')); } else { $channels = [$this->channel_uid]; } //TODO 找出channel id = '' 的原因 $mChannels = array(); foreach ($channels as $key => $value) { if (Str::isUuid($value)) { $mChannels[] = $value; } } if ($request->input('html', true)) { $data['html'] = MdRender::render( $this->content, $mChannels, null, $mode, $channel['type'], $this->content_type, $request->input('format', 'react') ); } if ($request->input('mode') === "edit" || $request->input('mode') === "wbw") { $data['suggestionCount'] = SuggestionApi::getCountBySent( $this->book_id, $this->paragraph, $this->word_start, $this->word_end, $this->channel_uid ); } if (isset($this->acceptor_uid) && !empty($this->acceptor_uid)) { $data["acceptor"] = UserApi::getByUuid($this->acceptor_uid); $data["pr_edit_at"] = $this->pr_edit_at; } return $data; } }