react-phone-apps/.blueprint/modules/item-form.md
lanrtop cea2a5d208 feat: 表单保存优化、照片保存相册及布局性能改进
- 物品表单底部新增冻结保存按钮,保存成功显示 Toast 提示
- 照片全屏预览时支持一键保存到本地相册(expo-media-library ~16.0.0)
- 左侧标记点列表侧栏宽度从 120 调整为 160
- FoldableLayout 改用 LayoutAnimation 替代 JS 线程宽度动画,修复 Android 地图渲染空白及卡顿问题
- 修复 ImagePicker 废弃 API MediaTypeOptions.Images → MediaType.Images

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-10 00:12:42 +09:00

34 lines
1.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
id: item-form
name: 物品登记表单
area: rn-app
status: done
---
## 概述
点击地图标记点后弹出的物品编辑面板。折叠时以底部抽屉形式展现,展开时在右侧栏内联显示。支持单个标记点下的多条物品记录增删改。
## 任务卡
### 🔵 底部抽屉/右栏容器
- status: done
- complexity: M
- files: apps/property-survey/src/features/item/ItemFormSheet.tsx
- depends: survey-app-shell, floor-map
- acceptance: 折叠时从屏幕底部滑出BottomSheet展开时在 FoldableLayout 右栏内渲染;接受 markerId 和 onClose 两个 prop顶部显示标记点位置名称和所属楼层
### 🔵 物品字段表单
- status: done
- complexity: M
- files: apps/property-survey/src/features/item/ItemFields.tsx, apps/property-survey/src/features/item/useItemForm.ts
- depends: item-form
- acceptance: 包含物品名称必填文本、数量数字键盘、单价数字键盘可选、备注1多行文本、备注2多行文本五个字段保存时校验物品名称非空useItemForm 管理字段状态和 insertItem / updateItem 调用
### 🔵 标记点下物品列表
- status: done
- complexity: M
- files: apps/property-survey/src/features/item/ItemList.tsx
- depends: item-form
- acceptance: 在表单上方列出当前标记点的所有物品(物品名 + 数量 + 单价),点击条目进入编辑,左滑显示删除按钮,点击「+新增物品」清空表单进入新增模式