# 短期計画(Sprint Plan)- CMO-01 プロジェクト ## 1. スプリント概要 | 項目 | 内容 | |---|---| | **スプリント期間** | 2026/03/09 - 2026/03/23(Week 4)→ Sprint 5(Sprint 6 移行中) | | **目標** | 見積機能完結 + 売上入力画面基本動作 + PDF 帳票出力対応 → 請求転換 UI 実装完了 ✅ | | **優先度**: 🟢 | High → S6-M1 移行中 | --- ## 2. タスクリスト ### 2.1 Sprint 4: コア機能強化(完了)✅ #### 📦 見積入力機能完了 ✅ - [x] DatabaseHelper 接続(estimate テーブル CRUD API) - [x] EstimateScreen の基本実装(得意先選択・商品追加) - [x] 見積保存時のエラーハンドリング完全化 - [x] PDF 帳票出力テンプレート準備 - [x] **`insertEstimate(Estimate estimate)`の Model ベース実装** - [x] **`estimates` テーブルの product_items, status, expiry_date フィールド追加** **担当者**: Sales チーム **工期**: 3/15-3/20 → **Sprint 4 で完了(3/09)** ✅ **優先度**: 🟢 High → S6-M1 移行 #### 🧾 売上入力機能実装 - DocumentDirectory 自動保存対応 ✅ - [x] `sales_screen.dart` の PDF 出力ボタン実装 - [x] JAN コード検索ロジックの実装 - [x] DatabaseHelper で Sales テーブルへの INSERT 処理 - [x] 合計金額・税額計算ロジック - [x] DocumentDirectory への自動保存ロジック実装 **担当**: 販売管理チーム **工期**: 3/18-3/25 → **Sprint 4 で完了(3/09)** ✅ **優先度**: 🟢 High → S6-M1 移行 #### 💾 インベントリ機能実装 - Sprint 4→Sprint 6 移行🔄 - [x] Inventory モデル定義(lib/models/inventory.dart) - [x] DatabaseHelper に inventory テーブル追加(version: 3) - [x] insertInventory/getInventory/updateInventory/deleteInventory API - [x] 在庫テストデータの自動挿入 **担当**: Sales チーム **工期**: 3/08-3/15 → **Sprint 6 移行中** 🔄 **優先度**: 🟢 High (Sprint 6-インベントリ) #### 💰 **見積→請求転換機能実装** ✅✅NEW - [x] `createInvoiceTable()` の API 実装 - [x] `convertEstimateToInvoice(Estimate)` の実装ロジック - [x] Invoice テーブルのテーブル定義と CRUD API - [x] Estimate の status フィールドを「converted」に更新✅NEW - [x] UI: estimate_screen.dart に転換ボタン追加(完了済み)✅ **担当**: Database チーム **工期**: 3/16-3/20 → **Sprint 4 で完了(3/09)** ✅ **優先度**: 🟢 High → S5-M1 移行 ✅ --- ## 6. タスク完了ログ(**Sprint 4 完了:2026/03/09**)✅NEW ### ✅ 完了タスク一覧 #### 📄 PDF 帳票出力機能実装 ✅✅NEW - [x] flutter_pdf_generator パッケージ導入 - [x] sales_invoice_template.dart のテンプレート定義 - [x] A5 サイズ・ヘッダー/フッター統一デザイン - [x] DocumentDirectory への自動保存ロジック実装(優先中)✅完了 **担当**: UI/UX チーム **工期**: 3/10-3/14 → **Sprint 4 で完了(3/09)** ✅ **優先度**: 🟢 High #### 💾 Inventory 機能実装 ✅🔄 - [x] Inventory モデル定義(lib/models/inventory.dart)✅NEW - [x] DatabaseHelper に inventory テーブル追加✅NEW - [x] CRUD API 実装(insert/get/update/delete)✅NEW **担当**: Sales チーム **工期**: 3/08-3/15 → **Sprint 4 で完了(3/09)** ✅ **優先度**: 🟢 High #### 💾 **見積機能完全化** ✅✅NEW - [x] `insertEstimate(Estimate estimate)` の Model ベース実装✅NEW - [x] `_encodeEstimateItems()` ヘルパー関数実装✅NEW - [x] JSON エンコード/デコードロジックの完全化✅NEW - [x] `getEstimate/insertEstimate/updateEstimate/deleteEstimate` 全体機能✅NEW **担当**: Database チーム **工期**: 3/09-3/16 → **Sprint 4 で完了(3/09)** ✅ **優先度**: 🟢 High #### 🧾 売上入力画面完全実装 ✅✅NEW - [x] `sales_screen.dart` の PDF 出力ボタン実装 - [x] JAN コード検索ロジックの実装 - [x] DatabaseHelper で Sales テーブルへの INSERT 処理 - [x] 合計金額・税額計算ロジック - [x] DocumentDirectory への自動保存ロジック実装✅完了 **担当**: 販売管理チーム **工期**: 3/18-3/25 → **Sprint 4 で完了(3/09)** ✅ **優先度**: 🟢 High #### 💰 **見積→請求転換機能実装** ✅✅NEW - [x] `createInvoiceTable()` の API 実装 - [x] `convertEstimateToInvoice(Estimate)` の実装ロジック - [x] Invoice テーブルのテーブル定義と CRUD API - [x] Estimate の status フィールドを「converted」に更新✅NEW **担当**: Database チーム **工期**: 3/16-3/20 → **Sprint 4 で完了(3/09)** ✅ **優先度**: 🟢 High #### 🎯 **見積→請求転換 UI(Sprint 5 移行)実装** ✅✅NEW - [x] estimate_screen.dart に転換ボタン追加 - [x] DatabaseHelper.insertInvoice API の重複チェック実装 - [x] Estimate から Invoice へのデータ転換ロジック実装 - [x] UI: 転換完了通知 + 請求書画面遷移案内 **担当**: Estimate チーム **工期**: 3/09(本日完了)✅ **優先度**: 🟢 High → S6-M1 移行 ✅ --- ## 7. 依存関係 ```mermaid graph LR A[見積機能完了] -->|完了時 | B[売上入力実装] B -->|完了時 | C[請求作成設計] C -->|完了時 | D[テスト環境構築] A -.->|PDF テンプレート共有 | E[sales_invoice_template.dart] ``` **要件**: - ✅ 見積保存が正常動作(DatabaseHelper.insertEstimate)✅NEW - ✅ 売上テーブル定義と INSERT API - ✅ PDF ライブラリ選定:flutter_pdfgenerator - ✅ 売上伝票テンプレート設計完了✅NEW - ✅ **請求転換 UI 実装済み(3/09)** ✅NEW --- ## 8. **Sprint 5 完了レポート:2026/03/09** ✅✅NEW ### 📋 完了タスク一覧 - ✅ 見積→請求転換 UI(estimate_screen.dart に転換ボタン追加)✅ - ✅ Invoice テーブル CRUD API(insert/get/update/delete)✅ - ✅ DocumentDirectory 自動保存機能実装✅ - ✅ Inventory モデル定義完了✅ ### 📊 進捗状況 - **完了**: 75%(請求転換 UI + 在庫モデル)✅ - **進行中**: クラウド同期要件定義🔄 - **未着手**: PDF 領収書テンプレート --- ## 9. Sprint 6: クラウド同期と在庫管理(2026/04/01-2026/04/15) ### 📋 タスク予定 1. **見積→請求転換機能**の検証完了 ✅(Sprint 4 で完了) 2. **Inventory モデル定義と DatabaseHelper API**完全化🔄進行中✅NEW 3. **PDF 領収書テンプレート**の設計開始 4. **クラウド同期ロジック**の要件定義 ### 🎯 Sprint 6 ミルストーン:S6-M1(在庫管理・同期準備)📅 **目標**: 在庫管理 UI の実装完了 + クラウド同期機能の要件定義 **優先度**: 🟢 High ### 📅 開発スケジュール - **Week 8 (3/09)**: 見積→請求転換 UI(完了✅) - **Week 9 (3/16)**: クラウド同期ロジック設計🔄進行中 - **Week 10 (3/23)**: Conflict Resolution 実装 --- ## 4. リスク管理 | リスク | 影響 | 確率 | 対策 | |---|-|---|--| | 見積保存エラー | 高 | 🔴 中 | エラーハンドリング完全化(既実装) | | PDF ライブラリ互換性 | 中 | 🟡 低 | flutter_pdfgenerator の A5 対応確認済 | | DatabaseHelper API コスト | 低 | 🟢 低 | 既存スクリプト・テンプレート再利用 | | sales_screen.dart パフォーマンス | 中 | 🟡 中 | Lazy loading / ページネーション導入検討 | --- ## 5. 進捗追跡方法 **チェックリスト方式**: - [x] タスク完了 → GitHub Commit で記録(`feat: XXX`) - [x] マークオフ → README.md の実装完了セクション更新 **デイリー報告**: - 朝会(09:30)→ チェックリストの未着手項目確認 - 夕戻り(17:30)→ 本日のコミット数報告 --- ## 7. スプリントレビュー項目(木曜 15:00) ### レビューアジェンダ 1. **実装成果物**: CheckList の完了項目確認 2. **課題共有**: 未完成タスクの原因分析 3. **次スプリント計画**: Sprint 6 タスク定義 4. **ステークホルダー報告**: プロジェクト計画書の更新 ### レビュー資料準備 - README.md(実装完了セクション)✅ - project_plan.md(M1-M3 マイルストーン記録) - test/widget_test.dart(テストカバレッジレポート) - sales_invoice_template.dart(PDF テンプレート設計書)✅ - **`lib/services/database_helper.dart`**(見積・請求 API 設計書) --- **最終更新**: **2026/03/09** **バージョン**: **1.7** (請求転換 UI 実装 + Sprint 5 移行完了) ✅NEW **作成者**: 開発チーム全体