--- id: photo-capture name: 照片采集与管理 area: rn-app status: done --- ## 概述 调用设备摄像头或相册为物品条目添加多张照片,照片压缩后存储到 App 专属目录,路径写入 SQLite photos 表。 ## 任务卡 ### 📋 摄像头调用与图片压缩 - status: done - complexity: M - files: apps/property-survey/src/features/photo/usePhotoCapture.ts - depends: local-data-layer - acceptance: 使用 expo-image-picker 提供「拍照」和「从相册选择」两种入口;拍摄/选择后自动压缩至最大宽度 1080px、JPEG quality 0.75;将压缩后的文件复制到 expo-file-system 的 App 专属目录;调用 insertPhoto 写入数据库;全流程有权限检查,拒绝权限时给出提示 ### 📋 照片网格预览与删除 - status: done - complexity: M - files: apps/property-survey/src/features/photo/PhotoGrid.tsx, apps/property-survey/src/features/photo/PhotoPicker.tsx - depends: photo-capture - acceptance: 以 3 列网格展示已添加的照片缩略图;点击照片全屏预览(支持左右滑动切换);长按照片显示「删除」确认弹窗,删除时同步调用 deletePhoto(含文件系统删除);末尾显示「+」按钮触发 PhotoPicker 添加更多