更新内容のサマリー

1. 04_画面設計書.md — 画面5 拡張
圃場詳細画面に追加した仕様(E-2):

共済/中山間セクションに [+追加]ボタン → モーダルで全マスタから検索・複数選択して紐づけ
各行に [×]ボタン → 確認ダイアログ付きで紐づけ解除
面積整合性チェック: 圃場面積 vs 紐づけ区画の合計面積を比較し、一致 / ⚠️差異ありを表示
PC/スマホ両方のレイアウト定義
必要なAPI 6本の定義(紐づけ追加・解除の CRUD)
圃場一覧画面にも追加:

「共済」「中山間」の紐づけ件数列
未紐づけ・面積不一致の ⚠️ 警告表示
2. 06_差異レポート.md — E-2 追加
新タスク E-2: 対応付け可視化・紐づけ管理機能 をサマリーテーブルに追加

3. CLAUDE.md — 次タスク更新
完了済みタスク(A-8, D-1〜D-4, E-1)を既知の課題から除外
E-2を最優先タスクに設定
This commit is contained in:
Akira
2026-02-18 13:44:40 +09:00
parent bcb7413bad
commit 103331f761
4 changed files with 165 additions and 44 deletions

View File

@@ -319,15 +319,77 @@
- [x] [新規作成]ボタン → 画面6へ遷移
- [x] [✏️ 編集]ボタン → 画面5圃場詳細へ遷移
- [x] [🗑 削除]ボタン → 確認ダイアログ後に削除
- [ ] **紐づけ状況列E-2****未実装**
- [ ] 「共済」列: 紐づけ件数表示(例: 「2件」。0件の場合は「⚠ 未紐づけ」と警告表示
- [ ] 「中山間」列: 紐づけ件数表示。0件の場合は「⚠ 未紐づけ」と警告表示
- [ ] 面積不一致がある場合は件数の横に ⚠️ を表示
---
## 画面5: 圃場詳細・編集
### 目的
個別の圃場情報を確認・編集。田んぼにいるときにスマホで確認する用途も想定。
個別の圃場情報を確認・編集。共済/中山間マスタとの紐づけ管理。田んぼにいるときにスマホで確認する用途も想定。
### レイアウトPC/スマホ共通
### レイアウトPC
```
┌────────────────────────────────────────────────────────────┐
│ ← 一覧に戻る │
├────────────────────────────────────────────────────────────┤
│ │
│ 圃場名 住所 │
│ [口神 北中___________] [口神笹ヶ谷374-1)___] │
│ │
│ 面積(反) 面積m2 所有者 グループ名 │
│ [0.4___] [400___] [吉田___] [口神___] │
│ │
│ [保存] │
│ │
├────────────────────────────────────────────────────────────┤
│ │
│ 📋 共済情報 (2件) 合計面積: 800m2 [+追加] │
│ ⚠️ 面積差異: 圃場400m2 ≠ 共済合計800m2 │
│ ─────────────────────────────────────────────────────── │
│ 耕地-分筆 漢字地名 住所 面積(m2) 操作│
│ ─────────────────────────────────────────────────────── │
│ 2-1 四万十町 笹ヶ谷 374-1 笹ヶ谷... 400 [×]│
│ 2-2 四万十町 笹ヶ谷 374-2 笹ヶ谷... 400 [×]│
│ │
├────────────────────────────────────────────────────────────┤
│ │
│ 📋 中山間情報 (1件) 合計面積: 400m2 [+追加] │
│ ✅ 面積一致 │
│ ─────────────────────────────────────────────────────── │
│ ID 所在地 面積(m2) 支払金額 操作 │
│ ─────────────────────────────────────────────────────── │
│ 50 口神ノ川 壱町切 1694 400 ¥8,000 [×] │
│ │
└────────────────────────────────────────────────────────────┘
```
**[+追加]ボタン押下時 — 紐づけ追加モーダル:**
```
┌────────────────────────────────────────────┐
│ 共済区画を追加 [×] │
├────────────────────────────────────────────┤
│ │
│ 🔍 [検索: 地番・漢字地名で絞り込み____] │
│ │
│ ─────────────────────────────────────── │
│ □ 3-1 四万十町 笹ヶ谷 375 300m2 │
│ □ 4-1 四万十町 笹ヶ谷 376 250m2 │
│ □ 5-1 四万十町 口神ノ川 198 500m2 │
│ ─────────────────────────────────────── │
│ ※ 既に他の圃場に紐づいている区画は │
│ (🔗 圃場名) で表示 │
│ │
│ [選択した区画を追加] │
│ │
└────────────────────────────────────────────┘
```
### レイアウト(スマホ)
```
┌────────────────────────────────────┐
@@ -336,33 +398,35 @@
│ │
│ 圃場名 │
│ [口神 北中________________] │
│ │
│ 住所 │
│ [口神笹ヶ谷374-1)__] │
面積(反)
[0.4___]
│ 面積m2
│ [400___] │
│ │
│ 所有者 │
│ [吉田___] │
│ │
│ グループ名 │
│ [口神___] │
│ │
│ 📋 共済情報Phase 1 予定) │
│ 紐づき共済区画: 2件 │
│ • 耕地2-1: 四万十町 笹ヶ谷 374-1 │
│ • 耕地2-2: 四万十町 笹ヶ谷 374-2 │
│ │
│ 📋 中山間情報Phase 1 予定) │
│ 紐づき中山間区画: 1件 │
│ • ID50: 口神ノ川 壱町切 1694 │
面積(反) 面積m2
[0.4___] [400___]
所有者 グループ名
[吉田___] [口神___]
│ │
│ [保存] │
│ │
├────────────────────────────────────┤
│ 📋 共済情報 (2件) [+追加] │
│ ⚠️ 面積差異: 400m2≠800m2 │
│ ┌──────────────────────────────┐│
│ │ 2-1 四万十町笹ヶ谷374-1 ││
│ │ 400m2 [×] ││
│ └──────────────────────────────┘│
│ ┌──────────────────────────────┐│
│ │ 2-2 四万十町笹ヶ谷374-2 ││
│ │ 400m2 [×] ││
│ └──────────────────────────────┘│
│ │
├────────────────────────────────────┤
│ 📋 中山間情報 (1件) [+追加] │
│ ✅ 面積一致 │
│ ┌──────────────────────────────┐│
│ │ ID50 口神川壱町切1694 ││
│ │ 400m2 ¥8,000 [×] ││
│ └──────────────────────────────┘│
│ │
└────────────────────────────────────┘
```
@@ -372,11 +436,39 @@
- [x] [保存]ボタン → PATCH API で更新
- [x] [← 一覧に戻る] → `/fields` へ遷移
- [x] エラーメッセージ表示
- [ ] **共済/中山間情報の表示****未実装A-8: 最優先で実装予定)**
- 紐づいている共済区画の一覧(耕地番号-分筆、漢字地名
- 紐づいている中山間区画の一覧ID、所在地
- [x] 共済情報の読み取り専用テーブル表示A-8 完了)
- [x] 中山間情報の読み取り専用テーブル表示A-8 完了
- [ ] **紐づけ管理機能E-2: 対応付け可視化・編集)****未実装**
- [ ] 共済/中山間セクションに [+追加] ボタン
- [ ] 追加モーダル: 未紐づけの区画一覧から選択して追加
- [ ] 検索フィルタ地番、漢字地名、IDで絞り込み
- [ ] 既に他の圃場に紐づいている区画は紐づけ先を表示M:N のため追加は可能)
- [ ] 各行に [×] ボタンで紐づけ解除(区画自体は削除しない)
- [ ] 確認ダイアログ: 「この紐づけを解除しますか?」
- [ ] **面積整合性チェックE-2****未実装**
- [ ] 圃場面積 vs 紐づけ区画合計面積を比較表示
- [ ] 一致: ✅ アイコン表示
- [ ] 不一致: ⚠️ アイコン + 差異を表示(例: 「圃場400m2 ≠ 共済合計800m2」
- [ ] ※ M:N のため必ずしも一致しなくてよい場合もある。あくまで参考情報
- [ ] 将来的に栽培履歴も表示Phase 2
### 必要なAPIE-2 用)
| メソッド | エンドポイント | 説明 |
|---------|---------------|------|
| GET | `/api/kyosai-fields/` | 共済マスタ全件取得(紐づけ追加モーダル用) |
| GET | `/api/chusankan-fields/` | 中山間マスタ全件取得(紐づけ追加モーダル用) |
| POST | `/api/fields/{id}/kyosai-links/` | 共済紐づけ追加 `{ kyosai_field_ids: [1,2,3] }` |
| DELETE | `/api/fields/{id}/kyosai-links/{kyosai_id}/` | 共済紐づけ解除 |
| POST | `/api/fields/{id}/chusankan-links/` | 中山間紐づけ追加 `{ chusankan_field_ids: [1,2,3] }` |
| DELETE | `/api/fields/{id}/chusankan-links/{chusankan_id}/` | 中山間紐づけ解除 |
### デザインノート
- [+追加] ボタンはセクション見出しの右端に配置
- [×] ボタンは各行の右端、テキストリンクスタイル(赤系)
- 面積チェックは情報表示のみ(警告であり、保存をブロックしない)
- モーダルの区画一覧はチェックボックス選択式(複数同時追加可能)
---
## 画面6: 圃場新規作成