import Foundation import Combine /// Mock network service simulating cloud sync progress and AI report generation. final class MockNetworkService: NetworkServiceProtocol { // MARK: - NetworkServiceProtocol func syncSession(_ sessionId: UUID) -> AnyPublisher { // Simulate upload progress from 0.0 to 1.0 over ~3 seconds let totalSteps = 30 let interval: TimeInterval = 0.1 return Timer.publish(every: interval, on: .main, in: .common) .autoconnect() .scan(0) { count, _ in count + 1 } .map { step in min(Double(step) / Double(totalSteps), 1.0) } .prefix(while: { $0 <= 1.0 }) .append(1.0) .removeDuplicates() .setFailureType(to: Error.self) .eraseToAnyPublisher() } func fetchAIReport(for cloudSessionId: String) async throws -> String { // Simulate network latency try await Task.sleep(for: .seconds(1)) return """ # 田野调查 AI 分析报告 **会话编号**: \(cloudSessionId) **生成时间**: \(DateFormatter.localizedString(from: Date(), dateStyle: .medium, timeStyle: .short)) ## 摘要 本次田野调查共记录音频片段 3 段,拍摄现场照片 5 张,添加文字笔记 8 条。调查地点位于城市边缘的工业遗址区域,\ 主要关注废弃厂房的建筑结构保存状况及周边生态恢复情况。 ## 关键发现 1. **建筑结构**:主厂房钢结构框架保存完好,屋顶覆盖层已大面积脱落。东侧附属建筑存在明显沉降迹象。 2. **生态恢复**:厂区内部已有大量自生植被覆盖,观察到至少 3 种本地鸟类在废弃管道中筑巢。 3. **环境风险**:西北角地面检测到轻微土壤污染痕迹,建议后续进行专业采样分析。 ## 音频转写片段 > "……这里的钢梁连接处可以看到明显的铆接工艺,这是典型的上世纪八十年代的建造方式。注意看这个节点,\ 焊接补强的痕迹说明后期做过结构加固……" ## 建议后续行动 - 对西北角区域进行土壤采样送检 - 联系当地档案馆获取原始建筑图纸 - 安排无人机航拍以获取完整厂区俯瞰影像 --- *此报告由星痕现场记录 AI 引擎自动生成,仅供参考。* """ } }