From 632a95bd0e6fe7559305e694789ff89f1e1c81a4 Mon Sep 17 00:00:00 2001 From: joe Date: Wed, 4 Mar 2026 14:55:40 +0900 Subject: [PATCH] =?UTF-8?q?=E5=A3=B2=E4=B8=8A=E4=BC=9D=E7=A5=A8=E5=AE=9F?= =?UTF-8?q?=E8=A3=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 78 +- ...emini_Generated_Image_zemfu5zemfu5zemf.ico | Bin 0 -> 370070 bytes assets/icon/app_icon.png | Bin 0 -> 1357895 bytes ios/Runner/GeneratedPluginRegistrant.m | 7 + lib/config/app_config.dart | 15 +- lib/main.dart | 7 + lib/models/department_model.dart | 60 + lib/models/hash_chain_models.dart | 33 + lib/models/inventory_models.dart | 124 + lib/models/invoice_models.dart | 30 + lib/models/order_models.dart | 211 ++ lib/models/product_model.dart | 6 + lib/models/receivable_models.dart | 102 + lib/models/sales_entry_models.dart | 425 +++ lib/models/sales_summary.dart | 32 + lib/models/shipment_models.dart | 199 ++ lib/models/staff_model.dart | 78 + lib/models/supplier_model.dart | 90 + lib/models/tax_setting_model.dart | 48 + lib/modules/billing_docs_module.dart | 69 + lib/modules/feature_module.dart | 37 + lib/modules/module_registry.dart | 33 + lib/modules/sales_management_module.dart | 46 + lib/modules/sales_operations_module.dart | 59 + lib/screens/activity_log_screen.dart | 4 +- lib/screens/barcode_scanner_screen.dart | 5 +- lib/screens/business_profile_screen.dart | 1 + lib/screens/chat_screen.dart | 3 +- lib/screens/company_info_screen.dart | 1 + lib/screens/customer_picker_modal.dart | 171 +- lib/screens/dashboard_screen.dart | 74 +- lib/screens/department_master_screen.dart | 225 ++ lib/screens/email_settings_screen.dart | 1 + lib/screens/gps_history_screen.dart | 3 +- lib/screens/invoice_history_screen.dart | 23 +- lib/screens/invoice_input_screen.dart | 264 +- lib/screens/management_screen.dart | 14 +- lib/screens/master_hub_page.dart | 33 +- lib/screens/product_master_screen.dart | 8 +- lib/screens/product_picker_modal.dart | 4 +- lib/screens/sales_dashboard_screen.dart | 162 ++ lib/screens/sales_entries_screen.dart | 1252 +++++++++ lib/screens/sales_orders_screen.dart | 2362 +++++++++++++++++ lib/screens/sales_receipts_screen.dart | 762 ++++++ lib/screens/sales_report_screen.dart | 275 +- lib/screens/settings_screen.dart | 1098 +++++--- lib/screens/staff_master_screen.dart | 270 ++ lib/screens/supplier_master_screen.dart | 268 ++ lib/screens/tax_setting_screen.dart | 105 + lib/services/app_settings_repository.dart | 71 + lib/services/business_calendar_mapper.dart | 116 + lib/services/calendar_sync_diagnostics.dart | 65 + lib/services/calendar_sync_service.dart | 126 + lib/services/customer_repository.dart | 7 + lib/services/database_helper.dart | 317 ++- .../database_maintenance_service.dart | 51 + lib/services/debug_webhook_logger.dart | 52 + lib/services/department_repository.dart | 34 + lib/services/inventory_repository.dart | 101 + lib/services/inventory_service.dart | 51 + lib/services/invoice_repository.dart | 276 +- lib/services/order_service.dart | 183 ++ lib/services/receivable_repository.dart | 126 + lib/services/receivable_service.dart | 79 + lib/services/sales_entry_repository.dart | 83 + lib/services/sales_entry_service.dart | 330 +++ lib/services/sales_order_repository.dart | 84 + lib/services/sales_receipt_repository.dart | 81 + lib/services/sales_receipt_service.dart | 135 + lib/services/shipment_repository.dart | 82 + lib/services/shipment_service.dart | 183 ++ lib/services/shipping_label_service.dart | 101 + lib/services/staff_repository.dart | 34 + lib/services/supplier_repository.dart | 34 + lib/services/tax_setting_repository.dart | 27 + .../analytics/analytics_summary_card.dart | 62 + lib/widgets/analytics/empty_state_card.dart | 34 + .../invoice_form/invoice_form_variant.dart | 35 + lib/widgets/keyboard_inset_wrapper.dart | 19 +- lib/widgets/line_item_editor.dart | 147 + lib/widgets/screen_id_title.dart | 45 + macos/Flutter/GeneratedPluginRegistrant.swift | 2 + pubspec.lock | 68 +- pubspec.yaml | 11 +- 84 files changed, 11771 insertions(+), 658 deletions(-) create mode 100644 assets/icon/Gemini_Generated_Image_zemfu5zemfu5zemf.ico create mode 100644 assets/icon/app_icon.png create mode 100644 lib/models/department_model.dart create mode 100644 lib/models/hash_chain_models.dart create mode 100644 lib/models/inventory_models.dart create mode 100644 lib/models/order_models.dart create mode 100644 lib/models/receivable_models.dart create mode 100644 lib/models/sales_entry_models.dart create mode 100644 lib/models/sales_summary.dart create mode 100644 lib/models/shipment_models.dart create mode 100644 lib/models/staff_model.dart create mode 100644 lib/models/supplier_model.dart create mode 100644 lib/models/tax_setting_model.dart create mode 100644 lib/modules/billing_docs_module.dart create mode 100644 lib/modules/feature_module.dart create mode 100644 lib/modules/module_registry.dart create mode 100644 lib/modules/sales_management_module.dart create mode 100644 lib/modules/sales_operations_module.dart create mode 100644 lib/screens/department_master_screen.dart create mode 100644 lib/screens/sales_dashboard_screen.dart create mode 100644 lib/screens/sales_entries_screen.dart create mode 100644 lib/screens/sales_orders_screen.dart create mode 100644 lib/screens/sales_receipts_screen.dart create mode 100644 lib/screens/staff_master_screen.dart create mode 100644 lib/screens/supplier_master_screen.dart create mode 100644 lib/screens/tax_setting_screen.dart create mode 100644 lib/services/business_calendar_mapper.dart create mode 100644 lib/services/calendar_sync_diagnostics.dart create mode 100644 lib/services/calendar_sync_service.dart create mode 100644 lib/services/database_maintenance_service.dart create mode 100644 lib/services/debug_webhook_logger.dart create mode 100644 lib/services/department_repository.dart create mode 100644 lib/services/inventory_repository.dart create mode 100644 lib/services/inventory_service.dart create mode 100644 lib/services/order_service.dart create mode 100644 lib/services/receivable_repository.dart create mode 100644 lib/services/receivable_service.dart create mode 100644 lib/services/sales_entry_repository.dart create mode 100644 lib/services/sales_entry_service.dart create mode 100644 lib/services/sales_order_repository.dart create mode 100644 lib/services/sales_receipt_repository.dart create mode 100644 lib/services/sales_receipt_service.dart create mode 100644 lib/services/shipment_repository.dart create mode 100644 lib/services/shipment_service.dart create mode 100644 lib/services/shipping_label_service.dart create mode 100644 lib/services/staff_repository.dart create mode 100644 lib/services/supplier_repository.dart create mode 100644 lib/services/tax_setting_repository.dart create mode 100644 lib/widgets/analytics/analytics_summary_card.dart create mode 100644 lib/widgets/analytics/empty_state_card.dart create mode 100644 lib/widgets/invoice_form/invoice_form_variant.dart create mode 100644 lib/widgets/line_item_editor.dart create mode 100644 lib/widgets/screen_id_title.dart diff --git a/README.md b/README.md index d4b018b..1c2a7b2 100644 --- a/README.md +++ b/README.md @@ -22,6 +22,16 @@ - Phone ブック取り込みを共通化した `ContactPickerSheet` - 税率・税表示・印影の追加設定 - 90 日寿命チェック(`BuildExpiryInfo`)と期限切れ画面 +- モジュール指向ダッシュボード + - `FeatureModule` / `ModuleRegistry` により各機能を独立カードとして登録 + - A2(伝票履歴)/A1(伝票入力)モジュールと売上管理モジュールを実装済み + - 伝票ロックバーやカード表示は AppConfig の feature flag で制御 +- ダッシュボードと売上モジュールの最新強化 + - `AppConfig.enabledRoutes` にダッシュボード・売上伝票(U1/U2)経路を含め、S1 設定画面で登録したカードが D1 に確実に現れるよう調整 + - ダッシュボードカード登録時に有効モジュールを自動注入し、売上伝票入力(`sales_entries`)カードを SalesManagementModule から直接表示 + - A2(AppBar) の左上ボタンがホームモード設定に追従し、戻る/メニューボタンを正しく出し分け + - U2:売上伝票編集では保存アイコン・テキストボタンを AppBar に追加し、明細フォームのキーボード余白を整理して「せり上がり」を軽減 + - U2 の顧客選択モーダルを `Scaffold + AppBar` 構成に刷新し、タイトル/閉じる操作を統一 - ビルド用スクリプト `scripts/build_with_expiry.sh` - `--dart-define=APP_BUILD_TIMESTAMP` を自動付与し APK を生成 - analyze 実行~APK ビルドのワンステップ化 @@ -37,7 +47,7 @@ - Google Drive への自動バックアップ、容量推定 2. **販売アシスト1号の拡張モジュール化** - 売上(POS)、仕入、在庫、チャット、通知をモジュールとして追加 - - ダッシュボードにモジュールカードを組み込む方式へ刷新 + - ダッシュボードにモジュールカードを組み込む方式へ刷新(初期実装済) 3. **チャット&サポート** - 「順次対応である」旨を明記した問い合わせチャットをローカル実装 - 母艦側で受信・返信・履歴管理ができる仕組みを構築 @@ -83,6 +93,70 @@ - `flutter analyze` → `flutter build apk` を連続実行 3. 実機/エミュレータで起動すると、寿命切れ時には `ExpiredApp` が自動表示されます。 +### 機能フラグ(モジュール) + +アプリは `AppConfig` の dart-define を通じてモジュール単位で有効化できます。 + +| Flag | 既定値 | 説明 | +| --- | --- | --- | +| `ENABLE_BILLING_DOCS` | `true` | 伝票作成/履歴モジュール(A1/A2)の表示を制御 | +| `ENABLE_SALES_MANAGEMENT` | `false` | 売上管理モジュール(年間カード・トップ顧客・月次サマリー)を有効化 | +| `ENABLE_DEBUG_WEBHOOK` | `false` | MatterMost Webhook へノード情報/日時の debug log を送信 | +| `DEBUG_WEBHOOK_URL` | `https://mm.ka.sugeee.com/hooks/x6nxx8q35jdkuetbmh89ogt5ze` | debug 送信先を上書きしたい場合に指定 | + +例: 売上管理と debug ログ送信を同時に試す場合 + +```bash +flutter run \ + --dart-define=ENABLE_SALES_MANAGEMENT=true \ + --dart-define=ENABLE_DEBUG_WEBHOOK=true \ + --dart-define=DEBUG_WEBHOOK_URL=https://mm.ka.sugeee.com/hooks/x6nxx8q35jdkuetbmh89ogt5ze +``` + +`ENABLE_DEBUG_WEBHOOK=false`(既定値)に戻すと MatterMost への送信は行われません。フラグが有効なモジュールは `ModuleRegistry` 経由でダッシュボードカードに自動注入され、debug フラグはアプリ起動時の ping 送信のみを制御します。 + +### 画面IDとナビゲーション指針 + +最新の UI アップデートにより、画面遷移ルールと画面タイトルの表記を統一しました。 + +- **すべての AppBar タイトルは 2 文字の画面ID + コロン + タイトル** で表示します(例: `S1:設定`, `U4:入金編集`)。 +- **ホーム以外の画面は明示的な戻るボタンを左上に表示** します。`Scaffold` の `leading` で `BackButton` を指定し、ユーザーが階層を把握しやすいようにします。 +- **伝票一覧(A2:履歴リスト)がホームモードの場合のみ三本線のメニューボタン** を表示し、ドロワーから各種マスターや設定へ遷移できます。ホームモードでなければ通常通り戻るボタンを表示します。 +- 新規に追加する画面もこの規約に従って ID を採番し、Dashboard 側のカードやメニュー表示名もあわせて更新してください。 +- 売上伝票・入金管理(U1〜U4)など財務関連の新画面にもすでに適用済みです。各機能の AppBar を流用する際は ID だけ差し替えられるようコンポーネント化を検討しています。 + +--- + +## 粗利計算と卸値管理 + +- 商品マスタ(P1)に **仕入値(wholesale_price)** を保持するフィールドを追加しました。新規/既存商品の編集ダイアログで販売単価と合わせて卸値を登録できます。 +- U2/A1 での売上明細は商品選択時に `ProductPickerModal` から卸値を受け取り、明細内部にコストを保持します。仕入値が未登録の明細は **暫定粗利=0** として扱い、仕入確定後に再計算する前提です。 +- S1:設定 に「粗利表示 / 暫定粗利」セクションを追加し、次のスイッチで運用を制御できます。 + 1. **U2/A1で粗利を表示** … 単価−仕入値を計算して行ごとに表示。 + 2. **営業端末に粗利表示スイッチを表示** … 現場ユーザーが粗利の表示/非表示を切り替えられるようにする。 + 3. **暫定粗利(仕入未確定)を合計に含める** … 未入荷・未知商品の粗利=0 を合計に含めるかどうかを制御。 +- これらの設定値は `app_settings` テーブルに保存され、端末再起動後も保持されます。アプリの将来バージョンではロット別の仕入れ管理と合わせて粗利再計算ジョブを提供する予定です。 + +--- + +## Googleカレンダー連携 + +営業オペレーションの ToDo を Google カレンダーへ自動配信します。設定画面(S1:設定 → 「Googleカレンダー連携」セクション)から次の手順で利用できます。 + +1. 「Googleカレンダーと連携する」を ON に切り替え、Google アカウントへサインインします。 +2. 「カレンダー一覧を取得」で同期可能なカレンダーを読み込み、プライマリまたは任意の書き込み権限付きカレンダーを選択します。 +3. 以降、出荷 (`ShipmentService`) と債権 (`ReceivableService`) のイベントが `BusinessCalendarMapper` を経由して自動同期され、Google 側では `shipment-` / `receivable-` という extendedProperties 付きで登録されます。 +4. 必要に応じて「今すぐカレンダー同期を実行」ボタンを押すと、全件再同期+結果サマリ(件数・エラー詳細)が表示されます。手動同期は `CalendarSyncDiagnostics` により実装されています。 + +### 同期対象イベント + +| 区分 | 連携トリガー | 内容 | +| --- | --- | --- | +| 出荷 | 新規作成・更新・ステータス遷移 | 出荷予定/実績日を 9:00〜2h イベントとして登録。顧客名、受注番号、追跡情報などを本文に記載。 | +| 債権 | サマリ取得・入金追加/削除 | 期日を 10:00〜1h イベントとして登録。請求額や残高を本文に記載。 | + +Google 側でカレンダーを変更したい場合は、再度一覧取得→選択を行ってください。サインイン状態が切れた場合は「Googleを再認証」でリフレッシュできます。 + --- ## 母艦「お局様」LAN サーバの起動 @@ -117,7 +191,7 @@ - README は **機能追加・アーキテクチャ変更・モジュール構成の見直し時に必ず更新** します。 - 変更履歴とファイルツリーは必要に応じて追記し、最新状態を反映させます。 -- 設計検討中の内容(母艦 Web UI、チャット、モジュール化など)は本 README の「将来像」節で随時アップデートします。 +- 設計検討中の内容(母艦 Web UI、チャット、モジュール化など)は本 README の「将来像」節で随時アップデートします。現在は売上モジュールが最初の実装例です。 --- diff --git a/assets/icon/Gemini_Generated_Image_zemfu5zemfu5zemf.ico b/assets/icon/Gemini_Generated_Image_zemfu5zemfu5zemf.ico new file mode 100644 index 0000000000000000000000000000000000000000..2191fdbc46ba300d6821c50883b4f121a468c8b2 GIT binary patch literal 370070 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
K(z<%b}iRgcc+f0)<<%{^};=p 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 literal 0 HcmV?d00001 diff --git a/assets/icon/app_icon.png b/assets/icon/app_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..92711c4334cfae4a05622ed893fa3a994b394a0e GIT binary patch literal 1357895 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%0As&t` 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 >(zM!<%1*yW8-e&`JT!ebyNYxp560&U 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

g9|Yf7?9F%h`A0=I}*R?fI@ii)$Mcp+>#;FLmX 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

;VM1u7+*Z* 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

VGiuK-2Q*S}Aewxqunv;6<>&M49=yNO3 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%0D-RI^j8`)Qkzs}AXb3WO8Td2OOrC8V6KlSeg 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

iDPUEqq$)Ks&?pK2-%~j1xDGlhK*+TtuT! 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 z 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

tvV-FL7l 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 aE%@$-eTu6!+qRx)?BE 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

Udv&zbKlBd@%xg4AnIJ;M8Ib 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%0A?>1vwLFbo~BPlr2SYNr%a1 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

KlvETv+T_lM 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

8~`-##c%A^QUD$Ef3A#Vhr*7e6M%2>5MOO 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≧d3;291V|L9FBMoq$6XX_{i&{QLj_r>zv%sY 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 +#import +#else +@import google_sign_in_ios; +#endif + #if __has_include() #import #else @@ -90,6 +96,7 @@ [FlutterContactsPlugin registerWithRegistrar:[registry registrarForPlugin:@"FlutterContactsPlugin"]]; [FlutterEmailSenderPlugin registerWithRegistrar:[registry registrarForPlugin:@"FlutterEmailSenderPlugin"]]; [GeolocatorPlugin registerWithRegistrar:[registry registrarForPlugin:@"GeolocatorPlugin"]]; + [FLTGoogleSignInPlugin registerWithRegistrar:[registry registrarForPlugin:@"FLTGoogleSignInPlugin"]]; [FLTImagePickerPlugin registerWithRegistrar:[registry registrarForPlugin:@"FLTImagePickerPlugin"]]; [MobileScannerPlugin registerWithRegistrar:[registry registrarForPlugin:@"MobileScannerPlugin"]]; [OpenFilePlugin registerWithRegistrar:[registry registrarForPlugin:@"OpenFilePlugin"]]; diff --git a/lib/config/app_config.dart b/lib/config/app_config.dart index 718700e..2f904da 100644 --- a/lib/config/app_config.dart +++ b/lib/config/app_config.dart @@ -8,6 +8,12 @@ class AppConfig { /// 機能フラグ(ビルド時に --dart-define で上書き可能)。 static const bool enableBillingDocs = bool.fromEnvironment('ENABLE_BILLING_DOCS', defaultValue: true); static const bool enableSalesManagement = bool.fromEnvironment('ENABLE_SALES_MANAGEMENT', defaultValue: false); + static const bool enableSalesOperations = bool.fromEnvironment('ENABLE_SALES_OPERATIONS', defaultValue: false); + static const bool enableDebugWebhookLogging = bool.fromEnvironment('ENABLE_DEBUG_WEBHOOK', defaultValue: false); + static const String debugWebhookUrl = String.fromEnvironment( + 'DEBUG_WEBHOOK_URL', + defaultValue: 'https://mm.ka.sugeee.com/hooks/x6nxx8q35jdkuetbmh89ogt5ze', + ); /// APIエンドポイント(必要に応じて dart-define で注入)。 static const String apiEndpoint = String.fromEnvironment('API_ENDPOINT', defaultValue: ''); @@ -16,6 +22,8 @@ class AppConfig { static Map get features => { 'enableBillingDocs': enableBillingDocs, 'enableSalesManagement': enableSalesManagement, + 'enableSalesOperations': enableSalesOperations, + 'enableDebugWebhookLogging': enableDebugWebhookLogging, }; /// 機能キーで有効/無効を判定するヘルパー。 @@ -23,12 +31,15 @@ class AppConfig { /// 有効なダッシュボードルート一覧(動的に増える場合はここで管理)。 static Set get enabledRoutes { - final routes = {'settings'}; + final routes = {'settings', 'dashboard'}; if (enableBillingDocs) { routes.addAll({'invoice_history', 'invoice_input', 'master_hub', 'customer_master', 'product_master'}); } if (enableSalesManagement) { - routes.add('sales_management'); + routes.addAll({'sales_management', 'sales_entries'}); + } + if (enableSalesOperations) { + routes.addAll({'sales_orders', 'shipments', 'inventory', 'receivables'}); } return routes; } diff --git a/lib/main.dart b/lib/main.dart index 4b65b56..28fac64 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -17,6 +17,7 @@ import 'services/app_settings_repository.dart'; import 'services/chat_sync_scheduler.dart'; import 'services/mothership_client.dart'; import 'services/theme_controller.dart'; +import 'services/debug_webhook_logger.dart'; import 'utils/build_expiry_info.dart'; void main() async { @@ -44,11 +45,13 @@ class _MyAppState extends State { int _activePointers = 0; final MothershipClient _mothershipClient = MothershipClient(); final ChatSyncScheduler _chatSyncScheduler = ChatSyncScheduler(); + final DebugWebhookLogger _debugLogger = const DebugWebhookLogger(); @override void initState() { super.initState(); _sendHeartbeat(); + _sendDebugPing(); _chatSyncScheduler.start(); } @@ -62,6 +65,10 @@ class _MyAppState extends State { Future.microtask(() => _mothershipClient.sendHeartbeat(widget.expiryInfo)); } + void _sendDebugPing() { + Future.microtask(() => _debugLogger.sendNodePing(note: 'App boot completed')); + } + @override Widget build(BuildContext context) { return ValueListenableBuilder( diff --git a/lib/models/department_model.dart b/lib/models/department_model.dart new file mode 100644 index 0000000..34b12fd --- /dev/null +++ b/lib/models/department_model.dart @@ -0,0 +1,60 @@ +import 'package:flutter/foundation.dart'; + +@immutable +class Department { + const Department({ + required this.id, + required this.name, + this.code, + this.description, + this.isActive = true, + required this.updatedAt, + }); + + final String id; + final String name; + final String? code; + final String? description; + final bool isActive; + final DateTime updatedAt; + + Department copyWith({ + String? id, + String? name, + String? code, + String? description, + bool? isActive, + DateTime? updatedAt, + }) { + return Department( + id: id ?? this.id, + name: name ?? this.name, + code: code ?? this.code, + description: description ?? this.description, + isActive: isActive ?? this.isActive, + updatedAt: updatedAt ?? this.updatedAt, + ); + } + + factory Department.fromMap(Map map) { + return Department( + id: map['id'] as String, + name: map['name'] as String? ?? '-', + code: map['code'] as String?, + description: map['description'] as String?, + isActive: (map['is_active'] as int? ?? 1) == 1, + updatedAt: DateTime.parse(map['updated_at'] as String), + ); + } + + Map toMap() { + return { + 'id': id, + 'name': name, + 'code': code, + 'description': description, + 'is_active': isActive ? 1 : 0, + 'updated_at': updatedAt.toIso8601String(), + }; + } +} diff --git a/lib/models/hash_chain_models.dart b/lib/models/hash_chain_models.dart new file mode 100644 index 0000000..8dfea87 --- /dev/null +++ b/lib/models/hash_chain_models.dart @@ -0,0 +1,33 @@ +class HashChainBreak { + const HashChainBreak({ + required this.invoiceId, + this.invoiceNumber, + required this.issue, + this.expectedHash, + this.actualHash, + this.expectedPreviousHash, + this.actualPreviousHash, + }); + + final String invoiceId; + final String? invoiceNumber; + final String issue; + final String? expectedHash; + final String? actualHash; + final String? expectedPreviousHash; + final String? actualPreviousHash; +} + +class HashChainVerificationResult { + const HashChainVerificationResult({ + required this.isHealthy, + required this.checkedCount, + required this.verifiedAt, + required this.breaks, + }); + + final bool isHealthy; + final int checkedCount; + final DateTime verifiedAt; + final List breaks; +} diff --git a/lib/models/inventory_models.dart b/lib/models/inventory_models.dart new file mode 100644 index 0000000..fb84ca1 --- /dev/null +++ b/lib/models/inventory_models.dart @@ -0,0 +1,124 @@ +import 'package:meta/meta.dart'; + +/// 入出庫区分。 +enum InventoryMovementType { + receipt, + issue, + adjustment, +} + +extension InventoryMovementTypeX on InventoryMovementType { + String get displayName { + switch (this) { + case InventoryMovementType.receipt: + return '入庫'; + case InventoryMovementType.issue: + return '出庫'; + case InventoryMovementType.adjustment: + return '棚卸/調整'; + } + } + + /// 在庫増減に与える係数。 + int get deltaSign { + switch (this) { + case InventoryMovementType.receipt: + return 1; + case InventoryMovementType.issue: + return -1; + case InventoryMovementType.adjustment: + return 1; // 調整は quantityDelta をそのまま使うため符号 1 とする + } + } +} + +@immutable +class InventoryMovement { + const InventoryMovement({ + required this.id, + required this.productId, + required this.productNameSnapshot, + required this.type, + required this.quantity, + required this.quantityDelta, + required this.createdAt, + this.reference, + this.notes, + }); + + final String id; + final String productId; + final String productNameSnapshot; + final InventoryMovementType type; + final int quantity; + final int quantityDelta; + final DateTime createdAt; + final String? reference; + final String? notes; + + Map toMap() => { + 'id': id, + 'product_id': productId, + 'product_name_snapshot': productNameSnapshot, + 'movement_type': type.name, + 'quantity': quantity, + 'quantity_delta': quantityDelta, + 'reference': reference, + 'notes': notes, + 'created_at': createdAt.toIso8601String(), + }; + + factory InventoryMovement.fromMap(Map map) { + InventoryMovementType parseType(String? value) { + return InventoryMovementType.values.firstWhere( + (type) => type.name == value, + orElse: () => InventoryMovementType.adjustment, + ); + } + + return InventoryMovement( + id: map['id'] as String, + productId: map['product_id'] as String, + productNameSnapshot: map['product_name_snapshot'] as String? ?? '-', + type: parseType(map['movement_type'] as String?), + quantity: map['quantity'] as int? ?? 0, + quantityDelta: map['quantity_delta'] as int? ?? 0, + reference: map['reference'] as String?, + notes: map['notes'] as String?, + createdAt: DateTime.parse(map['created_at'] as String), + ); + } +} + +@immutable +class InventorySummary { + const InventorySummary({ + required this.productId, + required this.productName, + required this.stockQuantity, + this.category, + this.defaultUnitPrice, + this.lastMovementAt, + }); + + final String productId; + final String productName; + final int stockQuantity; + final String? category; + final int? defaultUnitPrice; + final DateTime? lastMovementAt; + + InventorySummary copyWith({ + int? stockQuantity, + DateTime? lastMovementAt, + }) { + return InventorySummary( + productId: productId, + productName: productName, + stockQuantity: stockQuantity ?? this.stockQuantity, + category: category, + defaultUnitPrice: defaultUnitPrice, + lastMovementAt: lastMovementAt ?? this.lastMovementAt, + ); + } +} diff --git a/lib/models/invoice_models.dart b/lib/models/invoice_models.dart index 25be41d..cc29420 100644 --- a/lib/models/invoice_models.dart +++ b/lib/models/invoice_models.dart @@ -65,6 +65,21 @@ enum DocumentType { receipt, // 領収 } +extension DocumentTypeDisplay on DocumentType { + String get displayName { + switch (this) { + case DocumentType.estimation: + return '見積書'; + case DocumentType.delivery: + return '納品書'; + case DocumentType.invoice: + return '請求書'; + case DocumentType.receipt: + return '領収書'; + } + } +} + class Invoice { static const String lockStatement = '正式発行ボタン押下時にこの伝票はロックされ、以後の編集・削除はできません。ロック状態はハッシュチェーンで保護されます。'; @@ -96,6 +111,9 @@ class Invoice { final String? companySealHash; // 追加: 角印画像ハッシュ final String? metaJson; final String? metaHash; + final String? previousChainHash; + final String? chainHash; + final String chainStatus; Invoice({ String? id, @@ -124,6 +142,9 @@ class Invoice { this.companySealHash, this.metaJson, this.metaHash, + this.previousChainHash, + this.chainHash, + this.chainStatus = 'pending', }) : id = id ?? DateTime.now().millisecondsSinceEpoch.toString(), terminalId = terminalId ?? "T1", // デフォルト端末ID updatedAt = updatedAt ?? DateTime.now(); @@ -259,6 +280,9 @@ class Invoice { 'company_seal_hash': companySealHash, 'meta_json': metaJsonValue, 'meta_hash': metaHashValue, + 'previous_chain_hash': previousChainHash, + 'chain_hash': chainHash, + 'chain_status': chainStatus, }; } @@ -289,6 +313,9 @@ class Invoice { String? companySealHash, String? metaJson, String? metaHash, + String? previousChainHash, + String? chainHash, + String? chainStatus, }) { return Invoice( id: id ?? this.id, @@ -317,6 +344,9 @@ class Invoice { companySealHash: companySealHash ?? this.companySealHash, metaJson: metaJson ?? this.metaJson, metaHash: metaHash ?? this.metaHash, + previousChainHash: previousChainHash ?? this.previousChainHash, + chainHash: chainHash ?? this.chainHash, + chainStatus: chainStatus ?? this.chainStatus, ); } diff --git a/lib/models/order_models.dart b/lib/models/order_models.dart new file mode 100644 index 0000000..92a5acb --- /dev/null +++ b/lib/models/order_models.dart @@ -0,0 +1,211 @@ +import 'package:collection/collection.dart'; + +/// 受注ステータスの定義。 +enum SalesOrderStatus { + draft, + confirmed, + picking, + shipped, + closed, + cancelled, +} + +extension SalesOrderStatusX on SalesOrderStatus { + String get displayName { + switch (this) { + case SalesOrderStatus.draft: + return '下書き'; + case SalesOrderStatus.confirmed: + return '確定'; + case SalesOrderStatus.picking: + return '出荷準備中'; + case SalesOrderStatus.shipped: + return '出荷済み'; + case SalesOrderStatus.closed: + return '完了'; + case SalesOrderStatus.cancelled: + return 'キャンセル'; + } + } + + static SalesOrderStatus fromDbValue(String? value) { + return SalesOrderStatus.values.firstWhere( + (status) => status.name == value, + orElse: () => SalesOrderStatus.draft, + ); + } +} + +class SalesOrderItem { + SalesOrderItem({ + required this.id, + required this.orderId, + required this.description, + required this.quantity, + required this.unitPrice, + this.productId, + this.taxRate = 0, + this.sortIndex = 0, + }); + + final String id; + final String orderId; + final String? productId; + final String description; + final int quantity; + final int unitPrice; + final double taxRate; + final int sortIndex; + + int get lineTotal => quantity * unitPrice; + + Map toMap() => { + 'id': id, + 'order_id': orderId, + 'product_id': productId, + 'description': description, + 'quantity': quantity, + 'unit_price': unitPrice, + 'tax_rate': taxRate, + 'sort_index': sortIndex, + }; + + factory SalesOrderItem.fromMap(Map map) => SalesOrderItem( + id: map['id'] as String, + orderId: map['order_id'] as String, + productId: map['product_id'] as String?, + description: map['description'] as String, + quantity: map['quantity'] as int, + unitPrice: map['unit_price'] as int, + taxRate: (map['tax_rate'] as num?)?.toDouble() ?? 0, + sortIndex: map['sort_index'] as int? ?? 0, + ); +} + +class SalesOrder { + SalesOrder({ + required this.id, + required this.customerId, + required this.orderDate, + required this.status, + required this.subtotal, + required this.taxAmount, + required this.totalAmount, + required this.createdAt, + required this.updatedAt, + this.orderNumber, + this.customerNameSnapshot, + this.requestedShipDate, + this.notes, + this.assignedTo, + this.workflowStage, + this.items = const [], + }); + + final String id; + final String customerId; + final String? customerNameSnapshot; + final DateTime orderDate; + final DateTime? requestedShipDate; + final SalesOrderStatus status; + final int subtotal; + final int taxAmount; + final int totalAmount; + final String? orderNumber; + final String? notes; + final String? assignedTo; + final String? workflowStage; + final DateTime createdAt; + final DateTime updatedAt; + final List items; + + SalesOrder copyWith({ + String? id, + String? customerId, + String? customerNameSnapshot, + DateTime? orderDate, + DateTime? requestedShipDate, + SalesOrderStatus? status, + int? subtotal, + int? taxAmount, + int? totalAmount, + String? orderNumber, + String? notes, + String? assignedTo, + String? workflowStage, + DateTime? createdAt, + DateTime? updatedAt, + List? items, + }) { + return SalesOrder( + id: id ?? this.id, + customerId: customerId ?? this.customerId, + customerNameSnapshot: customerNameSnapshot ?? this.customerNameSnapshot, + orderDate: orderDate ?? this.orderDate, + requestedShipDate: requestedShipDate ?? this.requestedShipDate, + status: status ?? this.status, + subtotal: subtotal ?? this.subtotal, + taxAmount: taxAmount ?? this.taxAmount, + totalAmount: totalAmount ?? this.totalAmount, + orderNumber: orderNumber ?? this.orderNumber, + notes: notes ?? this.notes, + assignedTo: assignedTo ?? this.assignedTo, + workflowStage: workflowStage ?? this.workflowStage, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + items: items ?? this.items, + ); + } + + Map toMap() => { + 'id': id, + 'order_number': orderNumber, + 'customer_id': customerId, + 'customer_name_snapshot': customerNameSnapshot, + 'order_date': orderDate.toIso8601String(), + 'requested_ship_date': requestedShipDate?.toIso8601String(), + 'status': status.name, + 'subtotal': subtotal, + 'tax_amount': taxAmount, + 'total_amount': totalAmount, + 'notes': notes, + 'assigned_to': assignedTo, + 'workflow_stage': workflowStage, + 'created_at': createdAt.toIso8601String(), + 'updated_at': updatedAt.toIso8601String(), + }; + + factory SalesOrder.fromMap(Map map, {List items = const []}) { + return SalesOrder( + id: map['id'] as String, + orderNumber: map['order_number'] as String?, + customerId: map['customer_id'] as String, + customerNameSnapshot: map['customer_name_snapshot'] as String?, + orderDate: DateTime.parse(map['order_date'] as String), + requestedShipDate: (map['requested_ship_date'] as String?) != null + ? DateTime.parse(map['requested_ship_date'] as String) + : null, + status: SalesOrderStatusX.fromDbValue(map['status'] as String?), + subtotal: map['subtotal'] as int? ?? 0, + taxAmount: map['tax_amount'] as int? ?? 0, + totalAmount: map['total_amount'] as int? ?? 0, + notes: map['notes'] as String?, + assignedTo: map['assigned_to'] as String?, + workflowStage: map['workflow_stage'] as String?, + createdAt: DateTime.parse(map['created_at'] as String), + updatedAt: DateTime.parse(map['updated_at'] as String), + items: items, + ); + } + + SalesOrder recalculateTotals({double? defaultTaxRate}) { + final newSubtotal = items.fold(0, (sum, item) => sum + item.lineTotal); + final taxRate = defaultTaxRate ?? items.map((e) => e.taxRate).firstWhereOrNull((rate) => rate > 0) ?? 0; + final newTaxAmount = (newSubtotal * taxRate).round(); + return copyWith( + subtotal: newSubtotal, + taxAmount: newTaxAmount, + totalAmount: newSubtotal + newTaxAmount, + ); + } +} diff --git a/lib/models/product_model.dart b/lib/models/product_model.dart index 229f32c..63c7622 100644 --- a/lib/models/product_model.dart +++ b/lib/models/product_model.dart @@ -2,6 +2,7 @@ class Product { final String id; final String name; final int defaultUnitPrice; + final int wholesalePrice; final String? barcode; final String? category; final int stockQuantity; // 追加 @@ -13,6 +14,7 @@ class Product { required this.id, required this.name, this.defaultUnitPrice = 0, + this.wholesalePrice = 0, this.barcode, this.category, this.stockQuantity = 0, // 追加 @@ -26,6 +28,7 @@ class Product { 'id': id, 'name': name, 'default_unit_price': defaultUnitPrice, + 'wholesale_price': wholesalePrice, 'barcode': barcode, 'category': category, 'stock_quantity': stockQuantity, // 追加 @@ -40,6 +43,7 @@ class Product { id: map['id'], name: map['name'], defaultUnitPrice: map['default_unit_price'] ?? 0, + wholesalePrice: map['wholesale_price'] ?? 0, barcode: map['barcode'], category: map['category'], stockQuantity: map['stock_quantity'] ?? 0, // 追加 @@ -53,6 +57,7 @@ class Product { String? id, String? name, int? defaultUnitPrice, + int? wholesalePrice, String? barcode, String? category, int? stockQuantity, @@ -64,6 +69,7 @@ class Product { id: id ?? this.id, name: name ?? this.name, defaultUnitPrice: defaultUnitPrice ?? this.defaultUnitPrice, + wholesalePrice: wholesalePrice ?? this.wholesalePrice, barcode: barcode ?? this.barcode, category: category ?? this.category, stockQuantity: stockQuantity ?? this.stockQuantity, diff --git a/lib/models/receivable_models.dart b/lib/models/receivable_models.dart new file mode 100644 index 0000000..68fa838 --- /dev/null +++ b/lib/models/receivable_models.dart @@ -0,0 +1,102 @@ +import 'package:meta/meta.dart'; + +enum PaymentMethod { + bankTransfer, + cash, + creditCard, + cheque, + other, +} + +extension PaymentMethodX on PaymentMethod { + String get displayName { + switch (this) { + case PaymentMethod.bankTransfer: + return '銀行振込'; + case PaymentMethod.cash: + return '現金'; + case PaymentMethod.creditCard: + return 'クレジット'; + case PaymentMethod.cheque: + return '小切手'; + case PaymentMethod.other: + return 'その他'; + } + } +} + +@immutable +class ReceivableInvoiceSummary { + const ReceivableInvoiceSummary({ + required this.invoiceId, + required this.invoiceNumber, + required this.customerName, + required this.invoiceDate, + required this.totalAmount, + required this.paidAmount, + required this.dueDate, + }); + + final String invoiceId; + final String invoiceNumber; + final String customerName; + final DateTime invoiceDate; + final DateTime dueDate; + final int totalAmount; + final int paidAmount; + + int get outstandingAmount => totalAmount - paidAmount; + bool get isSettled => outstandingAmount <= 0; + bool get isOverdue => !isSettled && DateTime.now().isAfter(dueDate); + double get collectionProgress => totalAmount == 0 ? 1.0 : paidAmount.clamp(0, totalAmount) / totalAmount; +} + +@immutable +class ReceivablePayment { + const ReceivablePayment({ + required this.id, + required this.invoiceId, + required this.amount, + required this.paymentDate, + required this.method, + required this.createdAt, + this.notes, + }); + + final String id; + final String invoiceId; + final int amount; + final DateTime paymentDate; + final PaymentMethod method; + final String? notes; + final DateTime createdAt; + + Map toMap() => { + 'id': id, + 'invoice_id': invoiceId, + 'amount': amount, + 'payment_date': paymentDate.toIso8601String(), + 'method': method.name, + 'notes': notes, + 'created_at': createdAt.toIso8601String(), + }; + + factory ReceivablePayment.fromMap(Map map) { + PaymentMethod parseMethod(String? value) { + return PaymentMethod.values.firstWhere( + (method) => method.name == value, + orElse: () => PaymentMethod.other, + ); + } + + return ReceivablePayment( + id: map['id'] as String, + invoiceId: map['invoice_id'] as String, + amount: map['amount'] as int? ?? 0, + paymentDate: DateTime.parse(map['payment_date'] as String), + method: parseMethod(map['method'] as String?), + notes: map['notes'] as String?, + createdAt: DateTime.parse(map['created_at'] as String), + ); + } +} diff --git a/lib/models/sales_entry_models.dart b/lib/models/sales_entry_models.dart new file mode 100644 index 0000000..f606fcb --- /dev/null +++ b/lib/models/sales_entry_models.dart @@ -0,0 +1,425 @@ +import 'package:meta/meta.dart'; + +import '../models/invoice_models.dart'; + +enum SalesEntryStatus { draft, confirmed, settled } + +@immutable +class SalesInvoiceImportData { + const SalesInvoiceImportData({ + required this.invoiceId, + required this.documentType, + required this.issueDate, + required this.taxRate, + required this.totalAmount, + required this.items, + required this.isLocked, + required this.chainStatus, + required this.contentHash, + this.customerId, + this.customerFormalName, + this.subject, + }); + + final String invoiceId; + final DocumentType documentType; + final DateTime issueDate; + final double taxRate; + final int totalAmount; + final List items; + final bool isLocked; + final String chainStatus; + final String contentHash; + final String? customerId; + final String? customerFormalName; + final String? subject; +} + +extension SalesEntryStatusDisplay on SalesEntryStatus { + String get displayName { + switch (this) { + case SalesEntryStatus.draft: + return '下書き'; + case SalesEntryStatus.confirmed: + return '確定'; + case SalesEntryStatus.settled: + return '入金済み'; + } + } +} + +class SalesReceiptAllocationInput { + const SalesReceiptAllocationInput({required this.salesEntryId, required this.amount}); + + final String salesEntryId; + final int amount; +} + +@immutable +class SalesLineItem { + const SalesLineItem({ + required this.id, + required this.salesEntryId, + required this.description, + required this.quantity, + required this.unitPrice, + required this.lineTotal, + this.productId, + this.taxRate = 0, + this.sourceInvoiceId, + this.sourceInvoiceItemId, + this.costAmount = 0, + this.costIsProvisional = false, + }); + + final String id; + final String salesEntryId; + final String description; + final int quantity; + final int unitPrice; + final int lineTotal; + final String? productId; + final double taxRate; + final String? sourceInvoiceId; + final String? sourceInvoiceItemId; + final int costAmount; + final bool costIsProvisional; + + Map toMap() => { + 'id': id, + 'sales_entry_id': salesEntryId, + 'product_id': productId, + 'description': description, + 'quantity': quantity, + 'unit_price': unitPrice, + 'tax_rate': taxRate, + 'line_total': lineTotal, + 'cost_amount': costAmount, + 'cost_is_provisional': costIsProvisional ? 1 : 0, + 'source_invoice_id': sourceInvoiceId, + 'source_invoice_item_id': sourceInvoiceItemId, + }; + + factory SalesLineItem.fromMap(Map map) => SalesLineItem( + id: map['id'] as String, + salesEntryId: map['sales_entry_id'] as String, + productId: map['product_id'] as String?, + description: map['description'] as String, + quantity: map['quantity'] as int? ?? 0, + unitPrice: map['unit_price'] as int? ?? 0, + taxRate: (map['tax_rate'] as num?)?.toDouble() ?? 0, + lineTotal: map['line_total'] as int? ?? 0, + costAmount: map['cost_amount'] as int? ?? 0, + costIsProvisional: (map['cost_is_provisional'] as int? ?? 0) == 1, + sourceInvoiceId: map['source_invoice_id'] as String?, + sourceInvoiceItemId: map['source_invoice_item_id'] as String?, + ); + SalesLineItem copyWith({ + String? id, + String? salesEntryId, + String? description, + int? quantity, + int? unitPrice, + int? lineTotal, + String? productId, + double? taxRate, + String? sourceInvoiceId, + String? sourceInvoiceItemId, + int? costAmount, + bool? costIsProvisional, + }) { + return SalesLineItem( + id: id ?? this.id, + salesEntryId: salesEntryId ?? this.salesEntryId, + description: description ?? this.description, + quantity: quantity ?? this.quantity, + unitPrice: unitPrice ?? this.unitPrice, + lineTotal: lineTotal ?? this.lineTotal, + productId: productId ?? this.productId, + taxRate: taxRate ?? this.taxRate, + sourceInvoiceId: sourceInvoiceId ?? this.sourceInvoiceId, + sourceInvoiceItemId: sourceInvoiceItemId ?? this.sourceInvoiceItemId, + costAmount: costAmount ?? this.costAmount, + costIsProvisional: costIsProvisional ?? this.costIsProvisional, + ); + } +} + +@immutable +class SalesEntry { + const SalesEntry({ + required this.id, + required this.issueDate, + required this.status, + required this.createdAt, + required this.updatedAt, + this.customerId, + this.customerNameSnapshot, + this.subject, + this.amountTaxExcl = 0, + this.taxAmount = 0, + this.amountTaxIncl = 0, + this.notes, + this.items = const [], + }); + + final String id; + final String? customerId; + final String? customerNameSnapshot; + final String? subject; + final DateTime issueDate; + final SalesEntryStatus status; + final int amountTaxExcl; + final int taxAmount; + final int amountTaxIncl; + final String? notes; + final DateTime createdAt; + final DateTime updatedAt; + final List items; + + SalesEntry copyWith({ + String? id, + String? customerId, + String? customerNameSnapshot, + String? subject, + DateTime? issueDate, + SalesEntryStatus? status, + int? amountTaxExcl, + int? taxAmount, + int? amountTaxIncl, + String? notes, + DateTime? createdAt, + DateTime? updatedAt, + List? items, + }) { + return SalesEntry( + id: id ?? this.id, + customerId: customerId ?? this.customerId, + customerNameSnapshot: customerNameSnapshot ?? this.customerNameSnapshot, + subject: subject ?? this.subject, + issueDate: issueDate ?? this.issueDate, + status: status ?? this.status, + amountTaxExcl: amountTaxExcl ?? this.amountTaxExcl, + taxAmount: taxAmount ?? this.taxAmount, + amountTaxIncl: amountTaxIncl ?? this.amountTaxIncl, + notes: notes ?? this.notes, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + items: items ?? this.items, + ); + } + + Map toMap() => { + 'id': id, + 'customer_id': customerId, + 'customer_name_snapshot': customerNameSnapshot, + 'subject': subject, + 'issue_date': issueDate.toIso8601String(), + 'status': status.name, + 'amount_tax_excl': amountTaxExcl, + 'tax_amount': taxAmount, + 'amount_tax_incl': amountTaxIncl, + 'notes': notes, + 'created_at': createdAt.toIso8601String(), + 'updated_at': updatedAt.toIso8601String(), + }; + + factory SalesEntry.fromMap(Map map, {List items = const []}) => SalesEntry( + id: map['id'] as String, + customerId: map['customer_id'] as String?, + customerNameSnapshot: map['customer_name_snapshot'] as String?, + subject: map['subject'] as String?, + issueDate: DateTime.parse(map['issue_date'] as String), + status: SalesEntryStatus.values.firstWhere( + (s) => s.name == map['status'], + orElse: () => SalesEntryStatus.draft, + ), + amountTaxExcl: map['amount_tax_excl'] as int? ?? 0, + taxAmount: map['tax_amount'] as int? ?? 0, + amountTaxIncl: map['amount_tax_incl'] as int? ?? 0, + notes: map['notes'] as String?, + createdAt: DateTime.parse(map['created_at'] as String), + updatedAt: DateTime.parse(map['updated_at'] as String), + items: items, + ); + + SalesEntry recalcTotals() { + final subtotal = items.fold(0, (sum, item) => sum + item.lineTotal); + final tax = items.fold(0, (sum, item) => sum + item.lineTotal * item.taxRate).round(); + return copyWith( + amountTaxExcl: subtotal, + taxAmount: tax, + amountTaxIncl: subtotal + tax, + ); + } +} + +@immutable +class SalesReceipt { + const SalesReceipt({ + required this.id, + required this.paymentDate, + required this.amount, + required this.createdAt, + required this.updatedAt, + this.customerId, + this.method, + this.notes, + }); + + final String id; + final String? customerId; + final DateTime paymentDate; + final String? method; + final int amount; + final String? notes; + final DateTime createdAt; + final DateTime updatedAt; + + Map toMap() => { + 'id': id, + 'customer_id': customerId, + 'payment_date': paymentDate.toIso8601String(), + 'method': method, + 'amount': amount, + 'notes': notes, + 'created_at': createdAt.toIso8601String(), + 'updated_at': updatedAt.toIso8601String(), + }; + + factory SalesReceipt.fromMap(Map map) => SalesReceipt( + id: map['id'] as String, + customerId: map['customer_id'] as String?, + paymentDate: DateTime.parse(map['payment_date'] as String), + method: map['method'] as String?, + amount: map['amount'] as int? ?? 0, + notes: map['notes'] as String?, + createdAt: DateTime.parse(map['created_at'] as String), + updatedAt: DateTime.parse(map['updated_at'] as String), + ); + + SalesReceipt copyWith({ + String? id, + String? customerId, + DateTime? paymentDate, + String? method, + int? amount, + String? notes, + DateTime? createdAt, + DateTime? updatedAt, + }) { + return SalesReceipt( + id: id ?? this.id, + customerId: customerId ?? this.customerId, + paymentDate: paymentDate ?? this.paymentDate, + method: method ?? this.method, + amount: amount ?? this.amount, + notes: notes ?? this.notes, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + ); + } +} + +@immutable +class SalesReceiptLink { + const SalesReceiptLink({required this.receiptId, required this.salesEntryId, required this.allocatedAmount}); + + final String receiptId; + final String salesEntryId; + final int allocatedAmount; + + Map toMap() => { + 'receipt_id': receiptId, + 'sales_entry_id': salesEntryId, + 'allocated_amount': allocatedAmount, + }; + + factory SalesReceiptLink.fromMap(Map map) => SalesReceiptLink( + receiptId: map['receipt_id'] as String, + salesEntryId: map['sales_entry_id'] as String, + allocatedAmount: map['allocated_amount'] as int? ?? 0, + ); +} + +@immutable +class SalesEntrySource { + const SalesEntrySource({ + required this.id, + required this.salesEntryId, + required this.invoiceId, + required this.importedAt, + this.invoiceHashSnapshot, + }); + + final String id; + final String salesEntryId; + final String invoiceId; + final DateTime importedAt; + final String? invoiceHashSnapshot; + + Map toMap() => { + 'id': id, + 'sales_entry_id': salesEntryId, + 'invoice_id': invoiceId, + 'imported_at': importedAt.toIso8601String(), + 'invoice_hash_snapshot': invoiceHashSnapshot, + }; + + factory SalesEntrySource.fromMap(Map map) => SalesEntrySource( + id: map['id'] as String, + salesEntryId: map['sales_entry_id'] as String, + invoiceId: map['invoice_id'] as String, + importedAt: DateTime.parse(map['imported_at'] as String), + invoiceHashSnapshot: map['invoice_hash_snapshot'] as String?, + ); +} + +@immutable +class SalesImportCandidate { + const SalesImportCandidate({ + required this.invoiceId, + required this.invoiceNumber, + required this.documentType, + required this.invoiceDate, + required this.customerName, + required this.totalAmount, + required this.isLocked, + required this.chainStatus, + required this.contentHash, + this.subject, + }); + + final String invoiceId; + final String invoiceNumber; + final DocumentType documentType; + final DateTime invoiceDate; + final String customerName; + final int totalAmount; + final bool isLocked; + final String chainStatus; + final String contentHash; + final String? subject; + + String get documentTypeName => documentType.displayName; + + factory SalesImportCandidate.fromMap(Map row) { + final docTypeName = row['document_type'] as String? ?? DocumentType.invoice.name; + final documentType = DocumentType.values.firstWhere( + (type) => type.name == docTypeName, + orElse: () => DocumentType.invoice, + ); + return SalesImportCandidate( + invoiceId: row['id'] as String, + invoiceNumber: row['invoice_number'] as String, + documentType: documentType, + invoiceDate: DateTime.parse(row['date'] as String), + customerName: row['customer_name'] as String? ?? '-', + totalAmount: (row['total_amount'] as num?)?.toInt() ?? 0, + isLocked: (row['is_locked'] as int?) == 1, + chainStatus: row['chain_status'] as String? ?? 'pending', + contentHash: row['content_hash'] as String? ?? '', + subject: row['subject'] as String?, + ); + } +} diff --git a/lib/models/sales_summary.dart b/lib/models/sales_summary.dart new file mode 100644 index 0000000..d8114bd --- /dev/null +++ b/lib/models/sales_summary.dart @@ -0,0 +1,32 @@ +import '../models/invoice_models.dart'; + +class SalesCustomerStat { + SalesCustomerStat({required this.customerName, required this.totalAmount}); + + final String customerName; + final int totalAmount; +} + +class SalesSummary { + SalesSummary({ + required this.year, + required this.monthlyTotals, + required this.yearlyTotal, + required this.customerStats, + this.documentType, + }); + + final int year; + final Map monthlyTotals; + final int yearlyTotal; + final List customerStats; + final DocumentType? documentType; + + int get bestMonth => + monthlyTotals.entries.isEmpty ? 0 : monthlyTotals.entries.reduce((a, b) => a.value >= b.value ? a : b).key; + + int get bestMonthTotal => + monthlyTotals.entries.isEmpty ? 0 : monthlyTotals.entries.reduce((a, b) => a.value >= b.value ? a : b).value; + + double get averageMonthly => yearlyTotal / (monthlyTotals.isEmpty ? 1 : 12); +} diff --git a/lib/models/shipment_models.dart b/lib/models/shipment_models.dart new file mode 100644 index 0000000..6d2d4e4 --- /dev/null +++ b/lib/models/shipment_models.dart @@ -0,0 +1,199 @@ +/// 出荷ステータス定義。 +enum ShipmentStatus { + pending, + picking, + ready, + shipped, + delivered, + cancelled, +} + +extension ShipmentStatusX on ShipmentStatus { + String get displayName { + switch (this) { + case ShipmentStatus.pending: + return '未手配'; + case ShipmentStatus.picking: + return 'ピッキング中'; + case ShipmentStatus.ready: + return '出荷待ち'; + case ShipmentStatus.shipped: + return '出荷済み'; + case ShipmentStatus.delivered: + return '納品済み'; + case ShipmentStatus.cancelled: + return 'キャンセル'; + } + } + + static ShipmentStatus fromDbValue(String? value) { + return ShipmentStatus.values.firstWhere( + (status) => status.name == value, + orElse: () => ShipmentStatus.pending, + ); + } +} + +class ShipmentItem { + ShipmentItem({ + required this.id, + required this.shipmentId, + required this.description, + required this.quantity, + this.orderItemId, + }); + + final String id; + final String shipmentId; + final String? orderItemId; + final String description; + final int quantity; + + Map toMap() => { + 'id': id, + 'shipment_id': shipmentId, + 'order_item_id': orderItemId, + 'description': description, + 'quantity': quantity, + }; + + factory ShipmentItem.fromMap(Map map) => ShipmentItem( + id: map['id'] as String, + shipmentId: map['shipment_id'] as String, + orderItemId: map['order_item_id'] as String?, + description: map['description'] as String, + quantity: map['quantity'] as int? ?? 0, + ); +} + +class Shipment { + Shipment({ + required this.id, + required this.status, + required this.createdAt, + required this.updatedAt, + this.orderId, + this.orderNumberSnapshot, + this.customerNameSnapshot, + this.scheduledShipDate, + this.actualShipDate, + this.carrierName, + this.trackingNumber, + this.trackingUrl, + this.labelPdfPath, + this.notes, + this.pickingCompletedAt, + this.items = const [], + }); + + final String id; + final String? orderId; + final String? orderNumberSnapshot; + final String? customerNameSnapshot; + final DateTime? scheduledShipDate; + final DateTime? actualShipDate; + final ShipmentStatus status; + final String? carrierName; + final String? trackingNumber; + final String? trackingUrl; + final String? labelPdfPath; + final String? notes; + final DateTime? pickingCompletedAt; + final DateTime createdAt; + final DateTime updatedAt; + final List items; + + Shipment copyWith({ + String? id, + String? orderId, + String? orderNumberSnapshot, + String? customerNameSnapshot, + DateTime? scheduledShipDate, + DateTime? actualShipDate, + ShipmentStatus? status, + String? carrierName, + String? trackingNumber, + String? trackingUrl, + String? labelPdfPath, + String? notes, + DateTime? pickingCompletedAt, + DateTime? createdAt, + DateTime? updatedAt, + List? items, + }) { + return Shipment( + id: id ?? this.id, + orderId: orderId ?? this.orderId, + orderNumberSnapshot: orderNumberSnapshot ?? this.orderNumberSnapshot, + customerNameSnapshot: customerNameSnapshot ?? this.customerNameSnapshot, + scheduledShipDate: scheduledShipDate ?? this.scheduledShipDate, + actualShipDate: actualShipDate ?? this.actualShipDate, + status: status ?? this.status, + carrierName: carrierName ?? this.carrierName, + trackingNumber: trackingNumber ?? this.trackingNumber, + trackingUrl: trackingUrl ?? this.trackingUrl, + labelPdfPath: labelPdfPath ?? this.labelPdfPath, + notes: notes ?? this.notes, + pickingCompletedAt: pickingCompletedAt ?? this.pickingCompletedAt, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + items: items ?? this.items, + ); + } + + Map toMap() => { + 'id': id, + 'order_id': orderId, + 'order_number_snapshot': orderNumberSnapshot, + 'customer_name_snapshot': customerNameSnapshot, + 'scheduled_ship_date': scheduledShipDate?.toIso8601String(), + 'actual_ship_date': actualShipDate?.toIso8601String(), + 'status': status.name, + 'carrier_name': carrierName, + 'tracking_number': trackingNumber, + 'tracking_url': trackingUrl, + 'label_pdf_path': labelPdfPath, + 'notes': notes, + 'picking_completed_at': pickingCompletedAt?.toIso8601String(), + 'created_at': createdAt.toIso8601String(), + 'updated_at': updatedAt.toIso8601String(), + }; + + factory Shipment.fromMap(Map map, {List items = const []}) { + DateTime? parseNullable(String? value) => value == null ? null : DateTime.parse(value); + return Shipment( + id: map['id'] as String, + orderId: map['order_id'] as String?, + orderNumberSnapshot: map['order_number_snapshot'] as String?, + customerNameSnapshot: map['customer_name_snapshot'] as String?, + scheduledShipDate: parseNullable(map['scheduled_ship_date'] as String?), + actualShipDate: parseNullable(map['actual_ship_date'] as String?), + status: ShipmentStatusX.fromDbValue(map['status'] as String?), + carrierName: map['carrier_name'] as String?, + trackingNumber: map['tracking_number'] as String?, + trackingUrl: map['tracking_url'] as String?, + labelPdfPath: map['label_pdf_path'] as String?, + notes: map['notes'] as String?, + pickingCompletedAt: parseNullable(map['picking_completed_at'] as String?), + createdAt: DateTime.parse(map['created_at'] as String), + updatedAt: DateTime.parse(map['updated_at'] as String), + items: items, + ); + } + + ShipmentStatus nextDefaultStatus() { + switch (status) { + case ShipmentStatus.pending: + return ShipmentStatus.picking; + case ShipmentStatus.picking: + return ShipmentStatus.ready; + case ShipmentStatus.ready: + return ShipmentStatus.shipped; + case ShipmentStatus.shipped: + return ShipmentStatus.delivered; + case ShipmentStatus.delivered: + case ShipmentStatus.cancelled: + return status; + } + } +} diff --git a/lib/models/staff_model.dart b/lib/models/staff_model.dart new file mode 100644 index 0000000..2d86516 --- /dev/null +++ b/lib/models/staff_model.dart @@ -0,0 +1,78 @@ +import 'package:flutter/foundation.dart'; + +@immutable +class StaffMember { + const StaffMember({ + required this.id, + required this.name, + this.email, + this.tel, + this.role, + this.departmentId, + this.permissionLevel, + this.isActive = true, + required this.updatedAt, + }); + + final String id; + final String name; + final String? email; + final String? tel; + final String? role; + final String? departmentId; + final String? permissionLevel; + final bool isActive; + final DateTime updatedAt; + + StaffMember copyWith({ + String? id, + String? name, + String? email, + String? tel, + String? role, + String? departmentId, + String? permissionLevel, + bool? isActive, + DateTime? updatedAt, + }) { + return StaffMember( + id: id ?? this.id, + name: name ?? this.name, + email: email ?? this.email, + tel: tel ?? this.tel, + role: role ?? this.role, + departmentId: departmentId ?? this.departmentId, + permissionLevel: permissionLevel ?? this.permissionLevel, + isActive: isActive ?? this.isActive, + updatedAt: updatedAt ?? this.updatedAt, + ); + } + + factory StaffMember.fromMap(Map map) { + return StaffMember( + id: map['id'] as String, + name: map['name'] as String? ?? '-', + email: map['email'] as String?, + tel: map['tel'] as String?, + role: map['role'] as String?, + departmentId: map['department_id'] as String?, + permissionLevel: map['permission_level'] as String?, + isActive: (map['is_active'] as int? ?? 1) == 1, + updatedAt: DateTime.parse(map['updated_at'] as String), + ); + } + + Map toMap() { + return { + 'id': id, + 'name': name, + 'email': email, + 'tel': tel, + 'role': role, + 'department_id': departmentId, + 'permission_level': permissionLevel, + 'is_active': isActive ? 1 : 0, + 'updated_at': updatedAt.toIso8601String(), + }; + } +} diff --git a/lib/models/supplier_model.dart b/lib/models/supplier_model.dart new file mode 100644 index 0000000..561346e --- /dev/null +++ b/lib/models/supplier_model.dart @@ -0,0 +1,90 @@ +import 'package:flutter/foundation.dart'; + +@immutable +class Supplier { + const Supplier({ + required this.id, + required this.name, + this.contactPerson, + this.email, + this.tel, + this.address, + this.closingDay, + this.paymentSiteDays = 30, + this.notes, + this.isHidden = false, + required this.updatedAt, + }); + + final String id; + final String name; + final String? contactPerson; + final String? email; + final String? tel; + final String? address; + final int? closingDay; + final int paymentSiteDays; + final String? notes; + final bool isHidden; + final DateTime updatedAt; + + Supplier copyWith({ + String? id, + String? name, + String? contactPerson, + String? email, + String? tel, + String? address, + int? closingDay, + int? paymentSiteDays, + String? notes, + bool? isHidden, + DateTime? updatedAt, + }) { + return Supplier( + id: id ?? this.id, + name: name ?? this.name, + contactPerson: contactPerson ?? this.contactPerson, + email: email ?? this.email, + tel: tel ?? this.tel, + address: address ?? this.address, + closingDay: closingDay ?? this.closingDay, + paymentSiteDays: paymentSiteDays ?? this.paymentSiteDays, + notes: notes ?? this.notes, + isHidden: isHidden ?? this.isHidden, + updatedAt: updatedAt ?? this.updatedAt, + ); + } + + factory Supplier.fromMap(Map map) { + return Supplier( + id: map['id'] as String, + name: map['name'] as String? ?? '-', + contactPerson: map['contact_person'] as String?, + email: map['email'] as String?, + tel: map['tel'] as String?, + address: map['address'] as String?, + closingDay: map['closing_day'] as int?, + paymentSiteDays: map['payment_site_days'] as int? ?? 30, + notes: map['notes'] as String?, + isHidden: (map['is_hidden'] as int? ?? 0) == 1, + updatedAt: DateTime.parse(map['updated_at'] as String), + ); + } + + Map toMap() { + return { + 'id': id, + 'name': name, + 'contact_person': contactPerson, + 'email': email, + 'tel': tel, + 'address': address, + 'closing_day': closingDay, + 'payment_site_days': paymentSiteDays, + 'notes': notes, + 'is_hidden': isHidden ? 1 : 0, + 'updated_at': updatedAt.toIso8601String(), + }; + } +} diff --git a/lib/models/tax_setting_model.dart b/lib/models/tax_setting_model.dart new file mode 100644 index 0000000..045adfc --- /dev/null +++ b/lib/models/tax_setting_model.dart @@ -0,0 +1,48 @@ +import 'package:flutter/foundation.dart'; + +@immutable +class TaxSetting { + const TaxSetting({ + required this.id, + required this.rate, + required this.roundingMode, + required this.updatedAt, + }); + + final String id; + final double rate; + final String roundingMode; + final DateTime updatedAt; + + TaxSetting copyWith({ + String? id, + double? rate, + String? roundingMode, + DateTime? updatedAt, + }) { + return TaxSetting( + id: id ?? this.id, + rate: rate ?? this.rate, + roundingMode: roundingMode ?? this.roundingMode, + updatedAt: updatedAt ?? this.updatedAt, + ); + } + + factory TaxSetting.fromMap(Map map) { + return TaxSetting( + id: map['id'] as String, + rate: (map['rate'] as num).toDouble(), + roundingMode: map['rounding_mode'] as String? ?? 'round', + updatedAt: DateTime.parse(map['updated_at'] as String), + ); + } + + Map toMap() { + return { + 'id': id, + 'rate': rate, + 'rounding_mode': roundingMode, + 'updated_at': updatedAt.toIso8601String(), + }; + } +} diff --git a/lib/modules/billing_docs_module.dart b/lib/modules/billing_docs_module.dart new file mode 100644 index 0000000..34273d0 --- /dev/null +++ b/lib/modules/billing_docs_module.dart @@ -0,0 +1,69 @@ +import 'package:flutter/material.dart'; + +import '../config/app_config.dart'; +import '../models/invoice_models.dart'; +import '../modules/feature_module.dart'; +import '../screens/invoice_detail_page.dart'; +import '../screens/invoice_history_screen.dart'; +import '../screens/invoice_input_screen.dart'; +import '../services/customer_repository.dart'; +import '../services/location_service.dart'; + +class BillingDocsModule extends FeatureModule { + BillingDocsModule(); + + final LocationService _locationService = LocationService(); + final CustomerRepository _customerRepository = CustomerRepository(); + + @override + String get key => 'billing_docs'; + + @override + bool get isEnabled => AppConfig.enableBillingDocs; + + @override + List get dashboardCards => [ + ModuleDashboardCard( + id: 'billing_docs_history', + route: 'invoice_history', + title: '伝票一覧', + description: 'A2: 履歴リストとロック管理', + iconName: 'history', + requiresUnlock: true, + onTap: (context) async { + await Navigator.push( + context, + MaterialPageRoute(builder: (_) => const InvoiceHistoryScreen(initialUnlocked: true)), + ); + }, + ), + ModuleDashboardCard( + id: 'billing_docs_input', + route: 'invoice_input', + title: '伝票新規作成', + description: 'A1: 新しい伝票を登録', + iconName: 'edit_note', + onTap: (context) async { + await Navigator.push( + context, + MaterialPageRoute( + builder: (_) => InvoiceInputForm( + initialDocumentType: DocumentType.invoice, + onInvoiceGenerated: (invoice, path) async { + final pos = await _locationService.getCurrentLocation(); + if (pos != null) { + await _customerRepository.addGpsHistory(invoice.customer.id, pos.latitude, pos.longitude); + } + if (!context.mounted) return; + await Navigator.push( + context, + MaterialPageRoute(builder: (_) => InvoiceDetailPage(invoice: invoice)), + ); + }, + ), + ), + ); + }, + ), + ]; +} diff --git a/lib/modules/feature_module.dart b/lib/modules/feature_module.dart new file mode 100644 index 0000000..3af7afe --- /dev/null +++ b/lib/modules/feature_module.dart @@ -0,0 +1,37 @@ +import 'package:flutter/material.dart'; + +typedef ModuleCardAction = Future Function(BuildContext context); + +class ModuleDashboardCard { + const ModuleDashboardCard({ + required this.id, + required this.route, + required this.title, + required this.description, + required this.iconName, + required this.onTap, + this.requiresUnlock = false, + }); + + final String id; + final String route; + final String title; + final String description; + final String iconName; + final ModuleCardAction onTap; + final bool requiresUnlock; +} + +abstract class FeatureModule { + String get key; + bool get isEnabled; + List get dashboardCards; + + ModuleDashboardCard? cardByRoute(String route) { + try { + return dashboardCards.firstWhere((card) => card.route == route); + } catch (_) { + return null; + } + } +} diff --git a/lib/modules/module_registry.dart b/lib/modules/module_registry.dart new file mode 100644 index 0000000..4e31df5 --- /dev/null +++ b/lib/modules/module_registry.dart @@ -0,0 +1,33 @@ +import 'billing_docs_module.dart'; +import 'feature_module.dart'; +import 'sales_management_module.dart'; +import 'sales_operations_module.dart'; + +class ModuleRegistry { + ModuleRegistry._(); + + static final ModuleRegistry instance = ModuleRegistry._(); + + final List _modules = [ + BillingDocsModule(), + SalesManagementModule(), + SalesOperationsModule(), + ]; + + Iterable get modules => _modules; + + List get enabledCards => _modules.where((m) => m.isEnabled).expand((m) => m.dashboardCards).toList(); + + bool supportsRoute(String route) => enabledCards.any((card) => card.route == route); + + ModuleDashboardCard? cardForRoute(String route) { + for (final module in _modules) { + if (!module.isEnabled) continue; + final card = module.cardByRoute(route); + if (card != null) { + return card; + } + } + return null; + } +} diff --git a/lib/modules/sales_management_module.dart b/lib/modules/sales_management_module.dart new file mode 100644 index 0000000..b7b79ac --- /dev/null +++ b/lib/modules/sales_management_module.dart @@ -0,0 +1,46 @@ +import 'package:flutter/material.dart'; + +import '../config/app_config.dart'; +import '../modules/feature_module.dart'; +import '../screens/sales_dashboard_screen.dart'; +import '../screens/sales_entries_screen.dart'; + +class SalesManagementModule extends FeatureModule { + SalesManagementModule(); + + @override + String get key => 'sales_management'; + + @override + bool get isEnabled => AppConfig.enableSalesManagement; + + @override + List get dashboardCards => [ + ModuleDashboardCard( + id: 'sales_management_report', + route: 'sales_management', + title: '売上管理', + description: '売上ダッシュボード(ランチャー)', + iconName: 'analytics', + onTap: (context) async { + await Navigator.push( + context, + MaterialPageRoute(builder: (_) => const SalesDashboardScreen()), + ); + }, + ), + ModuleDashboardCard( + id: 'sales_entries', + route: 'sales_entries', + title: '売上伝票入力', + description: 'U1:売上伝票の入力・編集', + iconName: 'receipt_long', + onTap: (context) async { + await Navigator.push( + context, + MaterialPageRoute(builder: (_) => SalesEntriesScreen()), + ); + }, + ), + ]; +} diff --git a/lib/modules/sales_operations_module.dart b/lib/modules/sales_operations_module.dart new file mode 100644 index 0000000..1451483 --- /dev/null +++ b/lib/modules/sales_operations_module.dart @@ -0,0 +1,59 @@ +import 'package:flutter/material.dart'; + +import '../config/app_config.dart'; +import '../modules/feature_module.dart'; +import '../screens/sales_orders_screen.dart'; + +class SalesOperationsModule extends FeatureModule { + SalesOperationsModule(); + + @override + String get key => 'sales_operations'; + + @override + bool get isEnabled => AppConfig.enableSalesOperations; + + @override + List get dashboardCards => [ + ModuleDashboardCard( + id: 'sales_orders', + route: 'sales_orders', + title: '受注管理', + description: '受注入力と進捗管理', + iconName: 'assignment', + onTap: (context) async { + await Navigator.push(context, MaterialPageRoute(builder: (_) => const SalesOrdersScreen())); + }, + ), + ModuleDashboardCard( + id: 'shipments', + route: 'shipments', + title: '出荷管理', + description: 'ピッキング・配送番号登録', + iconName: 'local_shipping', + onTap: (context) async { + await Navigator.push(context, MaterialPageRoute(builder: (_) => const SalesShipmentsScreen())); + }, + ), + ModuleDashboardCard( + id: 'inventory', + route: 'inventory', + title: '在庫管理', + description: '残高/入出庫履歴を確認', + iconName: 'inventory_2', + onTap: (context) async { + await Navigator.push(context, MaterialPageRoute(builder: (_) => const SalesInventoryScreen())); + }, + ), + ModuleDashboardCard( + id: 'receivables', + route: 'receivables', + title: '回収・入金', + description: '売掛残高と入金状況', + iconName: 'account_balance', + onTap: (context) async { + await Navigator.push(context, MaterialPageRoute(builder: (_) => const SalesReceivablesScreen())); + }, + ), + ]; +} diff --git a/lib/screens/activity_log_screen.dart b/lib/screens/activity_log_screen.dart index c3db9f5..b7b1980 100644 --- a/lib/screens/activity_log_screen.dart +++ b/lib/screens/activity_log_screen.dart @@ -2,6 +2,7 @@ import 'package:flutter/material.dart'; import 'package:intl/intl.dart'; import '../models/activity_log_model.dart'; import '../services/activity_log_repository.dart'; +import '../widgets/screen_id_title.dart'; class ActivityLogScreen extends StatefulWidget { const ActivityLogScreen({super.key}); @@ -36,7 +37,8 @@ class _ActivityLogScreenState extends State { return Scaffold( appBar: AppBar( - title: const Text("アクティビティ履歴 (Gitログ風)"), + leading: const BackButton(), + title: const ScreenAppBarTitle(screenId: 'A1', title: 'アクティビティ履歴'), backgroundColor: Colors.blueGrey.shade800, actions: [ IconButton(icon: const Icon(Icons.refresh), onPressed: _loadLogs), diff --git a/lib/screens/barcode_scanner_screen.dart b/lib/screens/barcode_scanner_screen.dart index 221e37e..82e509b 100644 --- a/lib/screens/barcode_scanner_screen.dart +++ b/lib/screens/barcode_scanner_screen.dart @@ -1,6 +1,8 @@ import 'package:flutter/material.dart'; import 'package:mobile_scanner/mobile_scanner.dart'; +import '../widgets/screen_id_title.dart'; + class BarcodeScannerScreen extends StatefulWidget { const BarcodeScannerScreen({super.key}); @@ -13,7 +15,8 @@ class _BarcodeScannerScreenState extends State { Widget build(BuildContext context) { return Scaffold( appBar: AppBar( - title: const Text("バーコードスキャン"), + leading: const BackButton(), + title: const ScreenAppBarTitle(screenId: 'B1', title: 'バーコードスキャン'), backgroundColor: Colors.black, ), body: MobileScanner( diff --git a/lib/screens/business_profile_screen.dart b/lib/screens/business_profile_screen.dart index d8f9927..01a6ea7 100644 --- a/lib/screens/business_profile_screen.dart +++ b/lib/screens/business_profile_screen.dart @@ -218,6 +218,7 @@ class _BusinessProfileScreenState extends State { Widget build(BuildContext context) { return Scaffold( appBar: AppBar( + leading: const BackButton(), title: const Text('F2:自社情報'), backgroundColor: Colors.indigo, actions: [ diff --git a/lib/screens/chat_screen.dart b/lib/screens/chat_screen.dart index e413fa8..47d1db0 100644 --- a/lib/screens/chat_screen.dart +++ b/lib/screens/chat_screen.dart @@ -84,7 +84,8 @@ class _ChatScreenState extends State { final theme = Theme.of(context); return Scaffold( appBar: AppBar( - title: const Text('母艦チャット'), + leading: const BackButton(), + title: const Text('C1:母艦チャット'), actions: [ IconButton( tooltip: '再同期', diff --git a/lib/screens/company_info_screen.dart b/lib/screens/company_info_screen.dart index ff5e60f..11a6de7 100644 --- a/lib/screens/company_info_screen.dart +++ b/lib/screens/company_info_screen.dart @@ -73,6 +73,7 @@ class _CompanyInfoScreenState extends State { return Scaffold( resizeToAvoidBottomInset: false, appBar: AppBar( + leading: const BackButton(), title: const Text("F1:自社情報"), backgroundColor: Colors.indigo, actions: [ diff --git a/lib/screens/customer_picker_modal.dart b/lib/screens/customer_picker_modal.dart index 462d7c6..7459980 100644 --- a/lib/screens/customer_picker_modal.dart +++ b/lib/screens/customer_picker_modal.dart @@ -222,97 +222,100 @@ class _CustomerPickerModalState extends State { @override Widget build(BuildContext context) { - return Material( - child: KeyboardInsetWrapper( - basePadding: const EdgeInsets.fromLTRB(0, 0, 0, 16), - extraBottom: 32, - child: CustomScrollView( - keyboardDismissBehavior: ScrollViewKeyboardDismissBehavior.onDrag, - slivers: [ - SliverToBoxAdapter( - child: Padding( - padding: const EdgeInsets.all(16.0), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - const Text("顧客マスター管理", style: TextStyle(fontSize: 20, fontWeight: FontWeight.bold)), - IconButton(icon: const Icon(Icons.close), onPressed: () => Navigator.pop(context)), - ], + final body = KeyboardInsetWrapper( + basePadding: const EdgeInsets.fromLTRB(0, 0, 0, 16), + extraBottom: 32, + child: CustomScrollView( + keyboardDismissBehavior: ScrollViewKeyboardDismissBehavior.onDrag, + slivers: [ + SliverToBoxAdapter( + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + TextField( + decoration: InputDecoration( + hintText: "登録済み顧客を検索...", + prefixIcon: const Icon(Icons.search), + border: OutlineInputBorder(borderRadius: BorderRadius.circular(8)), ), - const SizedBox(height: 12), - TextField( - decoration: InputDecoration( - hintText: "登録済み顧客を検索...", - prefixIcon: const Icon(Icons.search), - border: OutlineInputBorder(borderRadius: BorderRadius.circular(8)), - ), - onChanged: _onSearch, + onChanged: _onSearch, + ), + const SizedBox(height: 12), + SizedBox( + width: double.infinity, + child: ElevatedButton.icon( + onPressed: _isImportingFromContacts ? null : _importFromPhoneContacts, + icon: _isImportingFromContacts + ? const SizedBox(width: 20, height: 20, child: CircularProgressIndicator(strokeWidth: 2)) + : const Icon(Icons.contact_phone), + label: const Text("電話帳から新規取り込み"), + style: ElevatedButton.styleFrom(backgroundColor: Colors.blueGrey.shade700, foregroundColor: Colors.white), ), - const SizedBox(height: 12), - SizedBox( - width: double.infinity, - child: ElevatedButton.icon( - onPressed: _isImportingFromContacts ? null : _importFromPhoneContacts, - icon: _isImportingFromContacts - ? const SizedBox(width: 20, height: 20, child: CircularProgressIndicator(strokeWidth: 2)) - : const Icon(Icons.contact_phone), - label: const Text("電話帳から新規取り込み"), - style: ElevatedButton.styleFrom(backgroundColor: Colors.blueGrey.shade700, foregroundColor: Colors.white), - ), - ), - ], - ), + ), + ], ), ), - const SliverToBoxAdapter(child: Divider(height: 1)), - if (_isLoading) - const SliverFillRemaining( - hasScrollBody: false, - child: Center(child: CircularProgressIndicator()), - ) - else if (_filteredCustomers.isEmpty) - const SliverFillRemaining( - hasScrollBody: false, - child: Center(child: Text("該当する顧客がいません")), - ) - else - SliverPadding( - padding: const EdgeInsets.only(bottom: 120), - sliver: SliverList.builder( - itemCount: _filteredCustomers.length, - itemBuilder: (context, index) { - final customer = _filteredCustomers[index]; - return ListTile( - leading: const CircleAvatar(child: Icon(Icons.business)), - title: Text(customer.formalName), - subtitle: Text(customer.department?.isNotEmpty == true ? customer.department! : "部署未設定"), - onTap: () => widget.onCustomerSelected(customer), - trailing: Row( - mainAxisSize: MainAxisSize.min, - children: [ - IconButton( - icon: const Icon(Icons.edit, color: Colors.blueGrey, size: 20), - onPressed: () => _showCustomerEditDialog( - displayName: customer.displayName, - initialFormalName: customer.formalName, - existingCustomer: customer, - ), + ), + const SliverToBoxAdapter(child: Divider(height: 1)), + if (_isLoading) + const SliverFillRemaining( + hasScrollBody: false, + child: Center(child: CircularProgressIndicator()), + ) + else if (_filteredCustomers.isEmpty) + const SliverFillRemaining( + hasScrollBody: false, + child: Center(child: Text("該当する顧客がいません")), + ) + else + SliverPadding( + padding: const EdgeInsets.only(bottom: 120), + sliver: SliverList.builder( + itemCount: _filteredCustomers.length, + itemBuilder: (context, index) { + final customer = _filteredCustomers[index]; + return ListTile( + leading: const CircleAvatar(child: Icon(Icons.business)), + title: Text(customer.formalName), + subtitle: Text(customer.department?.isNotEmpty == true ? customer.department! : "部署未設定"), + onTap: () => widget.onCustomerSelected(customer), + trailing: Row( + mainAxisSize: MainAxisSize.min, + children: [ + IconButton( + icon: const Icon(Icons.edit, color: Colors.blueGrey, size: 20), + onPressed: () => _showCustomerEditDialog( + displayName: customer.displayName, + initialFormalName: customer.formalName, + existingCustomer: customer, ), - IconButton( - icon: const Icon(Icons.delete_outline, color: Colors.redAccent, size: 20), - onPressed: () => _confirmDelete(customer), - ), - ], - ), - ); - }, - ), + ), + IconButton( + icon: const Icon(Icons.delete_outline, color: Colors.redAccent, size: 20), + onPressed: () => _confirmDelete(customer), + ), + ], + ), + ); + }, ), - ], + ), + ], + ), + ); + + return SafeArea( + child: Scaffold( + appBar: AppBar( + leading: IconButton( + icon: const Icon(Icons.close), + onPressed: () => Navigator.pop(context), + ), + title: const Text('U2:取引先選択'), ), + body: body, ), ); } diff --git a/lib/screens/dashboard_screen.dart b/lib/screens/dashboard_screen.dart index aa3b3cb..8ab152e 100644 --- a/lib/screens/dashboard_screen.dart +++ b/lib/screens/dashboard_screen.dart @@ -1,18 +1,21 @@ import 'dart:io'; import 'package:flutter/material.dart'; +import '../config/app_config.dart'; +import '../models/invoice_models.dart'; +import '../modules/feature_module.dart'; +import '../modules/module_registry.dart'; import '../services/app_settings_repository.dart'; +import '../services/customer_repository.dart'; +import '../services/location_service.dart'; +import '../widgets/slide_to_unlock.dart'; +import 'customer_master_screen.dart'; +import 'invoice_detail_page.dart'; import 'invoice_history_screen.dart'; import 'invoice_input_screen.dart'; -import 'invoice_detail_page.dart'; -import 'customer_master_screen.dart'; +import 'master_hub_page.dart'; +import 'sales_orders_screen.dart'; import 'product_master_screen.dart'; import 'settings_screen.dart'; -import 'master_hub_page.dart'; -import '../models/invoice_models.dart'; -import '../services/location_service.dart'; -import '../services/customer_repository.dart'; -import '../widgets/slide_to_unlock.dart'; -import '../config/app_config.dart'; class DashboardScreen extends StatefulWidget { const DashboardScreen({super.key}); @@ -23,11 +26,13 @@ class DashboardScreen extends StatefulWidget { class _DashboardScreenState extends State { final _repo = AppSettingsRepository(); + final _moduleRegistry = ModuleRegistry.instance; bool _loading = true; bool _statusEnabled = true; String _statusText = '工事中'; List _menu = []; bool _historyUnlocked = false; + List _moduleCards = []; @override void initState() { @@ -39,8 +44,9 @@ class _DashboardScreenState extends State { final statusEnabled = await _repo.getDashboardStatusEnabled(); final statusText = await _repo.getDashboardStatusText(); final rawMenu = await _repo.getDashboardMenu(); - final enabledRoutes = AppConfig.enabledRoutes; - final menu = rawMenu.where((m) => enabledRoutes.contains(m.route)).toList(); + final moduleCards = _moduleRegistry.enabledCards.toList(); + final menu = rawMenu.toList(); + _ensureModuleCardsInjected(menu, moduleCards); final unlocked = await _repo.getDashboardHistoryUnlocked(); setState(() { _statusEnabled = statusEnabled; @@ -48,16 +54,53 @@ class _DashboardScreenState extends State { _menu = menu; _loading = false; _historyUnlocked = unlocked; + _moduleCards = moduleCards; }); } + Set _enabledRouteSet() { + final routes = {...AppConfig.enabledRoutes}; + for (final card in _moduleRegistry.enabledCards) { + routes.add(card.route); + } + return routes; + } + + void _ensureModuleCardsInjected(List menu, List cards) { + final existingRoutes = menu.map((m) => m.route).toSet(); + for (final card in cards) { + if (!existingRoutes.contains(card.route)) { + menu.add(DashboardMenuItem(id: card.id, title: card.title, route: card.route, iconName: card.iconName)); + } + } + } + + ModuleDashboardCard? _moduleCardForRoute(String route) { + for (final card in _moduleCards) { + if (card.route == route) { + return card; + } + } + return null; + } + void _navigate(DashboardMenuItem item) async { Widget? target; - final enabledRoutes = AppConfig.enabledRoutes; + final enabledRoutes = _enabledRouteSet(); if (!enabledRoutes.contains(item.route)) { ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('この機能は現在ご利用いただけません'))); return; } + final moduleCard = _moduleCardForRoute(item.route); + if (moduleCard != null) { + if (moduleCard.requiresUnlock && !_historyUnlocked) { + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('ロックを解除してください'))); + return; + } + await moduleCard.onTap(context); + return; + } + switch (item.route) { case 'invoice_history': if (!_historyUnlocked) { @@ -96,6 +139,9 @@ class _DashboardScreenState extends State { case 'settings': target = const SettingsScreen(); break; + case 'sales_operations': + target = const SalesOrdersScreen(); + break; default: target = const InvoiceHistoryScreen(); break; @@ -157,6 +203,10 @@ class _DashboardScreenState extends State { } String _routeLabel(String route) { + final moduleCard = _moduleCardForRoute(route); + if (moduleCard != null) { + return moduleCard.description; + } switch (route) { case 'invoice_history': return 'A2:伝票一覧'; @@ -170,6 +220,8 @@ class _DashboardScreenState extends State { return 'M1:マスター管理'; case 'settings': return 'S1:設定'; + case 'sales_operations': + return 'B1:販売オペレーション'; default: return route; } diff --git a/lib/screens/department_master_screen.dart b/lib/screens/department_master_screen.dart new file mode 100644 index 0000000..50061f0 --- /dev/null +++ b/lib/screens/department_master_screen.dart @@ -0,0 +1,225 @@ +import 'package:flutter/material.dart'; +import 'package:uuid/uuid.dart'; + +import '../models/department_model.dart'; +import '../services/department_repository.dart'; + +class DepartmentMasterScreen extends StatefulWidget { + const DepartmentMasterScreen({super.key}); + + @override + State createState() => _DepartmentMasterScreenState(); +} + +class _DepartmentMasterScreenState extends State { + final DepartmentRepository _repository = DepartmentRepository(); + final Uuid _uuid = const Uuid(); + + bool _isLoading = true; + bool _includeInactive = true; + List _departments = const []; + + @override + void initState() { + super.initState(); + _loadDepartments(); + } + + Future _loadDepartments() async { + setState(() => _isLoading = true); + final list = await _repository.fetchDepartments(includeInactive: _includeInactive); + if (!mounted) return; + setState(() { + _departments = list; + _isLoading = false; + }); + } + + Future _openForm({Department? department}) async { + final result = await showDialog( + context: context, + builder: (ctx) => _DepartmentFormDialog( + department: department, + onSubmit: (data) => Navigator.of(ctx).pop(data), + ), + ); + if (result == null) return; + final saving = result.copyWith(id: result.id.isEmpty ? _uuid.v4() : result.id, updatedAt: DateTime.now()); + await _repository.saveDepartment(saving); + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('部門を保存しました'))); + _loadDepartments(); + } + + Future _deleteDepartment(Department department) async { + final confirmed = await showDialog( + context: context, + builder: (ctx) => AlertDialog( + title: const Text('部門を削除'), + content: Text('${department.name} を削除しますか?'), + actions: [ + TextButton(onPressed: () => Navigator.pop(ctx, false), child: const Text('キャンセル')), + TextButton(onPressed: () => Navigator.pop(ctx, true), child: const Text('削除', style: TextStyle(color: Colors.red))), + ], + ), + ); + if (confirmed != true) return; + await _repository.deleteDepartment(department.id); + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('部門を削除しました'))); + _loadDepartments(); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + leading: const BackButton(), + title: const Text('M4:部門マスター'), + actions: [ + SwitchListTile.adaptive( + value: _includeInactive, + onChanged: (value) { + setState(() => _includeInactive = value); + _loadDepartments(); + }, + contentPadding: const EdgeInsets.only(right: 12), + title: const Text('無効を表示'), + ), + ], + ), + floatingActionButton: FloatingActionButton( + onPressed: () => _openForm(), + child: const Icon(Icons.add), + ), + body: _isLoading + ? const Center(child: CircularProgressIndicator()) + : _departments.isEmpty + ? const _EmptyState(message: '部門が登録されていません') + : ListView.separated( + padding: const EdgeInsets.all(16), + itemCount: _departments.length, + separatorBuilder: (context, _) => const SizedBox(height: 8), + itemBuilder: (context, index) { + final department = _departments[index]; + return Card( + child: ListTile( + title: Text(department.name, style: const TextStyle(fontWeight: FontWeight.bold)), + subtitle: Text([ + if (department.code?.isNotEmpty == true) 'コード: ${department.code}', + department.description ?? '', + department.isActive ? '稼働中' : '無効', + ].where((v) => v.isNotEmpty).join('\n')), + trailing: PopupMenuButton( + onSelected: (value) { + switch (value) { + case 'edit': + _openForm(department: department); + break; + case 'delete': + _deleteDepartment(department); + break; + } + }, + itemBuilder: (context) => const [ + PopupMenuItem(value: 'edit', child: Text('編集')), + PopupMenuItem(value: 'delete', child: Text('削除')), + ], + ), + ), + ); + }, + ), + ); + } +} + +class _DepartmentFormDialog extends StatefulWidget { + const _DepartmentFormDialog({required this.onSubmit, this.department}); + + final Department? department; + final ValueChanged onSubmit; + + @override + State<_DepartmentFormDialog> createState() => _DepartmentFormDialogState(); +} + +class _DepartmentFormDialogState extends State<_DepartmentFormDialog> { + late final TextEditingController _nameController; + late final TextEditingController _codeController; + late final TextEditingController _descriptionController; + bool _isActive = true; + + @override + void initState() { + super.initState(); + final department = widget.department; + _nameController = TextEditingController(text: department?.name ?? ''); + _codeController = TextEditingController(text: department?.code ?? ''); + _descriptionController = TextEditingController(text: department?.description ?? ''); + _isActive = department?.isActive ?? true; + } + + void _submit() { + if (_nameController.text.trim().isEmpty) { + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('部門名は必須です'))); + return; + } + widget.onSubmit( + Department( + id: widget.department?.id ?? '', + name: _nameController.text.trim(), + code: _codeController.text.trim().isEmpty ? null : _codeController.text.trim(), + description: _descriptionController.text.trim().isEmpty ? null : _descriptionController.text.trim(), + isActive: _isActive, + updatedAt: DateTime.now(), + ), + ); + } + + @override + Widget build(BuildContext context) { + return AlertDialog( + title: Text(widget.department == null ? '部門を追加' : '部門を編集'), + content: SingleChildScrollView( + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + TextField(controller: _nameController, decoration: const InputDecoration(labelText: '部門名 *')), + TextField(controller: _codeController, decoration: const InputDecoration(labelText: '部門コード')), + TextField(controller: _descriptionController, decoration: const InputDecoration(labelText: '説明'), maxLines: 2), + SwitchListTile( + title: const Text('稼働中'), + value: _isActive, + onChanged: (value) => setState(() => _isActive = value), + ), + ], + ), + ), + actions: [ + TextButton(onPressed: () => Navigator.pop(context), child: const Text('キャンセル')), + FilledButton(onPressed: _submit, child: const Text('保存')), + ], + ); + } +} + +class _EmptyState extends StatelessWidget { + const _EmptyState({required this.message}); + + final String message; + + @override + Widget build(BuildContext context) { + return Center( + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const Icon(Icons.view_list, size: 64, color: Colors.grey), + const SizedBox(height: 16), + Text(message), + ], + ), + ); + } +} diff --git a/lib/screens/email_settings_screen.dart b/lib/screens/email_settings_screen.dart index 0b7b56e..8dcb304 100644 --- a/lib/screens/email_settings_screen.dart +++ b/lib/screens/email_settings_screen.dart @@ -325,6 +325,7 @@ class _EmailSettingsScreenState extends State { final listBottomPadding = 24 + bottomInset; return Scaffold( appBar: AppBar( + leading: const BackButton(), title: const Text('SM:メール設定'), backgroundColor: Colors.indigo, ), diff --git a/lib/screens/gps_history_screen.dart b/lib/screens/gps_history_screen.dart index d7965f9..2834ff6 100644 --- a/lib/screens/gps_history_screen.dart +++ b/lib/screens/gps_history_screen.dart @@ -33,7 +33,8 @@ class _GpsHistoryScreenState extends State { Widget build(BuildContext context) { return Scaffold( appBar: AppBar( - title: const Text("GPS位置情報履歴"), + leading: const BackButton(), + title: const Text("G1:GPS位置履歴"), backgroundColor: Colors.blueGrey, actions: [ IconButton(onPressed: _loadHistory, icon: const Icon(Icons.refresh)), diff --git a/lib/screens/invoice_history_screen.dart b/lib/screens/invoice_history_screen.dart index f923432..a799089 100644 --- a/lib/screens/invoice_history_screen.dart +++ b/lib/screens/invoice_history_screen.dart @@ -10,7 +10,6 @@ import 'customer_master_screen.dart'; import 'invoice_input_screen.dart'; import 'settings_screen.dart'; import 'company_info_screen.dart'; -import 'dashboard_screen.dart'; import '../services/app_settings_repository.dart'; import '../widgets/slide_to_unlock.dart'; // InvoiceFlowScreen import removed; using inline type picker @@ -290,23 +289,13 @@ class _InvoiceHistoryScreenState extends State { appBar: AppBar( automaticallyImplyLeading: false, leading: _useDashboardHome - ? IconButton( - icon: const Icon(Icons.arrow_back), - onPressed: () { - Navigator.pushReplacement( - context, - MaterialPageRoute(builder: (_) => const DashboardScreen()), - ); - }, + ? Builder( + builder: (ctx) => IconButton( + icon: const Icon(Icons.menu), + onPressed: () => Scaffold.of(ctx).openDrawer(), + ), ) - : (_isUnlocked - ? Builder( - builder: (ctx) => IconButton( - icon: const Icon(Icons.menu), - onPressed: () => Scaffold.of(ctx).openDrawer(), - ), - ) - : null), + : const BackButton(), title: GestureDetector( onLongPress: () { Navigator.push( diff --git a/lib/screens/invoice_input_screen.dart b/lib/screens/invoice_input_screen.dart index 185702a..f30cc8b 100644 --- a/lib/screens/invoice_input_screen.dart +++ b/lib/screens/invoice_input_screen.dart @@ -75,6 +75,7 @@ class _InvoiceInputFormState extends State { List _editLogs = []; final FocusNode _subjectFocusNode = FocusNode(); String _lastLoggedSubject = ""; + bool _hasUnsavedChanges = false; String _documentTypeLabel(DocumentType type) { switch (type) { @@ -113,14 +114,73 @@ class _InvoiceInputFormState extends State { return _currentId!; } - void _copyAsNew() { + Future _confirmDiscardChanges() async { + if (!_hasUnsavedChanges || _isSaving) { + return true; + } + final result = await showDialog( + context: context, + barrierDismissible: false, + builder: (context) => AlertDialog( + title: const Text('保存されていない変更があります'), + content: const Text('編集した内容を破棄してもよろしいですか?'), + actions: [ + TextButton( + onPressed: () => Navigator.of(context).pop(false), + child: const Text('編集を続ける'), + ), + FilledButton( + onPressed: () => Navigator.of(context).pop(true), + child: const Text('破棄する'), + ), + ], + ), + ); + return result ?? false; + } + + Future _handleBackPressed() async { + final allow = await _confirmDiscardChanges(); + if (!mounted || !allow) return; + Navigator.of(context).maybePop(); + } + + Future _pickCopyDocumentType() { + return showDialog( + context: context, + builder: (context) => SimpleDialog( + title: const Text('コピー後の伝票種別を選択'), + children: DocumentType.values.map((type) { + final isCurrent = type == _documentType; + return SimpleDialogOption( + onPressed: () => Navigator.of(context).pop(type), + child: Row( + children: [ + Icon( + isCurrent ? Icons.check_circle : Icons.circle_outlined, + color: _documentTypeColor(type), + ), + const SizedBox(width: 12), + Text(_documentTypeLabel(type)), + ], + ), + ); + }).toList(), + ), + ); + } + + Future _copyAsNew() async { if (widget.existingInvoice == null && _currentId == null) return; + final selectedType = await _pickCopyDocumentType(); + if (selectedType == null) return; final clonedItems = _cloneItems(_items, resetIds: true); setState(() { _currentId = DateTime.now().millisecondsSinceEpoch.toString(); _isDraft = true; _isLocked = false; _selectedDate = DateTime.now(); + _documentType = selectedType; _items ..clear() ..addAll(clonedItems); @@ -159,6 +219,7 @@ class _InvoiceInputFormState extends State { final savedSummary = await _settingsRepo.getSummaryTheme(); _summaryIsBlue = savedSummary == 'blue'; + _isApplyingSnapshot = true; setState(() { // 既存伝票がある場合は初期値を上書き if (widget.existingInvoice != null) { @@ -182,10 +243,14 @@ class _InvoiceInputFormState extends State { _isLocked = false; } }); + _isApplyingSnapshot = false; _isViewMode = widget.startViewMode; // 指定に従う _showNewBadge = widget.showNewBadge; _showCopyBadge = widget.showCopyBadge; - _pushHistory(clearRedo: true); + _pushHistory(clearRedo: true, markDirty: false); + if (_hasUnsavedChanges) { + setState(() => _hasUnsavedChanges = false); + } _lastLoggedSubject = _subjectController.text; if (_currentId != null) { _loadEditLogs(); @@ -287,7 +352,12 @@ class _InvoiceInputFormState extends State { } await _editLogRepo.addLog(_currentId!, "伝票を保存しました"); await _loadEditLogs(); - if (mounted) setState(() => _isViewMode = true); + if (mounted) { + setState(() { + _isViewMode = true; + _hasUnsavedChanges = false; + }); + } } catch (e) { if (mounted) { ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('保存に失敗しました: $e'))); @@ -346,7 +416,7 @@ class _InvoiceInputFormState extends State { ); } - void _pushHistory({bool clearRedo = false}) { + void _pushHistory({bool clearRedo = false, bool markDirty = true}) { setState(() { if (_undoStack.length >= 30) _undoStack.removeAt(0); _undoStack.add(_InvoiceSnapshot( @@ -360,6 +430,9 @@ class _InvoiceInputFormState extends State { subject: _subjectController.text, )); if (clearRedo) _redoStack.clear(); + if (markDirty) { + _hasUnsavedChanges = true; + } }); } @@ -432,100 +505,113 @@ class _InvoiceInputFormState extends State { final docColor = _documentTypeColor(_documentType); - return Scaffold( - backgroundColor: themeColor, - resizeToAvoidBottomInset: false, - appBar: AppBar( - backgroundColor: docColor, - leading: const BackButton(), - title: Text("A1:${_documentTypeLabel(_documentType)}"), - actions: [ - if (_isDraft) - Padding( - padding: const EdgeInsets.symmetric(horizontal: 8, vertical: 10), - child: _DraftBadge(), - ), - IconButton( - icon: const Icon(Icons.copy), - tooltip: "コピーして新規", - onPressed: _copyAsNew, + return PopScope( + canPop: false, + onPopInvokedWithResult: (didPop, result) async { + if (didPop) return; + final allow = await _confirmDiscardChanges(); + if (allow && context.mounted) { + Navigator.of(context).pop(result); + } + }, + child: Scaffold( + backgroundColor: themeColor, + resizeToAvoidBottomInset: false, + appBar: AppBar( + backgroundColor: docColor, + leading: IconButton( + icon: const Icon(Icons.arrow_back), + onPressed: () => _handleBackPressed(), ), - if (_isLocked) - const Padding( - padding: EdgeInsets.symmetric(horizontal: 8), - child: Icon(Icons.lock, color: Colors.white), - ) - else if (_isViewMode) - IconButton( - icon: const Icon(Icons.edit), - tooltip: "編集モードにする", - onPressed: () => setState(() => _isViewMode = false), - ) - else ...[ - IconButton( - icon: const Icon(Icons.undo), - onPressed: _canUndo ? _undo : null, - tooltip: "元に戻す", - ), - IconButton( - icon: const Icon(Icons.redo), - onPressed: _canRedo ? _redo : null, - tooltip: "やり直す", - ), - if (!_isLocked) - IconButton( - icon: const Icon(Icons.save), - tooltip: "保存", - onPressed: _isSaving ? null : () => _saveInvoice(generatePdf: false), + title: Text("A1:${_documentTypeLabel(_documentType)}"), + actions: [ + if (_isDraft) + Padding( + padding: const EdgeInsets.symmetric(horizontal: 8, vertical: 10), + child: _DraftBadge(), ), + IconButton( + icon: const Icon(Icons.copy), + tooltip: "コピーして新規", + onPressed: () => _copyAsNew(), + ), + if (_isLocked) + const Padding( + padding: EdgeInsets.symmetric(horizontal: 8), + child: Icon(Icons.lock, color: Colors.white), + ) + else if (_isViewMode) + IconButton( + icon: const Icon(Icons.edit), + tooltip: "編集モードにする", + onPressed: () => setState(() => _isViewMode = false), + ) + else ...[ + IconButton( + icon: const Icon(Icons.undo), + onPressed: _canUndo ? _undo : null, + tooltip: "元に戻す", + ), + IconButton( + icon: const Icon(Icons.redo), + onPressed: _canRedo ? _redo : null, + tooltip: "やり直す", + ), + if (!_isLocked) + IconButton( + icon: const Icon(Icons.save), + tooltip: "保存", + onPressed: _isSaving ? null : () => _saveInvoice(generatePdf: false), + ), + ], ], - ], - ), - body: Stack( - children: [ - Column( - children: [ - Expanded( - child: SingleChildScrollView( - padding: EdgeInsets.fromLTRB(16, 16, 16, MediaQuery.of(context).viewInsets.bottom + 140), - keyboardDismissBehavior: ScrollViewKeyboardDismissBehavior.onDrag, + ), + body: Stack( + children: [ + Column( + children: [ + Expanded( + child: SingleChildScrollView( + padding: EdgeInsets.fromLTRB(16, 16, 16, MediaQuery.of(context).viewInsets.bottom + 140), + keyboardDismissBehavior: ScrollViewKeyboardDismissBehavior.onDrag, + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + _buildDateSection(), + const SizedBox(height: 16), + _buildCustomerSection(), + const SizedBox(height: 16), + _buildSubjectSection(textColor), + const SizedBox(height: 20), + _buildItemsSection(fmt), + const SizedBox(height: 20), + _buildSummarySection(fmt), + const SizedBox(height: 12), + _buildEditLogsSection(), + const SizedBox(height: 20), + ], + ), + ), + ), + _buildBottomActionBar(), + ], + ), + if (_isSaving) + Container( + color: Colors.black54, + child: const Center( child: Column( - crossAxisAlignment: CrossAxisAlignment.start, + mainAxisSize: MainAxisSize.min, children: [ - _buildDateSection(), - const SizedBox(height: 16), - _buildCustomerSection(), - const SizedBox(height: 16), - _buildSubjectSection(textColor), - const SizedBox(height: 20), - _buildItemsSection(fmt), - const SizedBox(height: 20), - _buildSummarySection(fmt), - const SizedBox(height: 12), - _buildEditLogsSection(), - const SizedBox(height: 20), + CircularProgressIndicator(color: Colors.white), + SizedBox(height: 16), + Text("保存中...", style: TextStyle(color: Colors.white, fontSize: 16, fontWeight: FontWeight.bold)), ], ), ), ), - _buildBottomActionBar(), - ], - ), - if (_isSaving) - Container( - color: Colors.black54, - child: const Center( - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - CircularProgressIndicator(color: Colors.white), - SizedBox(height: 16), - Text("保存中...", style: TextStyle(color: Colors.white, fontSize: 16, fontWeight: FontWeight.bold)), - ], - ), - ), - ), - ], + ], + ), ), ); } diff --git a/lib/screens/management_screen.dart b/lib/screens/management_screen.dart index 0910a87..044bdf2 100644 --- a/lib/screens/management_screen.dart +++ b/lib/screens/management_screen.dart @@ -1,10 +1,8 @@ -import 'dart:io'; import 'package:flutter/material.dart'; import 'package:share_plus/share_plus.dart'; -import 'package:sqflite/sqflite.dart'; -import 'package:path/path.dart' as p; import '../services/invoice_repository.dart'; import '../services/customer_repository.dart'; +import '../services/database_maintenance_service.dart'; import 'product_master_screen.dart'; import 'customer_master_screen.dart'; import 'activity_log_screen.dart'; @@ -19,12 +17,13 @@ class ManagementScreen extends StatefulWidget { } class _ManagementScreenState extends State { + final _dbMaintenance = const DatabaseMaintenanceService(); @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( leading: const BackButton(), - title: const Text("マスター管理・同期"), + title: const Text("M2:マスター管理・同期"), backgroundColor: Colors.blueGrey, ), body: ListView( @@ -157,13 +156,12 @@ class _ManagementScreenState extends State { } Future _backupDatabase(BuildContext context) async { - final dbPath = p.join(await getDatabasesPath(), 'gemi_invoice.db'); - final file = File(dbPath); - if (await file.exists()) { + final file = await _dbMaintenance.getDatabaseFile(); + if (file != null) { await SharePlus.instance.share( ShareParams( text: '販売アシスト1号_DBバックアップ', - files: [XFile(dbPath)], + files: [XFile(file.path)], ), ); } else { diff --git a/lib/screens/master_hub_page.dart b/lib/screens/master_hub_page.dart index 85b50eb..9118e88 100644 --- a/lib/screens/master_hub_page.dart +++ b/lib/screens/master_hub_page.dart @@ -1,7 +1,11 @@ import 'package:flutter/material.dart'; import 'customer_master_screen.dart'; +import 'department_master_screen.dart'; import 'product_master_screen.dart'; import 'settings_screen.dart'; +import 'staff_master_screen.dart'; +import 'supplier_master_screen.dart'; +import 'tax_setting_screen.dart'; class MasterHubPage extends StatelessWidget { const MasterHubPage({super.key}); @@ -15,12 +19,36 @@ class MasterHubPage extends StatelessWidget { icon: Icons.people, builder: (_) => const CustomerMasterScreen(), ), + MasterEntry( + title: '仕入先マスター', + description: '仕入先・支払条件の管理', + icon: Icons.factory, + builder: (_) => const SupplierMasterScreen(), + ), MasterEntry( title: '商品マスター', description: '商品情報の管理・編集', icon: Icons.inventory_2, builder: (_) => const ProductMasterScreen(), ), + MasterEntry( + title: '部門マスター', + description: '部門・部署構成を管理', + icon: Icons.apartment, + builder: (_) => const DepartmentMasterScreen(), + ), + MasterEntry( + title: '担当者マスター', + description: '社内スタッフと権限を管理', + icon: Icons.badge, + builder: (_) => const StaffMasterScreen(), + ), + MasterEntry( + title: '消費税・端数設定', + description: '税率と端数処理ルールを設定', + icon: Icons.calculate, + builder: (_) => const TaxSettingScreen(), + ), MasterEntry( title: '設定', description: 'アプリ設定・メニュー管理', @@ -31,11 +59,12 @@ class MasterHubPage extends StatelessWidget { return Scaffold( appBar: AppBar( + leading: const BackButton(), title: Column( crossAxisAlignment: CrossAxisAlignment.start, children: const [ - Text('マスター管理'), - Text('ScreenID: 03', style: TextStyle(fontSize: 11, color: Colors.white70)), + Text('M3:マスター管理'), + Text('ScreenID: M3', style: TextStyle(fontSize: 11, color: Colors.white70)), ], ), ), diff --git a/lib/screens/product_master_screen.dart b/lib/screens/product_master_screen.dart index 7055d3f..838af38 100644 --- a/lib/screens/product_master_screen.dart +++ b/lib/screens/product_master_screen.dart @@ -61,6 +61,7 @@ class _ProductMasterScreenState extends State { final nameController = TextEditingController(text: product?.name ?? ""); final priceController = TextEditingController(text: (product?.defaultUnitPrice ?? 0).toString()); final barcodeController = TextEditingController(text: product?.barcode ?? ""); + final wholesaleController = TextEditingController(text: (product?.wholesalePrice ?? 0).toString()); final categoryController = TextEditingController(text: product?.category ?? ""); final stockController = TextEditingController(text: (product?.stockQuantity ?? 0).toString()); @@ -84,6 +85,7 @@ class _ProductMasterScreenState extends State { TextField(controller: nameController, decoration: const InputDecoration(labelText: "商品名")), TextField(controller: categoryController, decoration: const InputDecoration(labelText: "カテゴリ")), TextField(controller: priceController, decoration: const InputDecoration(labelText: "初期単価"), keyboardType: TextInputType.number), + TextField(controller: wholesaleController, decoration: const InputDecoration(labelText: "仕入値(卸値)"), keyboardType: TextInputType.number), TextField(controller: stockController, decoration: const InputDecoration(labelText: "在庫数"), keyboardType: TextInputType.number), const SizedBox(height: 8), Row( @@ -121,6 +123,7 @@ class _ProductMasterScreenState extends State { id: newId, name: nameController.text.trim(), defaultUnitPrice: int.tryParse(priceController.text) ?? 0, + wholesalePrice: int.tryParse(wholesaleController.text) ?? 0, barcode: barcodeController.text.isEmpty ? null : barcodeController.text.trim(), category: categoryController.text.isEmpty ? null : categoryController.text.trim(), stockQuantity: int.tryParse(stockController.text) ?? 0, @@ -207,7 +210,7 @@ class _ProductMasterScreenState extends State { : (p.isLocked ? Colors.grey : Colors.black87), ), ), - subtitle: Text("${p.category ?? '未分類'} - ¥${p.defaultUnitPrice} (在庫: ${p.stockQuantity})"), + subtitle: Text("${p.category ?? '未分類'} - 販売¥${p.defaultUnitPrice} / 仕入¥${p.wholesalePrice} (在庫: ${p.stockQuantity})"), onTap: () { if (widget.selectionMode) { if (p.isHidden) return; // safety: do not return hidden in selection @@ -312,7 +315,8 @@ class _ProductMasterScreenState extends State { ], ), const SizedBox(height: 8), - Text("単価: ¥${p.defaultUnitPrice}"), + Text("販売単価: ¥${p.defaultUnitPrice}"), + Text("仕入値: ¥${p.wholesalePrice}"), Text("在庫: ${p.stockQuantity}"), if (p.barcode != null && p.barcode!.isNotEmpty) Text("バーコード: ${p.barcode}"), const SizedBox(height: 12), diff --git a/lib/screens/product_picker_modal.dart b/lib/screens/product_picker_modal.dart index 328f5f5..7926c00 100644 --- a/lib/screens/product_picker_modal.dart +++ b/lib/screens/product_picker_modal.dart @@ -7,8 +7,9 @@ import 'product_master_screen.dart'; /// 商品マスターから項目を選択するためのモーダル(スタブ実装) class ProductPickerModal extends StatefulWidget { final Function(InvoiceItem) onItemSelected; + final ValueChanged? onProductSelected; - const ProductPickerModal({super.key, required this.onItemSelected}); + const ProductPickerModal({super.key, required this.onItemSelected, this.onProductSelected}); @override State createState() => _ProductPickerModalState(); @@ -105,6 +106,7 @@ class _ProductPickerModalState extends State { title: Text(product.name), subtitle: Text("¥${product.defaultUnitPrice} (在庫: ${product.stockQuantity})"), onTap: () { + widget.onProductSelected?.call(product); widget.onItemSelected( InvoiceItem( productId: product.id, diff --git a/lib/screens/sales_dashboard_screen.dart b/lib/screens/sales_dashboard_screen.dart new file mode 100644 index 0000000..5b3dc65 --- /dev/null +++ b/lib/screens/sales_dashboard_screen.dart @@ -0,0 +1,162 @@ +import 'package:flutter/material.dart'; + +import 'sales_report_screen.dart'; + +class SalesDashboardScreen extends StatelessWidget { + const SalesDashboardScreen({super.key}); + + void _openAnalytics(BuildContext context) { + Navigator.push( + context, + MaterialPageRoute(builder: (_) => const SalesReportScreen()), + ); + } + + @override + Widget build(BuildContext context) { + final theme = Theme.of(context); + return Scaffold( + appBar: AppBar( + leading: const BackButton(), + title: const Text('R0:売上ダッシュボード'), + backgroundColor: Colors.indigo, + foregroundColor: Colors.white, + ), + body: ListView( + padding: const EdgeInsets.all(16), + children: [ + _buildHeroCard(theme), + const SizedBox(height: 16), + _buildLauncherCard(context, theme), + const SizedBox(height: 16), + _buildComingSoonCard(theme), + ], + ), + ); + } + + Widget _buildHeroCard(ThemeData theme) { + return Container( + decoration: BoxDecoration( + gradient: LinearGradient( + colors: [Colors.indigo.shade600, Colors.indigo.shade300], + begin: Alignment.topLeft, + end: Alignment.bottomRight, + ), + borderRadius: BorderRadius.circular(20), + boxShadow: [ + BoxShadow( + color: Colors.indigo.withValues(alpha: 0.25), + blurRadius: 16, + offset: const Offset(0, 8), + ), + ], + ), + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + '売上管理モジュール', + style: theme.textTheme.titleLarge?.copyWith( + color: Colors.white, + fontWeight: FontWeight.bold, + ), + ), + const SizedBox(height: 12), + Text( + 'ダッシュボードはランチャーとして機能し、分析モジュールや将来のサブ機能へのエントリーポイントをまとめて提供します。', + style: theme.textTheme.bodyMedium?.copyWith(color: Colors.white70), + ), + ], + ), + ); + } + + Widget _buildLauncherCard(BuildContext context, ThemeData theme) { + return Card( + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20)), + child: Padding( + padding: const EdgeInsets.all(20), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + children: [ + Icon(Icons.analytics_outlined, color: Colors.indigo.shade600), + const SizedBox(width: 8), + const Text( + '売上分析モジュール', + style: TextStyle(fontWeight: FontWeight.bold, fontSize: 16), + ), + ], + ), + const SizedBox(height: 12), + const Text( + '年間売上やトップ顧客の内訳を詳細に確認したい場合はこちらからアクセスしてください。', + ), + const SizedBox(height: 16), + Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const Icon(Icons.check_circle, color: Colors.indigo), + const SizedBox(width: 8), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: const [ + Text('年度切り替え / ドキュメント種別フィルタ'), + SizedBox(height: 4), + Text('トップ顧客・月次トレンド・ドラフト状況の把握'), + ], + ), + ), + ], + ), + const SizedBox(height: 20), + FilledButton.icon( + onPressed: () => _openAnalytics(context), + style: FilledButton.styleFrom( + backgroundColor: Colors.indigo, + padding: const EdgeInsets.symmetric(vertical: 14, horizontal: 18), + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(16)), + ), + icon: const Icon(Icons.open_in_new), + label: const Text('売上分析モジュールを開く'), + ), + ], + ), + ), + ); + } + + Widget _buildComingSoonCard(ThemeData theme) { + return Card( + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20)), + child: Padding( + padding: const EdgeInsets.all(20), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + children: const [ + Icon(Icons.extension, color: Colors.grey), + SizedBox(width: 8), + Text('近日提供予定のメニュー', style: TextStyle(fontWeight: FontWeight.bold)), + ], + ), + const SizedBox(height: 12), + const Text('・ 売掛残高の自動集計 / 着地予測'), + const Text('・ 商品カテゴリ別の利益率ダッシュボード'), + const Text('・ 重点顧客へのフォローアップリマインダー'), + const SizedBox(height: 12), + Text( + 'ダッシュボードはランチャーとして、こうした追加モジュールへの入り口を順次揃えていきます。', + style: theme.textTheme.bodySmall, + ), + ], + ), + ), + ); + } +} diff --git a/lib/screens/sales_entries_screen.dart b/lib/screens/sales_entries_screen.dart new file mode 100644 index 0000000..f996175 --- /dev/null +++ b/lib/screens/sales_entries_screen.dart @@ -0,0 +1,1252 @@ +import 'dart:async'; + +import 'package:flutter/material.dart'; +import 'package:intl/intl.dart'; +import 'package:uuid/uuid.dart'; + +import '../models/customer_model.dart'; +import '../models/invoice_models.dart'; +import '../models/product_model.dart'; +import '../models/sales_entry_models.dart'; +import '../services/app_settings_repository.dart'; +import '../services/edit_log_repository.dart'; +import '../services/sales_entry_service.dart'; +import '../widgets/line_item_editor.dart'; +import '../widgets/screen_id_title.dart'; +import 'customer_picker_modal.dart'; +import 'product_picker_modal.dart'; + +class SalesEntriesScreen extends StatefulWidget { + const SalesEntriesScreen({super.key}); + + @override + State createState() => _SalesEntriesScreenState(); +} + +class _SalesEntriesScreenState extends State { + final SalesEntryService _service = SalesEntryService(); + final NumberFormat _currencyFormat = NumberFormat.currency(locale: 'ja_JP', symbol: '¥'); + + bool _isLoading = true; + bool _isRefreshing = false; + List _entries = const []; + SalesEntryStatus? _filterStatus; + + @override + void initState() { + super.initState(); + _loadEntries(); + } + + Future _loadEntries() async { + if (!_isRefreshing) { + setState(() => _isLoading = true); + } + try { + final entries = await _service.fetchEntries(status: _filterStatus); + if (!mounted) return; + setState(() { + _entries = entries; + _isLoading = false; + _isRefreshing = false; + }); + } catch (e) { + if (!mounted) return; + setState(() { + _isLoading = false; + _isRefreshing = false; + }); + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('売上伝票の取得に失敗しました: $e'))); + } + } + + + + Future _handleRefresh() async { + setState(() => _isRefreshing = true); + await _loadEntries(); + } + + Future _openEditor({SalesEntry? entry}) async { + final updated = await Navigator.of(context).push( + MaterialPageRoute(builder: (_) => _SalesEntryEditorPage(service: _service, entry: entry)), + ); + if (updated != null) { + await _loadEntries(); + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('売上伝票を保存しました'))); + } + } + + Future _openImportSheet() async { + final imported = await SalesEntryImportSheet.show(context, _service); + if (imported != null) { + await _loadEntries(); + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('伝票をインポートしました: ${imported.subject ?? '売上伝票'}'))); + } + } + + Future _handleReimport(SalesEntry entry) async { + try { + final updated = await _service.reimportEntry(entry.id); + if (!mounted) return; + setState(() { + final index = _entries.indexWhere((e) => e.id == entry.id); + if (index != -1) { + _entries = List.of(_entries)..[index] = updated; + } + }); + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('再インポートが完了しました'))); + } catch (e) { + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('再インポートに失敗しました: $e'))); + } + } + + Future _confirmDelete(SalesEntry entry) async { + final confirmed = await showDialog( + context: context, + builder: (context) => AlertDialog( + title: const Text('伝票を削除'), + content: Text('${entry.subject ?? '無題'}を削除しますか?'), + actions: [ + TextButton(onPressed: () => Navigator.pop(context, false), child: const Text('キャンセル')), + TextButton(onPressed: () => Navigator.pop(context, true), child: const Text('削除')), + ], + ), + ); + if (confirmed != true) return; + try { + await _service.deleteEntry(entry.id); + if (!mounted) return; + setState(() { + _entries = _entries.where((e) => e.id != entry.id).toList(); + }); + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('伝票を削除しました'))); + } catch (e) { + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('削除に失敗しました: $e'))); + } + } + + @override + Widget build(BuildContext context) { + final body = _isLoading + ? const Center(child: CircularProgressIndicator()) + : RefreshIndicator( + onRefresh: _handleRefresh, + child: _entries.isEmpty + ? ListView( + children: const [ + SizedBox(height: 120), + Icon(Icons.description_outlined, size: 64, color: Colors.grey), + SizedBox(height: 12), + Center(child: Text('売上伝票がありません。インポートまたは新規作成してください。')), + ], + ) + : ListView.separated( + padding: const EdgeInsets.fromLTRB(16, 16, 16, 120), + itemCount: _entries.length, + separatorBuilder: (_, index) => const SizedBox(height: 12), + itemBuilder: (context, index) => _buildEntryCard(_entries[index]), + ), + ); + + return Scaffold( + appBar: AppBar( + leading: const BackButton(), + title: const ScreenAppBarTitle(screenId: 'U1', title: '売上伝票'), + actions: [ + IconButton(onPressed: _openImportSheet, tooltip: 'インポート', icon: const Icon(Icons.download)), + IconButton(onPressed: () => _openEditor(), tooltip: '新規作成', icon: const Icon(Icons.add)), + PopupMenuButton( + tooltip: 'ステータス絞り込み', + icon: const Icon(Icons.filter_alt), + onSelected: (value) { + setState(() => _filterStatus = value); + _loadEntries(); + }, + itemBuilder: (context) => [ + const PopupMenuItem(value: null, child: Text('すべて表示')), + ...SalesEntryStatus.values.map( + (status) => PopupMenuItem(value: status, child: Text(status.displayName)), + ), + ], + ), + ], + ), + body: body, + floatingActionButton: FloatingActionButton.extended( + onPressed: _openImportSheet, + icon: const Icon(Icons.receipt_long), + label: const Text('伝票インポート'), + ), + ); + } + + Widget _buildEntryCard(SalesEntry entry) { + final amountLabel = _currencyFormat.format(entry.amountTaxIncl); + final dateLabel = DateFormat('yyyy/MM/dd').format(entry.issueDate); + final subject = entry.subject?.trim().isNotEmpty == true ? entry.subject!.trim() : '売上伝票'; + final customer = entry.customerNameSnapshot ?? '取引先未設定'; + + Color statusColor(SalesEntryStatus status) { + switch (status) { + case SalesEntryStatus.draft: + return Colors.orange; + case SalesEntryStatus.confirmed: + return Colors.blue; + case SalesEntryStatus.settled: + return Colors.green; + } + } + + final baseColor = statusColor(entry.status); + final statusChip = Container( + padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 4), + decoration: BoxDecoration( + color: baseColor.withAlpha((0.15 * 255).round()), + borderRadius: BorderRadius.circular(999), + ), + child: Text(entry.status.displayName, style: TextStyle(color: baseColor, fontSize: 12)), + ); + + return Card( + child: InkWell( + onTap: () => _openEditor(entry: entry), + child: Padding( + padding: const EdgeInsets.all(16), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + children: [ + Expanded( + child: Text( + subject, + style: Theme.of(context).textTheme.titleMedium?.copyWith(fontWeight: FontWeight.bold), + ), + ), + statusChip, + PopupMenuButton( + onSelected: (value) { + switch (value) { + case 'edit': + _openEditor(entry: entry); + break; + case 'reimport': + _handleReimport(entry); + break; + case 'delete': + _confirmDelete(entry); + break; + } + }, + itemBuilder: (context) => const [ + PopupMenuItem(value: 'edit', child: Text('編集')), + PopupMenuItem(value: 'reimport', child: Text('再インポート')), + PopupMenuItem(value: 'delete', child: Text('削除')), + ], + ), + ], + ), + const SizedBox(height: 8), + Text(customer, style: Theme.of(context).textTheme.bodyMedium), + const SizedBox(height: 4), + Row( + children: [ + Text('計上日: $dateLabel'), + const Spacer(), + Text(amountLabel, style: Theme.of(context).textTheme.titleMedium?.copyWith(fontWeight: FontWeight.bold)), + ], + ), + if (entry.notes?.isNotEmpty == true) ...[ + const SizedBox(height: 8), + Text(entry.notes!, style: Theme.of(context).textTheme.bodySmall), + ], + ], + ), + ), + ), + ); + } +} + +class _SalesEntryEditorPage extends StatefulWidget { + const _SalesEntryEditorPage({required this.service, this.entry}); + + final SalesEntryService service; + final SalesEntry? entry; + + @override + State<_SalesEntryEditorPage> createState() => _SalesEntryEditorPageState(); +} + +class _SalesEntryEditorPageState extends State<_SalesEntryEditorPage> { + final _subjectController = TextEditingController(); + final _notesController = TextEditingController(); + final Uuid _uuid = const Uuid(); + final DateFormat _dateFormat = DateFormat('yyyy/MM/dd'); + final NumberFormat _currencyFormat = NumberFormat.currency(locale: 'ja_JP', symbol: '¥'); + final EditLogRepository _editLogRepo = EditLogRepository(); + final AppSettingsRepository _settingsRepo = AppSettingsRepository(); + + late DateTime _issueDate; + Customer? _selectedCustomer; + String? _customerSnapshot; + SalesEntryStatus _status = SalesEntryStatus.draft; + bool _isSaving = false; + final List _lines = []; + List _editLogs = const []; + String? _entryId; + bool _isLoadingLogs = false; + bool _grossEnabled = true; + bool _grossToggleVisible = true; + bool _grossIncludeProvisional = false; + bool _showGross = true; + bool _cashSaleMode = false; + final String _cashSaleLabel = '現金売上'; + + final List<_EntrySnapshot> _undoStack = []; + final List<_EntrySnapshot> _redoStack = []; + bool _isApplyingSnapshot = false; + Timer? _historyDebounce; + + @override + void initState() { + super.initState(); + final entry = widget.entry; + _issueDate = entry?.issueDate ?? DateTime.now(); + _status = entry?.status ?? SalesEntryStatus.draft; + _customerSnapshot = entry?.customerNameSnapshot; + _subjectController.text = entry?.subject ?? ''; + _notesController.text = entry?.notes ?? ''; + _entryId = entry?.id; + _cashSaleMode = entry == null + ? false + : (entry.customerId == null && entry.customerNameSnapshot == _cashSaleLabel); + + if (entry != null) { + for (final item in entry.items) { + final form = LineItemFormData( + id: item.id, + productId: item.productId, + productName: item.description, + quantity: item.quantity, + unitPrice: item.unitPrice, + taxRate: item.taxRate, + costAmount: item.costAmount, + costIsProvisional: item.costIsProvisional, + ); + _attachLineListeners(form); + _lines.add(form); + } + } + if (_lines.isEmpty) { + final form = LineItemFormData(); + _attachLineListeners(form); + _lines.add(form); + } + if (_entryId != null) { + _loadEditLogs(); + } + _loadGrossSettings(); + _subjectController.addListener(_scheduleHistorySnapshot); + _notesController.addListener(_scheduleHistorySnapshot); + WidgetsBinding.instance.addPostFrameCallback((_) => _initializeHistory()); + } + + @override + void dispose() { + _historyDebounce?.cancel(); + _subjectController.removeListener(_scheduleHistorySnapshot); + _notesController.removeListener(_scheduleHistorySnapshot); + _subjectController.dispose(); + _notesController.dispose(); + for (final line in _lines) { + line.removeChangeListener(_scheduleHistorySnapshot); + line.dispose(); + } + super.dispose(); + } + + String _ensureEntryId() { + return _entryId ??= widget.entry?.id ?? _uuid.v4(); + } + + void _logEdit(String message) { + final id = _ensureEntryId(); + _editLogRepo.addLog(id, message).then((_) => _loadEditLogs()); + } + + void _initializeHistory() { + _undoStack + ..clear() + ..add(_captureSnapshot()); + _redoStack.clear(); + } + + void _attachLineListeners(LineItemFormData line) { + line.registerChangeListener(_scheduleHistorySnapshot); + } + + void _scheduleHistorySnapshot() { + if (_isApplyingSnapshot) return; + _historyDebounce?.cancel(); + _historyDebounce = Timer(const Duration(milliseconds: 500), () { + _pushHistory(clearRedo: true); + }); + } + + void _pushHistory({bool clearRedo = false}) { + if (_isApplyingSnapshot) return; + final snapshot = _captureSnapshot(); + if (_undoStack.isNotEmpty && _undoStack.last.isSame(snapshot)) { + return; + } + setState(() { + if (_undoStack.length >= 50) { + _undoStack.removeAt(0); + } + _undoStack.add(snapshot); + if (clearRedo) { + _redoStack.clear(); + } + }); + } + + _EntrySnapshot _captureSnapshot() { + return _EntrySnapshot( + customer: _selectedCustomer, + customerSnapshot: _customerSnapshot, + subject: _subjectController.text, + notes: _notesController.text, + issueDate: _issueDate, + status: _status, + cashSaleMode: _cashSaleMode, + lines: _lines.map(_LineDraft.fromForm).toList(growable: false), + ); + } + + void _applySnapshot(_EntrySnapshot snapshot) { + _isApplyingSnapshot = true; + _historyDebounce?.cancel(); + for (final line in _lines) { + line.removeChangeListener(_scheduleHistorySnapshot); + line.dispose(); + } + _lines + ..clear() + ..addAll(snapshot.lines.map((draft) { + final form = draft.toFormData(); + _attachLineListeners(form); + return form; + })); + _selectedCustomer = snapshot.customer; + _customerSnapshot = snapshot.customerSnapshot; + _subjectController.text = snapshot.subject; + _notesController.text = snapshot.notes; + _issueDate = snapshot.issueDate; + _status = snapshot.status; + _cashSaleMode = snapshot.cashSaleMode; + _isApplyingSnapshot = false; + setState(() {}); + } + + bool get _canUndo => _undoStack.length > 1; + bool get _canRedo => _redoStack.isNotEmpty; + + void _undo() { + if (!_canUndo) return; + final current = _captureSnapshot(); + setState(() { + _redoStack.add(current); + _undoStack.removeLast(); + final snapshot = _undoStack.last; + _applySnapshot(snapshot); + }); + } + + void _redo() { + if (!_canRedo) return; + final snapshot = _redoStack.removeLast(); + setState(() { + _undoStack.add(snapshot); + _applySnapshot(snapshot); + }); + } + + Future _loadGrossSettings() async { + final enabled = await _settingsRepo.getGrossProfitEnabled(); + final toggleVisible = await _settingsRepo.getGrossProfitToggleVisible(); + final includeProvisional = await _settingsRepo.getGrossProfitIncludeProvisional(); + if (!mounted) return; + setState(() { + _grossEnabled = enabled; + _grossToggleVisible = toggleVisible; + _grossIncludeProvisional = includeProvisional; + _showGross = enabled; + }); + } + + Future _loadEditLogs() async { + final id = _entryId; + if (id == null) return; + setState(() => _isLoadingLogs = true); + final logs = await _editLogRepo.getLogs(id); + if (!mounted) return; + setState(() { + _editLogs = logs; + _isLoadingLogs = false; + }); + } + + Widget _buildEditLogPanel() { + final hasEntryId = _entryId != null; + return Card( + margin: const EdgeInsets.only(top: 24), + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12)), + child: Padding( + padding: const EdgeInsets.all(16), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + children: [ + const Expanded( + child: Text( + '編集ログ', + style: TextStyle(fontWeight: FontWeight.bold), + ), + ), + IconButton( + tooltip: '再読込', + icon: const Icon(Icons.refresh), + onPressed: hasEntryId ? _loadEditLogs : null, + ), + ], + ), + const SizedBox(height: 8), + if (!hasEntryId) + const Text( + '保存すると編集ログが表示されます。', + style: TextStyle(color: Colors.grey), + ) + else if (_isLoadingLogs) + const SizedBox( + height: 48, + child: Center(child: CircularProgressIndicator(strokeWidth: 2)), + ) + else if (_editLogs.isEmpty) + const Text( + '編集ログはまだありません。', + style: TextStyle(color: Colors.grey), + ) + else ...[ + ..._editLogs.take(10).map((log) { + final timestamp = DateFormat('yyyy/MM/dd HH:mm').format(log.createdAt); + return Padding( + padding: const EdgeInsets.symmetric(vertical: 4), + child: Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const Icon(Icons.circle, size: 6, color: Colors.grey), + const SizedBox(width: 8), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + timestamp, + style: const TextStyle(fontSize: 11, color: Colors.black54), + ), + Text(log.message), + ], + ), + ), + ], + ), + ); + }), + if (_editLogs.length > 10) + const Padding( + padding: EdgeInsets.only(top: 8), + child: Text( + '最新10件を表示しています。', + style: TextStyle(fontSize: 11, color: Colors.grey), + ), + ), + ], + ], + ), + ), + ); + } + + Future _pickCustomer() async { + final selected = await showModalBottomSheet( + context: context, + isScrollControlled: true, + builder: (ctx) => CustomerPickerModal( + onCustomerSelected: (customer) { + Navigator.pop(ctx, customer); + }, + ), + ); + if (selected == null) return; + setState(() { + _selectedCustomer = selected; + _customerSnapshot = selected.invoiceName; + }); + _logEdit('取引先を「${selected.invoiceName}」に設定'); + } + + Future _pickDate() async { + final picked = await showDatePicker( + context: context, + initialDate: _issueDate, + firstDate: DateTime(2015), + lastDate: DateTime(2100), + ); + if (picked == null) return; + setState(() => _issueDate = picked); + _logEdit('計上日を${_dateFormat.format(picked)}に更新'); + } + + void _addLine() { + setState(() { + final form = LineItemFormData(quantity: 1); + _attachLineListeners(form); + _lines.add(form); + }); + _pushHistory(clearRedo: true); + _logEdit('明細行を追加しました'); + } + + void _removeLine(int index) { + if (_lines.length <= 1) return; + final removed = _lines[index].descriptionController.text; + final target = _lines.removeAt(index); + target.removeChangeListener(_scheduleHistorySnapshot); + target.dispose(); + setState(() {}); + _pushHistory(clearRedo: true); + _logEdit(removed.isEmpty ? '明細行を削除しました' : '明細「$removed」を削除しました'); + } + + Future _save() async { + if (_isSaving) return; + for (var i = 0; i < _lines.length; i++) { + if (!_lines[i].hasProduct) { + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('明細${i + 1}の商品を選択してください'))); + return; + } + } + final subject = _subjectController.text.trim(); + final notes = _notesController.text.trim(); + if (_cashSaleMode && (_customerSnapshot == null || _customerSnapshot!.isEmpty)) { + _customerSnapshot = _cashSaleLabel; + } + final entryId = _ensureEntryId(); + final lines = []; + for (final line in _lines) { + final desc = line.descriptionController.text.trim(); + final qty = int.tryParse(line.quantityController.text) ?? 0; + final price = int.tryParse(line.unitPriceController.text) ?? 0; + if (desc.isEmpty || qty <= 0) continue; + final id = line.id ?? _uuid.v4(); + lines.add( + SalesLineItem( + id: id, + salesEntryId: entryId, + productId: line.productId, + description: desc, + quantity: qty, + unitPrice: price, + lineTotal: qty * price, + taxRate: line.taxRate ?? 0.1, + costAmount: line.costAmount, + costIsProvisional: line.costIsProvisional, + ), + ); + } + if (lines.isEmpty) { + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('明細を1件以上入力してください'))); + return; + } + + final base = widget.entry ?? + SalesEntry( + id: entryId, + customerId: _selectedCustomer?.id, + customerNameSnapshot: _customerSnapshot, + subject: subject.isEmpty ? null : subject, + issueDate: _issueDate, + status: _status, + notes: notes.isEmpty ? null : notes, + createdAt: DateTime.now(), + updatedAt: DateTime.now(), + items: lines, + ); + + final updated = base.copyWith( + customerId: _selectedCustomer?.id ?? base.customerId, + customerNameSnapshot: _customerSnapshot ?? base.customerNameSnapshot, + subject: subject.isEmpty ? null : subject, + issueDate: _issueDate, + notes: notes.isEmpty ? null : notes, + status: _status, + items: lines, + updatedAt: DateTime.now(), + ); + + setState(() => _isSaving = true); + try { + final saved = await widget.service.saveEntry(updated); + if (!mounted) return; + _entryId = saved.id; + _logEdit('売上伝票を保存しました'); + Navigator.pop(context, saved); + } catch (e) { + if (!mounted) return; + setState(() => _isSaving = false); + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('保存に失敗しました: $e'))); + } + } + + @override + Widget build(BuildContext context) { + final mediaQuery = MediaQuery.of(context); + final keyboardInset = mediaQuery.viewInsets.bottom; + final safeBottom = mediaQuery.padding.bottom; + final scrollPadding = (keyboardInset > 0 ? keyboardInset : 0) + 48.0; + + return Scaffold( + resizeToAvoidBottomInset: false, + appBar: AppBar( + leading: const BackButton(), + title: ScreenAppBarTitle( + screenId: 'U2', + title: widget.entry == null ? '売上伝票作成' : '売上伝票編集', + ), + actions: [ + IconButton( + icon: const Icon(Icons.undo), + tooltip: '元に戻す', + onPressed: _canUndo ? _undo : null, + ), + IconButton( + icon: const Icon(Icons.redo), + tooltip: 'やり直す', + onPressed: _canRedo ? _redo : null, + ), + IconButton( + icon: const Icon(Icons.save_outlined), + tooltip: '保存', + onPressed: _isSaving ? null : _save, + ), + TextButton(onPressed: _isSaving ? null : _save, child: const Text('保存')), + ], + ), + body: SafeArea( + top: true, + bottom: false, + child: AnimatedPadding( + duration: const Duration(milliseconds: 200), + curve: Curves.easeOut, + padding: EdgeInsets.fromLTRB(16, 16, 16, 32 + safeBottom), + child: LayoutBuilder( + builder: (context, constraints) { + return SingleChildScrollView( + keyboardDismissBehavior: ScrollViewKeyboardDismissBehavior.onDrag, + padding: EdgeInsets.only(bottom: scrollPadding), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisSize: MainAxisSize.min, + children: [ + TextField( + controller: _subjectController, + decoration: const InputDecoration(labelText: '件名'), + ), + const SizedBox(height: 12), + Row( + children: [ + Expanded(child: Text('計上日: ${_dateFormat.format(_issueDate)}')), + TextButton(onPressed: _pickDate, child: const Text('日付を選択')), + ], + ), + const SizedBox(height: 12), + ListTile( + contentPadding: EdgeInsets.zero, + title: Text(_customerSnapshot ?? '取引先を選択'), + trailing: const Icon(Icons.chevron_right), + onTap: _cashSaleMode ? null : _pickCustomer, + ), + SwitchListTile.adaptive( + contentPadding: EdgeInsets.zero, + title: const Text('現金売上モード'), + subtitle: const Text('顧客登録なしで「現金売上」として計上します'), + value: _cashSaleMode, + onChanged: (value) => _toggleCashSaleMode(value), + ), + const Divider(height: 32), + Text('明細', style: Theme.of(context).textTheme.titleMedium), + const SizedBox(height: 8), + if (_grossEnabled && _grossToggleVisible) + SwitchListTile.adaptive( + contentPadding: EdgeInsets.zero, + title: const Text('粗利を表示'), + subtitle: const Text('仕入値が入っている明細のみ粗利を計算します'), + value: _showGross, + onChanged: (value) => setState(() => _showGross = value), + ), + for (var i = 0; i < _lines.length; i++) + LineItemCard( + data: _lines[i], + onRemove: () => _removeLine(i), + onPickProduct: () => _pickProductForLine(i), + onChanged: _scheduleHistorySnapshot, + meta: _shouldShowGross ? _buildLineMeta(_lines[i]) : null, + footer: _shouldShowGross ? _buildLineFooter(_lines[i]) : null, + ), + Align( + alignment: Alignment.centerLeft, + child: TextButton.icon( + onPressed: _addLine, + icon: const Icon(Icons.add), + label: const Text('明細を追加'), + ), + ), + const Divider(height: 32), + if (_shouldShowGross) _buildGrossSummary(), + if (_shouldShowGross) const Divider(height: 32), + TextField( + controller: _notesController, + decoration: const InputDecoration(labelText: 'メモ'), + maxLines: 3, + ), + _buildEditLogPanel(), + const SizedBox(height: 80), + ], + ), + ); + }, + ), + ), + ), + ); + } + + void _pickProductForLine(int index) { + showModalBottomSheet( + context: context, + isScrollControlled: true, + backgroundColor: Colors.transparent, + builder: (context) => FractionallySizedBox( + heightFactor: 0.9, + child: ProductPickerModal( + onProductSelected: (product) { + setState(() { + final line = _lines[index]; + line.applyProduct(product); + }); + _logEdit('明細${index + 1}を商品「${product.name}」に設定'); + _pushHistory(clearRedo: true); + }, + onItemSelected: (item) {}, + ), + ), + ); + } + + void _toggleCashSaleMode(bool enabled) { + setState(() { + _cashSaleMode = enabled; + if (enabled) { + _selectedCustomer = null; + _customerSnapshot = _cashSaleLabel; + } else { + _customerSnapshot = _selectedCustomer?.invoiceName; + } + }); + _logEdit(enabled ? '現金売上モードに切り替え' : '現金売上モードを解除'); + _pushHistory(clearRedo: true); + } + + bool get _shouldShowGross => _grossEnabled && _showGross; + + int _lineQuantity(LineItemFormData line) => int.tryParse(line.quantityController.text) ?? 0; + + int _lineUnitPrice(LineItemFormData line) => int.tryParse(line.unitPriceController.text) ?? 0; + + int _lineRevenue(LineItemFormData line) => _lineQuantity(line) * _lineUnitPrice(line); + + int _lineCost(LineItemFormData line) => _lineQuantity(line) * line.costAmount; + + int _lineGross(LineItemFormData line) => _lineRevenue(line) - _lineCost(line); + + bool _isProvisional(LineItemFormData line) => line.costIsProvisional || line.costAmount <= 0; + + String _formatYen(int value) => _currencyFormat.format(value).replaceAll('.00', ''); + + Widget _buildLineMeta(LineItemFormData line) { + final gross = _lineGross(line); + final provisional = _isProvisional(line); + final color = provisional + ? Colors.orange + : gross >= 0 + ? Colors.green + : Colors.redAccent; + final label = provisional ? '粗利(暫定)' : '粗利'; + return Padding( + padding: const EdgeInsets.only(right: 8), + child: Chip( + label: Text('$label ${_formatYen(gross)}'), + backgroundColor: color.withOpacity(0.12), + labelStyle: TextStyle(color: color, fontSize: 12, fontWeight: FontWeight.w600), + ), + ); + } + + Widget _buildLineFooter(LineItemFormData line) { + final cost = _lineCost(line); + final provisional = _isProvisional(line); + final text = provisional + ? '仕入: ${_formatYen(cost)} (暫定0扱い)' + : '仕入: ${_formatYen(cost)}'; + return Align( + alignment: Alignment.centerRight, + child: Text( + text, + style: TextStyle( + fontSize: 12, + color: provisional ? Colors.orange.shade700 : Colors.black54, + ), + ), + ); + } + + int _grossTotal({required bool includeProvisional}) { + var total = 0; + for (final line in _lines) { + if (!includeProvisional && _isProvisional(line)) continue; + total += _lineGross(line); + } + return total; + } + + int _provisionalCount() => _lines.where(_isProvisional).length; + + Widget _buildGrossSummary() { + final total = _grossTotal(includeProvisional: _grossIncludeProvisional); + final excluded = _grossTotal(includeProvisional: false); + final provisionalLines = _provisionalCount(); + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text('粗利サマリ', style: Theme.of(context).textTheme.titleMedium), + const SizedBox(height: 8), + Row( + children: [ + Expanded( + child: _SummaryTile( + label: _grossIncludeProvisional ? '粗利合計(暫定含む)' : '粗利合計', + value: _formatYen(total), + valueColor: total >= 0 ? Colors.green.shade700 : Colors.redAccent, + ), + ), + const SizedBox(width: 12), + Expanded( + child: _SummaryTile( + label: '暫定を除いた粗利', + value: _formatYen(excluded), + ), + ), + ], + ), + if (provisionalLines > 0) + Padding( + padding: const EdgeInsets.only(top: 8), + child: Text( + '暫定粗利の明細: $provisionalLines 件 (設定で合計への含め方を変更できます)', + style: Theme.of(context).textTheme.bodySmall?.copyWith(color: Colors.orange.shade700), + ), + ), + ], + ); + } +} + +class _SummaryTile extends StatelessWidget { + const _SummaryTile({required this.label, required this.value, this.valueColor}); + + final String label; + final String value; + final Color? valueColor; + + @override + Widget build(BuildContext context) { + final theme = Theme.of(context); + return Container( + padding: const EdgeInsets.all(12), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(8), + color: theme.colorScheme.surfaceVariant.withOpacity(0.4), + ), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text(label, style: theme.textTheme.bodySmall), + const SizedBox(height: 4), + Text( + value, + style: theme.textTheme.titleMedium?.copyWith( + color: valueColor ?? theme.colorScheme.onSurface, + fontWeight: FontWeight.bold, + ), + ), + ], + ), + ); + } +} + +class SalesEntryImportSheet extends StatefulWidget { + const SalesEntryImportSheet({required this.service, super.key}); + + final SalesEntryService service; + + static Future show(BuildContext context, SalesEntryService service) { + return showModalBottomSheet( + context: context, + isScrollControlled: true, + builder: (_) => DraggableScrollableSheet( + expand: false, + initialChildSize: 0.85, + builder: (_, controller) => SalesEntryImportSheet(service: service), + ), + ); + } + + @override + State createState() => _SalesEntryImportSheetState(); +} + +class _SalesEntryImportSheetState extends State { + final TextEditingController _keywordController = TextEditingController(); + final TextEditingController _subjectController = TextEditingController(); + + bool _isLoading = true; + bool _isImporting = false; + List _candidates = const []; + Set _selected = {}; + Set _types = DocumentType.values.toSet(); + DateTime? _startDate; + DateTime? _endDate; + DateTime? _issueDateOverride; + + @override + void initState() { + super.initState(); + _loadCandidates(); + } + + @override + void dispose() { + _keywordController.dispose(); + _subjectController.dispose(); + super.dispose(); + } + + Future _loadCandidates() async { + setState(() => _isLoading = true); + try { + final results = await widget.service.fetchImportCandidates( + keyword: _keywordController.text.trim().isEmpty ? null : _keywordController.text.trim(), + documentTypes: _types, + startDate: _startDate, + endDate: _endDate, + ); + if (!mounted) return; + setState(() { + _candidates = results; + _isLoading = false; + _selected = _selected.where((id) => results.any((c) => c.invoiceId == id)).toSet(); + }); + } catch (e) { + if (!mounted) return; + setState(() => _isLoading = false); + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('インポート候補の取得に失敗しました: $e'))); + } + } + + Future _pickRange({required bool isStart}) async { + final initial = isStart ? (_startDate ?? DateTime.now().subtract(const Duration(days: 30))) : (_endDate ?? DateTime.now()); + final picked = await showDatePicker( + context: context, + initialDate: initial, + firstDate: DateTime(2015), + lastDate: DateTime(2100), + ); + if (picked == null) return; + setState(() { + if (isStart) { + _startDate = picked; + } else { + _endDate = picked; + } + }); + _loadCandidates(); + } + + Future _pickIssueDate() async { + final picked = await showDatePicker( + context: context, + initialDate: _issueDateOverride ?? DateTime.now(), + firstDate: DateTime(2015), + lastDate: DateTime(2100), + ); + if (picked == null) return; + setState(() => _issueDateOverride = picked); + } + + void _toggleType(DocumentType type) { + setState(() { + if (_types.contains(type)) { + _types.remove(type); + if (_types.isEmpty) { + _types = {type}; + } + } else { + _types.add(type); + } + }); + _loadCandidates(); + } + + void _toggleSelection(String invoiceId) { + setState(() { + if (_selected.contains(invoiceId)) { + _selected.remove(invoiceId); + } else { + _selected.add(invoiceId); + } + }); + } + + Future _importSelected() async { + if (_selected.isEmpty || _isImporting) return; + setState(() => _isImporting = true); + try { + final entry = await widget.service.createEntryFromInvoices( + _selected.toList(), + subject: _subjectController.text.trim().isEmpty ? null : _subjectController.text.trim(), + issueDate: _issueDateOverride, + ); + if (!mounted) return; + Navigator.pop(context, entry); + } catch (e) { + if (!mounted) return; + setState(() => _isImporting = false); + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('インポートに失敗しました: $e'))); + } + } + + @override + Widget build(BuildContext context) { + final dateFormat = DateFormat('yyyy/MM/dd'); + return Material( + color: Theme.of(context).scaffoldBackgroundColor, + child: Padding( + padding: const EdgeInsets.fromLTRB(16, 12, 16, 24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + children: [ + const Expanded(child: Text('伝票インポート', style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold))), + IconButton(onPressed: () => Navigator.pop(context), icon: const Icon(Icons.close)), + ], + ), + const SizedBox(height: 8), + TextField( + controller: _keywordController, + decoration: InputDecoration( + labelText: 'キーワード (件名/顧客)', + suffixIcon: IconButton(icon: const Icon(Icons.search), onPressed: _loadCandidates), + ), + onSubmitted: (_) => _loadCandidates(), + ), + const SizedBox(height: 12), + Wrap( + spacing: 8, + children: DocumentType.values + .map((type) => FilterChip( + label: Text(type.displayName), + selected: _types.contains(type), + onSelected: (_) => _toggleType(type), + )) + .toList(), + ), + const SizedBox(height: 12), + Row( + children: [ + Expanded(child: Text('開始日: ${_startDate != null ? dateFormat.format(_startDate!) : '指定なし'}')), + TextButton(onPressed: () => _pickRange(isStart: true), child: const Text('開始日を選択')), + ], + ), + Row( + children: [ + Expanded(child: Text('終了日: ${_endDate != null ? dateFormat.format(_endDate!) : '指定なし'}')), + TextButton(onPressed: () => _pickRange(isStart: false), child: const Text('終了日を選択')), + ], + ), + const Divider(height: 24), + Expanded( + child: _isLoading + ? const Center(child: CircularProgressIndicator()) + : _candidates.isEmpty + ? const Center(child: Text('条件に合致する伝票が見つかりません')) + : ListView.builder( + itemCount: _candidates.length, + itemBuilder: (context, index) { + final candidate = _candidates[index]; + final selected = _selected.contains(candidate.invoiceId); + return CheckboxListTile( + value: selected, + onChanged: (_) => _toggleSelection(candidate.invoiceId), + title: Text(candidate.subject ?? '${candidate.documentTypeName}(${candidate.invoiceNumber})'), + subtitle: Text( + '${candidate.documentTypeName} / ${candidate.customerName}\n${dateFormat.format(candidate.invoiceDate)} / 合計: ${NumberFormat.currency(locale: 'ja_JP', symbol: '¥').format(candidate.totalAmount)}', + ), + ); + }, + ), + ), + const Divider(height: 24), + TextField( + controller: _subjectController, + decoration: const InputDecoration(labelText: '売上伝票の件名 (任意)'), + ), + Row( + children: [ + Expanded(child: Text('売上伝票の日付: ${_issueDateOverride != null ? dateFormat.format(_issueDateOverride!) : '自動設定'}')), + TextButton(onPressed: _pickIssueDate, child: const Text('変更')), + ], + ), + const SizedBox(height: 12), + SizedBox( + width: double.infinity, + child: ElevatedButton.icon( + onPressed: _selected.isEmpty || _isImporting ? null : _importSelected, + icon: _isImporting ? const SizedBox(width: 16, height: 16, child: CircularProgressIndicator(strokeWidth: 2)) : const Icon(Icons.playlist_add), + label: Text(_isImporting ? 'インポート中...' : '選択(${_selected.length})件をインポート'), + ), + ), + ], + ), + ), + ); + } +} diff --git a/lib/screens/sales_orders_screen.dart b/lib/screens/sales_orders_screen.dart new file mode 100644 index 0000000..9edb8e6 --- /dev/null +++ b/lib/screens/sales_orders_screen.dart @@ -0,0 +1,2362 @@ +import 'package:flutter/material.dart'; +import 'package:intl/intl.dart'; +import 'package:open_filex/open_filex.dart'; +import 'package:url_launcher/url_launcher.dart'; +import '../models/customer_model.dart'; +import '../models/hash_chain_models.dart'; +import '../models/inventory_models.dart'; +import '../models/order_models.dart'; +import '../models/receivable_models.dart'; +import '../models/shipment_models.dart'; +import '../services/inventory_service.dart'; +import '../services/order_service.dart'; +import '../services/receivable_service.dart'; +import '../services/shipment_service.dart'; +import '../services/shipping_label_service.dart'; +import 'customer_picker_modal.dart'; + +class SalesOrdersScreen extends StatefulWidget { + const SalesOrdersScreen({super.key}); + + @override + State createState() => _SalesOrdersScreenState(); +} + +class _HashChainVerificationDialog extends StatelessWidget { + const _HashChainVerificationDialog({required this.result}); + + final HashChainVerificationResult result; + + @override + Widget build(BuildContext context) { + final isHealthy = result.isHealthy; + final title = isHealthy ? 'HASHチェーンは正常です' : 'HASHチェーンの破断を検出しました'; + return AlertDialog( + title: Text(title), + content: SizedBox( + width: double.maxFinite, + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text('検証日時: ${DateFormat('yyyy/MM/dd HH:mm').format(result.verifiedAt)}'), + Text('検証件数: ${result.checkedCount} 件'), + Text('破断件数: ${result.breaks.length} 件'), + const SizedBox(height: 12), + if (result.breaks.isNotEmpty) + Expanded( + child: ListView.builder( + shrinkWrap: true, + itemCount: result.breaks.length, + itemBuilder: (ctx, index) { + final item = result.breaks[index]; + return ListTile( + contentPadding: EdgeInsets.zero, + title: Text(item.invoiceNumber ?? item.invoiceId), + subtitle: Text('${item.issue}\nexpected: ${item.expectedHash ?? '-'}\nactual: ${item.actualHash ?? '-'}'), + ); + }, + ), + ) + else + const Text('全てのハッシュが整合しています。'), + ], + ), + ), + actions: [ + TextButton(onPressed: () => Navigator.of(context).pop(), child: const Text('閉じる')), + ], + ); + } +} + +class ShipmentEditorPage extends StatefulWidget { + const ShipmentEditorPage({super.key, required this.service, this.shipment}); + + final ShipmentService service; + final Shipment? shipment; + + @override + State createState() => _ShipmentEditorPageState(); +} + +class _ShipmentEditorPageState extends State { + final TextEditingController _orderIdController = TextEditingController(); + final TextEditingController _orderNumberController = TextEditingController(); + final TextEditingController _customerNameController = TextEditingController(); + final TextEditingController _carrierController = TextEditingController(); + final TextEditingController _trackingController = TextEditingController(); + final TextEditingController _trackingUrlController = TextEditingController(); + final TextEditingController _notesController = TextEditingController(); + final DateFormat _dateFormat = DateFormat('yyyy/MM/dd'); + + DateTime? _scheduledDate; + DateTime? _actualDate; + bool _isSaving = false; + final List<_ShipmentLineFormData> _lines = []; + + @override + void initState() { + super.initState(); + final shipment = widget.shipment; + if (shipment != null) { + _orderIdController.text = shipment.orderId ?? ''; + _orderNumberController.text = shipment.orderNumberSnapshot ?? ''; + _customerNameController.text = shipment.customerNameSnapshot ?? ''; + _carrierController.text = shipment.carrierName ?? ''; + _trackingController.text = shipment.trackingNumber ?? ''; + _trackingUrlController.text = shipment.trackingUrl ?? ''; + _notesController.text = shipment.notes ?? ''; + _scheduledDate = shipment.scheduledShipDate; + _actualDate = shipment.actualShipDate; + for (final item in shipment.items) { + _lines.add(_ShipmentLineFormData(description: item.description, quantity: item.quantity)); + } + } + if (_lines.isEmpty) { + _lines.add(_ShipmentLineFormData()); + } + } + + @override + void dispose() { + _orderIdController.dispose(); + _orderNumberController.dispose(); + _customerNameController.dispose(); + _carrierController.dispose(); + _trackingController.dispose(); + _trackingUrlController.dispose(); + _notesController.dispose(); + for (final line in _lines) { + line.dispose(); + } + super.dispose(); + } + + Future _pickScheduledDate() async { + final now = DateTime.now(); + final picked = await showDatePicker( + context: context, + initialDate: _scheduledDate ?? now, + firstDate: DateTime(now.year - 1), + lastDate: DateTime(now.year + 2), + ); + if (picked != null) { + setState(() => _scheduledDate = picked); + } + } + + Future _pickActualDate() async { + final now = DateTime.now(); + final picked = await showDatePicker( + context: context, + initialDate: _actualDate ?? now, + firstDate: DateTime(now.year - 1), + lastDate: DateTime(now.year + 2), + ); + if (picked != null) { + setState(() => _actualDate = picked); + } + } + + void _addLine() { + setState(() { + _lines.add(_ShipmentLineFormData()); + }); + } + + void _removeLine(int index) { + if (_lines.length == 1) return; + setState(() { + final line = _lines.removeAt(index); + line.dispose(); + }); + } + + Future _save() async { + final orderId = _orderIdController.text.trim().isEmpty ? null : _orderIdController.text.trim(); + final orderNumber = _orderNumberController.text.trim().isEmpty ? null : _orderNumberController.text.trim(); + final customerName = _customerNameController.text.trim().isEmpty ? null : _customerNameController.text.trim(); + + final inputs = []; + for (final line in _lines) { + final desc = line.descriptionController.text.trim(); + final qty = int.tryParse(line.quantityController.text) ?? 0; + if (desc.isEmpty || qty <= 0) continue; + inputs.add(ShipmentLineInput(description: desc, quantity: qty)); + } + if (inputs.isEmpty) { + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('出荷明細を1件以上入力してください'))); + return; + } + + setState(() => _isSaving = true); + try { + Shipment saved; + if (widget.shipment == null) { + saved = await widget.service.createShipment( + orderId: orderId, + orderNumberSnapshot: orderNumber, + customerNameSnapshot: customerName, + lines: inputs, + scheduledShipDate: _scheduledDate, + actualShipDate: _actualDate, + carrierName: _carrierController.text.trim().isEmpty ? null : _carrierController.text.trim(), + trackingNumber: _trackingController.text.trim().isEmpty ? null : _trackingController.text.trim(), + trackingUrl: _trackingUrlController.text.trim().isEmpty ? null : _trackingUrlController.text.trim(), + notes: _notesController.text.trim().isEmpty ? null : _notesController.text.trim(), + ); + } else { + saved = await widget.service.updateShipment( + widget.shipment!, + replacedLines: inputs, + scheduledShipDate: _scheduledDate, + actualShipDate: _actualDate, + carrierName: _carrierController.text.trim().isEmpty ? null : _carrierController.text.trim(), + trackingNumber: _trackingController.text.trim().isEmpty ? null : _trackingController.text.trim(), + trackingUrl: _trackingUrlController.text.trim().isEmpty ? null : _trackingUrlController.text.trim(), + notes: _notesController.text.trim().isEmpty ? null : _notesController.text.trim(), + ); + } + if (!mounted) return; + Navigator.pop(context, saved); + } catch (e) { + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('保存に失敗しました: $e'))); + setState(() => _isSaving = false); + } + } + + @override + Widget build(BuildContext context) { + final title = widget.shipment == null ? '出荷指示の作成' : '出荷情報を編集'; + return Scaffold( + appBar: AppBar( + leading: const BackButton(), + title: Text(title == '出荷指示の作成' ? 'S2:出荷指示作成' : 'S2:出荷情報編集'), + actions: [ + TextButton( + onPressed: _isSaving ? null : _save, + child: _isSaving + ? const SizedBox(width: 18, height: 18, child: CircularProgressIndicator(strokeWidth: 2)) + : const Text('保存'), + ), + ], + ), + body: SafeArea( + child: GestureDetector( + onTap: () => FocusScope.of(context).unfocus(), + child: ListView( + padding: const EdgeInsets.all(20), + children: [ + TextField( + controller: _orderIdController, + decoration: const InputDecoration(labelText: '受注ID (任意)', border: OutlineInputBorder()), + ), + const SizedBox(height: 12), + TextField( + controller: _orderNumberController, + decoration: const InputDecoration(labelText: '受注番号スナップショット', border: OutlineInputBorder()), + ), + const SizedBox(height: 12), + TextField( + controller: _customerNameController, + decoration: const InputDecoration(labelText: '顧客名スナップショット', border: OutlineInputBorder()), + ), + const SizedBox(height: 12), + Row( + children: [ + Expanded( + child: ListTile( + contentPadding: EdgeInsets.zero, + title: const Text('予定出荷日'), + subtitle: Text(_scheduledDate != null ? _dateFormat.format(_scheduledDate!) : '未設定'), + trailing: IconButton(icon: const Icon(Icons.calendar_today), onPressed: _pickScheduledDate), + ), + ), + Expanded( + child: ListTile( + contentPadding: EdgeInsets.zero, + title: const Text('実績出荷日'), + subtitle: Text(_actualDate != null ? _dateFormat.format(_actualDate!) : '未設定'), + trailing: IconButton(icon: const Icon(Icons.calendar_month), onPressed: _pickActualDate), + ), + ), + ], + ), + const SizedBox(height: 12), + TextField( + controller: _carrierController, + decoration: const InputDecoration(labelText: '配送業者', border: OutlineInputBorder()), + ), + const SizedBox(height: 12), + TextField( + controller: _trackingController, + decoration: const InputDecoration(labelText: '追跡番号', border: OutlineInputBorder()), + ), + const SizedBox(height: 12), + TextField( + controller: _trackingUrlController, + decoration: const InputDecoration(labelText: '追跡URL', border: OutlineInputBorder()), + ), + const SizedBox(height: 12), + TextField( + controller: _notesController, + maxLines: 3, + decoration: const InputDecoration(labelText: 'メモ', border: OutlineInputBorder()), + ), + const SizedBox(height: 24), + const Text('出荷明細', style: TextStyle(fontSize: 16, fontWeight: FontWeight.bold)), + const SizedBox(height: 12), + for (int i = 0; i < _lines.length; i++) _buildLineCard(i), + const SizedBox(height: 12), + OutlinedButton.icon( + onPressed: _addLine, + icon: const Icon(Icons.add), + label: const Text('明細を追加'), + ), + const SizedBox(height: 32), + ], + ), + ), + ), + ); + } + + Widget _buildLineCard(int index) { + final line = _lines[index]; + return Card( + margin: const EdgeInsets.only(bottom: 12), + child: Padding( + padding: const EdgeInsets.all(16), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Text('明細 ${index + 1}', style: const TextStyle(fontWeight: FontWeight.bold)), + if (_lines.length > 1) + IconButton( + icon: const Icon(Icons.delete_outline), + onPressed: () => _removeLine(index), + ), + ], + ), + TextField( + controller: line.descriptionController, + decoration: const InputDecoration(labelText: '内容', border: OutlineInputBorder()), + ), + const SizedBox(height: 12), + TextField( + controller: line.quantityController, + keyboardType: TextInputType.number, + decoration: const InputDecoration(labelText: '数量', border: OutlineInputBorder()), + ), + ], + ), + ), + ); + } +} + +class _ShipmentLineFormData { + _ShipmentLineFormData({String description = '', int quantity = 1}) + : descriptionController = TextEditingController(text: description), + quantityController = TextEditingController(text: quantity.toString()); + + final TextEditingController descriptionController; + final TextEditingController quantityController; + + void dispose() { + descriptionController.dispose(); + quantityController.dispose(); + } +} + +class _ShipmentDetailSheet extends StatefulWidget { + const _ShipmentDetailSheet({required this.shipment, required this.service, required this.onEdit}); + + final Shipment shipment; + final ShipmentService service; + final void Function(Shipment shipment) onEdit; + + @override + State<_ShipmentDetailSheet> createState() => _ShipmentDetailSheetState(); +} + +class _ShipmentDetailSheetState extends State<_ShipmentDetailSheet> { + late Shipment _shipment; + bool _isProcessing = false; + bool _isGeneratingLabel = false; + final DateFormat _dateFormat = DateFormat('yyyy/MM/dd'); + final ShippingLabelService _labelService = ShippingLabelService(); + + @override + void initState() { + super.initState(); + _shipment = widget.shipment; + } + + Future _advance() async { + if (_isProcessing) return; + setState(() => _isProcessing = true); + try { + final updated = await widget.service.advanceStatus(_shipment.id); + if (!mounted) return; + setState(() => _shipment = updated); + } catch (e) { + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('ステータス更新に失敗しました: $e'))); + } finally { + if (mounted) setState(() => _isProcessing = false); + } + } + + Future _transitionTo(ShipmentStatus status) async { + if (_isProcessing) return; + setState(() => _isProcessing = true); + try { + final updated = await widget.service.transitionStatus(_shipment.id, status, force: true); + if (!mounted) return; + setState(() => _shipment = updated); + } catch (e) { + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('更新に失敗しました: $e'))); + } finally { + if (mounted) setState(() => _isProcessing = false); + } + } + + Future _generateLabel() async { + if (_isGeneratingLabel) return; + setState(() => _isGeneratingLabel = true); + try { + final path = await _labelService.generateLabel(_shipment); + if (path == null) { + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('送り状PDFの生成に失敗しました'))); + return; + } + final updated = await widget.service.updateShipment(_shipment, labelPdfPath: path); + if (!mounted) return; + setState(() => _shipment = updated); + await OpenFilex.open(path); + } catch (e) { + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('送り状PDF生成エラー: $e'))); + } finally { + if (mounted) setState(() => _isGeneratingLabel = false); + } + } + + Future _openLabel() async { + final path = _shipment.labelPdfPath; + if (path == null || path.isEmpty) { + await _generateLabel(); + return; + } + await OpenFilex.open(path); + } + + Future _openTracking() async { + final url = _shipment.trackingUrl; + if (url == null || url.isEmpty) { + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('追跡URLが未設定です'))); + return; + } + final uri = Uri.parse(url); + if (!await canLaunchUrl(uri)) { + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('追跡URLを開けませんでした'))); + return; + } + await launchUrl(uri, mode: LaunchMode.externalApplication); + } + + String _formatDate(DateTime date) => _dateFormat.format(date); + + Color _statusColor(ShipmentStatus status) { + switch (status) { + case ShipmentStatus.pending: + return Colors.grey.shade500; + case ShipmentStatus.picking: + return Colors.orange; + case ShipmentStatus.ready: + return Colors.teal; + case ShipmentStatus.shipped: + return Colors.blue; + case ShipmentStatus.delivered: + return Colors.green; + case ShipmentStatus.cancelled: + return Colors.redAccent; + } + } + + @override + Widget build(BuildContext context) { + final nextStatuses = widget.service.nextStatuses(_shipment.status); + return DraggableScrollableSheet( + initialChildSize: 0.85, + minChildSize: 0.6, + maxChildSize: 0.95, + builder: (ctx, controller) { + return Material( + borderRadius: const BorderRadius.vertical(top: Radius.circular(24)), + clipBehavior: Clip.antiAlias, + child: Column( + children: [ + Container( + width: 48, + height: 4, + margin: const EdgeInsets.only(top: 12, bottom: 8), + decoration: BoxDecoration(color: Colors.grey.shade300, borderRadius: BorderRadius.circular(999)), + ), + ListTile( + title: Text('出荷指示 ${_shipment.id.substring(0, 6)}', style: const TextStyle(fontWeight: FontWeight.bold)), + subtitle: Text('${_shipment.customerNameSnapshot ?? '取引先未設定'}\n受注番号: ${_shipment.orderNumberSnapshot ?? '-'}'), + trailing: IconButton( + icon: const Icon(Icons.edit), + onPressed: () => widget.onEdit(_shipment), + ), + ), + Expanded( + child: ListView( + controller: controller, + padding: const EdgeInsets.fromLTRB(20, 0, 20, 20), + children: [ + Wrap( + spacing: 8, + runSpacing: 8, + children: ShipmentStatus.values + .map( + (status) => Chip( + label: Text(status.displayName), + backgroundColor: status == _shipment.status ? _statusColor(status) : Colors.grey.shade200, + labelStyle: TextStyle( + color: status == _shipment.status ? Colors.white : Colors.black87, + fontWeight: status == _shipment.status ? FontWeight.bold : FontWeight.normal, + ), + ), + ) + .toList(), + ), + const SizedBox(height: 16), + _InfoRow(label: '予定出荷日', value: _shipment.scheduledShipDate != null ? _formatDate(_shipment.scheduledShipDate!) : '-'), + _InfoRow(label: '出荷日', value: _shipment.actualShipDate != null ? _formatDate(_shipment.actualShipDate!) : '-'), + if (_shipment.carrierName?.isNotEmpty == true) _InfoRow(label: '配送業者', value: _shipment.carrierName!), + if (_shipment.trackingNumber?.isNotEmpty == true) _InfoRow(label: '追跡番号', value: _shipment.trackingNumber!), + if (_shipment.trackingUrl?.isNotEmpty == true) + TextButton.icon( + onPressed: _openTracking, + icon: const Icon(Icons.link), + label: const Text('追跡サイトを開く'), + ), + if (_shipment.notes?.isNotEmpty == true) + Card( + margin: const EdgeInsets.only(top: 12), + child: Padding( + padding: const EdgeInsets.all(12), + child: Text(_shipment.notes!), + ), + ), + const SizedBox(height: 16), + const Text('出荷明細', style: TextStyle(fontWeight: FontWeight.bold)), + const SizedBox(height: 8), + ..._shipment.items.map( + (item) => ListTile( + dense: true, + title: Text(item.description), + trailing: Text('数量 ${item.quantity}'), + ), + ), + const SizedBox(height: 24), + FilledButton.icon( + onPressed: _isGeneratingLabel ? null : _openLabel, + icon: const Icon(Icons.picture_as_pdf), + label: Text(_shipment.labelPdfPath == null ? '送り状PDFを生成' : '送り状PDFを開く'), + ), + const SizedBox(height: 24), + FilledButton.icon( + onPressed: nextStatuses.isEmpty || _isProcessing ? null : _advance, + icon: const Icon(Icons.local_shipping), + label: Text(nextStatuses.isEmpty ? '完了済み' : '${nextStatuses.first.displayName} へ進める'), + ), + const SizedBox(height: 8), + TextButton( + onPressed: _shipment.status == ShipmentStatus.cancelled || _isProcessing + ? null + : () => _transitionTo(ShipmentStatus.cancelled), + child: const Text('キャンセルに変更'), + ), + ], + ), + ), + ], + ), + ); + }, + ); + } +} + +class _SalesOrdersScreenState extends State { + final SalesOrderService _service = SalesOrderService(); + final DateFormat _dateFormat = DateFormat('yyyy/MM/dd'); + final NumberFormat _currencyFormat = NumberFormat.currency(locale: 'ja_JP', symbol: '¥'); + + bool _isLoading = false; + List _orders = []; + + @override + void initState() { + super.initState(); + _loadOrders(); + } + + Future _loadOrders() async { + setState(() => _isLoading = true); + final orders = await _service.fetchOrders(); + if (!mounted) return; + setState(() { + _orders = orders; + _isLoading = false; + }); + } + + Future _openOrderEditor({SalesOrder? order}) async { + final result = await Navigator.of(context).push( + MaterialPageRoute( + fullscreenDialog: true, + builder: (_) => SalesOrderEditorPage(service: _service, order: order), + ), + ); + if (result != null) { + await _loadOrders(); + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text(order == null ? '受注を登録しました' : '受注を更新しました')), + ); + } + } + + Future _openOrderDetails(SalesOrder order) async { + await showModalBottomSheet( + context: context, + isScrollControlled: true, + backgroundColor: Colors.transparent, + builder: (ctx) => _OrderDetailSheet( + order: order, + service: _service, + onEdit: (current) { + Navigator.of(ctx).pop(); + _openOrderEditor(order: current); + }, + ), + ); + if (mounted) { + await _loadOrders(); + } + } + + String _formatDate(DateTime date) => _dateFormat.format(date); + + String _formatCurrency(int amount) => _currencyFormat.format(amount); + + Color _statusColor(SalesOrderStatus status) { + switch (status) { + case SalesOrderStatus.draft: + return Colors.grey.shade500; + case SalesOrderStatus.confirmed: + return Colors.indigo; + case SalesOrderStatus.picking: + return Colors.orange; + case SalesOrderStatus.shipped: + return Colors.blue; + case SalesOrderStatus.closed: + return Colors.green; + case SalesOrderStatus.cancelled: + return Colors.redAccent; + } + } + + Widget _buildOrderTile(SalesOrder order) { + final subtitle = StringBuffer() + ..write(_formatDate(order.orderDate)) + ..write(' ・ ') + ..write(order.orderNumber ?? order.id.substring(0, 6)); + if (order.requestedShipDate != null) { + subtitle.writeln('\n希望出荷日: ${_formatDate(order.requestedShipDate!)}'); + } + return Card( + margin: const EdgeInsets.symmetric(horizontal: 16, vertical: 8), + child: ListTile( + onTap: () => _openOrderDetails(order), + title: Text(order.customerNameSnapshot ?? '取引先未設定', style: const TextStyle(fontWeight: FontWeight.bold)), + subtitle: Text(subtitle.toString()), + trailing: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.end, + children: [ + Chip( + label: Text(order.status.displayName, style: const TextStyle(color: Colors.white)), + backgroundColor: _statusColor(order.status), + visualDensity: VisualDensity.compact, + materialTapTargetSize: MaterialTapTargetSize.shrinkWrap, + ), + const SizedBox(height: 8), + Text( + _formatCurrency(order.totalAmount), + style: const TextStyle(fontWeight: FontWeight.bold), + ), + ], + ), + ), + ); + } + + @override + Widget build(BuildContext context) { + Widget body; + if (_isLoading) { + body = const Center(child: CircularProgressIndicator()); + } else if (_orders.isEmpty) { + body = _EmptyState(onCreate: () => _openOrderEditor()); + } else { + body = RefreshIndicator( + onRefresh: _loadOrders, + child: ListView.builder( + padding: const EdgeInsets.only(top: 8, bottom: 88), + itemCount: _orders.length, + itemBuilder: (context, index) => _buildOrderTile(_orders[index]), + ), + ); + } + + return Scaffold( + appBar: AppBar( + leading: const BackButton(), + title: const Text('S1:受注管理'), + actions: [ + IconButton( + tooltip: '最新の状態に更新', + onPressed: _isLoading ? null : _loadOrders, + icon: const Icon(Icons.refresh), + ), + ], + ), + body: body, + floatingActionButton: FloatingActionButton.extended( + onPressed: () => _openOrderEditor(), + icon: const Icon(Icons.add), + label: const Text('受注を登録'), + ), + ); + } +} + +class _EmptyState extends StatelessWidget { + const _EmptyState({required this.onCreate}); + + final VoidCallback onCreate; + + @override + Widget build(BuildContext context) { + return Center( + child: Padding( + padding: const EdgeInsets.all(32), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const Icon(Icons.assignment_add, size: 64, color: Colors.grey), + const SizedBox(height: 16), + const Text('受注がまだ登録されていません', style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + const SizedBox(height: 8), + const Text('プラスボタンから受注を登録し、進捗を管理できます。', textAlign: TextAlign.center), + const SizedBox(height: 24), + ElevatedButton.icon( + onPressed: onCreate, + icon: const Icon(Icons.add), + label: const Text('受注を登録'), + ), + ], + ), + ), + ); + } +} + +class SalesShipmentsScreen extends StatefulWidget { + const SalesShipmentsScreen({super.key}); + + @override + State createState() => _SalesShipmentsScreenState(); +} + +class _SalesShipmentsScreenState extends State { + final ShipmentService _service = ShipmentService(); + final DateFormat _dateFormat = DateFormat('yyyy/MM/dd'); + + bool _isLoading = false; + List _shipments = []; + + @override + void initState() { + super.initState(); + _loadShipments(); + } + + Future _loadShipments() async { + setState(() => _isLoading = true); + final shipments = await _service.fetchShipments(); + if (!mounted) return; + setState(() { + _shipments = shipments; + _isLoading = false; + }); + } + + Future _openShipmentEditor({Shipment? shipment}) async { + final result = await Navigator.of(context).push( + MaterialPageRoute( + fullscreenDialog: true, + builder: (_) => ShipmentEditorPage(service: _service, shipment: shipment), + ), + ); + if (result != null) { + await _loadShipments(); + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text(shipment == null ? '出荷指示を登録しました' : '出荷情報を更新しました')), + ); + } + } + + Future _openShipmentDetails(Shipment shipment) async { + await showModalBottomSheet( + context: context, + isScrollControlled: true, + backgroundColor: Colors.transparent, + builder: (ctx) => _ShipmentDetailSheet( + shipment: shipment, + service: _service, + onEdit: (current) { + Navigator.of(ctx).pop(); + _openShipmentEditor(shipment: current); + }, + ), + ); + if (mounted) { + await _loadShipments(); + } + } + + Color _statusColor(ShipmentStatus status) { + switch (status) { + case ShipmentStatus.pending: + return Colors.grey.shade500; + case ShipmentStatus.picking: + return Colors.orange; + case ShipmentStatus.ready: + return Colors.teal; + case ShipmentStatus.shipped: + return Colors.blue; + case ShipmentStatus.delivered: + return Colors.green; + case ShipmentStatus.cancelled: + return Colors.redAccent; + } + } + + Widget _buildShipmentTile(Shipment shipment) { + final subtitle = StringBuffer() + ..write(shipment.orderNumberSnapshot ?? '未連携') + ..write(' ・ ') + ..write(shipment.customerNameSnapshot ?? '取引先未設定'); + if (shipment.scheduledShipDate != null) { + subtitle.write('\n予定日: ${_dateFormat.format(shipment.scheduledShipDate!)}'); + } + if (shipment.actualShipDate != null) { + subtitle.write('\n出荷日: ${_dateFormat.format(shipment.actualShipDate!)}'); + } + return Card( + margin: const EdgeInsets.symmetric(horizontal: 16, vertical: 8), + child: ListTile( + onTap: () => _openShipmentDetails(shipment), + title: Text('出荷指示 ${shipment.id.substring(0, 6)}', style: const TextStyle(fontWeight: FontWeight.bold)), + subtitle: Text(subtitle.toString()), + trailing: Chip( + label: Text(shipment.status.displayName, style: const TextStyle(color: Colors.white)), + backgroundColor: _statusColor(shipment.status), + ), + ), + ); + } + + @override + Widget build(BuildContext context) { + Widget body; + if (_isLoading) { + body = const Center(child: CircularProgressIndicator()); + } else if (_shipments.isEmpty) { + body = _EmptyState(onCreate: () => _openShipmentEditor()); + } else { + body = RefreshIndicator( + onRefresh: _loadShipments, + child: ListView.builder( + padding: const EdgeInsets.only(top: 8, bottom: 88), + itemCount: _shipments.length, + itemBuilder: (context, index) => _buildShipmentTile(_shipments[index]), + ), + ); + } + + return Scaffold( + appBar: AppBar( + leading: const BackButton(), + title: const Text('S3:出荷管理'), + actions: [ + IconButton( + tooltip: '更新', + onPressed: _isLoading ? null : _loadShipments, + icon: const Icon(Icons.refresh), + ), + ], + ), + body: body, + floatingActionButton: FloatingActionButton.extended( + onPressed: () => _openShipmentEditor(), + icon: const Icon(Icons.local_shipping), + label: const Text('出荷指示'), + ), + ); + } +} + +class SalesInventoryScreen extends StatefulWidget { + const SalesInventoryScreen({super.key}); + + @override + State createState() => _SalesInventoryScreenState(); +} + +class _SalesInventoryScreenState extends State { + final InventoryService _service = InventoryService(); + final DateFormat _dateFormat = DateFormat('yyyy/MM/dd HH:mm'); + + bool _isLoading = false; + List _summaries = []; + + @override + void initState() { + super.initState(); + _loadSummaries(); + } + + Future _loadSummaries() async { + setState(() => _isLoading = true); + final data = await _service.fetchSummaries(); + if (!mounted) return; + setState(() { + _summaries = data; + _isLoading = false; + }); + } + + Future _openDetail(InventorySummary summary) async { + await showModalBottomSheet( + context: context, + isScrollControlled: true, + backgroundColor: Colors.transparent, + builder: (ctx) => _InventoryDetailSheet( + summary: summary, + service: _service, + onUpdated: () { + Navigator.of(ctx).pop(); + _loadSummaries(); + }, + ), + ); + } + + Widget _buildTile(InventorySummary summary) { + final subtitle = []; + if (summary.category?.isNotEmpty == true) { + subtitle.add('カテゴリ: ${summary.category}'); + } + if (summary.lastMovementAt != null) { + subtitle.add('最終更新: ${_dateFormat.format(summary.lastMovementAt!)}'); + } + return Card( + margin: const EdgeInsets.symmetric(horizontal: 16, vertical: 8), + child: ListTile( + onTap: () => _openDetail(summary), + leading: const Icon(Icons.inventory_2_outlined), + title: Text(summary.productName, style: const TextStyle(fontWeight: FontWeight.bold)), + subtitle: subtitle.isEmpty ? null : Text(subtitle.join('\n')), + trailing: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.end, + children: [ + const Text('在庫', style: TextStyle(fontSize: 12, color: Colors.grey)), + Text('${summary.stockQuantity}', style: const TextStyle(fontSize: 20, fontWeight: FontWeight.bold)), + ], + ), + ), + ); + } + + @override + Widget build(BuildContext context) { + Widget body; + if (_isLoading) { + body = const Center(child: CircularProgressIndicator()); + } else if (_summaries.isEmpty) { + body = _InventoryEmptyState(onNavigateToProducts: () => Navigator.of(context).pop()); + } else { + body = RefreshIndicator( + onRefresh: _loadSummaries, + child: ListView.builder( + padding: const EdgeInsets.only(top: 8, bottom: 88), + itemCount: _summaries.length, + itemBuilder: (context, index) => _buildTile(_summaries[index]), + ), + ); + } + + return Scaffold( + appBar: AppBar( + leading: const BackButton(), + title: const Text('S4:在庫管理'), + actions: [ + IconButton( + tooltip: '更新', + onPressed: _isLoading ? null : _loadSummaries, + icon: const Icon(Icons.refresh), + ), + ], + ), + body: body, + ); + } +} + +class _InventoryEmptyState extends StatelessWidget { + const _InventoryEmptyState({required this.onNavigateToProducts}); + + final VoidCallback onNavigateToProducts; + + @override + Widget build(BuildContext context) { + return Center( + child: Padding( + padding: const EdgeInsets.all(32), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const Icon(Icons.inventory_2, size: 64, color: Colors.grey), + const SizedBox(height: 16), + const Text('商品マスターに在庫対象がありません', style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + const SizedBox(height: 8), + const Text('商品マスターで商品を登録すると在庫が表示されます。', textAlign: TextAlign.center), + const SizedBox(height: 24), + OutlinedButton.icon( + onPressed: onNavigateToProducts, + icon: const Icon(Icons.open_in_new), + label: const Text('商品マスターへ移動'), + ), + ], + ), + ), + ); + } +} + +class _InventoryDetailSheet extends StatefulWidget { + const _InventoryDetailSheet({required this.summary, required this.service, required this.onUpdated}); + + final InventorySummary summary; + final InventoryService service; + final VoidCallback onUpdated; + + @override + State<_InventoryDetailSheet> createState() => _InventoryDetailSheetState(); +} + +class _InventoryDetailSheetState extends State<_InventoryDetailSheet> { + late InventorySummary _summary; + final DateFormat _dateFormat = DateFormat('yyyy/MM/dd HH:mm'); + final NumberFormat _numberFormat = NumberFormat.decimalPattern('ja_JP'); + + bool _isLoadingMovements = true; + bool _isRecording = false; + List _movements = []; + + @override + void initState() { + super.initState(); + _summary = widget.summary; + _loadMovements(); + } + + Future _loadMovements() async { + setState(() => _isLoadingMovements = true); + final movements = await widget.service.fetchMovements(_summary.productId, limit: 100); + if (!mounted) return; + setState(() { + _movements = movements; + _isLoadingMovements = false; + }); + } + + Future _recordMovement() async { + final result = await _MovementFormDialog.show(context); + if (result == null) return; + setState(() => _isRecording = true); + try { + final updated = await widget.service.recordManualMovement( + productId: _summary.productId, + type: result.type, + quantity: result.quantity, + reference: result.reference, + notes: result.notes, + ); + if (!mounted) return; + setState(() => _summary = updated); + await _loadMovements(); + widget.onUpdated(); + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('在庫履歴を登録しました'))); + } catch (e) { + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('登録に失敗しました: $e'))); + } finally { + if (mounted) setState(() => _isRecording = false); + } + } + + Color _movementColor(InventoryMovementType type) { + switch (type) { + case InventoryMovementType.receipt: + return Colors.teal; + case InventoryMovementType.issue: + return Colors.redAccent; + case InventoryMovementType.adjustment: + return Colors.blueGrey; + } + } + + @override + Widget build(BuildContext context) { + return DraggableScrollableSheet( + initialChildSize: 0.85, + minChildSize: 0.6, + maxChildSize: 0.95, + builder: (ctx, controller) { + return Material( + borderRadius: const BorderRadius.vertical(top: Radius.circular(24)), + clipBehavior: Clip.antiAlias, + child: SafeArea( + top: false, + child: Column( + children: [ + Container( + width: 48, + height: 4, + margin: const EdgeInsets.only(top: 12, bottom: 8), + decoration: BoxDecoration(color: Colors.grey.shade300, borderRadius: BorderRadius.circular(999)), + ), + ListTile( + title: Text(_summary.productName, style: const TextStyle(fontWeight: FontWeight.bold)), + subtitle: Text(_summary.category?.isNotEmpty == true ? _summary.category! : 'カテゴリ未設定'), + trailing: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.end, + children: [ + const Text('在庫数', style: TextStyle(fontSize: 12, color: Colors.grey)), + Text(_numberFormat.format(_summary.stockQuantity), style: const TextStyle(fontSize: 20, fontWeight: FontWeight.bold)), + ], + ), + ), + Padding( + padding: const EdgeInsets.symmetric(horizontal: 20), + child: Row( + children: [ + Expanded( + child: Text( + _summary.lastMovementAt != null + ? '最終更新: ${_dateFormat.format(_summary.lastMovementAt!)}' + : '最終更新: -', + style: const TextStyle(color: Colors.grey), + ), + ), + FilledButton.icon( + onPressed: _isRecording ? null : _recordMovement, + icon: _isRecording + ? const SizedBox(width: 16, height: 16, child: CircularProgressIndicator(strokeWidth: 2)) + : const Icon(Icons.add), + label: const Text('入出庫を記録'), + ), + ], + ), + ), + const SizedBox(height: 12), + Expanded( + child: _isLoadingMovements + ? const Center(child: CircularProgressIndicator()) + : _movements.isEmpty + ? const Center(child: Text('入出庫履歴がまだありません')) + : ListView.builder( + controller: controller, + padding: const EdgeInsets.fromLTRB(16, 0, 16, 24), + itemCount: _movements.length, + itemBuilder: (context, index) { + final movement = _movements[index]; + final color = _movementColor(movement.type); + final delta = movement.quantityDelta; + final deltaSign = delta > 0 ? '+${movement.quantityDelta}' : movement.quantityDelta.toString(); + return Card( + child: ListTile( + leading: CircleAvatar( + backgroundColor: color.withValues(alpha: 0.15), + child: Icon( + movement.type == InventoryMovementType.receipt + ? Icons.call_received + : movement.type == InventoryMovementType.issue + ? Icons.call_made + : Icons.inventory_outlined, + color: color, + ), + ), + title: Text(movement.type.displayName), + subtitle: Text(_dateFormat.format(movement.createdAt)), + trailing: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.end, + children: [ + Text(deltaSign, style: TextStyle(color: color, fontWeight: FontWeight.bold, fontSize: 16)), + if (movement.reference?.isNotEmpty == true) + Text( + movement.reference!, + style: const TextStyle(fontSize: 12, color: Colors.grey), + ), + ], + ), + ), + ); + }, + ), + ), + ], + ), + ), + ); + }, + ); + } +} + +class _MovementFormResult { + _MovementFormResult({ + required this.type, + required this.quantity, + this.reference, + this.notes, + }); + + final InventoryMovementType type; + final int quantity; + final String? reference; + final String? notes; +} + +class _MovementFormDialog extends StatefulWidget { + const _MovementFormDialog(); + + static Future<_MovementFormResult?> show(BuildContext context) { + return showDialog<_MovementFormResult>( + context: context, + builder: (_) => const Dialog(child: _MovementFormDialog()), + ); + } + + @override + State<_MovementFormDialog> createState() => _MovementFormDialogState(); +} + +class _MovementFormDialogState extends State<_MovementFormDialog> { + final TextEditingController _quantityController = TextEditingController(text: '1'); + final TextEditingController _referenceController = TextEditingController(); + final TextEditingController _notesController = TextEditingController(); + InventoryMovementType _type = InventoryMovementType.receipt; + + @override + void dispose() { + _quantityController.dispose(); + _referenceController.dispose(); + _notesController.dispose(); + super.dispose(); + } + + void _submit() { + final raw = _quantityController.text.trim(); + int? parsed = int.tryParse(raw); + if (parsed == null || parsed == 0) { + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('数量を正しく入力してください'))); + return; + } + if (_type != InventoryMovementType.adjustment) { + parsed = parsed.abs(); + } + Navigator.of(context).pop( + _MovementFormResult( + type: _type, + quantity: parsed, + reference: _referenceController.text.trim().isEmpty ? null : _referenceController.text.trim(), + notes: _notesController.text.trim().isEmpty ? null : _notesController.text.trim(), + ), + ); + } + + @override + Widget build(BuildContext context) { + return Padding( + padding: const EdgeInsets.all(16), + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const Text('入出庫を記録', style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + const SizedBox(height: 16), + DropdownButtonFormField( + initialValue: _type, + decoration: const InputDecoration(labelText: '区分', border: OutlineInputBorder()), + onChanged: (val) => setState(() => _type = val ?? InventoryMovementType.receipt), + items: InventoryMovementType.values + .map((type) => DropdownMenuItem(value: type, child: Text(type.displayName))) + .toList(), + ), + const SizedBox(height: 12), + TextField( + controller: _quantityController, + keyboardType: TextInputType.number, + decoration: InputDecoration( + labelText: _type == InventoryMovementType.adjustment ? '数量差分 (マイナス可)' : '数量', + border: const OutlineInputBorder(), + ), + ), + const SizedBox(height: 12), + TextField( + controller: _referenceController, + decoration: const InputDecoration(labelText: '参照 (任意)', border: OutlineInputBorder()), + ), + const SizedBox(height: 12), + TextField( + controller: _notesController, + maxLines: 2, + decoration: const InputDecoration(labelText: 'メモ', border: OutlineInputBorder()), + ), + const SizedBox(height: 20), + Row( + mainAxisAlignment: MainAxisAlignment.end, + children: [ + TextButton(onPressed: () => Navigator.of(context).pop(), child: const Text('キャンセル')), + const SizedBox(width: 12), + FilledButton(onPressed: _submit, child: const Text('登録')), + ], + ), + ], + ), + ); + } +} + +class SalesReceivablesScreen extends StatefulWidget { + const SalesReceivablesScreen({super.key}); + + @override + State createState() => _SalesReceivablesScreenState(); +} + +class _SalesReceivablesScreenState extends State { + final ReceivableService _service = ReceivableService(); + final DateFormat _dateFormat = DateFormat('yyyy/MM/dd'); + final NumberFormat _currencyFormat = NumberFormat.currency(locale: 'ja_JP', symbol: '¥'); + + bool _includeSettled = false; + bool _isLoading = false; + bool _isVerifyingChain = false; + List _summaries = []; + + @override + void initState() { + super.initState(); + _loadSummaries(); + } + + Future _loadSummaries() async { + setState(() => _isLoading = true); + final list = await _service.fetchSummaries(includeSettled: _includeSettled); + if (!mounted) return; + setState(() { + _summaries = list; + _isLoading = false; + }); + } + + void _toggleSettled(bool value) { + setState(() => _includeSettled = value); + _loadSummaries(); + } + + Future _openDetail(ReceivableInvoiceSummary summary) async { + await showModalBottomSheet( + context: context, + isScrollControlled: true, + backgroundColor: Colors.transparent, + builder: (ctx) => _ReceivableDetailSheet( + summary: summary, + service: _service, + onUpdated: () async { + Navigator.of(ctx).pop(); + await _loadSummaries(); + }, + ), + ); + } + + Future _verifyHashChain() async { + setState(() => _isVerifyingChain = true); + try { + final result = await _service.verifyHashChain(); + if (!mounted) return; + await showDialog( + context: context, + builder: (ctx) => _HashChainVerificationDialog(result: result), + ); + } catch (e) { + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('検証に失敗しました: $e'))); + } finally { + if (mounted) setState(() => _isVerifyingChain = false); + } + } + + Color _statusColor(ReceivableInvoiceSummary summary) { + if (summary.isSettled) { + return Colors.green; + } + if (summary.isOverdue) { + return Colors.redAccent; + } + return Colors.orange; + } + + Widget _buildTile(ReceivableInvoiceSummary summary) { + final chipColor = _statusColor(summary); + final statusLabel = summary.isSettled + ? '入金済' + : summary.isOverdue + ? '期限超過' + : '入金待ち'; + final subtitle = [ + '請求日: ${_dateFormat.format(summary.invoiceDate)}', + '期日: ${_dateFormat.format(summary.dueDate)}', + ]; + return Card( + margin: const EdgeInsets.symmetric(horizontal: 16, vertical: 8), + child: ListTile( + onTap: () => _openDetail(summary), + title: Text(summary.invoiceNumber, style: const TextStyle(fontWeight: FontWeight.bold)), + subtitle: Text('${summary.customerName}\n${subtitle.join(' / ')}'), + trailing: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.end, + children: [ + Text(_currencyFormat.format(summary.outstandingAmount), style: const TextStyle(fontWeight: FontWeight.bold)), + const SizedBox(height: 6), + Chip( + label: Text(statusLabel, style: const TextStyle(color: Colors.white)), + backgroundColor: chipColor, + padding: EdgeInsets.zero, + ), + ], + ), + ), + ); + } + + @override + Widget build(BuildContext context) { + Widget body; + if (_isLoading) { + body = const Center(child: CircularProgressIndicator()); + } else if (_summaries.isEmpty) { + body = const _ReceivablesEmptyState(); + } else { + body = RefreshIndicator( + onRefresh: _loadSummaries, + child: ListView.builder( + padding: const EdgeInsets.only(top: 8, bottom: 88), + itemCount: _summaries.length, + itemBuilder: (context, index) => _buildTile(_summaries[index]), + ), + ); + } + + return Scaffold( + appBar: AppBar( + leading: const BackButton(), + title: const Text('S5:回収・入金管理'), + actions: [ + IconButton( + tooltip: 'HASHチェーンを検証', + onPressed: _isVerifyingChain ? null : _verifyHashChain, + icon: _isVerifyingChain + ? const SizedBox( + width: 18, + height: 18, + child: CircularProgressIndicator(strokeWidth: 2), + ) + : const Icon(Icons.verified_outlined), + ), + IconButton(onPressed: _isLoading ? null : _loadSummaries, icon: const Icon(Icons.refresh)), + ], + ), + body: Column( + children: [ + SwitchListTile( + title: const Text('入金済みも表示'), + value: _includeSettled, + onChanged: _toggleSettled, + secondary: const Icon(Icons.filter_alt), + ), + const Divider(height: 1), + Expanded(child: body), + ], + ), + ); + } +} + +class _ReceivablesEmptyState extends StatelessWidget { + const _ReceivablesEmptyState(); + + @override + Widget build(BuildContext context) { + return Center( + child: Padding( + padding: const EdgeInsets.all(32), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: const [ + Icon(Icons.account_balance_wallet_outlined, size: 64, color: Colors.grey), + SizedBox(height: 16), + Text('請求書データがありません', style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + SizedBox(height: 8), + Text('請求書を正式発行すると売掛リストに表示されます。', textAlign: TextAlign.center), + ], + ), + ), + ); + } +} + +class _ReceivableDetailSheet extends StatefulWidget { + const _ReceivableDetailSheet({required this.summary, required this.service, required this.onUpdated}); + + final ReceivableInvoiceSummary summary; + final ReceivableService service; + final VoidCallback onUpdated; + + @override + State<_ReceivableDetailSheet> createState() => _ReceivableDetailSheetState(); +} + +class _ReceivableDetailSheetState extends State<_ReceivableDetailSheet> { + late ReceivableInvoiceSummary _summary; + final NumberFormat _currencyFormat = NumberFormat.currency(locale: 'ja_JP', symbol: '¥'); + final DateFormat _dateFormat = DateFormat('yyyy/MM/dd'); + + bool _isLoading = true; + bool _isProcessing = false; + List _payments = []; + + @override + void initState() { + super.initState(); + _summary = widget.summary; + _refreshData(); + } + + Future _refreshData() async { + setState(() => _isLoading = true); + final latestSummary = await widget.service.findSummary(_summary.invoiceId); + final payments = await widget.service.fetchPayments(_summary.invoiceId); + if (!mounted) return; + setState(() { + _summary = latestSummary ?? _summary; + _payments = payments; + _isLoading = false; + }); + } + + Future _addPayment() async { + final result = await _PaymentFormDialog.show(context); + if (result == null) return; + setState(() => _isProcessing = true); + try { + await widget.service.addPayment( + invoiceId: _summary.invoiceId, + amount: result.amount, + paymentDate: result.paymentDate, + method: result.method, + notes: result.notes, + ); + await _refreshData(); + widget.onUpdated(); + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('入金を登録しました'))); + } catch (e) { + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('登録に失敗しました: $e'))); + } finally { + if (mounted) setState(() => _isProcessing = false); + } + } + + Future _deletePayment(ReceivablePayment payment) async { + final confirmed = await showDialog( + context: context, + builder: (ctx) => AlertDialog( + title: const Text('入金を削除'), + content: Text('${_currencyFormat.format(payment.amount)} を削除しますか?'), + actions: [ + TextButton(onPressed: () => Navigator.pop(ctx, false), child: const Text('キャンセル')), + TextButton(onPressed: () => Navigator.pop(ctx, true), child: const Text('削除', style: TextStyle(color: Colors.red))), + ], + ), + ); + if (confirmed != true) return; + setState(() => _isProcessing = true); + await widget.service.deletePayment(payment.id); + await _refreshData(); + widget.onUpdated(); + if (mounted) { + setState(() => _isProcessing = false); + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('入金を削除しました'))); + } + } + + Color _progressColor() { + if (_summary.isSettled) return Colors.green; + if (_summary.isOverdue) return Colors.redAccent; + return Colors.orange; + } + + @override + Widget build(BuildContext context) { + return DraggableScrollableSheet( + initialChildSize: 0.9, + minChildSize: 0.6, + maxChildSize: 0.98, + builder: (ctx, controller) { + return Material( + borderRadius: const BorderRadius.vertical(top: Radius.circular(24)), + clipBehavior: Clip.antiAlias, + child: SafeArea( + top: false, + child: Column( + children: [ + Container( + width: 48, + height: 4, + margin: const EdgeInsets.only(top: 12, bottom: 8), + decoration: BoxDecoration(color: Colors.grey.shade300, borderRadius: BorderRadius.circular(999)), + ), + ListTile( + title: Text(_summary.invoiceNumber, style: const TextStyle(fontWeight: FontWeight.bold)), + subtitle: Text(_summary.customerName), + trailing: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.end, + children: [ + Text('残高 ${_currencyFormat.format(_summary.outstandingAmount)}'), + const SizedBox(height: 4), + Text('総額 ${_currencyFormat.format(_summary.totalAmount)}', style: const TextStyle(fontSize: 12, color: Colors.grey)), + ], + ), + ), + Padding( + padding: const EdgeInsets.symmetric(horizontal: 20), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text('請求日: ${_dateFormat.format(_summary.invoiceDate)}'), + Text('期日: ${_dateFormat.format(_summary.dueDate)}'), + const SizedBox(height: 12), + LinearProgressIndicator( + value: _summary.collectionProgress, + minHeight: 8, + backgroundColor: Colors.grey.shade200, + color: _progressColor(), + ), + const SizedBox(height: 4), + Text('回収率 ${(100 * _summary.collectionProgress).toStringAsFixed(1)}%'), + ], + ), + ), + Padding( + padding: const EdgeInsets.symmetric(horizontal: 20, vertical: 12), + child: FilledButton.icon( + onPressed: _isProcessing ? null : _addPayment, + icon: _isProcessing + ? const SizedBox(width: 16, height: 16, child: CircularProgressIndicator(strokeWidth: 2)) + : const Icon(Icons.add), + label: const Text('入金を登録'), + ), + ), + Expanded( + child: _isLoading + ? const Center(child: CircularProgressIndicator()) + : ListView.builder( + controller: controller, + padding: const EdgeInsets.fromLTRB(16, 0, 16, 24), + itemCount: _payments.length, + itemBuilder: (context, index) { + final payment = _payments[index]; + return Card( + child: ListTile( + title: Text(_currencyFormat.format(payment.amount), style: const TextStyle(fontWeight: FontWeight.bold)), + subtitle: Text('${_dateFormat.format(payment.paymentDate)} / ${payment.method.displayName}${payment.notes?.isNotEmpty == true ? '\n${payment.notes}' : ''}'), + trailing: IconButton( + icon: const Icon(Icons.delete_outline, color: Colors.redAccent), + onPressed: _isProcessing ? null : () => _deletePayment(payment), + ), + ), + ); + }, + ), + ), + ], + ), + ), + ); + }, + ); + } +} + +class _PaymentFormResult { + const _PaymentFormResult({ + required this.amount, + required this.paymentDate, + required this.method, + this.notes, + }); + + final int amount; + final DateTime paymentDate; + final PaymentMethod method; + final String? notes; +} + +class _PaymentFormDialog extends StatefulWidget { + const _PaymentFormDialog(); + + static Future<_PaymentFormResult?> show(BuildContext context) { + return showDialog<_PaymentFormResult>( + context: context, + builder: (ctx) => const Dialog(child: _PaymentFormDialog()), + ); + } + + @override + State<_PaymentFormDialog> createState() => _PaymentFormDialogState(); +} + +class _PaymentFormDialogState extends State<_PaymentFormDialog> { + final TextEditingController _amountController = TextEditingController(); + final TextEditingController _notesController = TextEditingController(); + DateTime _paymentDate = DateTime.now(); + PaymentMethod _method = PaymentMethod.bankTransfer; + + @override + void dispose() { + _amountController.dispose(); + _notesController.dispose(); + super.dispose(); + } + + Future _pickDate() async { + final picked = await showDatePicker( + context: context, + initialDate: _paymentDate, + firstDate: DateTime(DateTime.now().year - 2), + lastDate: DateTime(DateTime.now().year + 2), + ); + if (picked != null) { + setState(() => _paymentDate = picked); + } + } + + void _submit() { + final amount = int.tryParse(_amountController.text.trim()); + if (amount == null || amount <= 0) { + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('金額を入力してください'))); + return; + } + Navigator.of(context).pop( + _PaymentFormResult( + amount: amount, + paymentDate: _paymentDate, + method: _method, + notes: _notesController.text.trim().isEmpty ? null : _notesController.text.trim(), + ), + ); + } + + @override + Widget build(BuildContext context) { + final dateLabel = DateFormat('yyyy/MM/dd').format(_paymentDate); + return Padding( + padding: const EdgeInsets.all(16), + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const Text('入金を登録', style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + const SizedBox(height: 16), + TextField( + controller: _amountController, + keyboardType: TextInputType.number, + decoration: const InputDecoration(labelText: '入金額 (円)', border: OutlineInputBorder()), + ), + const SizedBox(height: 12), + ListTile( + contentPadding: EdgeInsets.zero, + title: const Text('入金日'), + subtitle: Text(dateLabel), + trailing: IconButton(icon: const Icon(Icons.calendar_today), onPressed: _pickDate), + ), + DropdownButtonFormField( + initialValue: _method, + decoration: const InputDecoration(labelText: '入金方法', border: OutlineInputBorder()), + onChanged: (val) => setState(() => _method = val ?? PaymentMethod.bankTransfer), + items: PaymentMethod.values + .map((method) => DropdownMenuItem(value: method, child: Text(method.displayName))) + .toList(), + ), + const SizedBox(height: 12), + TextField( + controller: _notesController, + maxLines: 2, + decoration: const InputDecoration(labelText: 'メモ (任意)', border: OutlineInputBorder()), + ), + const SizedBox(height: 20), + Row( + mainAxisAlignment: MainAxisAlignment.end, + children: [ + TextButton(onPressed: () => Navigator.of(context).pop(), child: const Text('キャンセル')), + const SizedBox(width: 12), + FilledButton(onPressed: _submit, child: const Text('登録')), + ], + ), + ], + ), + ); + } +} + +class SalesOrderEditorPage extends StatefulWidget { + const SalesOrderEditorPage({super.key, required this.service, this.order}); + + final SalesOrderService service; + final SalesOrder? order; + + @override + State createState() => _SalesOrderEditorPageState(); +} + +class _SalesOrderEditorPageState extends State { + final TextEditingController _notesController = TextEditingController(); + final TextEditingController _assigneeController = TextEditingController(); + final DateFormat _dateFormat = DateFormat('yyyy/MM/dd'); + + String? _customerId; + String? _customerName; + DateTime? _requestedShipDate; + bool _isSaving = false; + final List<_OrderLineFormData> _lines = []; + + @override + void initState() { + super.initState(); + final order = widget.order; + if (order != null) { + _customerId = order.customerId; + _customerName = order.customerNameSnapshot; + _requestedShipDate = order.requestedShipDate; + _notesController.text = order.notes ?? ''; + _assigneeController.text = order.assignedTo ?? ''; + for (final item in order.items) { + _lines.add( + _OrderLineFormData( + description: item.description, + quantity: item.quantity, + unitPrice: item.unitPrice, + ), + ); + } + } + if (_lines.isEmpty) { + _lines.add(_OrderLineFormData()); + } + } + + @override + void dispose() { + _notesController.dispose(); + _assigneeController.dispose(); + for (final line in _lines) { + line.dispose(); + } + super.dispose(); + } + + Future _pickCustomer() async { + final selected = await showModalBottomSheet( + context: context, + isScrollControlled: true, + builder: (ctx) => CustomerPickerModal( + onCustomerSelected: (customer) { + Navigator.pop(ctx, customer); + }, + ), + ); + if (selected != null) { + setState(() { + _customerId = selected.id; + _customerName = selected.formalName; + }); + } + } + + Future _pickDate() async { + final now = DateTime.now(); + final initial = _requestedShipDate ?? now; + final picked = await showDatePicker( + context: context, + initialDate: initial, + firstDate: DateTime(now.year - 1), + lastDate: DateTime(now.year + 2), + ); + if (picked != null) { + setState(() => _requestedShipDate = picked); + } + } + + void _addLine() { + setState(() { + _lines.add(_OrderLineFormData()); + }); + } + + void _removeLine(int index) { + if (_lines.length == 1) return; + setState(() { + final line = _lines.removeAt(index); + line.dispose(); + }); + } + + Future _save() async { + if (_customerId == null || _customerName == null) { + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('取引先を選択してください'))); + return; + } + + final inputs = []; + for (final line in _lines) { + final desc = line.descriptionController.text.trim(); + final qty = int.tryParse(line.quantityController.text) ?? 0; + final price = int.tryParse(line.unitPriceController.text) ?? 0; + if (desc.isEmpty || qty <= 0) continue; + inputs.add(SalesOrderLineInput(description: desc, quantity: qty, unitPrice: price)); + } + if (inputs.isEmpty) { + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('明細を1件以上入力してください'))); + return; + } + + setState(() => _isSaving = true); + try { + SalesOrder saved; + if (widget.order == null) { + saved = await widget.service.createOrder( + customerId: _customerId!, + customerName: _customerName!, + lines: inputs, + requestedShipDate: _requestedShipDate, + notes: _notesController.text.trim().isEmpty ? null : _notesController.text.trim(), + assignedTo: _assigneeController.text.trim().isEmpty ? null : _assigneeController.text.trim(), + ); + } else { + saved = await widget.service.updateOrder( + widget.order!, + replacedLines: inputs, + requestedShipDate: _requestedShipDate, + notes: _notesController.text.trim().isEmpty ? null : _notesController.text.trim(), + assignedTo: _assigneeController.text.trim().isEmpty ? null : _assigneeController.text.trim(), + ); + } + if (!mounted) return; + Navigator.pop(context, saved); + } catch (e) { + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('保存に失敗しました: $e'))); + setState(() => _isSaving = false); + } + } + + @override + Widget build(BuildContext context) { + final title = widget.order == null ? '受注の新規登録' : '受注を編集'; + return Scaffold( + appBar: AppBar( + leading: const BackButton(), + title: Text(title == '受注の新規登録' ? 'S6:受注登録' : 'S6:受注編集'), + actions: [ + TextButton( + onPressed: _isSaving ? null : _save, + child: _isSaving + ? const SizedBox(width: 18, height: 18, child: CircularProgressIndicator(strokeWidth: 2)) + : const Text('保存'), + ), + ], + ), + body: SafeArea( + child: GestureDetector( + onTap: () => FocusScope.of(context).unfocus(), + child: ListView( + padding: const EdgeInsets.all(20), + children: [ + ListTile( + contentPadding: EdgeInsets.zero, + title: const Text('取引先'), + subtitle: Text(_customerName ?? '未選択'), + trailing: OutlinedButton.icon( + onPressed: _pickCustomer, + icon: const Icon(Icons.search), + label: Text(_customerName == null ? '選択' : '変更'), + ), + ), + const SizedBox(height: 12), + ListTile( + contentPadding: EdgeInsets.zero, + title: const Text('希望出荷日'), + subtitle: Text(_requestedShipDate != null ? _dateFormat.format(_requestedShipDate!) : '未設定'), + trailing: IconButton( + icon: const Icon(Icons.calendar_today), + onPressed: _pickDate, + ), + ), + const SizedBox(height: 12), + TextField( + controller: _assigneeController, + decoration: const InputDecoration(labelText: '担当者 (任意)', border: OutlineInputBorder()), + ), + const SizedBox(height: 12), + TextField( + controller: _notesController, + maxLines: 3, + decoration: const InputDecoration(labelText: 'メモ / 特記事項', border: OutlineInputBorder()), + ), + const SizedBox(height: 24), + const Text('受注明細', style: TextStyle(fontSize: 16, fontWeight: FontWeight.bold)), + const SizedBox(height: 12), + for (int i = 0; i < _lines.length; i++) _buildLineCard(i), + const SizedBox(height: 12), + OutlinedButton.icon( + onPressed: _addLine, + icon: const Icon(Icons.add), + label: const Text('明細を追加'), + ), + const SizedBox(height: 32), + ], + ), + ), + ), + ); + } + + Widget _buildLineCard(int index) { + final line = _lines[index]; + return Card( + margin: const EdgeInsets.only(bottom: 12), + child: Padding( + padding: const EdgeInsets.all(16), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Text('明細 ${index + 1}', style: const TextStyle(fontWeight: FontWeight.bold)), + if (_lines.length > 1) + IconButton( + icon: const Icon(Icons.delete_outline), + onPressed: () => _removeLine(index), + ), + ], + ), + TextField( + controller: line.descriptionController, + decoration: const InputDecoration(labelText: '内容', border: OutlineInputBorder()), + ), + const SizedBox(height: 12), + Row( + children: [ + Expanded( + child: TextField( + controller: line.quantityController, + keyboardType: TextInputType.number, + decoration: const InputDecoration(labelText: '数量', border: OutlineInputBorder()), + ), + ), + const SizedBox(width: 12), + Expanded( + child: TextField( + controller: line.unitPriceController, + keyboardType: TextInputType.number, + decoration: const InputDecoration(labelText: '単価 (円)', border: OutlineInputBorder()), + ), + ), + ], + ), + ], + ), + ), + ); + } +} + +class _OrderLineFormData { + _OrderLineFormData({String description = '', int quantity = 1, int unitPrice = 0}) + : descriptionController = TextEditingController(text: description), + quantityController = TextEditingController(text: quantity.toString()), + unitPriceController = TextEditingController(text: unitPrice.toString()); + + final TextEditingController descriptionController; + final TextEditingController quantityController; + final TextEditingController unitPriceController; + + void dispose() { + descriptionController.dispose(); + quantityController.dispose(); + unitPriceController.dispose(); + } +} + +class _OrderDetailSheet extends StatefulWidget { + const _OrderDetailSheet({required this.order, required this.service, required this.onEdit}); + + final SalesOrder order; + final SalesOrderService service; + final void Function(SalesOrder order) onEdit; + + @override + State<_OrderDetailSheet> createState() => _OrderDetailSheetState(); +} + +class _OrderDetailSheetState extends State<_OrderDetailSheet> { + late SalesOrder _order; + bool _isProcessing = false; + final NumberFormat _currencyFormat = NumberFormat.currency(locale: 'ja_JP', symbol: '¥'); + final DateFormat _dateFormat = DateFormat('yyyy/MM/dd'); + + @override + void initState() { + super.initState(); + _order = widget.order; + } + + Future _advance() async { + if (_isProcessing) return; + setState(() => _isProcessing = true); + try { + final updated = await widget.service.advanceStatus(_order.id); + if (!mounted) return; + setState(() => _order = updated); + } catch (e) { + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('ステータス更新に失敗しました: $e'))); + } finally { + if (mounted) setState(() => _isProcessing = false); + } + } + + Future _cancelOrder() async { + if (_order.status == SalesOrderStatus.cancelled || _isProcessing) return; + setState(() => _isProcessing = true); + try { + final updated = await widget.service.transitionStatus(_order.id, SalesOrderStatus.cancelled, force: true); + if (!mounted) return; + setState(() => _order = updated); + } catch (e) { + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('キャンセルに失敗しました: $e'))); + } finally { + if (mounted) setState(() => _isProcessing = false); + } + } + + String _formatDate(DateTime date) => _dateFormat.format(date); + + Color _statusColor(SalesOrderStatus status) { + switch (status) { + case SalesOrderStatus.draft: + return Colors.grey.shade500; + case SalesOrderStatus.confirmed: + return Colors.indigo; + case SalesOrderStatus.picking: + return Colors.orange; + case SalesOrderStatus.shipped: + return Colors.blue; + case SalesOrderStatus.closed: + return Colors.green; + case SalesOrderStatus.cancelled: + return Colors.redAccent; + } + } + + @override + Widget build(BuildContext context) { + final nextStatuses = widget.service.nextStatuses(_order.status); + return DraggableScrollableSheet( + initialChildSize: 0.85, + minChildSize: 0.6, + maxChildSize: 0.95, + builder: (ctx, controller) { + return Material( + borderRadius: const BorderRadius.vertical(top: Radius.circular(24)), + clipBehavior: Clip.antiAlias, + child: Column( + children: [ + Container( + width: 48, + height: 4, + margin: const EdgeInsets.only(top: 12, bottom: 8), + decoration: BoxDecoration(color: Colors.grey.shade300, borderRadius: BorderRadius.circular(999)), + ), + ListTile( + title: Text(_order.customerNameSnapshot ?? '取引先未設定', style: const TextStyle(fontWeight: FontWeight.bold)), + subtitle: Text('受注番号: ${_order.orderNumber ?? _order.id.substring(0, 6)}'), + trailing: IconButton( + icon: const Icon(Icons.edit), + onPressed: () => widget.onEdit(_order), + ), + ), + Expanded( + child: ListView( + controller: controller, + padding: const EdgeInsets.fromLTRB(20, 0, 20, 20), + children: [ + Wrap( + spacing: 8, + runSpacing: 8, + children: SalesOrderStatus.values + .map( + (status) => Chip( + label: Text(status.displayName), + backgroundColor: status == _order.status ? _statusColor(status) : Colors.grey.shade200, + labelStyle: TextStyle( + color: status == _order.status ? Colors.white : Colors.black87, + fontWeight: status == _order.status ? FontWeight.bold : FontWeight.normal, + ), + ), + ) + .toList(), + ), + const SizedBox(height: 16), + _InfoRow(label: '受注日', value: _formatDate(_order.orderDate)), + if (_order.requestedShipDate != null) + _InfoRow(label: '希望出荷日', value: _formatDate(_order.requestedShipDate!)), + if (_order.assignedTo?.isNotEmpty == true) _InfoRow(label: '担当者', value: _order.assignedTo!), + if (_order.notes?.isNotEmpty == true) + Card( + margin: const EdgeInsets.only(top: 12), + child: Padding( + padding: const EdgeInsets.all(12), + child: Text(_order.notes!), + ), + ), + const SizedBox(height: 16), + const Text('明細', style: TextStyle(fontWeight: FontWeight.bold)), + const SizedBox(height: 8), + ..._order.items.map( + (item) => ListTile( + dense: true, + title: Text(item.description), + subtitle: Text('数量 ${item.quantity} / 単価 ${item.unitPrice} 円'), + trailing: Text('${item.lineTotal} 円'), + ), + ), + const Divider(height: 24), + _InfoRow(label: '小計', value: _currencyFormat.format(_order.subtotal)), + _InfoRow(label: '税額', value: _currencyFormat.format(_order.taxAmount)), + _InfoRow(label: '合計', value: _currencyFormat.format(_order.totalAmount), emphasized: true), + const SizedBox(height: 24), + FilledButton.icon( + onPressed: nextStatuses.isEmpty || _isProcessing ? null : _advance, + icon: const Icon(Icons.playlist_add_check), + label: Text(nextStatuses.isEmpty ? '完了済み' : '${nextStatuses.first.displayName} へ進める'), + ), + const SizedBox(height: 8), + TextButton( + onPressed: + _order.status == SalesOrderStatus.cancelled || _isProcessing ? null : _cancelOrder, + child: const Text('キャンセルに変更'), + ), + ], + ), + ), + ], + ), + ); + }, + ); + } +} + +class _InfoRow extends StatelessWidget { + const _InfoRow({required this.label, required this.value, this.emphasized = false}); + + final String label; + final String value; + final bool emphasized; + + @override + Widget build(BuildContext context) { + final textStyle = emphasized + ? Theme.of(context).textTheme.titleMedium?.copyWith(fontWeight: FontWeight.bold) + : Theme.of(context).textTheme.bodyMedium; + return Padding( + padding: const EdgeInsets.symmetric(vertical: 4), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Text(label, style: Theme.of(context).textTheme.bodySmall), + const SizedBox(width: 16), + Expanded( + child: Text( + value, + style: textStyle, + textAlign: TextAlign.end, + ), + ), + ], + ), + ); + } +} diff --git a/lib/screens/sales_receipts_screen.dart b/lib/screens/sales_receipts_screen.dart new file mode 100644 index 0000000..1b9a47d --- /dev/null +++ b/lib/screens/sales_receipts_screen.dart @@ -0,0 +1,762 @@ +import 'package:flutter/material.dart'; +import 'package:intl/intl.dart'; + +import '../models/customer_model.dart'; +import '../models/sales_entry_models.dart'; +import '../services/customer_repository.dart'; +import '../services/sales_entry_service.dart'; +import '../services/sales_receipt_service.dart'; +import 'customer_picker_modal.dart'; + +class SalesReceiptsScreen extends StatefulWidget { + const SalesReceiptsScreen({super.key}); + + @override + State createState() => _SalesReceiptsScreenState(); +} + +class _SalesReceiptsScreenState extends State { + final SalesReceiptService _receiptService = SalesReceiptService(); + final CustomerRepository _customerRepository = CustomerRepository(); + final NumberFormat _currencyFormat = NumberFormat.currency(locale: 'ja_JP', symbol: '¥'); + final DateFormat _dateFormat = DateFormat('yyyy/MM/dd'); + + bool _isLoading = true; + bool _isRefreshing = false; + List _receipts = const []; + Map _receiptAllocations = const {}; + Map _customerNames = const {}; + DateTime? _startDate; + DateTime? _endDate; + + @override + void initState() { + super.initState(); + _loadReceipts(); + } + + Future _loadReceipts() async { + if (!_isRefreshing) { + setState(() => _isLoading = true); + } + try { + final receipts = await _receiptService.fetchReceipts(startDate: _startDate, endDate: _endDate); + final allocationMap = {}; + for (final receipt in receipts) { + final links = await _receiptService.fetchLinks(receipt.id); + allocationMap[receipt.id] = links.fold(0, (sum, link) => sum + link.allocatedAmount); + } + final customerIds = receipts.map((r) => r.customerId).whereType().toSet(); + final customerNames = Map.from(_customerNames); + for (final id in customerIds) { + if (customerNames.containsKey(id)) continue; + final customer = await _customerRepository.findById(id); + if (customer != null) { + customerNames[id] = customer.invoiceName; + } + } + if (!mounted) return; + setState(() { + _receipts = receipts; + _receiptAllocations = allocationMap; + _customerNames = customerNames; + _isLoading = false; + _isRefreshing = false; + }); + } catch (e) { + if (!mounted) return; + setState(() { + _isLoading = false; + _isRefreshing = false; + }); + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('入金データの取得に失敗しました: $e'))); + } + } + + Future _handleRefresh() async { + setState(() => _isRefreshing = true); + await _loadReceipts(); + } + + Future _pickDate({required bool isStart}) async { + final initial = isStart ? (_startDate ?? DateTime.now().subtract(const Duration(days: 30))) : (_endDate ?? DateTime.now()); + final picked = await showDatePicker( + context: context, + initialDate: initial, + firstDate: DateTime(2015), + lastDate: DateTime(2100), + ); + if (picked == null) return; + setState(() { + if (isStart) { + _startDate = picked; + } else { + _endDate = picked; + } + }); + _loadReceipts(); + } + + void _clearFilters() { + setState(() { + _startDate = null; + _endDate = null; + }); + _loadReceipts(); + } + + Future _openEditor({SalesReceipt? receipt}) async { + final updated = await Navigator.of(context).push( + MaterialPageRoute(builder: (_) => SalesReceiptEditorPage(receipt: receipt)), + ); + if (updated != null) { + await _loadReceipts(); + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('入金データを保存しました'))); + } + } + + Future _confirmDelete(SalesReceipt receipt) async { + final confirmed = await showDialog( + context: context, + builder: (context) => AlertDialog( + title: const Text('入金を削除'), + content: Text('${_dateFormat.format(receipt.paymentDate)}の¥${_currencyFormat.format(receipt.amount).replaceAll('¥¥', '')}を削除しますか?'), + actions: [ + TextButton(onPressed: () => Navigator.pop(context, false), child: const Text('キャンセル')), + TextButton(onPressed: () => Navigator.pop(context, true), child: const Text('削除')), + ], + ), + ); + if (confirmed != true) return; + try { + await _receiptService.deleteReceipt(receipt.id); + if (!mounted) return; + await _loadReceipts(); + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('入金を削除しました'))); + } catch (e) { + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('削除に失敗しました: $e'))); + } + } + + String _customerLabel(SalesReceipt receipt) { + if (receipt.customerId == null) { + return '取引先未設定'; + } + return _customerNames[receipt.customerId] ?? '顧客読み込み中'; + } + + @override + Widget build(BuildContext context) { + final filterLabel = [ + if (_startDate != null) '開始: ${_dateFormat.format(_startDate!)}', + if (_endDate != null) '終了: ${_dateFormat.format(_endDate!)}', + ].join(' / '); + + final body = _isLoading + ? const Center(child: CircularProgressIndicator()) + : RefreshIndicator( + onRefresh: _handleRefresh, + child: _receipts.isEmpty + ? ListView( + children: const [ + SizedBox(height: 140), + Icon(Icons.account_balance_wallet_outlined, size: 64, color: Colors.grey), + SizedBox(height: 12), + Center(child: Text('入金データがありません。右下のボタンから登録してください。')), + ], + ) + : ListView.builder( + padding: const EdgeInsets.fromLTRB(16, 16, 16, 120), + itemCount: _receipts.length, + itemBuilder: (context, index) => _buildReceiptCard(_receipts[index]), + ), + ); + + return Scaffold( + appBar: AppBar( + leading: const BackButton(), + title: const Text('U3:入金管理'), + actions: [ + IconButton( + tooltip: '開始日を選択', + icon: const Icon(Icons.calendar_today), + onPressed: () => _pickDate(isStart: true), + ), + IconButton( + tooltip: '終了日を選択', + icon: const Icon(Icons.event), + onPressed: () => _pickDate(isStart: false), + ), + IconButton( + tooltip: 'フィルターをクリア', + icon: const Icon(Icons.filter_alt_off), + onPressed: (_startDate == null && _endDate == null) ? null : _clearFilters, + ), + const SizedBox(width: 4), + ], + bottom: filterLabel.isEmpty + ? null + : PreferredSize( + preferredSize: const Size.fromHeight(32), + child: Padding( + padding: const EdgeInsets.only(bottom: 8), + child: Text(filterLabel, style: const TextStyle(color: Colors.white70)), + ), + ), + ), + body: body, + floatingActionButton: FloatingActionButton.extended( + onPressed: () => _openEditor(), + icon: const Icon(Icons.add), + label: const Text('入金を登録'), + ), + ); + } + + Widget _buildReceiptCard(SalesReceipt receipt) { + final allocated = _receiptAllocations[receipt.id] ?? 0; + final allocationRatio = receipt.amount == 0 ? 0.0 : allocated / receipt.amount; + final statusColor = allocationRatio >= 0.999 + ? Colors.green + : allocationRatio <= 0 + ? Colors.orange + : Colors.blue; + final customer = _customerLabel(receipt); + return Card( + margin: const EdgeInsets.only(bottom: 12), + child: ListTile( + onTap: () => _openEditor(receipt: receipt), + title: Text( + _currencyFormat.format(receipt.amount), + style: const TextStyle(fontWeight: FontWeight.bold, fontSize: 18), + ), + subtitle: Padding( + padding: const EdgeInsets.only(top: 6), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text(customer), + const SizedBox(height: 4), + Text('割当: ${_currencyFormat.format(allocated)} / ${_currencyFormat.format(receipt.amount)}'), + if (receipt.notes?.isNotEmpty == true) ...[ + const SizedBox(height: 4), + Text(receipt.notes!, style: const TextStyle(fontSize: 12, color: Colors.black87)), + ], + ], + ), + ), + trailing: Column( + crossAxisAlignment: CrossAxisAlignment.end, + children: [ + Text(_dateFormat.format(receipt.paymentDate)), + const SizedBox(height: 4), + Text(receipt.method ?? '未設定', style: const TextStyle(fontSize: 12, color: Colors.black54)), + const SizedBox(height: 8), + Container( + decoration: BoxDecoration(color: statusColor.withAlpha(32), borderRadius: BorderRadius.circular(12)), + padding: const EdgeInsets.symmetric(horizontal: 8, vertical: 2), + child: Text( + allocationRatio >= 0.999 + ? '全額割当済' + : allocationRatio <= 0 + ? '未割当' + : '一部割当', + style: TextStyle(color: statusColor, fontSize: 12), + ), + ), + ], + ), + isThreeLine: true, + contentPadding: const EdgeInsets.all(16), + tileColor: Colors.white, + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12)), + selectedColor: Theme.of(context).colorScheme.primary, + selectedTileColor: Theme.of(context).colorScheme.primaryContainer, + onLongPress: () => _confirmDelete(receipt), + ), + ); + } +} + +class SalesReceiptEditorPage extends StatefulWidget { + const SalesReceiptEditorPage({super.key, this.receipt}); + + final SalesReceipt? receipt; + + @override + State createState() => _SalesReceiptEditorPageState(); +} + +class _SalesReceiptEditorPageState extends State { + final SalesReceiptService _receiptService = SalesReceiptService(); + final SalesEntryService _entryService = SalesEntryService(); + final CustomerRepository _customerRepository = CustomerRepository(); + final TextEditingController _amountController = TextEditingController(); + final TextEditingController _notesController = TextEditingController(); + final DateFormat _dateFormat = DateFormat('yyyy/MM/dd'); + final NumberFormat _currencyFormat = NumberFormat.currency(locale: 'ja_JP', symbol: '¥'); + + DateTime _paymentDate = DateTime.now(); + String? _customerId; + String? _customerName; + String? _method = '銀行振込'; + bool _isSaving = false; + bool _isInitializing = true; + + List<_AllocationRow> _allocations = []; + List _entries = []; + Map _baseAllocated = {}; + + @override + void initState() { + super.initState(); + final receipt = widget.receipt; + if (receipt != null) { + _paymentDate = receipt.paymentDate; + _amountController.text = receipt.amount.toString(); + _notesController.text = receipt.notes ?? ''; + _method = receipt.method ?? '銀行振込'; + _customerId = receipt.customerId; + if (_customerId != null) { + _loadCustomerName(_customerId!); + } + } else { + _amountController.text = ''; + } + _amountController.addListener(() => setState(() {})); + _loadData(); + } + + @override + void dispose() { + _amountController.dispose(); + _notesController.dispose(); + for (final row in _allocations) { + row.dispose(); + } + super.dispose(); + } + + Future _loadCustomerName(String customerId) async { + final customer = await _customerRepository.findById(customerId); + if (!mounted) return; + setState(() => _customerName = customer?.invoiceName ?? ''); + } + + Future _loadData() async { + try { + final entries = await _entryService.fetchEntries(); + final totals = await _receiptService.fetchAllocatedTotals(entries.map((e) => e.id)); + final allocationRows = <_AllocationRow>[]; + if (widget.receipt != null) { + final links = await _receiptService.fetchLinks(widget.receipt!.id); + for (final link in links) { + final current = totals[link.salesEntryId] ?? 0; + totals[link.salesEntryId] = current - link.allocatedAmount; + var entry = _findEntryById(link.salesEntryId, entries); + entry ??= await _entryService.findById(link.salesEntryId); + if (entry != null && entries.every((e) => e.id != entry!.id)) { + entries.add(entry); + } + if (entry != null) { + allocationRows.add(_AllocationRow(entry: entry, amount: link.allocatedAmount)); + } + } + } + if (!mounted) return; + setState(() { + _entries = entries; + _baseAllocated = totals; + _allocations = allocationRows; + _isInitializing = false; + }); + } catch (e) { + if (!mounted) return; + setState(() => _isInitializing = false); + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('入金フォームの読み込みに失敗しました: $e'))); + } + } + + SalesEntry? _findEntryById(String id, List entries) { + for (final entry in entries) { + if (entry.id == id) return entry; + } + return null; + } + + Future _pickCustomer() async { + final selected = await showModalBottomSheet( + context: context, + isScrollControlled: true, + builder: (ctx) => CustomerPickerModal( + onCustomerSelected: (customer) { + Navigator.pop(ctx, customer); + }, + ), + ); + if (selected == null) return; + setState(() { + _customerId = selected.id; + _customerName = selected.invoiceName; + }); + } + + Future _pickDate() async { + final picked = await showDatePicker( + context: context, + initialDate: _paymentDate, + firstDate: DateTime(2015), + lastDate: DateTime(2100), + ); + if (picked != null) { + setState(() => _paymentDate = picked); + } + } + + Future _addAllocation() async { + if (_entries.isEmpty) { + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('割当対象となる売上伝票がありません'))); + return; + } + final entry = await showModalBottomSheet( + context: context, + isScrollControlled: true, + builder: (_) => _SalesEntryPickerSheet( + entries: _entries, + dateFormat: _dateFormat, + currencyFormat: _currencyFormat, + getOutstanding: _availableForEntry, + ), + ); + if (!mounted) return; + if (entry == null) return; + final maxForEntry = _availableForEntry(entry); + if (maxForEntry <= 0) { + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('選択した売上伝票には割当余力がありません'))); + return; + } + final receiptAmount = _receiptAmount; + final remainingReceipt = receiptAmount > 0 ? receiptAmount - _sumAllocations : maxForEntry; + final initial = remainingReceipt > 0 ? remainingReceipt.clamp(0, maxForEntry).toInt() : maxForEntry; + setState(() { + _allocations.add(_AllocationRow(entry: entry, amount: initial)); + }); + } + + int get _receiptAmount => int.tryParse(_amountController.text) ?? 0; + + int get _sumAllocations => _allocations.fold(0, (sum, row) => sum + row.amount); + + int _availableForEntry(SalesEntry entry, [_AllocationRow? excluding]) { + final base = _baseAllocated[entry.id] ?? 0; + final others = _allocations.where((row) => row.entry.id == entry.id && row != excluding).fold(0, (sum, row) => sum + row.amount); + return entry.amountTaxIncl - base - others; + } + + int _maxForRow(_AllocationRow row) { + return _availableForEntry(row.entry, row) + row.amount; + } + + void _handleAllocationChanged(_AllocationRow row) { + final value = row.amount; + final max = _maxForRow(row); + if (value > max) { + row.setAmount(max); + } else if (value < 0) { + row.setAmount(0); + } + setState(() {}); + } + + void _removeAllocation(_AllocationRow row) { + setState(() { + _allocations.remove(row); + row.dispose(); + }); + } + + Future _save() async { + if (_isSaving) return; + final amount = _receiptAmount; + if (amount <= 0) { + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('入金額を入力してください'))); + return; + } + final totalAlloc = _sumAllocations; + if (totalAlloc > amount) { + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('割当総額が入金額を超えています'))); + return; + } + setState(() => _isSaving = true); + try { + SalesReceipt saved; + final allocations = _allocations + .where((row) => row.amount > 0) + .map((row) => SalesReceiptAllocationInput(salesEntryId: row.entry.id, amount: row.amount)) + .toList(); + if (widget.receipt == null) { + saved = await _receiptService.createReceipt( + customerId: _customerId, + paymentDate: _paymentDate, + amount: amount, + method: _method, + notes: _notesController.text.trim().isEmpty ? null : _notesController.text.trim(), + allocations: allocations, + ); + } else { + final updated = widget.receipt!.copyWith( + customerId: _customerId, + paymentDate: _paymentDate, + amount: amount, + method: _method, + notes: _notesController.text.trim().isEmpty ? null : _notesController.text.trim(), + ); + saved = await _receiptService.updateReceipt(receipt: updated, allocations: allocations); + } + if (!mounted) return; + Navigator.pop(context, saved); + } catch (e) { + if (!mounted) return; + setState(() => _isSaving = false); + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('保存に失敗しました: $e'))); + } + } + + @override + Widget build(BuildContext context) { + final title = widget.receipt == null ? '入金を登録' : '入金を編集'; + final receiptAmount = _receiptAmount; + final allocSum = _sumAllocations; + final remaining = (receiptAmount - allocSum).clamp(-999999999, 999999999).toInt(); + + return Scaffold( + appBar: AppBar( + leading: const BackButton(), + title: Text(title == '入金を登録' ? 'U4:入金登録' : 'U4:入金編集'), + actions: [ + TextButton(onPressed: _isSaving ? null : _save, child: const Text('保存')), + ], + ), + body: _isInitializing + ? const Center(child: CircularProgressIndicator()) + : SingleChildScrollView( + padding: EdgeInsets.only(bottom: MediaQuery.of(context).viewInsets.bottom + 24), + child: Padding( + padding: const EdgeInsets.all(16), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + TextField( + controller: _amountController, + keyboardType: TextInputType.number, + decoration: const InputDecoration(labelText: '入金額 (円)'), + ), + const SizedBox(height: 12), + ListTile( + contentPadding: EdgeInsets.zero, + title: const Text('入金日'), + subtitle: Text(_dateFormat.format(_paymentDate)), + trailing: TextButton(onPressed: _pickDate, child: const Text('変更')), + ), + const Divider(), + ListTile( + contentPadding: EdgeInsets.zero, + title: Text(_customerName ?? '取引先を選択'), + trailing: const Icon(Icons.chevron_right), + onTap: _pickCustomer, + ), + const SizedBox(height: 12), + DropdownButtonFormField( + initialValue: _method, + decoration: const InputDecoration(labelText: '入金方法'), + items: const [ + DropdownMenuItem(value: '銀行振込', child: Text('銀行振込')), + DropdownMenuItem(value: '現金', child: Text('現金')), + DropdownMenuItem(value: '振替', child: Text('口座振替')), + DropdownMenuItem(value: 'カード', child: Text('カード決済')), + DropdownMenuItem(value: 'その他', child: Text('その他')), + ], + onChanged: (val) => setState(() => _method = val), + ), + const SizedBox(height: 12), + TextField( + controller: _notesController, + maxLines: 3, + decoration: const InputDecoration(labelText: 'メモ (任意)'), + ), + const Divider(height: 32), + Row( + children: [ + Text('割当: ${_currencyFormat.format(allocSum)} / ${_currencyFormat.format(receiptAmount)}'), + const Spacer(), + Text( + remaining >= 0 ? '残り: ${_currencyFormat.format(remaining)}' : '超過: ${_currencyFormat.format(remaining.abs())}', + style: TextStyle(color: remaining >= 0 ? Colors.black87 : Colors.red), + ), + ], + ), + const SizedBox(height: 8), + for (final row in _allocations) + Card( + margin: const EdgeInsets.symmetric(vertical: 6), + child: Padding( + padding: const EdgeInsets.all(12), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + children: [ + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text(row.entry.subject?.isNotEmpty == true ? row.entry.subject! : '売上伝票', + style: const TextStyle(fontWeight: FontWeight.bold)), + const SizedBox(height: 4), + Text('${_dateFormat.format(row.entry.issueDate)} / ${_currencyFormat.format(row.entry.amountTaxIncl)}'), + ], + ), + ), + IconButton(onPressed: () => _removeAllocation(row), icon: const Icon(Icons.delete_outline)), + ], + ), + const SizedBox(height: 8), + TextField( + controller: row.controller, + keyboardType: TextInputType.number, + decoration: InputDecoration( + labelText: '割当額', + helperText: '残余 ${_currencyFormat.format((_maxForRow(row) - row.amount).clamp(0, double.infinity))}', + ), + onChanged: (_) => _handleAllocationChanged(row), + ), + ], + ), + ), + ), + TextButton.icon( + onPressed: _addAllocation, + icon: const Icon(Icons.playlist_add), + label: const Text('売上伝票を割当'), + ), + ], + ), + ), + ), + ); + } +} + +class _AllocationRow { + _AllocationRow({required this.entry, int amount = 0}) : controller = TextEditingController(text: amount > 0 ? amount.toString() : '') { + _amount = amount; + } + + final SalesEntry entry; + final TextEditingController controller; + int _amount = 0; + + int get amount { + final parsed = int.tryParse(controller.text.replaceAll(',', '')); + _amount = parsed ?? 0; + return _amount; + } + + void setAmount(int value) { + _amount = value; + controller + ..text = value.toString() + ..selection = TextSelection.collapsed(offset: controller.text.length); + } + + void dispose() { + controller.dispose(); + } +} + +class _SalesEntryPickerSheet extends StatefulWidget { + const _SalesEntryPickerSheet({required this.entries, required this.dateFormat, required this.currencyFormat, required this.getOutstanding}); + + final List entries; + final DateFormat dateFormat; + final NumberFormat currencyFormat; + final int Function(SalesEntry entry) getOutstanding; + + @override + State<_SalesEntryPickerSheet> createState() => _SalesEntryPickerSheetState(); +} + +class _SalesEntryPickerSheetState extends State<_SalesEntryPickerSheet> { + final TextEditingController _keywordController = TextEditingController(); + String _keyword = ''; + + @override + void dispose() { + _keywordController.dispose(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + final filtered = widget.entries.where((entry) { + if (_keyword.isEmpty) return true; + final subject = entry.subject ?? ''; + final customer = entry.customerNameSnapshot ?? ''; + return subject.contains(_keyword) || customer.contains(_keyword); + }).toList(); + + return DraggableScrollableSheet( + initialChildSize: 0.85, + expand: false, + builder: (_, controller) => Material( + color: Theme.of(context).scaffoldBackgroundColor, + child: Padding( + padding: const EdgeInsets.fromLTRB(16, 12, 16, 24), + child: Column( + children: [ + Row( + children: [ + const Expanded(child: Text('売上伝票を選択', style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold))), + IconButton(onPressed: () => Navigator.pop(context), icon: const Icon(Icons.close)), + ], + ), + TextField( + controller: _keywordController, + decoration: InputDecoration( + labelText: 'キーワード (件名/顧客)', + suffixIcon: IconButton(icon: const Icon(Icons.search), onPressed: () => setState(() => _keyword = _keywordController.text.trim())), + ), + onSubmitted: (_) => setState(() => _keyword = _keywordController.text.trim()), + ), + const SizedBox(height: 12), + Expanded( + child: filtered.isEmpty + ? const Center(child: Text('該当する売上伝票がありません')) + : ListView.builder( + controller: controller, + itemCount: filtered.length, + itemBuilder: (context, index) { + final entry = filtered[index]; + final outstanding = widget.getOutstanding(entry); + final disabled = outstanding <= 0; + return ListTile( + enabled: !disabled, + title: Text(entry.subject?.isNotEmpty == true ? entry.subject! : '売上伝票'), + subtitle: Text( + '${entry.customerNameSnapshot ?? '取引先未設定'}\n${widget.dateFormat.format(entry.issueDate)} / ${widget.currencyFormat.format(entry.amountTaxIncl)}\n残: ${widget.currencyFormat.format(outstanding)}', + ), + onTap: disabled ? null : () => Navigator.pop(context, entry), + ); + }, + ), + ), + ], + ), + ), + ), + ); + } +} diff --git a/lib/screens/sales_report_screen.dart b/lib/screens/sales_report_screen.dart index 76a65b5..3e6c197 100644 --- a/lib/screens/sales_report_screen.dart +++ b/lib/screens/sales_report_screen.dart @@ -1,6 +1,11 @@ import 'package:flutter/material.dart'; import 'package:intl/intl.dart'; + +import '../models/invoice_models.dart'; +import '../models/sales_summary.dart'; import '../services/invoice_repository.dart'; +import '../widgets/analytics/analytics_summary_card.dart'; +import '../widgets/analytics/empty_state_card.dart'; class SalesReportScreen extends StatefulWidget { const SalesReportScreen({super.key}); @@ -12,8 +17,9 @@ class SalesReportScreen extends StatefulWidget { class _SalesReportScreenState extends State { final _invoiceRepo = InvoiceRepository(); int _targetYear = DateTime.now().year; - Map _monthlySales = {}; - int _yearlyTotal = 0; + DocumentType? _selectedType; + bool _includeDrafts = false; + SalesSummary? _summary; bool _isLoading = true; @override @@ -24,44 +30,60 @@ class _SalesReportScreenState extends State { Future _loadData() async { setState(() => _isLoading = true); - final monthly = await _invoiceRepo.getMonthlySales(_targetYear); - final yearly = await _invoiceRepo.getYearlyTotal(_targetYear); + final summary = await _invoiceRepo.fetchSalesSummary( + year: _targetYear, + documentType: _selectedType, + includeDrafts: _includeDrafts, + topCustomerLimit: 5, + ); setState(() { - _monthlySales = monthly; - _yearlyTotal = yearly; + _summary = summary; _isLoading = false; }); } @override Widget build(BuildContext context) { - final fmt = NumberFormat("#,###"); - return Scaffold( appBar: AppBar( - title: const Text("売上・資金管理レポート"), + leading: const BackButton(), + title: const Text("R1:売上・資金レポート"), backgroundColor: Colors.indigo, foregroundColor: Colors.white, ), - body: _isLoading - ? const Center(child: CircularProgressIndicator()) - : Column( - children: [ - _buildYearSelector(), - _buildYearlySummary(fmt), - const Divider(height: 1), - Expanded(child: _buildMonthlyList(fmt)), - ], - ), + body: RefreshIndicator( + onRefresh: _loadData, + child: _isLoading + ? const Center(child: CircularProgressIndicator()) + : _summary == null + ? const Center(child: Text('データを取得できませんでした')) + : ListView( + padding: const EdgeInsets.all(16), + children: [ + _buildYearSelector(), + const SizedBox(height: 12), + _buildFilterRow(), + const SizedBox(height: 16), + _buildSummaryCards(), + const SizedBox(height: 16), + _buildTopCustomers(), + const SizedBox(height: 16), + _buildMonthlyList(), + ], + ), + ), ); } Widget _buildYearSelector() { return Container( - color: Colors.indigo.shade50, - padding: const EdgeInsets.symmetric(vertical: 8), + padding: const EdgeInsets.symmetric(vertical: 8, horizontal: 16), + decoration: BoxDecoration( + color: Colors.indigo.shade50, + borderRadius: BorderRadius.circular(16), + ), child: Row( - mainAxisAlignment: MainAxisAlignment.center, + mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ IconButton( icon: const Icon(Icons.chevron_left), @@ -86,51 +108,188 @@ class _SalesReportScreenState extends State { ); } - Widget _buildYearlySummary(NumberFormat fmt) { - return Container( - width: double.infinity, - padding: const EdgeInsets.all(24), - decoration: BoxDecoration( - color: Colors.indigo.shade900, + Widget _buildFilterRow() { + final chips = []; + chips.add(_buildFilterChip(label: '全て', isActive: _selectedType == null, onTap: () { + setState(() => _selectedType = null); + _loadData(); + })); + for (final type in DocumentType.values) { + chips.add(_buildFilterChip(label: type.displayName, isActive: _selectedType == type, onTap: () { + setState(() => _selectedType = type); + _loadData(); + })); + } + + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Wrap( + spacing: 8, + runSpacing: 8, + children: chips, + ), + const SizedBox(height: 8), + Row( + mainAxisAlignment: MainAxisAlignment.end, + children: [ + const Text('下書きを含める'), + Switch( + value: _includeDrafts, + onChanged: (value) { + setState(() => _includeDrafts = value); + _loadData(); + }, + ), + ], + ), + ], + ); + } + + Widget _buildSummaryCards() { + final summary = _summary!; + final fmt = NumberFormat('#,###'); + final cards = [ + AnalyticsSummaryCard( + title: '年間売上合計', + value: '¥${fmt.format(summary.yearlyTotal)}', + subtitle: summary.documentType == null ? '全ドキュメント種別' : summary.documentType!.displayName, + icon: Icons.ssid_chart, + color: Colors.indigo, ), + AnalyticsSummaryCard( + title: '最高月', + value: summary.bestMonth == 0 ? '-' : '${summary.bestMonth}月', + subtitle: summary.bestMonthTotal > 0 ? '¥${fmt.format(summary.bestMonthTotal)}' : 'データなし', + icon: Icons.emoji_events, + color: Colors.orange, + ), + AnalyticsSummaryCard( + title: '平均月額', + value: '¥${fmt.format(summary.averageMonthly.round())}', + subtitle: '12ヶ月換算', + icon: Icons.stacked_line_chart, + color: Colors.teal, + ), + ]; + + return Column( + children: [ + cards[0], + const SizedBox(height: 12), + Row( + children: [ + Expanded(child: cards[1]), + const SizedBox(width: 12), + Expanded(child: cards[2]), + ], + ), + ], + ); + } + + Widget _buildTopCustomers() { + final summary = _summary!; + if (summary.customerStats.isEmpty) { + return const EmptyStateCard(message: '確定済みの売上データがありません', icon: Icons.person_off); + } + + final total = summary.customerStats.fold(0, (sum, stat) => sum + stat.totalAmount); + final fmt = NumberFormat('#,###'); + return Card( + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20)), + child: Padding( + padding: const EdgeInsets.all(20), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const Text('トップ顧客', style: TextStyle(fontWeight: FontWeight.bold, fontSize: 16)), + const SizedBox(height: 12), + ...summary.customerStats.map((stat) { + final ratio = total == 0 ? 0.0 : stat.totalAmount / total; + return Padding( + padding: const EdgeInsets.only(bottom: 12), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Expanded(child: Text(stat.customerName, style: const TextStyle(fontWeight: FontWeight.w600))), + Text('¥${fmt.format(stat.totalAmount)}'), + ], + ), + const SizedBox(height: 6), + ClipRRect( + borderRadius: BorderRadius.circular(8), + child: LinearProgressIndicator( + value: ratio, + minHeight: 8, + color: Colors.indigo, + backgroundColor: Colors.indigo.withValues(alpha: 0.15), + ), + ), + ], + ), + ); + }), + ], + ), + ), + ); + } + + Widget _buildMonthlyList() { + final summary = _summary!; + final fmt = NumberFormat('#,###'); + final months = List.generate(12, (index) => index + 1); + if (summary.monthlyTotals.values.every((value) => value == 0)) { + return const EmptyStateCard(message: 'この年度の売上データがありません'); + } + return Card( + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20)), child: Column( + crossAxisAlignment: CrossAxisAlignment.start, children: [ - const Text("年間売上合計 (請求確定分)", style: TextStyle(color: Colors.white70)), - const SizedBox(height: 8), - Text( - "¥${fmt.format(_yearlyTotal)}", - style: const TextStyle(color: Colors.white, fontSize: 32, fontWeight: FontWeight.bold), + const Padding( + padding: EdgeInsets.fromLTRB(20, 20, 20, 0), + child: Text('月別サマリー', style: TextStyle(fontWeight: FontWeight.bold, fontSize: 16)), ), + const Divider(height: 24), + ...months.map((month) { + final amount = summary.monthlyTotals[month] ?? 0; + final share = summary.yearlyTotal == 0 ? 0.0 : amount / summary.yearlyTotal; + return ListTile( + leading: CircleAvatar( + backgroundColor: Colors.indigo.withValues(alpha: 0.1), + foregroundColor: Colors.indigo, + child: Text(month.toString()), + ), + title: Text('$month月の売上'), + subtitle: amount > 0 ? Text('シェア ${(share * 100).toStringAsFixed(1)}%') : const Text('データなし'), + trailing: Text( + '¥${fmt.format(amount)}', + style: TextStyle( + fontWeight: FontWeight.bold, + fontSize: 16, + color: amount > 0 ? Colors.black87 : Colors.grey, + ), + ), + ); + }), ], ), ); } - Widget _buildMonthlyList(NumberFormat fmt) { - return ListView.builder( - itemCount: 12, - itemBuilder: (context, index) { - final month = (index + 1).toString().padLeft(2, '0'); - final amount = _monthlySales[month] ?? 0; - final percentage = _yearlyTotal > 0 ? (amount / _yearlyTotal * 100).toStringAsFixed(1) : "0.0"; - - return ListTile( - leading: CircleAvatar( - backgroundColor: Colors.blueGrey.shade100, - child: Text("${index + 1}", style: const TextStyle(color: Colors.indigo)), - ), - title: Text("${index + 1}月の売上"), - subtitle: amount > 0 ? Text("シェア: $percentage%") : null, - trailing: Text( - "¥${fmt.format(amount)}", - style: TextStyle( - fontWeight: FontWeight.bold, - fontSize: 16, - color: amount > 0 ? Colors.black87 : Colors.grey, - ), - ), - ); - }, + Widget _buildFilterChip({required String label, required bool isActive, required VoidCallback onTap}) { + return ChoiceChip( + label: Text(label), + selected: isActive, + onSelected: (_) => onTap(), + selectedColor: Colors.indigo, + labelStyle: TextStyle(color: isActive ? Colors.white : Colors.black87), ); } } diff --git a/lib/screens/settings_screen.dart b/lib/screens/settings_screen.dart index dabf63f..f1bf9a7 100644 --- a/lib/screens/settings_screen.dart +++ b/lib/screens/settings_screen.dart @@ -1,14 +1,19 @@ import 'dart:convert'; import 'dart:io'; +import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; +import 'package:googleapis/calendar/v3.dart' as gcal; import 'package:image_picker/image_picker.dart'; import '../services/app_settings_repository.dart'; +import '../services/calendar_sync_diagnostics.dart'; +import '../services/calendar_sync_service.dart'; import '../services/theme_controller.dart'; import 'company_info_screen.dart'; import 'email_settings_screen.dart'; import 'business_profile_screen.dart'; import 'chat_screen.dart'; +import 'dashboard_screen.dart'; class SettingsScreen extends StatefulWidget { const SettingsScreen({super.key}); @@ -17,6 +22,14 @@ class SettingsScreen extends StatefulWidget { State createState() => _SettingsScreenState(); } +class _CalendarOption { + const _CalendarOption({required this.id, required this.summary, this.detail}); + + final String id; + final String summary; + final String? detail; +} + // シンプルなアイコンマップ(拡張可) const Map kIconsMap = { 'list_alt': Icons.list_alt, @@ -33,6 +46,8 @@ const Map kIconsMap = { class _SettingsScreenState extends State { final _appSettingsRepo = AppSettingsRepository(); + final _calendarSyncService = CalendarSyncService(); + final _calendarDiagnostics = CalendarSyncDiagnostics(); // External sync (母艦システム「お局様」連携) final _externalHostCtrl = TextEditingController(); @@ -54,6 +69,23 @@ class _SettingsScreenState extends State { final _statusTextCtrl = TextEditingController(text: '工事中'); List _menuItems = []; bool _loadingAppSettings = true; + bool _forceDashboardOnExit = false; + + // Google Calendar + bool _calendarEnabled = false; + bool _calendarBusy = false; + bool _loadingCalendars = false; + bool _calendarSyncing = false; + String? _googleAccountEmail; + String? _selectedCalendarId; + List<_CalendarOption> _availableCalendars = []; + String? _lastCalendarSyncStatus; + bool get _supportsCalendarSync => !kIsWeb && (Platform.isAndroid || Platform.isIOS); + + // Gross profit / sales entry options + bool _grossProfitEnabled = true; + bool _grossProfitToggleVisible = true; + bool _grossProfitIncludeProvisional = false; static const _kExternalHost = 'external_host'; static const _kExternalPass = 'external_pass'; @@ -98,6 +130,9 @@ class _SettingsScreenState extends State { _menuItems = menu; _loadingAppSettings = false; }); + + await _loadCalendarSettings(); + await _loadGrossProfitSettings(); } @override @@ -116,12 +151,29 @@ class _SettingsScreenState extends State { await _appSettingsRepo.setDashboardStatusText(_statusTextCtrl.text.trim().isEmpty ? '工事中' : _statusTextCtrl.text.trim()); await _appSettingsRepo.setDashboardMenu(_menuItems); _showSnackbar('ホーム/ダッシュボード設定を保存しました'); + setState(() { + _forceDashboardOnExit = _homeDashboard; + }); } Future _persistMenu() async { await _appSettingsRepo.setDashboardMenu(_menuItems); } + void _handleExit() { + if (!mounted) return; + if (_forceDashboardOnExit) { + Navigator.of(context).pushAndRemoveUntil( + MaterialPageRoute(builder: (_) => const DashboardScreen()), + (route) => false, + ); + } else { + if (Navigator.of(context).canPop()) { + Navigator.of(context).pop(); + } + } + } + void _addMenuItem() async { final titleCtrl = TextEditingController(); String route = 'invoice_history'; @@ -129,72 +181,78 @@ class _SettingsScreenState extends State { String? customIconPath; await showDialog( context: context, - builder: (ctx) => AlertDialog( - title: const Text('メニューを追加'), - content: SingleChildScrollView( - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - TextField(controller: titleCtrl, decoration: const InputDecoration(labelText: 'タイトル')), - DropdownButtonFormField( - initialValue: route, - decoration: const InputDecoration(labelText: '遷移先'), - items: const [ - DropdownMenuItem(value: 'invoice_history', child: Text('A2:伝票一覧')), - DropdownMenuItem(value: 'invoice_input', child: Text('A1:伝票入力')), - DropdownMenuItem(value: 'customer_master', child: Text('C1:顧客マスター')), - DropdownMenuItem(value: 'product_master', child: Text('P1:商品マスター')), - DropdownMenuItem(value: 'master_hub', child: Text('M1:マスター管理')), - DropdownMenuItem(value: 'settings', child: Text('S1:設定')), - ], - onChanged: (v) => route = v ?? 'invoice_history', - ), - TextField(controller: iconCtrl, decoration: const InputDecoration(labelText: 'Materialアイコン名 (例: list_alt)')), - const SizedBox(height: 8), - Row( - children: [ - Expanded(child: Text(customIconPath ?? 'カスタムアイコン: 未選択', style: const TextStyle(fontSize: 12))), - IconButton( - icon: const Icon(Icons.image_search), - tooltip: 'ギャラリーから選択', - onPressed: () async { - final picker = ImagePicker(); - final picked = await picker.pickImage(source: ImageSource.gallery); - if (picked != null) { - setState(() { - customIconPath = picked.path; - }); - } - }, - ), - ], - ), - ], + builder: (ctx) => AnimatedPadding( + duration: const Duration(milliseconds: 200), + curve: Curves.easeOut, + padding: EdgeInsets.only(bottom: MediaQuery.of(ctx).viewInsets.bottom), + child: AlertDialog( + title: const Text('メニューを追加'), + content: SingleChildScrollView( + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + TextField(controller: titleCtrl, decoration: const InputDecoration(labelText: 'タイトル')), + DropdownButtonFormField( + initialValue: route, + decoration: const InputDecoration(labelText: '遷移先'), + items: const [ + DropdownMenuItem(value: 'invoice_history', child: Text('A2:伝票一覧')), + DropdownMenuItem(value: 'invoice_input', child: Text('A1:伝票入力')), + DropdownMenuItem(value: 'customer_master', child: Text('C1:顧客マスター')), + DropdownMenuItem(value: 'product_master', child: Text('P1:商品マスター')), + DropdownMenuItem(value: 'master_hub', child: Text('M1:マスター管理')), + DropdownMenuItem(value: 'sales_operations', child: Text('B1:販売オペレーション')), + DropdownMenuItem(value: 'settings', child: Text('S1:設定')), + ], + onChanged: (v) => route = v ?? 'invoice_history', + ), + TextField(controller: iconCtrl, decoration: const InputDecoration(labelText: 'Materialアイコン名 (例: list_alt)')), + const SizedBox(height: 8), + Row( + children: [ + Expanded(child: Text(customIconPath ?? 'カスタムアイコン: 未選択', style: const TextStyle(fontSize: 12))), + IconButton( + icon: const Icon(Icons.image_search), + tooltip: 'ギャラリーから選択', + onPressed: () async { + final picker = ImagePicker(); + final picked = await picker.pickImage(source: ImageSource.gallery); + if (picked != null) { + setState(() { + customIconPath = picked.path; + }); + } + }, + ), + ], + ), + ], + ), ), + actions: [ + TextButton(onPressed: () => Navigator.pop(ctx), child: const Text('キャンセル')), + ElevatedButton( + onPressed: () { + if (titleCtrl.text.trim().isEmpty) return; + setState(() { + _menuItems = [ + ..._menuItems, + DashboardMenuItem( + id: DateTime.now().millisecondsSinceEpoch.toString(), + title: titleCtrl.text.trim(), + route: route, + iconName: iconCtrl.text.trim().isEmpty ? 'list_alt' : iconCtrl.text.trim(), + customIconPath: customIconPath, + ), + ]; + }); + _persistMenu(); + Navigator.pop(ctx); + }, + child: const Text('追加'), + ), + ], ), - actions: [ - TextButton(onPressed: () => Navigator.pop(ctx), child: const Text('キャンセル')), - ElevatedButton( - onPressed: () { - if (titleCtrl.text.trim().isEmpty) return; - setState(() { - _menuItems = [ - ..._menuItems, - DashboardMenuItem( - id: DateTime.now().millisecondsSinceEpoch.toString(), - title: titleCtrl.text.trim(), - route: route, - iconName: iconCtrl.text.trim().isEmpty ? 'list_alt' : iconCtrl.text.trim(), - customIconPath: customIconPath, - ), - ]; - }); - _persistMenu(); - Navigator.pop(ctx); - }, - child: const Text('追加'), - ), - ], ), ); } @@ -227,6 +285,8 @@ class _SettingsScreenState extends State { return 'P1:商品マスター'; case 'master_hub': return 'M1:マスター管理'; + case 'sales_operations': + return 'B1:販売オペレーション'; case 'settings': return 'S1:設定'; default: @@ -258,6 +318,21 @@ class _SettingsScreenState extends State { void _pickBackupPath() => _showSnackbar('バックアップ先の選択は後で実装'); + Future _setGrossProfitEnabled(bool value) async { + setState(() => _grossProfitEnabled = value); + await _appSettingsRepo.setGrossProfitEnabled(value); + } + + Future _setGrossProfitToggleVisible(bool value) async { + setState(() => _grossProfitToggleVisible = value); + await _appSettingsRepo.setGrossProfitToggleVisible(value); + } + + Future _setGrossProfitIncludeProvisional(bool value) async { + setState(() => _grossProfitIncludeProvisional = value); + await _appSettingsRepo.setGrossProfitIncludeProvisional(value); + } + Future _loadKanaMap() async { final json = await _appSettingsRepo.getString('customKanaMap'); if (json != null && json.isNotEmpty) { @@ -275,293 +350,628 @@ class _SettingsScreenState extends State { _showSnackbar('かなインデックスを保存しました'); } + Future _loadCalendarSettings() async { + final enabled = await _appSettingsRepo.getGoogleCalendarEnabled(); + final calendarId = await _appSettingsRepo.getGoogleCalendarId(); + final account = await _appSettingsRepo.getGoogleCalendarAccountEmail(); + if (!mounted) return; + setState(() { + _calendarEnabled = enabled; + _selectedCalendarId = calendarId; + _googleAccountEmail = account; + }); + } + + Future _loadGrossProfitSettings() async { + final enabled = await _appSettingsRepo.getGrossProfitEnabled(); + final toggleVisible = await _appSettingsRepo.getGrossProfitToggleVisible(); + final includeProvisional = await _appSettingsRepo.getGrossProfitIncludeProvisional(); + if (!mounted) return; + setState(() { + _grossProfitEnabled = enabled; + _grossProfitToggleVisible = toggleVisible; + _grossProfitIncludeProvisional = includeProvisional; + }); + } + + Future _handleCalendarEnabledChanged(bool enabled) async { + if (_calendarBusy) return; + setState(() => _calendarBusy = true); + try { + if (enabled) { + final success = await _calendarSyncService.ensureSignedIn(); + if (!success) { + if (!mounted) return; + setState(() { + _calendarEnabled = false; + }); + _showSnackbar('Googleサインインに失敗しました'); + return; + } + await _appSettingsRepo.setGoogleCalendarEnabled(true); + final email = await _appSettingsRepo.getGoogleCalendarAccountEmail(); + if (!mounted) return; + setState(() { + _calendarEnabled = true; + _googleAccountEmail = email; + }); + await _refreshCalendarList(); + _showSnackbar('Googleカレンダー連携を有効化しました'); + } else { + await _calendarSyncService.signOut(); + await _appSettingsRepo.setGoogleCalendarEnabled(false); + if (!mounted) return; + setState(() { + _calendarEnabled = false; + _googleAccountEmail = null; + _selectedCalendarId = null; + _availableCalendars = []; + }); + _showSnackbar('Googleカレンダー連携を無効化しました'); + } + } finally { + if (mounted) { + setState(() => _calendarBusy = false); + } + } + } + + Future _refreshCalendarList() async { + if (_loadingCalendars) return; + if (!_calendarEnabled) { + _showSnackbar('まずは連携スイッチをONにしてください'); + return; + } + setState(() => _loadingCalendars = true); + try { + final ready = await _calendarSyncService.ensureSignedIn(); + if (!ready) { + _showSnackbar('Googleアカウントの認証が必要です'); + return; + } + final List calendars = await _calendarSyncService.fetchCalendars(); + final options = calendars + .where((entry) => (entry.id ?? '').isNotEmpty) + .map((entry) => _CalendarOption( + id: entry.id!, + summary: entry.summary ?? entry.id!, + detail: entry.primary == true ? 'プライマリ' : entry.accessRole, + )) + .toList(); + final hasPrimary = options.any((o) => o.id == 'primary'); + if (!hasPrimary) { + options.insert(0, const _CalendarOption(id: 'primary', summary: 'デフォルト(プライマリ)')); + } + if (!mounted) return; + setState(() { + _availableCalendars = options; + if (_selectedCalendarId == null || !_availableCalendars.any((o) => o.id == _selectedCalendarId)) { + _selectedCalendarId = options.isNotEmpty ? options.first.id : null; + } + }); + if (_selectedCalendarId != null) { + await _appSettingsRepo.setGoogleCalendarId(_selectedCalendarId); + } + } catch (e) { + _showSnackbar('カレンダー一覧の取得に失敗しました'); + } finally { + if (mounted) { + setState(() => _loadingCalendars = false); + } + } + } + + Future _handleCalendarSelection(String? calendarId) async { + if (calendarId == null) return; + setState(() => _selectedCalendarId = calendarId); + await _appSettingsRepo.setGoogleCalendarId(calendarId); + _showSnackbar('同期先カレンダーを保存しました'); + } + + Future _reauthenticateCalendarAccount() async { + if (_calendarBusy) return; + setState(() => _calendarBusy = true); + try { + final success = await _calendarSyncService.ensureSignedIn(); + if (!success) { + _showSnackbar('Googleサインインに失敗しました'); + return; + } + final email = await _appSettingsRepo.getGoogleCalendarAccountEmail(); + if (!mounted) return; + setState(() => _googleAccountEmail = email); + _showSnackbar('Googleアカウントを更新しました'); + } finally { + if (mounted) setState(() => _calendarBusy = false); + } + } + + Future _runCalendarDiagnostics() async { + if (_calendarSyncing) return; + if (!_calendarEnabled) { + _showSnackbar('まずはカレンダー連携を有効にしてください'); + return; + } + setState(() => _calendarSyncing = true); + try { + final result = await _calendarDiagnostics.runFullSync(); + if (!mounted) return; + final now = DateTime.now(); + final timestamp = + '${now.year}/${now.month.toString().padLeft(2, '0')}/${now.day.toString().padLeft(2, '0')} ${now.hour.toString().padLeft(2, '0')}:${now.minute.toString().padLeft(2, '0')}'; + final summary = '出荷${result.shipmentsSynced}件 / 債権${result.receivablesSynced}件'; + setState(() { + _lastCalendarSyncStatus = '最終同期: $timestamp ($summary)'; + }); + if (result.hasErrors) { + _showSnackbar('同期は完了しましたが一部でエラーが発生しました'); + await showDialog( + context: context, + builder: (ctx) => AlertDialog( + title: const Text('同期時のエラー'), + content: Text(result.errors.join('\n')), + actions: [ + TextButton(onPressed: () => Navigator.of(ctx).pop(), child: const Text('OK')), + ], + ), + ); + } else { + _showSnackbar('Googleカレンダー同期を実行しました ($summary)'); + } + } catch (e) { + debugPrint('Manual calendar sync failed: $e'); + if (mounted) { + _showSnackbar('Googleカレンダー同期に失敗しました: $e'); + } + } finally { + if (mounted) { + setState(() => _calendarSyncing = false); + } + } + } + @override Widget build(BuildContext context) { - final bottomInset = MediaQuery.of(context).viewInsets.bottom; + final route = ModalRoute.of(context); + final bool isCurrentRoute = route?.isCurrent ?? true; + final bottomInset = isCurrentRoute ? MediaQuery.of(context).viewInsets.bottom : 0.0; final listBottomPadding = 24 + bottomInset; - return Scaffold( - resizeToAvoidBottomInset: false, - appBar: AppBar( - title: const Text('S1:設定'), - backgroundColor: Colors.indigo, - actions: [ - IconButton( - icon: const Icon(Icons.info_outline), - onPressed: () => _showSnackbar('設定はテンプレ実装です。実際の保存は未実装'), + return PopScope( + canPop: false, + onPopInvokedWithResult: (didPop, result) { + if (didPop) return; + _handleExit(); + }, + child: Scaffold( + resizeToAvoidBottomInset: false, + appBar: AppBar( + title: const Text('S1:設定'), + backgroundColor: Colors.indigo, + leading: IconButton( + icon: const Icon(Icons.arrow_back), + onPressed: _handleExit, ), - ], - ), - body: Padding( - padding: const EdgeInsets.fromLTRB(16, 16, 16, 16), - child: ListView( - keyboardDismissBehavior: ScrollViewKeyboardDismissBehavior.onDrag, - physics: const AlwaysScrollableScrollPhysics(), - padding: EdgeInsets.only(bottom: listBottomPadding), - children: [ - _section( - title: 'ホームモード / ダッシュボード', - subtitle: 'ダッシュボードをホームにする・ステータス表示・メニュー管理 (設定はDB保存)', - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - SwitchListTile( - title: const Text('ホームをダッシュボードにする'), - value: _homeDashboard, - onChanged: _loadingAppSettings ? null : (v) => setState(() => _homeDashboard = v), - ), - SwitchListTile( - title: const Text('ステータスを表示する'), - value: _statusEnabled, - onChanged: _loadingAppSettings ? null : (v) => setState(() => _statusEnabled = v), - ), - TextField( - controller: _statusTextCtrl, - enabled: !_loadingAppSettings && _statusEnabled, - decoration: const InputDecoration(labelText: 'ステータス文言', hintText: '例: 工事中'), - ), - const SizedBox(height: 8), - Row( - children: [ - ElevatedButton.icon( - icon: const Icon(Icons.add), - label: const Text('メニューを追加'), - onPressed: _loadingAppSettings ? null : _addMenuItem, - ), - const SizedBox(width: 12), - Text('ドラッグで並べ替え / ゴミ箱で削除', style: Theme.of(context).textTheme.bodySmall), - ], - ), - const SizedBox(height: 8), - _loadingAppSettings - ? const Center(child: Padding(padding: EdgeInsets.all(12), child: CircularProgressIndicator())) - : ReorderableListView.builder( - shrinkWrap: true, - physics: const NeverScrollableScrollPhysics(), - itemCount: _menuItems.length, - onReorder: _reorderMenu, - itemBuilder: (ctx, index) { - final item = _menuItems[index]; - return ListTile( - key: ValueKey(item.id), - leading: _menuLeading(item), - title: Text(item.title), - subtitle: Text(_routeLabel(item.route)), - trailing: IconButton( - icon: const Icon(Icons.delete_forever, color: Colors.redAccent), - onPressed: () => _removeMenuItem(item.id), - ), - ); - }, - ), - const SizedBox(height: 8), - Align( - alignment: Alignment.centerRight, - child: ElevatedButton.icon( - icon: const Icon(Icons.save), - label: const Text('ホーム設定を保存'), - onPressed: _loadingAppSettings ? null : _saveAppSettings, - ), - ), - ], - ), - ), - _section( - title: '自社情報', - subtitle: '会社・担当者・振込口座・電話帳取り込み', - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - const Text('自社/担当者情報、振込口座設定、メールフッタをまとめて編集できます。'), - const SizedBox(height: 12), - Row( - children: [ - OutlinedButton.icon( - icon: const Icon(Icons.info_outline), - label: const Text('旧画面 (税率/印影)'), - onPressed: () async { - await Navigator.push(context, MaterialPageRoute(builder: (context) => const CompanyInfoScreen())); - }, - ), - const SizedBox(width: 8), - Expanded( - child: ElevatedButton.icon( - icon: const Icon(Icons.business), - label: const Text('自社情報ページを開く'), - onPressed: () async { - await Navigator.push(context, MaterialPageRoute(builder: (context) => const BusinessProfileScreen())); - }, - ), - ), - ], - ), - ], - ), - ), - _section( - title: 'メール設定(SM画面へ)', - subtitle: 'SMTP・端末メーラー・BCC必須・ログ閲覧など', - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - const Text('メール送信に関する設定は専用画面でまとめて編集できます。'), - const SizedBox(height: 12), - Align( - alignment: Alignment.centerRight, - child: ElevatedButton.icon( - icon: const Icon(Icons.mail_outline), - label: const Text('メール設定を開く'), - onPressed: () async { - await Navigator.push( - context, - MaterialPageRoute(builder: (context) => const EmailSettingsScreen()), - ); - }, - ), - ), - ], - ), - ), - _section( - title: '外部同期(母艦システム「お局様」連携)', - subtitle: '実行ボタンなし。ホストドメインとパスワードを入力してください。', - child: Column( - children: [ - TextField(controller: _externalHostCtrl, decoration: const InputDecoration(labelText: 'ホストドメイン')), - TextField(controller: _externalPassCtrl, decoration: const InputDecoration(labelText: 'パスワード'), obscureText: true), - const SizedBox(height: 8), - Row( - children: [ - ElevatedButton.icon( - icon: const Icon(Icons.save), - label: const Text('保存'), - onPressed: _saveExternalSync, - ), - const SizedBox(width: 12), - OutlinedButton.icon( - icon: const Icon(Icons.chat_bubble_outline), - label: const Text('チャットを開く'), - onPressed: () async { - await Navigator.push(context, MaterialPageRoute(builder: (_) => const ChatScreen())); - }, - ), - ], - ), - ], - ), - ), - _section( - title: 'バックアップドライブ', - subtitle: 'バックアップ先のクラウド/ローカル', - child: Column( - children: [ - TextField(controller: _backupPathCtrl, decoration: const InputDecoration(labelText: '保存先パス/URL')), - const SizedBox(height: 8), - Row( - children: [ - OutlinedButton.icon( - icon: const Icon(Icons.folder_open), - label: const Text('参照'), - onPressed: _pickBackupPath, - ), - const SizedBox(width: 8), - ElevatedButton.icon( - icon: const Icon(Icons.save), - label: const Text('保存'), - onPressed: _saveBackup, - ), - ], - ), - ], - ), - ), - _section( - title: 'テーマ選択', - subtitle: '配色や見た目を切り替え(テンプレ)', - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - DropdownButtonFormField( - initialValue: _theme, - decoration: const InputDecoration(labelText: 'テーマを選択'), - items: const [ - DropdownMenuItem(value: 'light', child: Text('ライト')), - DropdownMenuItem(value: 'dark', child: Text('ダーク')), - DropdownMenuItem(value: 'system', child: Text('システムに従う')), - ], - onChanged: (v) => setState(() => _theme = v ?? 'system'), - ), - const SizedBox(height: 8), - ElevatedButton.icon( - icon: const Icon(Icons.save), - label: const Text('保存'), - onPressed: () async { - await _appSettingsRepo.setTheme(_theme); - await AppThemeController.instance.setTheme(_theme); - if (!mounted) return; - _showSnackbar('テーマ設定を保存しました'); - }, - ), - ], - ), - ), - _section( - title: 'かなインデックス追加', - subtitle: '漢字→行(1文字ずつ)を追加して索引を補強', - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - children: [ - Expanded( - child: TextField( - controller: _kanaKeyCtrl, - maxLength: 1, - decoration: const InputDecoration(labelText: '漢字1文字', counterText: ''), - ), - ), - const SizedBox(width: 8), - Expanded( - child: TextField( - controller: _kanaValCtrl, - maxLength: 1, - decoration: const InputDecoration(labelText: '行(例: さ)', counterText: ''), - ), - ), - const SizedBox(width: 8), - ElevatedButton( - onPressed: () { - final k = _kanaKeyCtrl.text.trim(); - final v = _kanaValCtrl.text.trim(); - if (k.isEmpty || v.isEmpty) return; - setState(() { - _customKanaMap[k] = v; - }); - }, - child: const Text('追加'), - ), - ], - ), - const SizedBox(height: 8), - Wrap( - spacing: 6, - children: _customKanaMap.entries - .map((e) => Chip( - label: Text('${e.key}: ${e.value}'), - onDeleted: () => setState(() => _customKanaMap.remove(e.key)), - )) - .toList(), - ), - const SizedBox(height: 8), - ElevatedButton.icon( - icon: const Icon(Icons.save), - label: const Text('保存'), - onPressed: _saveKanaMap, - ), - ], - ), + actions: [ + IconButton( + icon: const Icon(Icons.info_outline), + onPressed: () => _showSnackbar('設定はテンプレ実装です。実際の保存は未実装'), ), ], ), + body: Padding( + padding: const EdgeInsets.fromLTRB(16, 16, 16, 16), + child: ListView( + keyboardDismissBehavior: ScrollViewKeyboardDismissBehavior.onDrag, + physics: const AlwaysScrollableScrollPhysics(), + padding: EdgeInsets.only(bottom: listBottomPadding), + children: [ + _section( + title: 'ホームモード / ダッシュボード', + subtitle: 'ダッシュボードをホームにする・ステータス表示・メニュー管理 (設定はDB保存)', + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + SwitchListTile( + title: const Text('ホームをダッシュボードにする'), + value: _homeDashboard, + onChanged: _loadingAppSettings ? null : (v) => setState(() => _homeDashboard = v), + ), + SwitchListTile( + title: const Text('ステータスを表示する'), + value: _statusEnabled, + onChanged: _loadingAppSettings ? null : (v) => setState(() => _statusEnabled = v), + ), + TextField( + controller: _statusTextCtrl, + enabled: !_loadingAppSettings && _statusEnabled, + decoration: const InputDecoration(labelText: 'ステータス文言', hintText: '例: 工事中'), + ), + const SizedBox(height: 8), + Row( + children: [ + ElevatedButton.icon( + icon: const Icon(Icons.add), + label: const Text('メニューを追加'), + onPressed: _loadingAppSettings ? null : _addMenuItem, + ), + const SizedBox(width: 12), + Text('ドラッグで並べ替え / ゴミ箱で削除', style: Theme.of(context).textTheme.bodySmall), + ], + ), + const SizedBox(height: 8), + _loadingAppSettings + ? const Center(child: Padding(padding: EdgeInsets.all(12), child: CircularProgressIndicator())) + : ReorderableListView.builder( + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + itemCount: _menuItems.length, + onReorder: _reorderMenu, + itemBuilder: (ctx, index) { + final item = _menuItems[index]; + return ListTile( + key: ValueKey(item.id), + leading: _menuLeading(item), + title: Text(item.title), + subtitle: Text(_routeLabel(item.route)), + trailing: IconButton( + icon: const Icon(Icons.delete_forever, color: Colors.redAccent), + onPressed: () => _removeMenuItem(item.id), + ), + ); + }, + ), + const SizedBox(height: 8), + Align( + alignment: Alignment.centerRight, + child: ElevatedButton.icon( + icon: const Icon(Icons.save), + label: const Text('ホーム設定を保存'), + onPressed: _loadingAppSettings ? null : _saveAppSettings, + ), + ), + ], + ), + ), + if (_supportsCalendarSync) + _section( + title: 'Googleカレンダー連携', + subtitle: '出荷追跡や集金・入金予定をGoogleカレンダーへ自動登録', + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + SwitchListTile( + title: const Text('Googleカレンダーと連携する'), + value: _calendarEnabled, + onChanged: _calendarBusy ? null : _handleCalendarEnabledChanged, + ), + const SizedBox(height: 8), + if (_calendarEnabled) + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + ListTile( + contentPadding: EdgeInsets.zero, + title: const Text('接続アカウント'), + subtitle: Text(_googleAccountEmail ?? '未サインイン'), + trailing: _calendarBusy + ? const SizedBox(width: 24, height: 24, child: CircularProgressIndicator(strokeWidth: 2)) + : TextButton.icon( + onPressed: () => _handleCalendarEnabledChanged(false), + icon: const Icon(Icons.logout), + label: const Text('切断'), + ), + ), + Row( + children: [ + Expanded( + child: OutlinedButton.icon( + icon: const Icon(Icons.refresh), + label: const Text('カレンダー一覧を取得'), + onPressed: _loadingCalendars ? null : _refreshCalendarList, + ), + ), + const SizedBox(width: 12), + Expanded( + child: OutlinedButton.icon( + icon: const Icon(Icons.verified_user), + label: const Text('Googleを再認証'), + onPressed: _calendarBusy ? null : _reauthenticateCalendarAccount, + ), + ), + if (_loadingCalendars) + const Padding( + padding: EdgeInsets.only(left: 12), + child: SizedBox(width: 20, height: 20, child: CircularProgressIndicator(strokeWidth: 2)), + ), + ], + ), + const SizedBox(height: 12), + if (_availableCalendars.isEmpty) + Text( + 'まだ同期先カレンダーが選ばれていません。「カレンダー一覧を取得」を押して選択してください。', + style: Theme.of(context).textTheme.bodySmall, + ) + else + DropdownButtonFormField( + key: ValueKey(_selectedCalendarId ?? 'none'), + initialValue: _selectedCalendarId, + decoration: const InputDecoration(labelText: '同期先カレンダー'), + items: _availableCalendars + .map((option) => DropdownMenuItem( + value: option.id, + child: Text(option.detail == null ? option.summary : '${option.summary} (${option.detail})'), + )) + .toList(), + onChanged: _loadingCalendars ? null : _handleCalendarSelection, + ), + const SizedBox(height: 12), + OutlinedButton.icon( + icon: _calendarSyncing + ? const SizedBox( + width: 16, + height: 16, + child: CircularProgressIndicator(strokeWidth: 2), + ) + : const Icon(Icons.sync), + label: Text(_calendarSyncing ? '同期を実行中…' : '今すぐカレンダー同期を実行'), + onPressed: _calendarSyncing ? null : _runCalendarDiagnostics, + ), + if (_lastCalendarSyncStatus != null) + Padding( + padding: const EdgeInsets.only(top: 8), + child: Text( + _lastCalendarSyncStatus!, + style: Theme.of(context).textTheme.bodySmall, + ), + ), + ], + ) + else + Text( + 'カレンダー連携を有効化するとGoogleアカウント認証と同期先の選択が行えます。', + style: Theme.of(context).textTheme.bodySmall, + ), + ], + ), + ) + else + _section( + title: 'Googleカレンダー連携', + subtitle: 'この設定はAndroid/iOS版のみ対応しています', + child: Text( + 'デスクトップ版ではGoogleカレンダー連携を利用できません。モバイル端末から設定してください。', + style: Theme.of(context).textTheme.bodySmall, + ), + ), + _section( + title: '粗利表示 / 暫定粗利', + subtitle: '売上伝票で卸値にもとづく粗利を表示し、未入荷商品の扱いを制御します', + child: Column( + children: [ + SwitchListTile.adaptive( + title: const Text('U2/A1で粗利を表示'), + subtitle: const Text('単価-仕入値を明細ごとに計算して表示します'), + value: _grossProfitEnabled, + onChanged: _setGrossProfitEnabled, + ), + SwitchListTile.adaptive( + title: const Text('営業端末に粗利表示スイッチを表示'), + subtitle: const Text('現場ユーザーが粗利の表示/非表示を切り替えられるようにします'), + value: _grossProfitToggleVisible, + onChanged: _setGrossProfitToggleVisible, + ), + SwitchListTile.adaptive( + title: const Text('暫定粗利(仕入未確定)を合計に含める'), + subtitle: const Text('仕入値が未登録の明細は粗利=0で仮計上し、合計に含めるかを制御します'), + value: _grossProfitIncludeProvisional, + onChanged: _setGrossProfitIncludeProvisional, + ), + const SizedBox(height: 8), + Text( + '仕入値未登録の明細は暫定0円として扱い、仕入確定後に再計算できます。', + style: Theme.of(context).textTheme.bodySmall, + ), + ], + ), + ), + _section( + title: '自社情報', + subtitle: '会社・担当者・振込口座・電話帳取り込み', + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const Text('自社/担当者情報、振込口座設定、メールフッタをまとめて編集できます。'), + const SizedBox(height: 12), + Row( + children: [ + OutlinedButton.icon( + icon: const Icon(Icons.info_outline), + label: const Text('旧画面 (税率/印影)'), + onPressed: () async { + await Navigator.push(context, MaterialPageRoute(builder: (context) => const CompanyInfoScreen())); + }, + ), + const SizedBox(width: 8), + Expanded( + child: ElevatedButton.icon( + icon: const Icon(Icons.business), + label: const Text('自社情報ページを開く'), + onPressed: () async { + await Navigator.push(context, MaterialPageRoute(builder: (context) => const BusinessProfileScreen())); + }, + ), + ), + ], + ), + ], + ), + ), + _section( + title: 'メール設定(SM画面へ)', + subtitle: 'SMTP・端末メーラー・BCC必須・ログ閲覧など', + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const Text('メール送信に関する設定は専用画面でまとめて編集できます。'), + const SizedBox(height: 12), + Align( + alignment: Alignment.centerRight, + child: ElevatedButton.icon( + icon: const Icon(Icons.mail_outline), + label: const Text('メール設定を開く'), + onPressed: () async { + await Navigator.push( + context, + MaterialPageRoute(builder: (context) => const EmailSettingsScreen()), + ); + }, + ), + ), + ], + ), + ), + _section( + title: '外部同期(母艦システム「お局様」連携)', + subtitle: '実行ボタンなし。ホストドメインとパスワードを入力してください。', + child: Column( + children: [ + TextField(controller: _externalHostCtrl, decoration: const InputDecoration(labelText: 'ホストドメイン')), + TextField(controller: _externalPassCtrl, decoration: const InputDecoration(labelText: 'パスワード'), obscureText: true), + const SizedBox(height: 8), + Row( + children: [ + ElevatedButton.icon( + icon: const Icon(Icons.save), + label: const Text('保存'), + onPressed: _saveExternalSync, + ), + const SizedBox(width: 12), + OutlinedButton.icon( + icon: const Icon(Icons.chat_bubble_outline), + label: const Text('チャットを開く'), + onPressed: () async { + await Navigator.push(context, MaterialPageRoute(builder: (_) => const ChatScreen())); + }, + ), + ], + ), + ], + ), + ), + _section( + title: 'バックアップドライブ', + subtitle: 'バックアップ先のクラウド/ローカル', + child: Column( + children: [ + TextField(controller: _backupPathCtrl, decoration: const InputDecoration(labelText: '保存先パス/URL')), + const SizedBox(height: 8), + Row( + children: [ + OutlinedButton.icon( + icon: const Icon(Icons.folder_open), + label: const Text('参照'), + onPressed: _pickBackupPath, + ), + const SizedBox(width: 8), + ElevatedButton.icon( + icon: const Icon(Icons.save), + label: const Text('保存'), + onPressed: _saveBackup, + ), + ], + ), + ], + ), + ), + _section( + title: 'テーマ選択', + subtitle: '配色や見た目を切り替え(テンプレ)', + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + DropdownButtonFormField( + initialValue: _theme, + decoration: const InputDecoration(labelText: 'テーマを選択'), + items: const [ + DropdownMenuItem(value: 'light', child: Text('ライト')), + DropdownMenuItem(value: 'dark', child: Text('ダーク')), + DropdownMenuItem(value: 'system', child: Text('システムに従う')), + ], + onChanged: (v) => setState(() => _theme = v ?? 'system'), + ), + const SizedBox(height: 8), + ElevatedButton.icon( + icon: const Icon(Icons.save), + label: const Text('保存'), + onPressed: () async { + await _appSettingsRepo.setTheme(_theme); + await AppThemeController.instance.setTheme(_theme); + if (!mounted) return; + _showSnackbar('テーマ設定を保存しました'); + }, + ), + ], + ), + ), + _section( + title: 'かなインデックス追加', + subtitle: '漢字→行(1文字ずつ)を追加して索引を補強', + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + children: [ + Expanded( + child: TextField( + controller: _kanaKeyCtrl, + maxLength: 1, + decoration: const InputDecoration(labelText: '漢字1文字', counterText: ''), + ), + ), + const SizedBox(width: 8), + Expanded( + child: TextField( + controller: _kanaValCtrl, + maxLength: 1, + decoration: const InputDecoration(labelText: '行(例: さ)', counterText: ''), + ), + ), + const SizedBox(width: 8), + ElevatedButton( + onPressed: () { + final k = _kanaKeyCtrl.text.trim(); + final v = _kanaValCtrl.text.trim(); + if (k.isEmpty || v.isEmpty) return; + setState(() { + _customKanaMap[k] = v; + }); + }, + child: const Text('追加'), + ), + ], + ), + const SizedBox(height: 8), + Wrap( + spacing: 6, + children: _customKanaMap.entries + .map((e) => Chip( + label: Text('${e.key}: ${e.value}'), + onDeleted: () => setState(() => _customKanaMap.remove(e.key)), + )) + .toList(), + ), + const SizedBox(height: 8), + ElevatedButton.icon( + icon: const Icon(Icons.save), + label: const Text('保存'), + onPressed: _saveKanaMap, + ), + ], + ), + ), + ], + ), + ), ), ); } diff --git a/lib/screens/staff_master_screen.dart b/lib/screens/staff_master_screen.dart new file mode 100644 index 0000000..486d095 --- /dev/null +++ b/lib/screens/staff_master_screen.dart @@ -0,0 +1,270 @@ +import 'package:flutter/material.dart'; +import 'package:uuid/uuid.dart'; + +import '../models/department_model.dart'; +import '../models/staff_model.dart'; +import '../services/department_repository.dart'; +import '../services/staff_repository.dart'; + +class StaffMasterScreen extends StatefulWidget { + const StaffMasterScreen({super.key}); + + @override + State createState() => _StaffMasterScreenState(); +} + +class _StaffMasterScreenState extends State { + final StaffRepository _staffRepository = StaffRepository(); + final DepartmentRepository _departmentRepository = DepartmentRepository(); + final Uuid _uuid = const Uuid(); + + bool _isLoading = true; + bool _includeInactive = false; + List _staff = const []; + List _departments = const []; + + @override + void initState() { + super.initState(); + _loadData(); + } + + Future _loadData() async { + setState(() => _isLoading = true); + final results = await Future.wait([ + _staffRepository.fetchStaff(includeInactive: _includeInactive), + _departmentRepository.fetchDepartments(includeInactive: true), + ]); + if (!mounted) return; + setState(() { + _staff = results.first as List; + _departments = results.last as List; + _isLoading = false; + }); + } + + Future _openForm({StaffMember? staff}) async { + final result = await showDialog( + context: context, + builder: (ctx) => _StaffFormDialog( + staff: staff, + departments: _departments, + onSubmit: (member) => Navigator.of(ctx).pop(member), + ), + ); + if (result == null) return; + final saving = result.copyWith(id: result.id.isEmpty ? _uuid.v4() : result.id, updatedAt: DateTime.now()); + await _staffRepository.saveStaff(saving); + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('担当者を保存しました'))); + _loadData(); + } + + Future _deleteStaff(StaffMember staff) async { + final confirmed = await showDialog( + context: context, + builder: (ctx) => AlertDialog( + title: const Text('担当者を削除'), + content: Text('${staff.name} を削除しますか?'), + actions: [ + TextButton(onPressed: () => Navigator.pop(ctx, false), child: const Text('キャンセル')), + TextButton(onPressed: () => Navigator.pop(ctx, true), child: const Text('削除', style: TextStyle(color: Colors.red))), + ], + ), + ); + if (confirmed != true) return; + await _staffRepository.deleteStaff(staff.id); + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('担当者を削除しました'))); + _loadData(); + } + + String _departmentName(String? departmentId) { + if (departmentId == null) return '部門未設定'; + return _departments.firstWhere( + (d) => d.id == departmentId, + orElse: () => Department(id: departmentId, name: '不明部門', updatedAt: DateTime.now()), + ).name; + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + leading: const BackButton(), + title: const Text('M6:担当者マスター'), + actions: [ + SwitchListTile.adaptive( + value: _includeInactive, + onChanged: (value) { + setState(() => _includeInactive = value); + _loadData(); + }, + title: const Text('退職者も表示'), + contentPadding: const EdgeInsets.only(right: 12), + ), + ], + ), + floatingActionButton: FloatingActionButton( + onPressed: () => _openForm(), + child: const Icon(Icons.add), + ), + body: _isLoading + ? const Center(child: CircularProgressIndicator()) + : _staff.isEmpty + ? const _EmptyState(message: '担当者が登録されていません') + : RefreshIndicator( + onRefresh: _loadData, + child: ListView.builder( + padding: const EdgeInsets.symmetric(vertical: 8), + itemCount: _staff.length, + itemBuilder: (context, index) { + final staff = _staff[index]; + final subtitleLines = [ + _departmentName(staff.departmentId), + if (staff.email?.isNotEmpty == true) 'メール: ${staff.email}', + if (staff.tel?.isNotEmpty == true) 'TEL: ${staff.tel}', + if (staff.role?.isNotEmpty == true) '役割: ${staff.role}', + if (staff.permissionLevel?.isNotEmpty == true) '権限: ${staff.permissionLevel}', + staff.isActive ? '稼働中' : '退職/無効', + ]; + return Card( + margin: const EdgeInsets.symmetric(horizontal: 16, vertical: 6), + child: ListTile( + title: Text(staff.name, style: const TextStyle(fontWeight: FontWeight.bold)), + subtitle: Text(subtitleLines.where((line) => line.isNotEmpty).join('\n')), + trailing: PopupMenuButton( + onSelected: (value) { + switch (value) { + case 'edit': + _openForm(staff: staff); + break; + case 'delete': + _deleteStaff(staff); + break; + } + }, + itemBuilder: (context) => const [ + PopupMenuItem(value: 'edit', child: Text('編集')), + PopupMenuItem(value: 'delete', child: Text('削除')), + ], + ), + ), + ); + }, + ), + ), + ); + } +} + +class _StaffFormDialog extends StatefulWidget { + const _StaffFormDialog({required this.onSubmit, required this.departments, this.staff}); + + final StaffMember? staff; + final List departments; + final ValueChanged onSubmit; + + @override + State<_StaffFormDialog> createState() => _StaffFormDialogState(); +} + +class _StaffFormDialogState extends State<_StaffFormDialog> { + late final TextEditingController _nameController; + late final TextEditingController _emailController; + late final TextEditingController _telController; + late final TextEditingController _roleController; + late final TextEditingController _permissionController; + String? _departmentId; + bool _isActive = true; + + @override + void initState() { + super.initState(); + final staff = widget.staff; + _nameController = TextEditingController(text: staff?.name ?? ''); + _emailController = TextEditingController(text: staff?.email ?? ''); + _telController = TextEditingController(text: staff?.tel ?? ''); + _roleController = TextEditingController(text: staff?.role ?? ''); + _permissionController = TextEditingController(text: staff?.permissionLevel ?? ''); + _departmentId = staff?.departmentId; + _isActive = staff?.isActive ?? true; + } + + void _submit() { + if (_nameController.text.trim().isEmpty) { + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('氏名は必須です'))); + return; + } + widget.onSubmit( + StaffMember( + id: widget.staff?.id ?? '', + name: _nameController.text.trim(), + email: _emailController.text.trim().isEmpty ? null : _emailController.text.trim(), + tel: _telController.text.trim().isEmpty ? null : _telController.text.trim(), + role: _roleController.text.trim().isEmpty ? null : _roleController.text.trim(), + departmentId: _departmentId, + permissionLevel: _permissionController.text.trim().isEmpty ? null : _permissionController.text.trim(), + isActive: _isActive, + updatedAt: DateTime.now(), + ), + ); + } + + @override + Widget build(BuildContext context) { + return AlertDialog( + title: Text(widget.staff == null ? '担当者を追加' : '担当者を編集'), + content: SingleChildScrollView( + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + TextField(controller: _nameController, decoration: const InputDecoration(labelText: '氏名 *')), + TextField(controller: _emailController, decoration: const InputDecoration(labelText: 'メール'), keyboardType: TextInputType.emailAddress), + TextField(controller: _telController, decoration: const InputDecoration(labelText: '電話番号'), keyboardType: TextInputType.phone), + DropdownButtonFormField( + initialValue: _departmentId, + decoration: const InputDecoration(labelText: '所属部門'), + items: [ + const DropdownMenuItem(value: null, child: Text('未設定')), + ...widget.departments.map((dept) => DropdownMenuItem(value: dept.id, child: Text(dept.name))), + ], + onChanged: (value) => setState(() => _departmentId = value), + ), + TextField(controller: _roleController, decoration: const InputDecoration(labelText: '役割/職位')), + TextField(controller: _permissionController, decoration: const InputDecoration(labelText: '権限レベル')), + SwitchListTile( + title: const Text('稼働中'), + value: _isActive, + onChanged: (value) => setState(() => _isActive = value), + ), + ], + ), + ), + actions: [ + TextButton(onPressed: () => Navigator.pop(context), child: const Text('キャンセル')), + FilledButton(onPressed: _submit, child: const Text('保存')), + ], + ); + } +} + +class _EmptyState extends StatelessWidget { + const _EmptyState({required this.message}); + + final String message; + + @override + Widget build(BuildContext context) { + return Center( + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const Icon(Icons.person_off, size: 64, color: Colors.grey), + const SizedBox(height: 16), + Text(message), + ], + ), + ); + } +} diff --git a/lib/screens/supplier_master_screen.dart b/lib/screens/supplier_master_screen.dart new file mode 100644 index 0000000..3cee676 --- /dev/null +++ b/lib/screens/supplier_master_screen.dart @@ -0,0 +1,268 @@ +import 'package:flutter/material.dart'; +import 'package:uuid/uuid.dart'; + +import '../models/supplier_model.dart'; +import '../services/supplier_repository.dart'; + +class SupplierMasterScreen extends StatefulWidget { + const SupplierMasterScreen({super.key}); + + @override + State createState() => _SupplierMasterScreenState(); +} + +class _SupplierMasterScreenState extends State { + final SupplierRepository _repository = SupplierRepository(); + final Uuid _uuid = const Uuid(); + + bool _isLoading = true; + bool _showHidden = false; + List _suppliers = const []; + + @override + void initState() { + super.initState(); + _loadSuppliers(); + } + + Future _loadSuppliers() async { + setState(() => _isLoading = true); + final suppliers = await _repository.fetchSuppliers(includeHidden: _showHidden); + if (!mounted) return; + setState(() { + _suppliers = suppliers; + _isLoading = false; + }); + } + + Future _openForm({Supplier? supplier}) async { + final result = await showDialog( + context: context, + barrierDismissible: false, + builder: (ctx) => _SupplierFormDialog( + supplier: supplier, + onSubmit: (data) => Navigator.of(ctx).pop(data), + ), + ); + if (result == null) return; + final saving = result.copyWith(id: result.id.isEmpty ? _uuid.v4() : result.id, updatedAt: DateTime.now()); + await _repository.saveSupplier(saving); + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('仕入先を保存しました'))); + _loadSuppliers(); + } + + Future _deleteSupplier(Supplier supplier) async { + final confirmed = await showDialog( + context: context, + builder: (ctx) => AlertDialog( + title: const Text('仕入先を削除'), + content: Text('${supplier.name} を削除しますか?'), + actions: [ + TextButton(onPressed: () => Navigator.pop(ctx, false), child: const Text('キャンセル')), + TextButton(onPressed: () => Navigator.pop(ctx, true), child: const Text('削除', style: TextStyle(color: Colors.red))), + ], + ), + ); + if (confirmed != true) return; + await _repository.deleteSupplier(supplier.id); + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('仕入先を削除しました'))); + _loadSuppliers(); + } + + String _closingLabel(Supplier supplier) { + if (supplier.closingDay == null) return '締日未設定'; + return '毎月${supplier.closingDay}日締め / ${supplier.paymentSiteDays}日サイト'; + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + leading: const BackButton(), + title: const Text('M5:仕入先マスター'), + actions: [ + Switch.adaptive( + value: _showHidden, + onChanged: (value) { + setState(() => _showHidden = value); + _loadSuppliers(); + }, + ), + ], + ), + floatingActionButton: FloatingActionButton( + onPressed: () => _openForm(), + child: const Icon(Icons.add), + ), + body: _isLoading + ? const Center(child: CircularProgressIndicator()) + : _suppliers.isEmpty + ? const _EmptyState(message: '仕入先が登録されていません') + : RefreshIndicator( + onRefresh: _loadSuppliers, + child: ListView.builder( + physics: const AlwaysScrollableScrollPhysics(), + itemCount: _suppliers.length, + itemBuilder: (context, index) { + final supplier = _suppliers[index]; + return Card( + margin: const EdgeInsets.symmetric(horizontal: 16, vertical: 8), + child: ListTile( + title: Text(supplier.name, style: const TextStyle(fontWeight: FontWeight.bold)), + subtitle: Text([ + if (supplier.contactPerson?.isNotEmpty == true) '担当: ${supplier.contactPerson}', + if (supplier.tel?.isNotEmpty == true) 'TEL: ${supplier.tel}', + _closingLabel(supplier), + ].where((e) => e.isNotEmpty).join('\n')), + trailing: PopupMenuButton( + onSelected: (value) { + switch (value) { + case 'edit': + _openForm(supplier: supplier); + break; + case 'delete': + _deleteSupplier(supplier); + break; + } + }, + itemBuilder: (context) => const [ + PopupMenuItem(value: 'edit', child: Text('編集')), + PopupMenuItem(value: 'delete', child: Text('削除')), + ], + ), + ), + ); + }, + ), + ), + ); + } +} + +class _SupplierFormDialog extends StatefulWidget { + const _SupplierFormDialog({required this.onSubmit, this.supplier}); + + final Supplier? supplier; + final ValueChanged onSubmit; + + @override + State<_SupplierFormDialog> createState() => _SupplierFormDialogState(); +} + +class _SupplierFormDialogState extends State<_SupplierFormDialog> { + late final TextEditingController _nameController; + late final TextEditingController _contactController; + late final TextEditingController _emailController; + late final TextEditingController _telController; + late final TextEditingController _addressController; + late final TextEditingController _paymentSiteController; + late final TextEditingController _notesController; + int? _closingDay; + bool _isHidden = false; + + @override + void initState() { + super.initState(); + final supplier = widget.supplier; + _nameController = TextEditingController(text: supplier?.name ?? ''); + _contactController = TextEditingController(text: supplier?.contactPerson ?? ''); + _emailController = TextEditingController(text: supplier?.email ?? ''); + _telController = TextEditingController(text: supplier?.tel ?? ''); + _addressController = TextEditingController(text: supplier?.address ?? ''); + _paymentSiteController = TextEditingController(text: (supplier?.paymentSiteDays ?? 30).toString()); + _notesController = TextEditingController(text: supplier?.notes ?? ''); + _closingDay = supplier?.closingDay; + _isHidden = supplier?.isHidden ?? false; + } + + void _submit() { + if (_nameController.text.trim().isEmpty) { + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('仕入先名は必須です'))); + return; + } + final paymentSite = int.tryParse(_paymentSiteController.text) ?? 30; + widget.onSubmit( + Supplier( + id: widget.supplier?.id ?? '', + name: _nameController.text.trim(), + contactPerson: _contactController.text.trim().isEmpty ? null : _contactController.text.trim(), + email: _emailController.text.trim().isEmpty ? null : _emailController.text.trim(), + tel: _telController.text.trim().isEmpty ? null : _telController.text.trim(), + address: _addressController.text.trim().isEmpty ? null : _addressController.text.trim(), + closingDay: _closingDay, + paymentSiteDays: paymentSite, + notes: _notesController.text.trim().isEmpty ? null : _notesController.text.trim(), + isHidden: _isHidden, + updatedAt: DateTime.now(), + ), + ); + } + + @override + Widget build(BuildContext context) { + final closingOptions = [null, ...List.generate(31, (index) => index + 1)]; + return AlertDialog( + title: Text(widget.supplier == null ? '仕入先を追加' : '仕入先を編集'), + content: SingleChildScrollView( + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + TextField(controller: _nameController, decoration: const InputDecoration(labelText: '仕入先名 *')), + TextField(controller: _contactController, decoration: const InputDecoration(labelText: '担当者')), + TextField(controller: _emailController, decoration: const InputDecoration(labelText: 'メール'), keyboardType: TextInputType.emailAddress), + TextField(controller: _telController, decoration: const InputDecoration(labelText: '電話番号'), keyboardType: TextInputType.phone), + TextField(controller: _addressController, decoration: const InputDecoration(labelText: '住所')), + DropdownButtonFormField( + initialValue: _closingDay, + items: closingOptions + .map((day) => DropdownMenuItem( + value: day, + child: Text(day == null ? '締日未設定' : '$day日締め'), + )) + .toList(), + onChanged: (val) => setState(() => _closingDay = val), + decoration: const InputDecoration(labelText: '締日'), + ), + TextField( + controller: _paymentSiteController, + decoration: const InputDecoration(labelText: '支払サイト(日)'), + keyboardType: TextInputType.number, + ), + TextField(controller: _notesController, decoration: const InputDecoration(labelText: '備考'), maxLines: 2), + SwitchListTile( + title: const Text('非表示にする'), + value: _isHidden, + onChanged: (val) => setState(() => _isHidden = val), + ), + ], + ), + ), + actions: [ + TextButton(onPressed: () => Navigator.pop(context), child: const Text('キャンセル')), + FilledButton(onPressed: _submit, child: const Text('保存')), + ], + ); + } +} + +class _EmptyState extends StatelessWidget { + const _EmptyState({required this.message}); + + final String message; + + @override + Widget build(BuildContext context) { + return Center( + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const Icon(Icons.inbox, size: 64, color: Colors.grey), + const SizedBox(height: 16), + Text(message), + ], + ), + ); + } +} diff --git a/lib/screens/tax_setting_screen.dart b/lib/screens/tax_setting_screen.dart new file mode 100644 index 0000000..5907052 --- /dev/null +++ b/lib/screens/tax_setting_screen.dart @@ -0,0 +1,105 @@ +import 'package:flutter/material.dart'; +import 'package:uuid/uuid.dart'; + +import '../models/tax_setting_model.dart'; +import '../services/tax_setting_repository.dart'; + +class TaxSettingScreen extends StatefulWidget { + const TaxSettingScreen({super.key}); + + @override + State createState() => _TaxSettingScreenState(); +} + +class _TaxSettingScreenState extends State { + final TaxSettingRepository _repository = TaxSettingRepository(); + final TextEditingController _rateController = TextEditingController(); + String _roundingMode = 'round'; + bool _isLoading = true; + + @override + void initState() { + super.initState(); + _load(); + } + + Future _load() async { + setState(() => _isLoading = true); + final setting = await _repository.fetchCurrentSetting(); + if (!mounted) return; + setState(() { + _rateController.text = (setting.rate * 100).toStringAsFixed(1); + _roundingMode = setting.roundingMode; + _isLoading = false; + }); + } + + Future _save() async { + final ratePercent = double.tryParse(_rateController.text); + if (ratePercent == null) { + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('税込率は数値で入力してください'))); + return; + } + final setting = TaxSetting( + id: const Uuid().v4(), + rate: ratePercent / 100, + roundingMode: _roundingMode, + updatedAt: DateTime.now(), + ); + await _repository.saveSetting(setting); + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('税設定を保存しました'))); + _load(); + } + + @override + void dispose() { + _rateController.dispose(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + leading: const BackButton(), + title: const Text('M7:消費税・端数設定'), + ), + body: _isLoading + ? const Center(child: CircularProgressIndicator()) + : Padding( + padding: const EdgeInsets.all(16), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + TextField( + controller: _rateController, + decoration: const InputDecoration(labelText: '税率 (%)', suffixText: '%'), + keyboardType: const TextInputType.numberWithOptions(decimal: true), + ), + const SizedBox(height: 16), + DropdownButtonFormField( + initialValue: _roundingMode, + decoration: const InputDecoration(labelText: '端数処理'), + items: const [ + DropdownMenuItem(value: 'round', child: Text('四捨五入')), + DropdownMenuItem(value: 'ceil', child: Text('切り上げ')), + DropdownMenuItem(value: 'floor', child: Text('切り捨て')), + ], + onChanged: (value) => setState(() => _roundingMode = value ?? 'round'), + ), + const Spacer(), + SizedBox( + width: double.infinity, + child: FilledButton.icon( + icon: const Icon(Icons.save), + onPressed: _save, + label: const Text('保存'), + ), + ), + ], + ), + ), + ); + } +} diff --git a/lib/services/app_settings_repository.dart b/lib/services/app_settings_repository.dart index 3ecbe42..cec0f1f 100644 --- a/lib/services/app_settings_repository.dart +++ b/lib/services/app_settings_repository.dart @@ -10,6 +10,12 @@ class AppSettingsRepository { static const _kDashboardHistoryUnlocked = 'dashboard_history_unlocked'; static const _kTheme = 'app_theme'; // light / dark / system static const _kSummaryTheme = 'summary_theme'; // 'white' or 'blue' + static const _kGoogleCalendarEnabled = 'google_calendar_enabled'; + static const _kGoogleCalendarId = 'google_calendar_id'; + static const _kGoogleCalendarAccount = 'google_calendar_account'; + static const _kGrossProfitEnabled = 'gross_profit_enabled'; + static const _kGrossProfitToggleVisible = 'gross_profit_toggle_visible'; + static const _kGrossProfitIncludeProvisional = 'gross_profit_include_provisional'; final DatabaseHelper _dbHelper = DatabaseHelper(); @@ -78,9 +84,68 @@ class AppSettingsRepository { Future getSummaryTheme() async => await getString(_kSummaryTheme) ?? 'white'; Future setSummaryTheme(String theme) async => setString(_kSummaryTheme, theme); + Future getGoogleCalendarEnabled({bool defaultValue = false}) async { + return getBool(_kGoogleCalendarEnabled, defaultValue: defaultValue); + } + + Future setGoogleCalendarEnabled(bool enabled) async { + await setBool(_kGoogleCalendarEnabled, enabled); + } + + Future getGoogleCalendarId() async => getString(_kGoogleCalendarId); + + Future setGoogleCalendarId(String? calendarId) async { + if (calendarId == null || calendarId.isEmpty) { + await deleteKey(_kGoogleCalendarId); + } else { + await setString(_kGoogleCalendarId, calendarId); + } + } + + Future getGoogleCalendarAccountEmail() async => getString(_kGoogleCalendarAccount); + + Future setGoogleCalendarAccountEmail(String? email) async { + if (email == null || email.isEmpty) { + await deleteKey(_kGoogleCalendarAccount); + } else { + await setString(_kGoogleCalendarAccount, email); + } + } + + Future clearGoogleCalendarSettings() async { + await setGoogleCalendarEnabled(false); + await setGoogleCalendarId(null); + await setGoogleCalendarAccountEmail(null); + } + + Future getGrossProfitEnabled({bool defaultValue = true}) async { + return getBool(_kGrossProfitEnabled, defaultValue: defaultValue); + } + + Future setGrossProfitEnabled(bool enabled) async { + await setBool(_kGrossProfitEnabled, enabled); + } + + Future getGrossProfitToggleVisible({bool defaultValue = true}) async { + return getBool(_kGrossProfitToggleVisible, defaultValue: defaultValue); + } + + Future setGrossProfitToggleVisible(bool visible) async { + await setBool(_kGrossProfitToggleVisible, visible); + } + + Future getGrossProfitIncludeProvisional({bool defaultValue = false}) async { + return getBool(_kGrossProfitIncludeProvisional, defaultValue: defaultValue); + } + + Future setGrossProfitIncludeProvisional(bool include) async { + await setBool(_kGrossProfitIncludeProvisional, include); + } + // Generic helpers Future getString(String key) async => _getValue(key); Future setString(String key, String value) async => _setValue(key, value); + Future deleteKey(String key) async => _deleteValue(key); Future getBool(String key, {bool defaultValue = false}) async { final v = await _getValue(key); @@ -103,6 +168,12 @@ class AppSettingsRepository { final db = await _dbHelper.database; await db.insert('app_settings', {'key': key, 'value': value}, conflictAlgorithm: ConflictAlgorithm.replace); } + + Future _deleteValue(String key) async { + await _ensureTable(); + final db = await _dbHelper.database; + await db.delete('app_settings', where: 'key = ?', whereArgs: [key]); + } } class DashboardMenuItem { diff --git a/lib/services/business_calendar_mapper.dart b/lib/services/business_calendar_mapper.dart new file mode 100644 index 0000000..9648201 --- /dev/null +++ b/lib/services/business_calendar_mapper.dart @@ -0,0 +1,116 @@ +import 'package:flutter/foundation.dart'; +import 'package:intl/intl.dart'; + +import '../models/receivable_models.dart'; +import '../models/shipment_models.dart'; +import 'app_settings_repository.dart'; +import 'calendar_sync_service.dart'; + +/// Maps domain entities (shipments, receivables, etc.) to Google Calendar events. +class BusinessCalendarMapper { + BusinessCalendarMapper({ + CalendarSyncService? calendarSyncService, + AppSettingsRepository? settingsRepository, + }) : _calendarSyncService = calendarSyncService ?? CalendarSyncService(), + _settingsRepository = settingsRepository ?? AppSettingsRepository(); + + final CalendarSyncService _calendarSyncService; + final AppSettingsRepository _settingsRepository; + final NumberFormat _currencyFormat = NumberFormat.currency(locale: 'ja_JP', symbol: '¥'); + + Future _ensureReady() async { + final enabled = await _settingsRepository.getGoogleCalendarEnabled(); + if (!enabled) return false; + final ready = await _calendarSyncService.ensureSignedIn(); + return ready; + } + + Future syncShipments(List shipments) async { + if (shipments.isEmpty) return; + if (!await _ensureReady()) return; + for (final shipment in shipments) { + await _syncShipment(shipment); + } + } + + Future syncShipment(Shipment shipment) async { + if (!await _ensureReady()) return; + await _syncShipment(shipment); + } + + Future syncReceivables(List summaries) async { + if (summaries.isEmpty) return; + if (!await _ensureReady()) return; + for (final summary in summaries) { + await _syncReceivable(summary); + } + } + + Future syncReceivable(ReceivableInvoiceSummary summary) async { + if (!await _ensureReady()) return; + await _syncReceivable(summary); + } + + Future _syncShipment(Shipment shipment) async { + final date = shipment.scheduledShipDate ?? shipment.actualShipDate; + if (date == null) return; + final start = DateTime(date.year, date.month, date.day, 9); + final end = start.add(const Duration(hours: 2)); + final summary = '[出荷] ${(shipment.customerNameSnapshot ?? '取引先未設定')}'; + final buffer = StringBuffer() + ..writeln('受注番号: ${shipment.orderNumberSnapshot ?? '-'}') + ..writeln('ステータス: ${shipment.status.displayName}') + ..writeln('配送業者: ${shipment.carrierName ?? '-'}') + ..writeln('追跡番号: ${shipment.trackingNumber ?? '-'}'); + if (shipment.trackingUrl?.isNotEmpty == true) { + buffer.writeln('トラッキングURL: ${shipment.trackingUrl}'); + } + try { + await _calendarSyncService.createOrUpdateEvent( + eventId: 'shipment-${shipment.id}', + summary: summary, + description: buffer.toString(), + start: start, + end: end, + extendedProperties: { + 'type': 'shipment', + 'shipmentId': shipment.id, + if (shipment.orderNumberSnapshot != null) 'orderNumber': shipment.orderNumberSnapshot!, + if (shipment.customerNameSnapshot != null) 'customer': shipment.customerNameSnapshot!, + }, + ); + } catch (e, stack) { + debugPrint('Failed to sync shipment ${shipment.id} to calendar: $e\n$stack'); + } + } + + Future _syncReceivable(ReceivableInvoiceSummary summary) async { + final dueDate = summary.dueDate; + final start = DateTime(dueDate.year, dueDate.month, dueDate.day, 10); + final end = start.add(const Duration(hours: 1)); + final title = '[入金予定] ${summary.customerName}'; + final description = StringBuffer() + ..writeln('請求書番号: ${summary.invoiceNumber}') + ..writeln('請求日: ${DateFormat('yyyy/MM/dd').format(summary.invoiceDate)}') + ..writeln('期日: ${DateFormat('yyyy/MM/dd').format(summary.dueDate)}') + ..writeln('請求額: ${_currencyFormat.format(summary.totalAmount)}') + ..writeln('入金済み: ${_currencyFormat.format(summary.paidAmount)}') + ..writeln('残高: ${_currencyFormat.format(summary.outstandingAmount)}'); + try { + await _calendarSyncService.createOrUpdateEvent( + eventId: 'receivable-${summary.invoiceId}', + summary: title, + description: description.toString(), + start: start, + end: end, + extendedProperties: { + 'type': 'receivable', + 'invoiceId': summary.invoiceId, + 'invoiceNumber': summary.invoiceNumber, + }, + ); + } catch (e, stack) { + debugPrint('Failed to sync receivable ${summary.invoiceId} to calendar: $e\n$stack'); + } + } +} diff --git a/lib/services/calendar_sync_diagnostics.dart b/lib/services/calendar_sync_diagnostics.dart new file mode 100644 index 0000000..b8ab665 --- /dev/null +++ b/lib/services/calendar_sync_diagnostics.dart @@ -0,0 +1,65 @@ +import 'package:flutter/foundation.dart'; + +import '../models/receivable_models.dart'; +import '../models/shipment_models.dart'; +import 'business_calendar_mapper.dart'; +import 'receivable_repository.dart'; +import 'shipment_repository.dart'; + +/// Result object describing a manual Google Calendar sync run. +class CalendarSyncDiagnosticsResult { + const CalendarSyncDiagnosticsResult({ + required this.shipmentsSynced, + required this.receivablesSynced, + required this.errors, + }); + + final int shipmentsSynced; + final int receivablesSynced; + final List errors; + + bool get hasErrors => errors.isNotEmpty; +} + +/// Utility helper to trigger a full calendar sync for diagnostics or manual refresh. +class CalendarSyncDiagnostics { + CalendarSyncDiagnostics({ + ShipmentRepository? shipmentRepository, + ReceivableRepository? receivableRepository, + BusinessCalendarMapper? calendarMapper, + }) : _shipmentRepository = shipmentRepository ?? ShipmentRepository(), + _receivableRepository = receivableRepository ?? ReceivableRepository(), + _calendarMapper = calendarMapper ?? BusinessCalendarMapper(); + + final ShipmentRepository _shipmentRepository; + final ReceivableRepository _receivableRepository; + final BusinessCalendarMapper _calendarMapper; + + Future runFullSync({bool includeSettledReceivables = true}) async { + final errors = []; + List shipments = const []; + List receivables = const []; + + try { + shipments = await _shipmentRepository.fetchShipments(); + await _calendarMapper.syncShipments(shipments); + } catch (e, stack) { + debugPrint('Calendar diagnostics: shipment sync failed: $e\n$stack'); + errors.add('出荷イベント同期に失敗: $e'); + } + + try { + receivables = await _receivableRepository.fetchSummaries(includeSettled: includeSettledReceivables); + await _calendarMapper.syncReceivables(receivables); + } catch (e, stack) { + debugPrint('Calendar diagnostics: receivable sync failed: $e\n$stack'); + errors.add('債権イベント同期に失敗: $e'); + } + + return CalendarSyncDiagnosticsResult( + shipmentsSynced: shipments.length, + receivablesSynced: receivables.length, + errors: errors, + ); + } +} diff --git a/lib/services/calendar_sync_service.dart b/lib/services/calendar_sync_service.dart new file mode 100644 index 0000000..006036b --- /dev/null +++ b/lib/services/calendar_sync_service.dart @@ -0,0 +1,126 @@ +import 'dart:async'; + +import 'package:google_sign_in/google_sign_in.dart'; +import 'package:googleapis/calendar/v3.dart' as gcal; +import 'package:http/http.dart' as http; +import 'package:http/retry.dart'; + +import 'app_settings_repository.dart'; + +/// Googleカレンダーとの認証・イベント同期を担当するサービス。 +class CalendarSyncService { + CalendarSyncService({AppSettingsRepository? settingsRepository}) + : _settingsRepository = settingsRepository ?? AppSettingsRepository(); + + final AppSettingsRepository _settingsRepository; + GoogleSignInAccount? _currentAccount; + gcal.CalendarApi? _calendarApi; + static const List _scopes = [gcal.CalendarApi.calendarScope]; + + GoogleSignIn get _googleSignIn => GoogleSignIn(scopes: _scopes); + + Future ensureSignedIn() async { + final enabled = await _settingsRepository.getGoogleCalendarEnabled(); + if (!enabled) return false; + _currentAccount = await _googleSignIn.signInSilently(); + _currentAccount ??= await _googleSignIn.signIn(); + if (_currentAccount == null) { + await _settingsRepository.clearGoogleCalendarSettings(); + return false; + } + await _initializeCalendarApi(); + await _settingsRepository.setGoogleCalendarAccountEmail(_currentAccount!.email); + return true; + } + + Future signOut() async { + await _googleSignIn.disconnect(); + await _settingsRepository.clearGoogleCalendarSettings(); + _calendarApi = null; + } + + Future _initializeCalendarApi() async { + final account = _currentAccount; + if (account == null) return; + final authHeaders = await account.authHeaders; + final authClient = _AuthClientDecorator(authHeaders, http.Client()); + final retryClient = RetryClient(authClient, retries: 3); + _calendarApi = gcal.CalendarApi(retryClient); + } + + Future> fetchCalendars() async { + if (_calendarApi == null) { + final ready = await ensureSignedIn(); + if (!ready) return []; + } + final list = await _calendarApi!.calendarList.list(showHidden: false, minAccessRole: 'writer'); + return list.items ?? []; + } + + Future createOrUpdateEvent({ + required String eventId, + required String summary, + String? description, + DateTime? start, + DateTime? end, + String? calendarId, + Map? extendedProperties, + }) async { + if (_calendarApi == null) { + final ready = await ensureSignedIn(); + if (!ready) return; + } + final targetCalendarId = calendarId ?? (await _settingsRepository.getGoogleCalendarId()) ?? 'primary'; + final event = gcal.Event() + ..id = eventId + ..summary = summary + ..description = description + ..start = start != null ? _timeFromDate(start) : null + ..end = end != null ? _timeFromDate(end) : null + ..extendedProperties = extendedProperties == null + ? null + : gcal.EventExtendedProperties(private: extendedProperties); + + try { + await _calendarApi!.events.patch(event, targetCalendarId, eventId); + } on gcal.DetailedApiRequestError catch (e) { + if (e.status == 404) { + await _calendarApi!.events.insert(event, targetCalendarId); + } else { + rethrow; + } + } + } + + Future deleteEvent(String eventId, {String? calendarId}) async { + if (_calendarApi == null) { + final ready = await ensureSignedIn(); + if (!ready) return; + } + final targetCalendarId = calendarId ?? (await _settingsRepository.getGoogleCalendarId()) ?? 'primary'; + await _calendarApi!.events.delete(targetCalendarId, eventId); + } + + gcal.EventDateTime _timeFromDate(DateTime date) { + return gcal.EventDateTime(dateTime: date, timeZone: date.timeZoneName); + } +} + +class _AuthClientDecorator extends http.BaseClient { + _AuthClientDecorator(this._headers, this._inner); + + final Map _headers; + final http.Client _inner; + + @override + Future send(http.BaseRequest request) { + request.headers.addAll(_headers); + return _inner.send(request); + } + + @override + void close() { + _inner.close(); + super.close(); + } +} diff --git a/lib/services/customer_repository.dart b/lib/services/customer_repository.dart index c268c3c..0ef2d7d 100644 --- a/lib/services/customer_repository.dart +++ b/lib/services/customer_repository.dart @@ -36,6 +36,13 @@ class CustomerRepository { return List.generate(maps.length, (i) => Customer.fromMap(maps[i])); } + Future findById(String id) async { + final db = await _dbHelper.database; + final rows = await db.query('customers', where: 'id = ?', whereArgs: [id], limit: 1); + if (rows.isEmpty) return null; + return Customer.fromMap(rows.first); + } + Future ensureCustomerColumns() async { final db = await _dbHelper.database; // best-effort, ignore errors if columns already exist diff --git a/lib/services/database_helper.dart b/lib/services/database_helper.dart index fc55a85..4b9e4e1 100644 --- a/lib/services/database_helper.dart +++ b/lib/services/database_helper.dart @@ -2,7 +2,7 @@ import 'package:sqflite/sqflite.dart'; import 'package:path/path.dart'; class DatabaseHelper { - static const _databaseVersion = 26; + static const _databaseVersion = 35; static final DatabaseHelper _instance = DatabaseHelper._internal(); static Database? _database; @@ -210,6 +210,41 @@ class DatabaseHelper { '''); await db.execute('CREATE INDEX IF NOT EXISTS idx_chat_messages_created_at ON chat_messages(created_at)'); } + if (oldVersion < 27) { + await _createSalesOrderTables(db); + } + if (oldVersion < 28) { + await _createShipmentTables(db); + } + if (oldVersion < 29) { + await _createInventoryTables(db); + } + if (oldVersion < 30) { + await _createReceivableTables(db); + } + if (oldVersion < 31) { + await _safeAddColumn(db, 'invoices', 'previous_chain_hash TEXT'); + await _safeAddColumn(db, 'invoices', 'chain_hash TEXT'); + await _safeAddColumn(db, 'invoices', "chain_status TEXT DEFAULT 'pending'"); + } + if (oldVersion < 32) { + await _createSupplierTables(db); + await _createDepartmentTables(db); + await _createStaffTables(db); + await _createTaxSettingsTable(db); + } + if (oldVersion < 33) { + await _safeAddColumn(db, 'shipments', 'tracking_url TEXT'); + await _safeAddColumn(db, 'shipments', 'label_pdf_path TEXT'); + } + if (oldVersion < 34) { + await _createSalesEntryTables(db); + } + if (oldVersion < 35) { + await _safeAddColumn(db, 'products', 'wholesale_price INTEGER DEFAULT 0'); + await _safeAddColumn(db, 'sales_line_items', 'cost_amount INTEGER DEFAULT 0'); + await _safeAddColumn(db, 'sales_line_items', 'cost_is_provisional INTEGER DEFAULT 0'); + } } Future _onCreate(Database db, int version) async { @@ -266,6 +301,7 @@ class DatabaseHelper { id TEXT PRIMARY KEY, name TEXT NOT NULL, default_unit_price INTEGER, + wholesale_price INTEGER DEFAULT 0, barcode TEXT, category TEXT, stock_quantity INTEGER DEFAULT 0, @@ -287,6 +323,11 @@ class DatabaseHelper { '''); await db.execute('CREATE INDEX idx_master_hidden_type ON master_hidden(master_type)'); + await _createSupplierTables(db); + await _createDepartmentTables(db); + await _createStaffTables(db); + await _createTaxSettingsTable(db); + // 伝票マスター await db.execute(''' CREATE TABLE invoices ( @@ -388,6 +429,14 @@ class DatabaseHelper { ) '''); await db.execute('CREATE INDEX idx_chat_messages_created_at ON chat_messages(created_at)'); + await _createSalesOrderTables(db); + await _createShipmentTables(db); + await _createInventoryTables(db); + await _createReceivableTables(db); + await _createSalesEntryTables(db); + await _safeAddColumn(db, 'invoices', 'previous_chain_hash TEXT'); + await _safeAddColumn(db, 'invoices', 'chain_hash TEXT'); + await _safeAddColumn(db, 'invoices', "chain_status TEXT DEFAULT 'pending'"); } Future _safeAddColumn(Database db, String table, String columnDef) async { @@ -397,4 +446,270 @@ class DatabaseHelper { // Ignore if the column already exists. } } + + Future _createSalesOrderTables(Database db) async { + await db.execute(''' + CREATE TABLE IF NOT EXISTS sales_orders ( + id TEXT PRIMARY KEY, + order_number TEXT, + customer_id TEXT NOT NULL, + customer_name_snapshot TEXT, + order_date TEXT NOT NULL, + requested_ship_date TEXT, + status TEXT NOT NULL, + subtotal INTEGER DEFAULT 0, + tax_amount INTEGER DEFAULT 0, + total_amount INTEGER DEFAULT 0, + notes TEXT, + assigned_to TEXT, + workflow_stage TEXT, + created_at TEXT NOT NULL, + updated_at TEXT NOT NULL, + FOREIGN KEY(customer_id) REFERENCES customers(id) + ) + '''); + await db.execute('CREATE INDEX IF NOT EXISTS idx_sales_orders_customer ON sales_orders(customer_id)'); + await db.execute('CREATE INDEX IF NOT EXISTS idx_sales_orders_status ON sales_orders(status)'); + await db.execute('CREATE INDEX IF NOT EXISTS idx_sales_orders_date ON sales_orders(order_date)'); + + await db.execute(''' + CREATE TABLE IF NOT EXISTS sales_order_items ( + id TEXT PRIMARY KEY, + order_id TEXT NOT NULL, + product_id TEXT, + description TEXT NOT NULL, + quantity INTEGER NOT NULL, + unit_price INTEGER NOT NULL, + tax_rate REAL DEFAULT 0, + sort_index INTEGER DEFAULT 0, + FOREIGN KEY(order_id) REFERENCES sales_orders(id) ON DELETE CASCADE + ) + '''); + await db.execute('CREATE INDEX IF NOT EXISTS idx_sales_order_items_order ON sales_order_items(order_id)'); + } + + Future _createShipmentTables(Database db) async { + await db.execute(''' + CREATE TABLE IF NOT EXISTS shipments ( + id TEXT PRIMARY KEY, + order_id TEXT, + order_number_snapshot TEXT, + customer_name_snapshot TEXT, + scheduled_ship_date TEXT, + actual_ship_date TEXT, + status TEXT NOT NULL, + carrier_name TEXT, + tracking_number TEXT, + tracking_url TEXT, + label_pdf_path TEXT, + notes TEXT, + picking_completed_at TEXT, + created_at TEXT NOT NULL, + updated_at TEXT NOT NULL, + FOREIGN KEY(order_id) REFERENCES sales_orders(id) + ) + '''); + await db.execute('CREATE INDEX IF NOT EXISTS idx_shipments_status ON shipments(status)'); + await db.execute('CREATE INDEX IF NOT EXISTS idx_shipments_order ON shipments(order_id)'); + + await db.execute(''' + CREATE TABLE IF NOT EXISTS shipment_items ( + id TEXT PRIMARY KEY, + shipment_id TEXT NOT NULL, + order_item_id TEXT, + description TEXT NOT NULL, + quantity INTEGER NOT NULL, + FOREIGN KEY(shipment_id) REFERENCES shipments(id) ON DELETE CASCADE, + FOREIGN KEY(order_item_id) REFERENCES sales_order_items(id) + ) + '''); + await db.execute('CREATE INDEX IF NOT EXISTS idx_shipment_items_shipment ON shipment_items(shipment_id)'); + } + + Future _createInventoryTables(Database db) async { + await db.execute(''' + CREATE TABLE IF NOT EXISTS inventory_movements ( + id TEXT PRIMARY KEY, + product_id TEXT NOT NULL, + product_name_snapshot TEXT, + movement_type TEXT NOT NULL, + quantity INTEGER NOT NULL, + quantity_delta INTEGER NOT NULL, + reference TEXT, + notes TEXT, + created_at TEXT NOT NULL, + FOREIGN KEY(product_id) REFERENCES products(id) + ) + '''); + await db.execute('CREATE INDEX IF NOT EXISTS idx_inventory_movements_product ON inventory_movements(product_id)'); + await db.execute('CREATE INDEX IF NOT EXISTS idx_inventory_movements_created ON inventory_movements(created_at)'); + } + + Future _createReceivableTables(Database db) async { + await db.execute(''' + CREATE TABLE IF NOT EXISTS receivable_payments ( + id TEXT PRIMARY KEY, + invoice_id TEXT NOT NULL, + amount INTEGER NOT NULL, + payment_date TEXT NOT NULL, + method TEXT NOT NULL, + notes TEXT, + created_at TEXT NOT NULL, + FOREIGN KEY(invoice_id) REFERENCES invoices(id) ON DELETE CASCADE + ) + '''); + await db.execute('CREATE INDEX IF NOT EXISTS idx_receivable_payments_invoice ON receivable_payments(invoice_id)'); + await db.execute('CREATE INDEX IF NOT EXISTS idx_receivable_payments_date ON receivable_payments(payment_date)'); + } + + Future _createSupplierTables(Database db) async { + await db.execute(''' + CREATE TABLE IF NOT EXISTS suppliers ( + id TEXT PRIMARY KEY, + name TEXT NOT NULL, + contact_person TEXT, + email TEXT, + tel TEXT, + address TEXT, + closing_day INTEGER, + payment_site_days INTEGER DEFAULT 30, + notes TEXT, + is_hidden INTEGER DEFAULT 0, + updated_at TEXT NOT NULL + ) + '''); + await db.execute('CREATE INDEX IF NOT EXISTS idx_suppliers_name ON suppliers(name)'); + } + + Future _createDepartmentTables(Database db) async { + await db.execute(''' + CREATE TABLE IF NOT EXISTS departments ( + id TEXT PRIMARY KEY, + name TEXT NOT NULL, + code TEXT, + description TEXT, + is_active INTEGER DEFAULT 1, + updated_at TEXT NOT NULL + ) + '''); + await db.execute('CREATE INDEX IF NOT EXISTS idx_departments_name ON departments(name)'); + } + + Future _createStaffTables(Database db) async { + await db.execute(''' + CREATE TABLE IF NOT EXISTS staff_members ( + id TEXT PRIMARY KEY, + name TEXT NOT NULL, + email TEXT, + tel TEXT, + role TEXT, + department_id TEXT, + permission_level TEXT, + is_active INTEGER DEFAULT 1, + updated_at TEXT NOT NULL, + FOREIGN KEY(department_id) REFERENCES departments(id) ON DELETE SET NULL + ) + '''); + await db.execute('CREATE INDEX IF NOT EXISTS idx_staff_department ON staff_members(department_id)'); + } + + Future _createTaxSettingsTable(Database db) async { + await db.execute(''' + CREATE TABLE IF NOT EXISTS tax_settings ( + id TEXT PRIMARY KEY, + rate REAL NOT NULL, + rounding_mode TEXT NOT NULL, + updated_at TEXT NOT NULL + ) + '''); + final existing = await db.query('tax_settings', limit: 1); + if (existing.isEmpty) { + await db.insert('tax_settings', { + 'id': 'default', + 'rate': 0.1, + 'rounding_mode': 'round', + 'updated_at': DateTime.now().toIso8601String(), + }); + } + } + + Future _createSalesEntryTables(Database db) async { + await db.execute(''' + CREATE TABLE IF NOT EXISTS sales_entries ( + id TEXT PRIMARY KEY, + customer_id TEXT, + customer_name_snapshot TEXT, + subject TEXT, + issue_date TEXT NOT NULL, + status TEXT NOT NULL, + amount_tax_excl INTEGER DEFAULT 0, + tax_amount INTEGER DEFAULT 0, + amount_tax_incl INTEGER DEFAULT 0, + notes TEXT, + created_at TEXT NOT NULL, + updated_at TEXT NOT NULL, + FOREIGN KEY(customer_id) REFERENCES customers(id) + ) + '''); + await db.execute('CREATE INDEX IF NOT EXISTS idx_sales_entries_date ON sales_entries(issue_date)'); + await db.execute('CREATE INDEX IF NOT EXISTS idx_sales_entries_status ON sales_entries(status)'); + + await db.execute(''' + CREATE TABLE IF NOT EXISTS sales_line_items ( + id TEXT PRIMARY KEY, + sales_entry_id TEXT NOT NULL, + product_id TEXT, + description TEXT NOT NULL, + quantity INTEGER NOT NULL, + unit_price INTEGER NOT NULL, + tax_rate REAL DEFAULT 0, + line_total INTEGER NOT NULL, + cost_amount INTEGER DEFAULT 0, + cost_is_provisional INTEGER DEFAULT 0, + source_invoice_id TEXT, + source_invoice_item_id TEXT, + FOREIGN KEY(sales_entry_id) REFERENCES sales_entries(id) ON DELETE CASCADE + ) + '''); + await db.execute('CREATE INDEX IF NOT EXISTS idx_sales_line_items_entry ON sales_line_items(sales_entry_id)'); + + await db.execute(''' + CREATE TABLE IF NOT EXISTS sales_entry_sources ( + id TEXT PRIMARY KEY, + sales_entry_id TEXT NOT NULL, + invoice_id TEXT NOT NULL, + imported_at TEXT NOT NULL, + invoice_hash_snapshot TEXT, + FOREIGN KEY(sales_entry_id) REFERENCES sales_entries(id) ON DELETE CASCADE, + FOREIGN KEY(invoice_id) REFERENCES invoices(id) + ) + '''); + await db.execute('CREATE UNIQUE INDEX IF NOT EXISTS idx_sales_entry_sources_unique ON sales_entry_sources(sales_entry_id, invoice_id)'); + + await db.execute(''' + CREATE TABLE IF NOT EXISTS sales_receipts ( + id TEXT PRIMARY KEY, + customer_id TEXT, + payment_date TEXT NOT NULL, + method TEXT, + amount INTEGER NOT NULL, + notes TEXT, + created_at TEXT NOT NULL, + updated_at TEXT NOT NULL, + FOREIGN KEY(customer_id) REFERENCES customers(id) + ) + '''); + await db.execute('CREATE INDEX IF NOT EXISTS idx_sales_receipts_date ON sales_receipts(payment_date)'); + + await db.execute(''' + CREATE TABLE IF NOT EXISTS sales_receipt_links ( + receipt_id TEXT NOT NULL, + sales_entry_id TEXT NOT NULL, + allocated_amount INTEGER NOT NULL, + PRIMARY KEY(receipt_id, sales_entry_id), + FOREIGN KEY(receipt_id) REFERENCES sales_receipts(id) ON DELETE CASCADE, + FOREIGN KEY(sales_entry_id) REFERENCES sales_entries(id) ON DELETE CASCADE + ) + '''); + } } diff --git a/lib/services/database_maintenance_service.dart b/lib/services/database_maintenance_service.dart new file mode 100644 index 0000000..148356d --- /dev/null +++ b/lib/services/database_maintenance_service.dart @@ -0,0 +1,51 @@ +import 'dart:io'; + +import 'package:path/path.dart' as p; +import 'package:sqflite/sqflite.dart'; + +/// Helper that encapsulates direct SQLite file access so UI layers remain decoupled +/// from sqflite APIs. Use this when exporting or backing up the on-device DB file. +class DatabaseMaintenanceService { + const DatabaseMaintenanceService(); + + /// Returns the absolute path to the primary application database file. + Future databasePath() async { + final dbDir = await getDatabasesPath(); + return p.join(dbDir, 'gemi_invoice.db'); + } + + /// Returns the database file if it currently exists on disk. + Future getDatabaseFile() async { + final path = await databasePath(); + final file = File(path); + if (await file.exists()) { + return file; + } + return null; + } + + /// Ensures the database directory exists (useful before copying / restoring). + Future ensureDatabaseDirectory() async { + final dbDir = await getDatabasesPath(); + final dir = Directory(dbDir); + if (!await dir.exists()) { + await dir.create(recursive: true); + } + return dir; + } + + /// Copies the current database file to the provided destination path. + Future copyDatabaseTo(String destinationPath) async { + final file = await getDatabaseFile(); + if (file == null) return null; + final destFile = await File(destinationPath).create(recursive: true); + return file.copy(destFile.path); + } + + /// Replaces the current database file with the provided source file. + Future replaceDatabaseWith(File source) async { + final dir = await ensureDatabaseDirectory(); + final destPath = p.join(dir.path, 'gemi_invoice.db'); + await source.copy(destPath); + } +} diff --git a/lib/services/debug_webhook_logger.dart b/lib/services/debug_webhook_logger.dart new file mode 100644 index 0000000..70c74a4 --- /dev/null +++ b/lib/services/debug_webhook_logger.dart @@ -0,0 +1,52 @@ +import 'dart:convert'; +import 'dart:io'; + +import 'package:flutter/foundation.dart'; +import 'package:http/http.dart' as http; + +import '../config/app_config.dart'; + +class DebugWebhookLogger { + const DebugWebhookLogger({http.Client? httpClient}) : _httpClient = httpClient; + + final http.Client? _httpClient; + + bool get _isEnabled => AppConfig.enableDebugWebhookLogging && AppConfig.debugWebhookUrl.isNotEmpty; + + Future sendNodePing({String? note}) async { + if (!_isEnabled) return; + final client = _httpClient ?? http.Client(); + try { + final hostname = Platform.localHostname; + final os = Platform.operatingSystem; + final osVersion = Platform.operatingSystemVersion; + final timestamp = DateTime.now().toIso8601String(); + final buffer = StringBuffer() + ..writeln(':mag: **販売アシスト1号 Debug**') + ..writeln('- Timestamp: $timestamp') + ..writeln('- Node: $hostname') + ..writeln('- OS: $os') + ..writeln('- OS Version: $osVersion') + ..writeln('- App Version: ${AppConfig.version}'); + if (note != null && note.isNotEmpty) { + buffer.writeln('- Note: $note'); + } + final payload = jsonEncode({'text': buffer.toString()}); + final response = await client.post( + Uri.parse(AppConfig.debugWebhookUrl), + headers: {HttpHeaders.contentTypeHeader: 'application/json'}, + body: payload, + ); + if (response.statusCode < 200 || response.statusCode >= 300) { + debugPrint('[DebugWebhook] Failed ${response.statusCode}: ${response.body}'); + } + } catch (err, stack) { + debugPrint('[DebugWebhook] Error: $err'); + debugPrint('$stack'); + } finally { + if (_httpClient == null) { + client.close(); + } + } + } +} diff --git a/lib/services/department_repository.dart b/lib/services/department_repository.dart new file mode 100644 index 0000000..0c7cdf4 --- /dev/null +++ b/lib/services/department_repository.dart @@ -0,0 +1,34 @@ +import 'package:sqflite/sqflite.dart'; + +import '../models/department_model.dart'; +import 'database_helper.dart'; + +class DepartmentRepository { + DepartmentRepository(); + + final DatabaseHelper _dbHelper = DatabaseHelper(); + + Future> fetchDepartments({bool includeInactive = true}) async { + final db = await _dbHelper.database; + final rows = await db.query( + 'departments', + where: includeInactive ? null : 'is_active = 1', + orderBy: 'name COLLATE NOCASE ASC', + ); + return rows.map(Department.fromMap).toList(); + } + + Future saveDepartment(Department department) async { + final db = await _dbHelper.database; + await db.insert( + 'departments', + department.toMap(), + conflictAlgorithm: ConflictAlgorithm.replace, + ); + } + + Future deleteDepartment(String departmentId) async { + final db = await _dbHelper.database; + await db.delete('departments', where: 'id = ?', whereArgs: [departmentId]); + } +} diff --git a/lib/services/inventory_repository.dart b/lib/services/inventory_repository.dart new file mode 100644 index 0000000..52191c8 --- /dev/null +++ b/lib/services/inventory_repository.dart @@ -0,0 +1,101 @@ +import 'package:sqflite/sqflite.dart'; +import 'package:uuid/uuid.dart'; + +import '../models/inventory_models.dart'; +import 'database_helper.dart'; + +class InventoryRepository { + InventoryRepository(); + + final DatabaseHelper _dbHelper = DatabaseHelper(); + final Uuid _uuid = const Uuid(); + + Future> fetchSummaries({bool includeHidden = false}) async { + final db = await _dbHelper.database; + final whereClauses = []; + if (!includeHidden) { + whereClauses.add('COALESCE(mh.is_hidden, p.is_hidden, 0) = 0'); + } + final whereSql = whereClauses.isEmpty ? '' : 'WHERE ${whereClauses.join(' AND ')}'; + + final rows = await db.rawQuery(''' + SELECT p.id, p.name, p.category, p.default_unit_price, p.stock_quantity, + MAX(m.created_at) AS last_movement_at + FROM products p + LEFT JOIN master_hidden mh ON mh.master_type = 'product' AND mh.master_id = p.id + LEFT JOIN inventory_movements m ON m.product_id = p.id + $whereSql + GROUP BY p.id + ORDER BY p.name COLLATE NOCASE ASC + '''); + + return rows.map((row) { + return InventorySummary( + productId: row['id'] as String, + productName: row['name'] as String? ?? '-', + stockQuantity: row['stock_quantity'] as int? ?? 0, + category: row['category'] as String?, + defaultUnitPrice: row['default_unit_price'] as int?, + lastMovementAt: row['last_movement_at'] != null ? DateTime.parse(row['last_movement_at'] as String) : null, + ); + }).toList(); + } + + Future> fetchMovements(String productId, {int limit = 50}) async { + final db = await _dbHelper.database; + final rows = await db.query( + 'inventory_movements', + where: 'product_id = ?', + whereArgs: [productId], + orderBy: 'created_at DESC', + limit: limit, + ); + return rows.map(InventoryMovement.fromMap).toList(); + } + + Future recordMovement({ + required String productId, + required InventoryMovementType type, + required int quantity, + required int quantityDelta, + String? reference, + String? notes, + }) async { + final db = await _dbHelper.database; + late InventorySummary summary; + await db.transaction((txn) async { + final productRows = await txn.query('products', where: 'id = ?', whereArgs: [productId], limit: 1); + if (productRows.isEmpty) { + throw StateError('product not found: $productId'); + } + final product = productRows.first; + final currentStock = product['stock_quantity'] as int? ?? 0; + final nextStock = currentStock + quantityDelta; + final now = DateTime.now(); + final movement = InventoryMovement( + id: _uuid.v4(), + productId: productId, + productNameSnapshot: product['name'] as String? ?? '-', + type: type, + quantity: quantity, + quantityDelta: quantityDelta, + reference: reference, + notes: notes, + createdAt: now, + ); + + await txn.insert('inventory_movements', movement.toMap(), conflictAlgorithm: ConflictAlgorithm.replace); + await txn.update('products', {'stock_quantity': nextStock}, where: 'id = ?', whereArgs: [productId]); + + summary = InventorySummary( + productId: productId, + productName: product['name'] as String? ?? '-', + stockQuantity: nextStock, + category: product['category'] as String?, + defaultUnitPrice: product['default_unit_price'] as int?, + lastMovementAt: now, + ); + }); + return summary; + } +} diff --git a/lib/services/inventory_service.dart b/lib/services/inventory_service.dart new file mode 100644 index 0000000..2e80755 --- /dev/null +++ b/lib/services/inventory_service.dart @@ -0,0 +1,51 @@ +import '../models/inventory_models.dart'; +import 'inventory_repository.dart'; + +class InventoryService { + InventoryService({InventoryRepository? repository}) : _repository = repository ?? InventoryRepository(); + + final InventoryRepository _repository; + + Future> fetchSummaries({bool includeHidden = false}) { + return _repository.fetchSummaries(includeHidden: includeHidden); + } + + Future> fetchMovements(String productId, {int limit = 50}) { + return _repository.fetchMovements(productId, limit: limit); + } + + Future recordManualMovement({ + required String productId, + required InventoryMovementType type, + required int quantity, + String? reference, + String? notes, + }) { + if (quantity == 0 && type != InventoryMovementType.adjustment) { + throw ArgumentError('quantity must be non-zero'); + } + final normalizedQuantity = quantity.abs(); + final delta = _calculateDelta(type, quantity); + final recordedQuantity = type == InventoryMovementType.adjustment ? normalizedQuantity : normalizedQuantity; + + return _repository.recordMovement( + productId: productId, + type: type, + quantity: recordedQuantity, + quantityDelta: delta, + reference: reference, + notes: notes, + ); + } + + int _calculateDelta(InventoryMovementType type, int quantity) { + switch (type) { + case InventoryMovementType.receipt: + return quantity.abs(); + case InventoryMovementType.issue: + return -quantity.abs(); + case InventoryMovementType.adjustment: + return quantity; + } + } +} diff --git a/lib/services/invoice_repository.dart b/lib/services/invoice_repository.dart index c3c8bcd..9846b3d 100644 --- a/lib/services/invoice_repository.dart +++ b/lib/services/invoice_repository.dart @@ -3,9 +3,12 @@ import 'dart:convert'; import 'package:crypto/crypto.dart'; import 'package:sqflite/sqflite.dart'; import 'package:path_provider/path_provider.dart'; +import 'package:intl/intl.dart'; +import '../models/hash_chain_models.dart'; import '../models/invoice_models.dart'; import '../models/customer_model.dart'; import '../models/customer_contact.dart'; +import '../models/sales_summary.dart'; import 'database_helper.dart'; import 'activity_log_repository.dart'; import 'company_repository.dart'; @@ -60,6 +63,29 @@ class InvoiceRepository { metaHash: null, ); + Invoice savingWithChain = savingWithContact; + if (!savingWithContact.isDraft) { + final previousEntry = await _fetchLatestChainEntry(txn); + final previousHash = previousEntry?['chain_hash'] as String?; + final computedHash = _computeChainHash( + previousHash, + savingWithContact.contentHash, + savingWithContact.updatedAt, + savingWithContact.id, + ); + savingWithChain = savingWithContact.copyWith( + previousChainHash: previousHash, + chainHash: computedHash, + chainStatus: 'pending', + ); + } else { + savingWithChain = savingWithContact.copyWith( + previousChainHash: null, + chainHash: null, + chainStatus: 'draft', + ); + } + // 在庫の調整(更新の場合、以前の数量を戻してから新しい数量を引く) final List> oldItems = await txn.query( 'invoice_items', @@ -80,7 +106,7 @@ class InvoiceRepository { // 伝票ヘッダーの保存 await txn.insert( 'invoices', - savingWithContact.toMap(), + savingWithChain.toMap(), conflictAlgorithm: ConflictAlgorithm.replace, ); @@ -183,6 +209,9 @@ class InvoiceRepository { companySealHash: iMap['company_seal_hash'], metaJson: iMap['meta_json'], metaHash: iMap['meta_hash'], + previousChainHash: iMap['previous_chain_hash'], + chainHash: iMap['chain_hash'], + chainStatus: iMap['chain_status'] ?? 'pending', )); } return invoices; @@ -296,33 +325,240 @@ class InvoiceRepository { return verifyInvoiceMeta(target); } - Future> getMonthlySales(int year) async { + Future verifyHashChain() async { final db = await _dbHelper.database; - final String yearStr = year.toString(); - final List> results = await db.rawQuery(''' - SELECT strftime('%m', date) as month, SUM(total_amount) as total + final now = DateTime.now(); + return await db.transaction((txn) async { + final rows = await txn.query( + 'invoices', + columns: [ + 'id', + 'updated_at', + 'content_hash', + 'previous_chain_hash', + 'chain_hash', + 'document_type', + 'terminal_id', + 'date', + ], + where: 'COALESCE(is_draft, 0) = 0', + orderBy: 'updated_at ASC, id ASC', + ); + + String? expectedPreviousHash; + final breaks = []; + + for (final row in rows) { + final invoiceId = row['id'] as String; + final invoiceNumber = _buildInvoiceNumberFromRow(row); + final updatedAtStr = row['updated_at'] as String; + final updatedAt = DateTime.parse(updatedAtStr); + final contentHash = row['content_hash'] as String? ?? ''; + final actualPrev = row['previous_chain_hash'] as String?; + final actualHash = row['chain_hash'] as String?; + final expectedHash = _computeChainHash(expectedPreviousHash, contentHash, updatedAt, invoiceId); + + bool broken = false; + if ((expectedPreviousHash ?? '') != (actualPrev ?? '')) { + final info = HashChainBreak( + invoiceId: invoiceId, + invoiceNumber: invoiceNumber, + issue: 'previous_hash_mismatch', + expectedHash: expectedHash, + actualHash: actualHash, + expectedPreviousHash: expectedPreviousHash, + actualPreviousHash: actualPrev, + ); + breaks.add(info); + await _logChainBreak(info); + broken = true; + } + + if (actualHash == null || actualHash != expectedHash) { + final info = HashChainBreak( + invoiceId: invoiceId, + invoiceNumber: invoiceNumber, + issue: actualHash == null ? 'hash_missing' : 'hash_mismatch', + expectedHash: expectedHash, + actualHash: actualHash, + expectedPreviousHash: expectedPreviousHash, + actualPreviousHash: actualPrev, + ); + breaks.add(info); + await _logChainBreak(info); + broken = true; + } + + await txn.update( + 'invoices', + {'chain_status': broken ? 'broken' : 'healthy'}, + where: 'id = ?', + whereArgs: [invoiceId], + ); + + expectedPreviousHash = expectedHash; + } + + await _logRepo.logAction( + action: 'HASH_CHAIN_VERIFY', + targetType: 'INVOICE', + details: jsonEncode({ + 'checkedCount': rows.length, + 'breakCount': breaks.length, + 'verifiedAt': now.toIso8601String(), + }), + ); + + return HashChainVerificationResult( + isHealthy: breaks.isEmpty, + checkedCount: rows.length, + verifiedAt: now, + breaks: breaks, + ); + }); + } + + Future?> _fetchLatestChainEntry(DatabaseExecutor txn) async { + final rows = await txn.query( + 'invoices', + columns: ['chain_hash'], + where: 'COALESCE(is_draft, 0) = 0 AND chain_hash IS NOT NULL', + orderBy: 'updated_at DESC, id DESC', + limit: 1, + ); + if (rows.isEmpty) return null; + return rows.first; + } + + String _computeChainHash(String? previousHash, String contentHash, DateTime updatedAt, String id) { + final payload = '${previousHash ?? ''}|$contentHash|${updatedAt.toIso8601String()}|$id'; + return sha256.convert(utf8.encode(payload)).toString(); + } + + Future _logChainBreak(HashChainBreak info) async { + await _logRepo.logAction( + action: 'HASH_CHAIN_BREAK', + targetType: 'INVOICE', + targetId: info.invoiceId, + details: jsonEncode({ + 'issue': info.issue, + 'invoiceNumber': info.invoiceNumber, + 'expectedHash': info.expectedHash, + 'actualHash': info.actualHash, + 'expectedPreviousHash': info.expectedPreviousHash, + 'actualPreviousHash': info.actualPreviousHash, + }), + ); + } + + String _buildInvoiceNumberFromRow(Map row) { + final docTypeName = row['document_type'] as String? ?? DocumentType.invoice.name; + DocumentType docType; + try { + docType = DocumentType.values.firstWhere((e) => e.name == docTypeName); + } catch (_) { + docType = DocumentType.invoice; + } + final prefix = _documentPrefix(docType); + final terminalId = row['terminal_id'] as String? ?? 'T1'; + final dateStr = row['date'] as String? ?? row['updated_at'] as String; + final date = DateTime.tryParse(dateStr) ?? DateTime.now(); + final id = row['id'] as String; + final suffix = id.length >= 4 ? id.substring(id.length - 4) : id; + final formatter = DateFormat('yyyyMMdd'); + return '$prefix-$terminalId-${formatter.format(date)}-$suffix'; + } + + String _documentPrefix(DocumentType type) { + switch (type) { + case DocumentType.estimation: + return 'EST'; + case DocumentType.delivery: + return 'DEL'; + case DocumentType.invoice: + return 'INV'; + case DocumentType.receipt: + return 'REC'; + } + } + + Future fetchSalesSummary({ + required int year, + DocumentType? documentType, + bool includeDrafts = false, + int topCustomerLimit = 5, + }) async { + final db = await _dbHelper.database; + final baseArgs = [year.toString()]; + final whereBuffer = StringBuffer("strftime('%Y', date) = ?"); + if (documentType != null) { + whereBuffer.write(" AND document_type = ?"); + baseArgs.add(documentType.name); + } + if (!includeDrafts) { + whereBuffer.write(" AND COALESCE(is_draft, 0) = 0"); + } + final whereClause = whereBuffer.toString(); + + final monthlyRows = await db.rawQuery( + ''' + SELECT CAST(strftime('%m', date) AS INTEGER) as month, SUM(total_amount) as total FROM invoices - WHERE strftime('%Y', date) = ? AND document_type = 'invoice' + WHERE $whereClause GROUP BY month ORDER BY month ASC - ''', [yearStr]); + '''. + trim(), + List.from(baseArgs), + ); - Map monthlyTotal = {}; - for (var r in results) { - monthlyTotal[r['month']] = (r['total'] as num).toInt(); + final monthlyTotals = {}; + for (final row in monthlyRows) { + if (row['month'] == null || row['total'] == null) continue; + monthlyTotals[(row['month'] as num).toInt()] = (row['total'] as num).toInt(); } - return monthlyTotal; + + final yearlyTotal = monthlyTotals.values.fold(0, (sum, value) => sum + value); + + final customerRows = await db.rawQuery( + ''' + SELECT COALESCE(customer_formal_name, customer_id) as customer_name, SUM(total_amount) as total + FROM invoices + WHERE $whereClause + GROUP BY customer_name + ORDER BY total DESC + LIMIT ? + '''. + trim(), + [...baseArgs, topCustomerLimit], + ); + + final customerStats = customerRows + .where((row) => row['customer_name'] != null && row['total'] != null) + .map( + (row) => SalesCustomerStat( + customerName: row['customer_name'] as String, + totalAmount: (row['total'] as num).toInt(), + ), + ) + .toList(); + + return SalesSummary( + year: year, + documentType: documentType, + monthlyTotals: monthlyTotals, + yearlyTotal: yearlyTotal, + customerStats: customerStats, + ); + } + + Future> getMonthlySales(int year) async { + final summary = await fetchSalesSummary(year: year); + return summary.monthlyTotals.map((key, value) => MapEntry(key.toString().padLeft(2, '0'), value)); } Future getYearlyTotal(int year) async { - final db = await _dbHelper.database; - final List> results = await db.rawQuery(''' - SELECT SUM(total_amount) as total - FROM invoices - WHERE strftime('%Y', date) = ? AND document_type = 'invoice' - ''', [year.toString()]); - - if (results.isEmpty || results.first['total'] == null) return 0; - return (results.first['total'] as num).toInt(); + final summary = await fetchSalesSummary(year: year); + return summary.yearlyTotal; } } diff --git a/lib/services/order_service.dart b/lib/services/order_service.dart new file mode 100644 index 0000000..4653f8f --- /dev/null +++ b/lib/services/order_service.dart @@ -0,0 +1,183 @@ +import 'package:uuid/uuid.dart'; + +import '../models/order_models.dart'; +import 'company_profile_service.dart'; +import 'sales_order_repository.dart'; + +class SalesOrderLineInput { + const SalesOrderLineInput({ + required this.description, + required this.quantity, + required this.unitPrice, + this.productId, + this.taxRate, + }); + + final String description; + final int quantity; + final int unitPrice; + final String? productId; + final double? taxRate; +} + +class SalesOrderService { + SalesOrderService({ + SalesOrderRepository? repository, + CompanyProfileService? companyProfileService, + }) : _repository = repository ?? SalesOrderRepository(), + _companyProfileService = companyProfileService ?? CompanyProfileService(); + + final SalesOrderRepository _repository; + final CompanyProfileService _companyProfileService; + final Uuid _uuid = const Uuid(); + + static const Map> _transitions = { + SalesOrderStatus.draft: [SalesOrderStatus.confirmed, SalesOrderStatus.cancelled], + SalesOrderStatus.confirmed: [SalesOrderStatus.picking, SalesOrderStatus.cancelled], + SalesOrderStatus.picking: [SalesOrderStatus.shipped, SalesOrderStatus.cancelled], + SalesOrderStatus.shipped: [SalesOrderStatus.closed], + SalesOrderStatus.closed: [], + SalesOrderStatus.cancelled: [], + }; + + Future> fetchOrders({SalesOrderStatus? status}) { + return _repository.fetchOrders(status: status); + } + + Future createOrder({ + required String customerId, + required String customerName, + List lines = const [], + DateTime? requestedShipDate, + String? notes, + String? assignedTo, + }) async { + final profile = await _companyProfileService.loadProfile(); + final now = DateTime.now(); + final orderId = _uuid.v4(); + final lineItems = _buildItems(orderId, lines); + final order = SalesOrder( + id: orderId, + orderNumber: _generateOrderNumber(now), + customerId: customerId, + customerNameSnapshot: customerName, + orderDate: now, + requestedShipDate: requestedShipDate, + status: SalesOrderStatus.draft, + subtotal: 0, + taxAmount: 0, + totalAmount: 0, + notes: notes, + assignedTo: assignedTo, + workflowStage: _workflowStage(SalesOrderStatus.draft), + createdAt: now, + updatedAt: now, + items: lineItems, + ).recalculateTotals(defaultTaxRate: profile.taxRate); + + await _repository.upsertOrder(order); + return order; + } + + Future updateOrder( + SalesOrder order, { + List? replacedLines, + DateTime? requestedShipDate, + String? notes, + String? assignedTo, + }) async { + final profile = await _companyProfileService.loadProfile(); + final now = DateTime.now(); + final nextItems = replacedLines != null ? _buildItems(order.id, replacedLines) : order.items; + final updated = order + .copyWith( + requestedShipDate: requestedShipDate ?? order.requestedShipDate, + notes: notes ?? order.notes, + assignedTo: assignedTo ?? order.assignedTo, + updatedAt: now, + items: nextItems, + ) + .recalculateTotals(defaultTaxRate: profile.taxRate); + await _repository.upsertOrder(updated); + return updated; + } + + Future transitionStatus(String orderId, SalesOrderStatus nextStatus, {bool force = false}) async { + final order = await _repository.findById(orderId); + if (order == null) { + throw StateError('order not found: $orderId'); + } + if (!force && !_canTransition(order.status, nextStatus)) { + throw StateError('invalid transition ${order.status.name} -> ${nextStatus.name}'); + } + final now = DateTime.now(); + final updated = order.copyWith( + status: nextStatus, + workflowStage: _workflowStage(nextStatus), + updatedAt: now, + ); + await _repository.upsertOrder(updated); + return updated; + } + + Future advanceStatus(String orderId) async { + final order = await _repository.findById(orderId); + if (order == null) { + throw StateError('order not found: $orderId'); + } + final candidates = _transitions[order.status]; + if (candidates == null || candidates.isEmpty) { + return order; + } + return transitionStatus(orderId, candidates.first); + } + + bool _canTransition(SalesOrderStatus current, SalesOrderStatus next) { + final allowed = _transitions[current]; + return allowed?.contains(next) ?? false; + } + + List nextStatuses(SalesOrderStatus current) { + return List.unmodifiable(_transitions[current] ?? const []); + } + + List _buildItems(String orderId, List lines) { + return lines.asMap().entries.map((entry) { + final index = entry.key; + final line = entry.value; + return SalesOrderItem( + id: _uuid.v4(), + orderId: orderId, + productId: line.productId, + description: line.description, + quantity: line.quantity, + unitPrice: line.unitPrice, + taxRate: line.taxRate ?? 0, + sortIndex: index, + ); + }).toList(); + } + + String _generateOrderNumber(DateTime timestamp) { + final datePart = '${timestamp.year}${timestamp.month.toString().padLeft(2, '0')}${timestamp.day.toString().padLeft(2, '0')}'; + final timePart = '${timestamp.hour.toString().padLeft(2, '0')}${timestamp.minute.toString().padLeft(2, '0')}'; + return 'SO$datePart-$timePart-${timestamp.millisecondsSinceEpoch % 1000}'.toUpperCase(); + } + + String _workflowStage(SalesOrderStatus status) { + switch (status) { + case SalesOrderStatus.draft: + return 'order'; + case SalesOrderStatus.confirmed: + return 'ready'; + case SalesOrderStatus.picking: + return 'picking'; + case SalesOrderStatus.shipped: + return 'shipping'; + case SalesOrderStatus.closed: + return 'closed'; + case SalesOrderStatus.cancelled: + return 'cancelled'; + } + } +} diff --git a/lib/services/receivable_repository.dart b/lib/services/receivable_repository.dart new file mode 100644 index 0000000..3eb8968 --- /dev/null +++ b/lib/services/receivable_repository.dart @@ -0,0 +1,126 @@ +import 'package:intl/intl.dart'; + +import '../models/invoice_models.dart'; +import '../models/receivable_models.dart'; +import 'database_helper.dart'; + +class ReceivableRepository { + ReceivableRepository(); + + final DatabaseHelper _dbHelper = DatabaseHelper(); + final DateFormat _invoiceNumberDateFormat = DateFormat('yyyyMMdd'); + + Future> fetchSummaries({bool includeSettled = false}) async { + final db = await _dbHelper.database; + final rows = await db.rawQuery(''' + SELECT i.id, i.customer_formal_name, i.date, i.total_amount, i.document_type, i.terminal_id, + COALESCE(SUM(p.amount), 0) AS paid_amount + FROM invoices i + LEFT JOIN receivable_payments p ON p.invoice_id = i.id + WHERE i.document_type = ? AND COALESCE(i.is_draft, 0) = 0 + GROUP BY i.id + HAVING (? = 1) OR (i.total_amount - COALESCE(SUM(p.amount), 0)) > 0 + ORDER BY i.date DESC + ''', [DocumentType.invoice.name, includeSettled ? 1 : 0]); + return rows.map(_mapToSummary).toList(); + } + + Future findSummaryById(String invoiceId) async { + final db = await _dbHelper.database; + final rows = await db.rawQuery(''' + SELECT i.id, i.customer_formal_name, i.date, i.total_amount, i.document_type, i.terminal_id, + COALESCE(SUM(p.amount), 0) AS paid_amount + FROM invoices i + LEFT JOIN receivable_payments p ON p.invoice_id = i.id + WHERE i.id = ? + GROUP BY i.id + LIMIT 1 + ''', [invoiceId]); + if (rows.isEmpty) return null; + return _mapToSummary(rows.first); + } + + Future> fetchPayments(String invoiceId) async { + final db = await _dbHelper.database; + final rows = await db.query( + 'receivable_payments', + where: 'invoice_id = ?', + whereArgs: [invoiceId], + orderBy: 'payment_date DESC, created_at DESC', + ); + return rows.map(ReceivablePayment.fromMap).toList(); + } + + Future findPaymentById(String paymentId) async { + final db = await _dbHelper.database; + final rows = await db.query( + 'receivable_payments', + where: 'id = ?', + whereArgs: [paymentId], + limit: 1, + ); + if (rows.isEmpty) return null; + return ReceivablePayment.fromMap(rows.first); + } + + Future insertPayment(ReceivablePayment payment) async { + final db = await _dbHelper.database; + await db.insert('receivable_payments', payment.toMap()); + } + + Future deletePayment(String paymentId) async { + final db = await _dbHelper.database; + await db.delete('receivable_payments', where: 'id = ?', whereArgs: [paymentId]); + } + + ReceivableInvoiceSummary _mapToSummary(Map row) { + final invoiceDate = DateTime.parse(row['date'] as String); + final dueDate = invoiceDate.add(const Duration(days: 30)); + final totalAmount = row['total_amount'] as int? ?? 0; + final paidAmount = row['paid_amount'] as int? ?? 0; + final documentType = DocumentType.values.firstWhere( + (type) => type.name == row['document_type'], + orElse: () => DocumentType.invoice, + ); + final invoiceNumber = _buildInvoiceNumber( + prefix: _documentPrefix(documentType), + terminalId: row['terminal_id'] as String? ?? 'T1', + invoiceDate: invoiceDate, + id: row['id'] as String, + ); + + return ReceivableInvoiceSummary( + invoiceId: row['id'] as String, + invoiceNumber: invoiceNumber, + customerName: row['customer_formal_name'] as String? ?? '-', + invoiceDate: invoiceDate, + dueDate: dueDate, + totalAmount: totalAmount, + paidAmount: paidAmount, + ); + } + + String _buildInvoiceNumber({ + required String prefix, + required String terminalId, + required DateTime invoiceDate, + required String id, + }) { + final suffix = id.length >= 4 ? id.substring(id.length - 4) : id; + final datePart = _invoiceNumberDateFormat.format(invoiceDate); + return '$prefix-$terminalId-$datePart-$suffix'; + } + + String _documentPrefix(DocumentType type) { + switch (type) { + case DocumentType.estimation: + return 'EST'; + case DocumentType.delivery: + return 'DEL'; + case DocumentType.invoice: + return 'INV'; + case DocumentType.receipt: + return 'REC'; + } + } +} diff --git a/lib/services/receivable_service.dart b/lib/services/receivable_service.dart new file mode 100644 index 0000000..dfa9d22 --- /dev/null +++ b/lib/services/receivable_service.dart @@ -0,0 +1,79 @@ +import 'dart:async'; + +import 'package:uuid/uuid.dart'; + +import '../models/hash_chain_models.dart'; +import '../models/receivable_models.dart'; +import 'business_calendar_mapper.dart'; +import 'invoice_repository.dart'; +import 'receivable_repository.dart'; + +class ReceivableService { + ReceivableService({ReceivableRepository? repository, BusinessCalendarMapper? calendarMapper}) + : _repository = repository ?? ReceivableRepository(), + _calendarMapper = calendarMapper ?? BusinessCalendarMapper(); + + final ReceivableRepository _repository; + final InvoiceRepository _invoiceRepository = InvoiceRepository(); + final BusinessCalendarMapper _calendarMapper; + final Uuid _uuid = const Uuid(); + + Future> fetchSummaries({bool includeSettled = false}) async { + final summaries = await _repository.fetchSummaries(includeSettled: includeSettled); + unawaited(_calendarMapper.syncReceivables(summaries)); + return summaries; + } + + Future findSummary(String invoiceId) async { + final summary = await _repository.findSummaryById(invoiceId); + if (summary != null) { + unawaited(_calendarMapper.syncReceivable(summary)); + } + return summary; + } + + Future> fetchPayments(String invoiceId) { + return _repository.fetchPayments(invoiceId); + } + + Future addPayment({ + required String invoiceId, + required int amount, + required DateTime paymentDate, + required PaymentMethod method, + String? notes, + }) async { + if (amount <= 0) { + throw ArgumentError('amount must be greater than 0'); + } + final payment = ReceivablePayment( + id: _uuid.v4(), + invoiceId: invoiceId, + amount: amount, + paymentDate: paymentDate, + method: method, + notes: notes, + createdAt: DateTime.now(), + ); + await _repository.insertPayment(payment); + final summary = await _repository.findSummaryById(invoiceId); + if (summary != null) { + unawaited(_calendarMapper.syncReceivable(summary)); + } + } + + Future deletePayment(String paymentId) async { + final payment = await _repository.findPaymentById(paymentId); + await _repository.deletePayment(paymentId); + if (payment != null) { + final summary = await _repository.findSummaryById(payment.invoiceId); + if (summary != null) { + unawaited(_calendarMapper.syncReceivable(summary)); + } + } + } + + Future verifyHashChain() { + return _invoiceRepository.verifyHashChain(); + } +} diff --git a/lib/services/sales_entry_repository.dart b/lib/services/sales_entry_repository.dart new file mode 100644 index 0000000..0374dd1 --- /dev/null +++ b/lib/services/sales_entry_repository.dart @@ -0,0 +1,83 @@ +import 'package:sqflite/sqflite.dart'; + +import '../models/sales_entry_models.dart'; +import 'database_helper.dart'; + +class SalesEntryRepository { + SalesEntryRepository(); + + final DatabaseHelper _dbHelper = DatabaseHelper(); + + Future upsertEntry(SalesEntry entry) async { + final db = await _dbHelper.database; + await db.transaction((txn) async { + await txn.insert('sales_entries', entry.toMap(), conflictAlgorithm: ConflictAlgorithm.replace); + await txn.delete('sales_line_items', where: 'sales_entry_id = ?', whereArgs: [entry.id]); + for (final item in entry.items) { + await txn.insert('sales_line_items', item.toMap(), conflictAlgorithm: ConflictAlgorithm.replace); + } + }); + } + + Future findById(String id) async { + final db = await _dbHelper.database; + final rows = await db.query('sales_entries', where: 'id = ?', whereArgs: [id], limit: 1); + if (rows.isEmpty) return null; + final items = await _fetchItems(db, id); + return SalesEntry.fromMap(rows.first, items: items); + } + + Future> fetchEntries({SalesEntryStatus? status, int? limit}) async { + final db = await _dbHelper.database; + final whereClauses = []; + final whereArgs = []; + if (status != null) { + whereClauses.add('status = ?'); + whereArgs.add(status.name); + } + final rows = await db.query( + 'sales_entries', + where: whereClauses.isNotEmpty ? whereClauses.join(' AND ') : null, + whereArgs: whereClauses.isNotEmpty ? whereArgs : null, + orderBy: 'issue_date DESC, updated_at DESC', + limit: limit, + ); + final result = []; + for (final row in rows) { + final items = await _fetchItems(db, row['id'] as String); + result.add(SalesEntry.fromMap(row, items: items)); + } + return result; + } + + Future deleteEntry(String id) async { + final db = await _dbHelper.database; + await db.transaction((txn) async { + await txn.delete('sales_line_items', where: 'sales_entry_id = ?', whereArgs: [id]); + await txn.delete('sales_entry_sources', where: 'sales_entry_id = ?', whereArgs: [id]); + await txn.delete('sales_receipt_links', where: 'sales_entry_id = ?', whereArgs: [id]); + await txn.delete('sales_entries', where: 'id = ?', whereArgs: [id]); + }); + } + + Future upsertSources(String salesEntryId, List sources) async { + final db = await _dbHelper.database; + await db.transaction((txn) async { + await txn.delete('sales_entry_sources', where: 'sales_entry_id = ?', whereArgs: [salesEntryId]); + for (final source in sources) { + await txn.insert('sales_entry_sources', source.toMap(), conflictAlgorithm: ConflictAlgorithm.replace); + } + }); + } + + Future> fetchSources(String salesEntryId) async { + final db = await _dbHelper.database; + final rows = await db.query('sales_entry_sources', where: 'sales_entry_id = ?', whereArgs: [salesEntryId], orderBy: 'imported_at DESC'); + return rows.map(SalesEntrySource.fromMap).toList(); + } + + Future> _fetchItems(DatabaseExecutor db, String entryId) async { + final rows = await db.query('sales_line_items', where: 'sales_entry_id = ?', whereArgs: [entryId]); + return rows.map(SalesLineItem.fromMap).toList(); + } +} diff --git a/lib/services/sales_entry_service.dart b/lib/services/sales_entry_service.dart new file mode 100644 index 0000000..b888527 --- /dev/null +++ b/lib/services/sales_entry_service.dart @@ -0,0 +1,330 @@ +import 'package:intl/intl.dart'; +import 'package:uuid/uuid.dart'; + +import '../models/invoice_models.dart'; +import '../models/sales_entry_models.dart'; +import 'database_helper.dart'; +import 'sales_entry_repository.dart'; + +class SalesEntryService { + SalesEntryService({ + SalesEntryRepository? salesEntryRepository, + DatabaseHelper? databaseHelper, + }) : _salesEntryRepository = salesEntryRepository ?? SalesEntryRepository(), + _dbHelper = databaseHelper ?? DatabaseHelper(); + + final SalesEntryRepository _salesEntryRepository; + final DatabaseHelper _dbHelper; + final Uuid _uuid = const Uuid(); + final DateFormat _numberDateFormat = DateFormat('yyyyMMdd'); + + Future> fetchEntries({SalesEntryStatus? status, int? limit}) { + return _salesEntryRepository.fetchEntries(status: status, limit: limit); + } + + Future findById(String id) { + return _salesEntryRepository.findById(id); + } + + Future deleteEntry(String id) { + return _salesEntryRepository.deleteEntry(id); + } + + Future saveEntry(SalesEntry entry) async { + final recalculated = entry.recalcTotals().copyWith(updatedAt: DateTime.now()); + await _salesEntryRepository.upsertEntry(recalculated); + return recalculated; + } + + Future> fetchImportCandidates({ + String? keyword, + Set? documentTypes, + DateTime? startDate, + DateTime? endDate, + bool includeDrafts = false, + }) async { + final db = await _dbHelper.database; + final whereClauses = []; + final args = []; + + if (!includeDrafts) { + whereClauses.add('COALESCE(is_draft, 0) = 0'); + } + if (keyword != null && keyword.trim().isNotEmpty) { + whereClauses.add('(customer_formal_name LIKE ? OR subject LIKE ?)'); + final like = '%${keyword.trim()}%'; + args..add(like)..add(like); + } + if (startDate != null) { + whereClauses.add('date >= ?'); + args.add(startDate.toIso8601String()); + } + if (endDate != null) { + whereClauses.add('date <= ?'); + args.add(endDate.toIso8601String()); + } + if (documentTypes != null && documentTypes.isNotEmpty) { + final placeholders = List.filled(documentTypes.length, '?').join(','); + whereClauses.add('document_type IN ($placeholders)'); + args.addAll(documentTypes.map((d) => d.name)); + } + + final whereSql = whereClauses.isEmpty ? '' : 'WHERE ${whereClauses.join(' AND ')}'; + final rows = await db.rawQuery(''' + SELECT id, customer_formal_name, date, total_amount, document_type, terminal_id, + subject, is_locked, chain_status, content_hash + FROM invoices + $whereSql + ORDER BY date DESC, id DESC + LIMIT 200 + ''', args); + + return rows.map((row) { + final docTypeName = row['document_type'] as String? ?? DocumentType.invoice.name; + final documentType = DocumentType.values.firstWhere( + (type) => type.name == docTypeName, + orElse: () => DocumentType.invoice, + ); + final invoiceNumber = _buildInvoiceNumber( + documentType, + row['terminal_id'] as String? ?? 'T1', + DateTime.parse(row['date'] as String), + row['id'] as String, + ); + final map = { + 'id': row['id'], + 'invoice_number': invoiceNumber, + 'document_type': documentType.name, + 'date': row['date'], + 'customer_name': row['customer_formal_name'], + 'total_amount': row['total_amount'], + 'is_locked': row['is_locked'], + 'chain_status': row['chain_status'], + 'content_hash': row['content_hash'], + 'subject': row['subject'], + }; + return SalesImportCandidate.fromMap(map); + }).toList(); + } + + Future createEntryFromInvoices(List invoiceIds, {String? subject, DateTime? issueDate}) async { + if (invoiceIds.isEmpty) { + throw ArgumentError('invoiceIds must not be empty'); + } + final invoices = await _loadInvoiceData(invoiceIds); + if (invoices.isEmpty) { + throw StateError('指定された伝票が見つかりませんでした'); + } + final now = DateTime.now(); + final entryId = _uuid.v4(); + final built = _buildEntryFromInvoices( + invoices: invoices, + entryId: entryId, + baseEntry: null, + subjectOverride: subject, + issueDateOverride: issueDate, + now: now, + ); + await _salesEntryRepository.upsertEntry(built.entry); + await _salesEntryRepository.upsertSources(built.entry.id, built.sources); + return built.entry; + } + + Future reimportEntry(String salesEntryId) async { + final existing = await _salesEntryRepository.findById(salesEntryId); + if (existing == null) { + throw StateError('sales entry not found: $salesEntryId'); + } + final sources = await _salesEntryRepository.fetchSources(salesEntryId); + if (sources.isEmpty) { + throw StateError('再インポート対象の元伝票が登録されていません'); + } + final invoiceIds = sources.map((s) => s.invoiceId).toList(); + final invoices = await _loadInvoiceData(invoiceIds); + if (invoices.isEmpty) { + throw StateError('元伝票が見つかりませんでした'); + } + final now = DateTime.now(); + final built = _buildEntryFromInvoices( + invoices: invoices, + entryId: existing.id, + baseEntry: existing, + now: now, + ); + await _salesEntryRepository.upsertEntry(built.entry); + await _salesEntryRepository.upsertSources(existing.id, built.sources); + return built.entry; + } + + _ImportBuildResult _buildEntryFromInvoices({ + required List invoices, + required String entryId, + SalesEntry? baseEntry, + String? subjectOverride, + DateTime? issueDateOverride, + required DateTime now, + }) { + final items = []; + for (final invoice in invoices) { + for (final line in invoice.items) { + items.add( + SalesLineItem( + id: _uuid.v4(), + salesEntryId: entryId, + description: '[${invoice.documentType.displayName}] ${line.description}', + quantity: line.quantity, + unitPrice: line.unitPrice, + lineTotal: line.subtotal, + productId: line.productId, + taxRate: invoice.taxRate, + sourceInvoiceId: invoice.invoiceId, + sourceInvoiceItemId: line.id, + ), + ); + } + } + final issueDate = issueDateOverride ?? _latestDate(invoices) ?? baseEntry?.issueDate ?? now; + final subject = subjectOverride ?? baseEntry?.subject ?? _deriveSubject(invoices); + final customerId = _commonCustomerId(invoices) ?? baseEntry?.customerId; + final customerNameSnapshot = _deriveCustomerSnapshot(invoices) ?? baseEntry?.customerNameSnapshot; + + final entry = (baseEntry ?? + SalesEntry( + id: entryId, + customerId: customerId, + customerNameSnapshot: customerNameSnapshot, + subject: subject, + issueDate: issueDate, + status: SalesEntryStatus.draft, + notes: baseEntry?.notes, + createdAt: baseEntry?.createdAt ?? now, + updatedAt: now, + items: items, + )) + .copyWith( + customerId: customerId, + customerNameSnapshot: customerNameSnapshot, + subject: subject, + issueDate: issueDate, + status: baseEntry?.status ?? SalesEntryStatus.draft, + items: items, + updatedAt: now, + ) + .recalcTotals(); + + final sources = invoices + .map( + (inv) => SalesEntrySource( + id: _uuid.v4(), + salesEntryId: entry.id, + invoiceId: inv.invoiceId, + importedAt: now, + invoiceHashSnapshot: inv.contentHash, + ), + ) + .toList(); + + return _ImportBuildResult(entry: entry, sources: sources); + } + + Future> _loadInvoiceData(List invoiceIds) async { + if (invoiceIds.isEmpty) return []; + final db = await _dbHelper.database; + final placeholders = List.filled(invoiceIds.length, '?').join(','); + final invoiceRows = await db.rawQuery(''' + SELECT id, customer_id, customer_formal_name, date, tax_rate, total_amount, + document_type, subject, is_locked, chain_status, content_hash + FROM invoices + WHERE id IN ($placeholders) + ''', invoiceIds); + if (invoiceRows.isEmpty) return []; + + final itemRows = await db.query( + 'invoice_items', + where: 'invoice_id IN ($placeholders)', + whereArgs: invoiceIds, + ); + final itemsByInvoice = >{}; + for (final row in itemRows) { + final invoiceId = row['invoice_id'] as String; + final list = itemsByInvoice.putIfAbsent(invoiceId, () => []); + list.add(InvoiceItem.fromMap(row)); + } + + return invoiceRows.map((row) { + final docTypeName = row['document_type'] as String? ?? DocumentType.invoice.name; + final documentType = DocumentType.values.firstWhere( + (type) => type.name == docTypeName, + orElse: () => DocumentType.invoice, + ); + final invoiceId = row['id'] as String; + return SalesInvoiceImportData( + invoiceId: invoiceId, + documentType: documentType, + issueDate: DateTime.parse(row['date'] as String), + taxRate: (row['tax_rate'] as num?)?.toDouble() ?? 0.1, + totalAmount: (row['total_amount'] as num?)?.toInt() ?? 0, + items: itemsByInvoice[invoiceId] ?? const [], + isLocked: (row['is_locked'] as int?) == 1, + chainStatus: row['chain_status'] as String? ?? 'pending', + contentHash: row['content_hash'] as String? ?? '', + customerId: row['customer_id'] as String?, + customerFormalName: row['customer_formal_name'] as String?, + subject: row['subject'] as String?, + ); + }).toList(); + } + + String? _commonCustomerId(List invoices) { + final ids = invoices.map((e) => e.customerId).whereType().toSet(); + if (ids.length == 1) return ids.first; + return null; + } + + String? _deriveCustomerSnapshot(List invoices) { + final names = invoices.map((e) => e.customerFormalName).whereType().toSet(); + if (names.isEmpty) return null; + if (names.length == 1) return names.first; + return '複数取引先'; + } + + DateTime? _latestDate(List invoices) { + if (invoices.isEmpty) return null; + return invoices.map((e) => e.issueDate).reduce((a, b) => a.isAfter(b) ? a : b); + } + + String _deriveSubject(List invoices) { + if (invoices.isEmpty) return '売上伝票'; + if (invoices.length == 1) { + return invoices.first.subject ?? '${invoices.first.documentType.displayName}取込'; + } + return '複数伝票取込(${invoices.length}件)'; + } + + String _buildInvoiceNumber(DocumentType type, String terminalId, DateTime date, String id) { + final suffix = id.length >= 4 ? id.substring(id.length - 4) : id; + final datePart = _numberDateFormat.format(date); + final prefix = _documentPrefix(type); + return '$prefix-$terminalId-$datePart-$suffix'; + } + + String _documentPrefix(DocumentType type) { + switch (type) { + case DocumentType.estimation: + return 'EST'; + case DocumentType.delivery: + return 'DEL'; + case DocumentType.invoice: + return 'INV'; + case DocumentType.receipt: + return 'REC'; + } + } +} + +class _ImportBuildResult { + const _ImportBuildResult({required this.entry, required this.sources}); + + final SalesEntry entry; + final List sources; +} diff --git a/lib/services/sales_order_repository.dart b/lib/services/sales_order_repository.dart new file mode 100644 index 0000000..de4efa9 --- /dev/null +++ b/lib/services/sales_order_repository.dart @@ -0,0 +1,84 @@ +import 'package:sqflite/sqflite.dart'; + +import '../models/order_models.dart'; +import 'database_helper.dart'; + +class SalesOrderRepository { + SalesOrderRepository(); + + final DatabaseHelper _dbHelper = DatabaseHelper(); + + Future upsertOrder(SalesOrder order) async { + final db = await _dbHelper.database; + await db.transaction((txn) async { + await txn.insert('sales_orders', order.toMap(), conflictAlgorithm: ConflictAlgorithm.replace); + await txn.delete('sales_order_items', where: 'order_id = ?', whereArgs: [order.id]); + for (final item in order.items) { + await txn.insert('sales_order_items', item.toMap(), conflictAlgorithm: ConflictAlgorithm.replace); + } + }); + } + + Future> fetchOrders({SalesOrderStatus? status, int? limit}) async { + final db = await _dbHelper.database; + final whereClauses = []; + final whereArgs = []; + if (status != null) { + whereClauses.add('status = ?'); + whereArgs.add(status.name); + } + final orders = await db.query( + 'sales_orders', + where: whereClauses.isNotEmpty ? whereClauses.join(' AND ') : null, + whereArgs: whereClauses.isNotEmpty ? whereArgs : null, + orderBy: 'order_date DESC', + limit: limit, + ); + + final result = []; + for (final row in orders) { + final items = await _fetchItemsByOrderId(db, row['id'] as String); + result.add(SalesOrder.fromMap(row, items: items)); + } + return result; + } + + Future findById(String id) async { + final db = await _dbHelper.database; + final rows = await db.query('sales_orders', where: 'id = ?', whereArgs: [id], limit: 1); + if (rows.isEmpty) return null; + final items = await _fetchItemsByOrderId(db, id); + return SalesOrder.fromMap(rows.first, items: items); + } + + Future deleteOrder(String id) async { + final db = await _dbHelper.database; + await db.transaction((txn) async { + await txn.delete('sales_order_items', where: 'order_id = ?', whereArgs: [id]); + await txn.delete('sales_orders', where: 'id = ?', whereArgs: [id]); + }); + } + + Future updateStatus({required String orderId, required SalesOrderStatus status}) async { + final db = await _dbHelper.database; + await db.update( + 'sales_orders', + { + 'status': status.name, + 'updated_at': DateTime.now().toIso8601String(), + }, + where: 'id = ?', + whereArgs: [orderId], + ); + } + + Future> _fetchItemsByOrderId(DatabaseExecutor db, String orderId) async { + final rows = await db.query( + 'sales_order_items', + where: 'order_id = ?', + whereArgs: [orderId], + orderBy: 'sort_index ASC, rowid ASC', + ); + return rows.map(SalesOrderItem.fromMap).toList(); + } +} diff --git a/lib/services/sales_receipt_repository.dart b/lib/services/sales_receipt_repository.dart new file mode 100644 index 0000000..da80d5d --- /dev/null +++ b/lib/services/sales_receipt_repository.dart @@ -0,0 +1,81 @@ +import 'package:sqflite/sqflite.dart'; + +import '../models/sales_entry_models.dart'; +import 'database_helper.dart'; + +class SalesReceiptRepository { + SalesReceiptRepository(); + + final DatabaseHelper _dbHelper = DatabaseHelper(); + + Future upsertReceipt(SalesReceipt receipt, List links) async { + final db = await _dbHelper.database; + await db.transaction((txn) async { + await txn.insert('sales_receipts', receipt.toMap(), conflictAlgorithm: ConflictAlgorithm.replace); + await txn.delete('sales_receipt_links', where: 'receipt_id = ?', whereArgs: [receipt.id]); + for (final link in links) { + await txn.insert('sales_receipt_links', link.toMap(), conflictAlgorithm: ConflictAlgorithm.replace); + } + }); + } + + Future> fetchReceipts({DateTime? startDate, DateTime? endDate}) async { + final db = await _dbHelper.database; + final whereClauses = []; + final args = []; + if (startDate != null) { + whereClauses.add('payment_date >= ?'); + args.add(startDate.toIso8601String()); + } + if (endDate != null) { + whereClauses.add('payment_date <= ?'); + args.add(endDate.toIso8601String()); + } + final rows = await db.query( + 'sales_receipts', + where: whereClauses.isEmpty ? null : whereClauses.join(' AND '), + whereArgs: whereClauses.isEmpty ? null : args, + orderBy: 'payment_date DESC, updated_at DESC', + ); + return rows.map(SalesReceipt.fromMap).toList(); + } + + Future findById(String id) async { + final db = await _dbHelper.database; + final rows = await db.query('sales_receipts', where: 'id = ?', whereArgs: [id], limit: 1); + if (rows.isEmpty) return null; + return SalesReceipt.fromMap(rows.first); + } + + Future> fetchLinks(String receiptId) async { + final db = await _dbHelper.database; + final rows = await db.query('sales_receipt_links', where: 'receipt_id = ?', whereArgs: [receiptId]); + return rows.map(SalesReceiptLink.fromMap).toList(); + } + + Future deleteReceipt(String id) async { + final db = await _dbHelper.database; + await db.transaction((txn) async { + await txn.delete('sales_receipt_links', where: 'receipt_id = ?', whereArgs: [id]); + await txn.delete('sales_receipts', where: 'id = ?', whereArgs: [id]); + }); + } + + Future> fetchAllocatedTotals(Iterable entryIds) async { + final ids = entryIds.where((id) => id.isNotEmpty).toSet().toList(); + if (ids.isEmpty) return {}; + final db = await _dbHelper.database; + final placeholders = List.filled(ids.length, '?').join(','); + final rows = await db.rawQuery( + 'SELECT sales_entry_id, SUM(allocated_amount) AS total FROM sales_receipt_links WHERE sales_entry_id IN ($placeholders) GROUP BY sales_entry_id', + ids, + ); + final result = {}; + for (final row in rows) { + final entryId = row['sales_entry_id'] as String?; + if (entryId == null) continue; + result[entryId] = (row['total'] as num?)?.toInt() ?? 0; + } + return result; + } +} diff --git a/lib/services/sales_receipt_service.dart b/lib/services/sales_receipt_service.dart new file mode 100644 index 0000000..9d1c0c7 --- /dev/null +++ b/lib/services/sales_receipt_service.dart @@ -0,0 +1,135 @@ +import 'package:uuid/uuid.dart'; + +import '../models/sales_entry_models.dart'; +import 'sales_entry_repository.dart'; +import 'sales_receipt_repository.dart'; + +class SalesReceiptService { + SalesReceiptService({ + SalesReceiptRepository? receiptRepository, + SalesEntryRepository? entryRepository, + }) : _receiptRepository = receiptRepository ?? SalesReceiptRepository(), + _entryRepository = entryRepository ?? SalesEntryRepository(); + + final SalesReceiptRepository _receiptRepository; + final SalesEntryRepository _entryRepository; + final Uuid _uuid = const Uuid(); + + Future> fetchReceipts({DateTime? startDate, DateTime? endDate}) { + return _receiptRepository.fetchReceipts(startDate: startDate, endDate: endDate); + } + + Future> fetchAllocatedTotals(Iterable entryIds) { + return _receiptRepository.fetchAllocatedTotals(entryIds); + } + + Future> fetchLinks(String receiptId) { + return _receiptRepository.fetchLinks(receiptId); + } + + Future findById(String id) { + return _receiptRepository.findById(id); + } + + Future deleteReceipt(String id) { + return _receiptRepository.deleteReceipt(id); + } + + Future createReceipt({ + String? customerId, + required DateTime paymentDate, + required int amount, + String? method, + String? notes, + List allocations = const [], + }) async { + if (amount <= 0) { + throw ArgumentError('amount must be greater than 0'); + } + final receipt = SalesReceipt( + id: _uuid.v4(), + customerId: customerId, + paymentDate: paymentDate, + method: method, + amount: amount, + notes: notes, + createdAt: DateTime.now(), + updatedAt: DateTime.now(), + ); + return _saveReceipt(receipt: receipt, allocations: allocations); + } + + Future updateReceipt({ + required SalesReceipt receipt, + List allocations = const [], + }) { + final updated = receipt.copyWith(updatedAt: DateTime.now()); + return _saveReceipt(receipt: updated, allocations: allocations); + } + + Future _saveReceipt({ + required SalesReceipt receipt, + required List allocations, + }) async { + final entries = await _loadEntries(allocations.map((a) => a.salesEntryId)); + final allocatedTotals = await _receiptRepository.fetchAllocatedTotals(entries.keys); + + final links = []; + for (final allocation in allocations) { + final entry = entries[allocation.salesEntryId]; + if (entry == null) { + throw StateError('売上伝票が見つかりません: ${allocation.salesEntryId}'); + } + final currentAllocated = allocatedTotals[entry.id] ?? 0; + final outstanding = entry.amountTaxIncl - currentAllocated; + if (allocation.amount > outstanding) { + throw StateError('割当額が未収残を超えています: ${entry.id}'); + } + links.add( + SalesReceiptLink( + receiptId: receipt.id, + salesEntryId: entry.id, + allocatedAmount: allocation.amount, + ), + ); + allocatedTotals[entry.id] = currentAllocated + allocation.amount; + } + + final totalAllocated = links.fold(0, (sum, link) => sum + link.allocatedAmount); + if (totalAllocated > receipt.amount) { + throw StateError('割当総額が入金額を超えています'); + } + + await _receiptRepository.upsertReceipt(receipt, links); + await _updateEntryStatuses(entries.values, allocatedTotals); + return receipt; + } + + Future _updateEntryStatuses(Iterable entries, Map allocatedTotals) async { + for (final entry in entries) { + final allocated = allocatedTotals[entry.id] ?? 0; + SalesEntryStatus newStatus; + if (allocated >= entry.amountTaxIncl) { + newStatus = SalesEntryStatus.settled; + } else if (allocated > 0) { + newStatus = SalesEntryStatus.confirmed; + } else { + newStatus = entry.status; + } + if (newStatus != entry.status) { + await _entryRepository.upsertEntry(entry.copyWith(status: newStatus, updatedAt: DateTime.now())); + } + } + } + + Future> _loadEntries(Iterable entryIds) async { + final map = {}; + for (final id in entryIds) { + final entry = await _entryRepository.findById(id); + if (entry != null) { + map[id] = entry; + } + } + return map; + } +} diff --git a/lib/services/shipment_repository.dart b/lib/services/shipment_repository.dart new file mode 100644 index 0000000..798df18 --- /dev/null +++ b/lib/services/shipment_repository.dart @@ -0,0 +1,82 @@ +import 'package:sqflite/sqflite.dart'; + +import '../models/shipment_models.dart'; +import 'database_helper.dart'; + +class ShipmentRepository { + ShipmentRepository(); + + final DatabaseHelper _dbHelper = DatabaseHelper(); + + Future upsertShipment(Shipment shipment) async { + final db = await _dbHelper.database; + await db.transaction((txn) async { + await txn.insert('shipments', shipment.toMap(), conflictAlgorithm: ConflictAlgorithm.replace); + await txn.delete('shipment_items', where: 'shipment_id = ?', whereArgs: [shipment.id]); + for (final item in shipment.items) { + await txn.insert('shipment_items', item.toMap(), conflictAlgorithm: ConflictAlgorithm.replace); + } + }); + } + + Future> fetchShipments({ShipmentStatus? status, int? limit}) async { + final db = await _dbHelper.database; + final whereClauses = []; + final whereArgs = []; + if (status != null) { + whereClauses.add('status = ?'); + whereArgs.add(status.name); + } + final rows = await db.query( + 'shipments', + where: whereClauses.isNotEmpty ? whereClauses.join(' AND ') : null, + whereArgs: whereClauses.isNotEmpty ? whereArgs : null, + orderBy: 'scheduled_ship_date IS NULL, scheduled_ship_date ASC, updated_at DESC', + limit: limit, + ); + return Future.wait(rows.map((row) async { + final items = await _fetchItemsByShipmentId(db, row['id'] as String); + return Shipment.fromMap(row, items: items); + })); + } + + Future findById(String id) async { + final db = await _dbHelper.database; + final rows = await db.query('shipments', where: 'id = ?', whereArgs: [id], limit: 1); + if (rows.isEmpty) return null; + final items = await _fetchItemsByShipmentId(db, id); + return Shipment.fromMap(rows.first, items: items); + } + + Future deleteShipment(String id) async { + final db = await _dbHelper.database; + await db.transaction((txn) async { + await txn.delete('shipment_items', where: 'shipment_id = ?', whereArgs: [id]); + await txn.delete('shipments', where: 'id = ?', whereArgs: [id]); + }); + } + + Future updateStatus({required String shipmentId, required ShipmentStatus status, DateTime? actualShipDate}) async { + final db = await _dbHelper.database; + await db.update( + 'shipments', + { + 'status': status.name, + 'actual_ship_date': actualShipDate?.toIso8601String(), + 'updated_at': DateTime.now().toIso8601String(), + }, + where: 'id = ?', + whereArgs: [shipmentId], + ); + } + + Future> _fetchItemsByShipmentId(DatabaseExecutor db, String shipmentId) async { + final rows = await db.query( + 'shipment_items', + where: 'shipment_id = ?', + whereArgs: [shipmentId], + orderBy: 'rowid ASC', + ); + return rows.map(ShipmentItem.fromMap).toList(); + } +} diff --git a/lib/services/shipment_service.dart b/lib/services/shipment_service.dart new file mode 100644 index 0000000..d24966b --- /dev/null +++ b/lib/services/shipment_service.dart @@ -0,0 +1,183 @@ +import 'dart:async'; + +import 'package:uuid/uuid.dart'; + +import '../models/shipment_models.dart'; +import 'business_calendar_mapper.dart'; +import 'sales_order_repository.dart'; +import 'shipment_repository.dart'; + +class ShipmentLineInput { + const ShipmentLineInput({ + required this.description, + required this.quantity, + this.orderItemId, + }); + + final String description; + final int quantity; + final String? orderItemId; +} + +class ShipmentService { + ShipmentService({ + ShipmentRepository? shipmentRepository, + SalesOrderRepository? orderRepository, + BusinessCalendarMapper? calendarMapper, + }) : _shipmentRepository = shipmentRepository ?? ShipmentRepository(), + _orderRepository = orderRepository ?? SalesOrderRepository(), + _calendarMapper = calendarMapper ?? BusinessCalendarMapper(); + + final ShipmentRepository _shipmentRepository; + final SalesOrderRepository _orderRepository; + final BusinessCalendarMapper _calendarMapper; + final Uuid _uuid = const Uuid(); + + static const Map> _transitions = { + ShipmentStatus.pending: [ShipmentStatus.picking, ShipmentStatus.cancelled], + ShipmentStatus.picking: [ShipmentStatus.ready, ShipmentStatus.cancelled], + ShipmentStatus.ready: [ShipmentStatus.shipped, ShipmentStatus.cancelled], + ShipmentStatus.shipped: [ShipmentStatus.delivered], + ShipmentStatus.delivered: [], + ShipmentStatus.cancelled: [], + }; + + Future> fetchShipments({ShipmentStatus? status}) { + return _shipmentRepository.fetchShipments(status: status); + } + + Future createShipment({ + String? orderId, + String? orderNumberSnapshot, + String? customerNameSnapshot, + List lines = const [], + DateTime? scheduledShipDate, + DateTime? actualShipDate, + String? carrierName, + String? trackingNumber, + String? trackingUrl, + String? labelPdfPath, + String? notes, + }) async { + String? resolvedOrderId = orderId; + String? resolvedOrderNumber = orderNumberSnapshot; + String? resolvedCustomerName = customerNameSnapshot; + + if (resolvedOrderId != null && (resolvedOrderNumber == null || resolvedCustomerName == null)) { + final order = await _orderRepository.findById(resolvedOrderId); + if (order != null) { + resolvedOrderNumber = order.orderNumber ?? order.id.substring(0, 6); + resolvedCustomerName = order.customerNameSnapshot; + } + } + + resolvedCustomerName ??= '未設定'; + + final now = DateTime.now(); + final shipmentId = _uuid.v4(); + final shipment = Shipment( + id: shipmentId, + orderId: resolvedOrderId, + orderNumberSnapshot: resolvedOrderNumber, + customerNameSnapshot: resolvedCustomerName, + scheduledShipDate: scheduledShipDate, + actualShipDate: actualShipDate, + status: ShipmentStatus.pending, + carrierName: carrierName, + trackingNumber: trackingNumber, + trackingUrl: trackingUrl, + labelPdfPath: labelPdfPath, + notes: notes, + pickingCompletedAt: null, + createdAt: now, + updatedAt: now, + items: _buildItems(shipmentId, lines), + ); + await _shipmentRepository.upsertShipment(shipment); + unawaited(_calendarMapper.syncShipment(shipment)); + return shipment; + } + + Future updateShipment( + Shipment shipment, { + List? replacedLines, + DateTime? scheduledShipDate, + DateTime? actualShipDate, + String? carrierName, + String? trackingNumber, + String? trackingUrl, + String? labelPdfPath, + String? notes, + }) async { + final updated = shipment.copyWith( + scheduledShipDate: scheduledShipDate ?? shipment.scheduledShipDate, + actualShipDate: actualShipDate ?? shipment.actualShipDate, + carrierName: carrierName ?? shipment.carrierName, + trackingNumber: trackingNumber ?? shipment.trackingNumber, + trackingUrl: trackingUrl ?? shipment.trackingUrl, + labelPdfPath: labelPdfPath ?? shipment.labelPdfPath, + notes: notes ?? shipment.notes, + updatedAt: DateTime.now(), + items: replacedLines != null ? _buildItems(shipment.id, replacedLines) : shipment.items, + ); + await _shipmentRepository.upsertShipment(updated); + unawaited(_calendarMapper.syncShipment(updated)); + return updated; + } + + Future transitionStatus(String shipmentId, ShipmentStatus nextStatus, {bool force = false}) async { + final shipment = await _shipmentRepository.findById(shipmentId); + if (shipment == null) { + throw StateError('shipment not found: $shipmentId'); + } + if (!force && !_canTransition(shipment.status, nextStatus)) { + throw StateError('invalid transition ${shipment.status.name} -> ${nextStatus.name}'); + } + final now = DateTime.now(); + final updated = shipment.copyWith( + status: nextStatus, + updatedAt: now, + actualShipDate: nextStatus == ShipmentStatus.shipped || nextStatus == ShipmentStatus.delivered + ? (shipment.actualShipDate ?? now) + : shipment.actualShipDate, + pickingCompletedAt: nextStatus == ShipmentStatus.ready ? (shipment.pickingCompletedAt ?? now) : shipment.pickingCompletedAt, + ); + await _shipmentRepository.upsertShipment(updated); + unawaited(_calendarMapper.syncShipment(updated)); + return updated; + } + + Future advanceStatus(String shipmentId) async { + final shipment = await _shipmentRepository.findById(shipmentId); + if (shipment == null) { + throw StateError('shipment not found: $shipmentId'); + } + final candidates = _transitions[shipment.status]; + if (candidates == null || candidates.isEmpty) { + return shipment; + } + return transitionStatus(shipmentId, candidates.first); + } + + List nextStatuses(ShipmentStatus current) { + return List.unmodifiable(_transitions[current] ?? const []); + } + + bool _canTransition(ShipmentStatus current, ShipmentStatus next) { + final allowed = _transitions[current]; + return allowed?.contains(next) ?? false; + } + + List _buildItems(String shipmentId, List lines) { + return lines.asMap().entries.map((entry) { + final line = entry.value; + return ShipmentItem( + id: _uuid.v4(), + shipmentId: shipmentId, + orderItemId: line.orderItemId, + description: line.description, + quantity: line.quantity, + ); + }).toList(); + } +} diff --git a/lib/services/shipping_label_service.dart b/lib/services/shipping_label_service.dart new file mode 100644 index 0000000..ec69d14 --- /dev/null +++ b/lib/services/shipping_label_service.dart @@ -0,0 +1,101 @@ +import 'dart:io'; + +import 'package:flutter/foundation.dart'; +import 'package:flutter/services.dart' show rootBundle; +import 'package:intl/intl.dart'; +import 'package:path/path.dart' as p; +import 'package:path_provider/path_provider.dart'; +import 'package:pdf/pdf.dart'; +import 'package:pdf/widgets.dart' as pw; + +import '../models/shipment_models.dart'; +import 'company_repository.dart'; + +class ShippingLabelService { + ShippingLabelService({CompanyRepository? companyRepository}) + : _companyRepository = companyRepository ?? CompanyRepository(); + + final CompanyRepository _companyRepository; + + Future generateLabel(Shipment shipment) async { + try { + final company = await _companyRepository.getCompanyInfo(); + final fontData = await rootBundle.load('assets/fonts/ipaexg.ttf'); + final ipaex = pw.Font.ttf(fontData); + final dateFormat = DateFormat('yyyy/MM/dd'); + + final pdf = pw.Document(); + pdf.addPage( + pw.Page( + pageFormat: PdfPageFormat.a5, + margin: const pw.EdgeInsets.all(20), + build: (context) { + return pw.Column( + crossAxisAlignment: pw.CrossAxisAlignment.start, + children: [ + pw.Text('出荷ラベル', style: pw.TextStyle(fontSize: 20, fontWeight: pw.FontWeight.bold, font: ipaex)), + pw.SizedBox(height: 8), + pw.Text('発行日: ${dateFormat.format(DateTime.now())}', style: pw.TextStyle(font: ipaex)), + pw.Divider(), + pw.Text('差出人', style: pw.TextStyle(fontWeight: pw.FontWeight.bold, font: ipaex)), + pw.Text(company.name, style: pw.TextStyle(font: ipaex)), + if (company.address != null) pw.Text(company.address!, style: pw.TextStyle(font: ipaex)), + if (company.tel != null) pw.Text('TEL: ${company.tel}', style: pw.TextStyle(font: ipaex)), + pw.SizedBox(height: 12), + pw.Text('宛先', style: pw.TextStyle(fontWeight: pw.FontWeight.bold, font: ipaex)), + pw.Text(shipment.customerNameSnapshot ?? '取引先未設定', style: pw.TextStyle(fontSize: 16, font: ipaex)), + if (shipment.orderNumberSnapshot != null) + pw.Text('受注番号: ${shipment.orderNumberSnapshot}', style: pw.TextStyle(font: ipaex)), + pw.SizedBox(height: 12), + pw.Text('配送情報', style: pw.TextStyle(fontWeight: pw.FontWeight.bold, font: ipaex)), + pw.Text('配送業者: ${shipment.carrierName ?? '-'}', style: pw.TextStyle(font: ipaex)), + pw.Text('追跡番号: ${shipment.trackingNumber ?? '-'}', style: pw.TextStyle(font: ipaex)), + if (shipment.trackingUrl != null && shipment.trackingUrl!.isNotEmpty) + pw.Text('追跡URL: ${shipment.trackingUrl}', style: pw.TextStyle(font: ipaex)), + pw.SizedBox(height: 12), + pw.Text('出荷明細', style: pw.TextStyle(fontWeight: pw.FontWeight.bold, font: ipaex)), + pw.SizedBox(height: 6), + if (shipment.items.isEmpty) + pw.Text('明細登録なし', style: pw.TextStyle(font: ipaex)) + else + pw.TableHelper.fromTextArray( + headers: const ['品目', '数量'], + data: shipment.items + .map( + (item) => [ + item.description, + item.quantity.toString(), + ], + ) + .toList(), + headerStyle: pw.TextStyle(fontWeight: pw.FontWeight.bold, font: ipaex), + cellStyle: pw.TextStyle(font: ipaex), + columnWidths: const { + 0: pw.FlexColumnWidth(3), + 1: pw.FlexColumnWidth(1), + }, + ), + if (shipment.notes?.isNotEmpty == true) ...[ + pw.SizedBox(height: 12), + pw.Text('備考', style: pw.TextStyle(fontWeight: pw.FontWeight.bold, font: ipaex)), + pw.Text(shipment.notes!, style: pw.TextStyle(font: ipaex)), + ], + ], + ); + }, + ), + ); + + final directory = await getApplicationDocumentsDirectory(); + final timestamp = DateFormat('yyyyMMdd_HHmmss').format(DateTime.now()); + final orderFragment = shipment.orderNumberSnapshot ?? shipment.id.substring(0, 6); + final fileName = 'shipping_label_${orderFragment}_$timestamp.pdf'; + final file = File(p.join(directory.path, fileName)); + await file.writeAsBytes(await pdf.save()); + return file.path; + } catch (e) { + debugPrint('Shipping label generation failed: $e'); + return null; + } + } +} diff --git a/lib/services/staff_repository.dart b/lib/services/staff_repository.dart new file mode 100644 index 0000000..3e353e1 --- /dev/null +++ b/lib/services/staff_repository.dart @@ -0,0 +1,34 @@ +import 'package:sqflite/sqflite.dart'; + +import '../models/staff_model.dart'; +import 'database_helper.dart'; + +class StaffRepository { + StaffRepository(); + + final DatabaseHelper _dbHelper = DatabaseHelper(); + + Future> fetchStaff({bool includeInactive = true}) async { + final db = await _dbHelper.database; + final rows = await db.query( + 'staff_members', + where: includeInactive ? null : 'is_active = 1', + orderBy: 'name COLLATE NOCASE ASC', + ); + return rows.map(StaffMember.fromMap).toList(); + } + + Future saveStaff(StaffMember staff) async { + final db = await _dbHelper.database; + await db.insert( + 'staff_members', + staff.toMap(), + conflictAlgorithm: ConflictAlgorithm.replace, + ); + } + + Future deleteStaff(String staffId) async { + final db = await _dbHelper.database; + await db.delete('staff_members', where: 'id = ?', whereArgs: [staffId]); + } +} diff --git a/lib/services/supplier_repository.dart b/lib/services/supplier_repository.dart new file mode 100644 index 0000000..ffcffba --- /dev/null +++ b/lib/services/supplier_repository.dart @@ -0,0 +1,34 @@ +import 'package:sqflite/sqflite.dart'; + +import '../models/supplier_model.dart'; +import 'database_helper.dart'; + +class SupplierRepository { + SupplierRepository(); + + final DatabaseHelper _dbHelper = DatabaseHelper(); + + Future> fetchSuppliers({bool includeHidden = false}) async { + final db = await _dbHelper.database; + final rows = await db.query( + 'suppliers', + where: includeHidden ? null : 'is_hidden = 0', + orderBy: 'name COLLATE NOCASE ASC', + ); + return rows.map((row) => Supplier.fromMap(row)).toList(); + } + + Future saveSupplier(Supplier supplier) async { + final db = await _dbHelper.database; + await db.insert( + 'suppliers', + supplier.toMap(), + conflictAlgorithm: ConflictAlgorithm.replace, + ); + } + + Future deleteSupplier(String supplierId) async { + final db = await _dbHelper.database; + await db.delete('suppliers', where: 'id = ?', whereArgs: [supplierId]); + } +} diff --git a/lib/services/tax_setting_repository.dart b/lib/services/tax_setting_repository.dart new file mode 100644 index 0000000..ab32125 --- /dev/null +++ b/lib/services/tax_setting_repository.dart @@ -0,0 +1,27 @@ +import 'package:sqflite/sqflite.dart'; + +import '../models/tax_setting_model.dart'; +import 'database_helper.dart'; + +class TaxSettingRepository { + TaxSettingRepository(); + + final DatabaseHelper _dbHelper = DatabaseHelper(); + + Future fetchCurrentSetting() async { + final db = await _dbHelper.database; + final rows = await db.query('tax_settings', orderBy: 'updated_at DESC', limit: 1); + if (rows.isEmpty) { + final now = DateTime.now(); + final defaultSetting = TaxSetting(id: 'default', rate: 0.1, roundingMode: 'round', updatedAt: now); + await db.insert('tax_settings', defaultSetting.toMap()); + return defaultSetting; + } + return TaxSetting.fromMap(rows.first); + } + + Future saveSetting(TaxSetting setting) async { + final db = await _dbHelper.database; + await db.insert('tax_settings', setting.toMap(), conflictAlgorithm: ConflictAlgorithm.replace); + } +} diff --git a/lib/widgets/analytics/analytics_summary_card.dart b/lib/widgets/analytics/analytics_summary_card.dart new file mode 100644 index 0000000..f89434d --- /dev/null +++ b/lib/widgets/analytics/analytics_summary_card.dart @@ -0,0 +1,62 @@ +import 'package:flutter/material.dart'; + +class AnalyticsSummaryCard extends StatelessWidget { + const AnalyticsSummaryCard({ + super.key, + required this.title, + required this.value, + this.subtitle, + this.icon, + this.color, + }); + + final String title; + final String value; + final String? subtitle; + final IconData? icon; + final Color? color; + + @override + Widget build(BuildContext context) { + final theme = Theme.of(context); + final baseColor = color ?? theme.colorScheme.primary; + final bgColor = baseColor.withValues(alpha: 0.1); + final fgColor = baseColor; + + return Container( + width: double.infinity, + padding: const EdgeInsets.all(20), + decoration: BoxDecoration( + color: bgColor, + borderRadius: BorderRadius.circular(20), + ), + child: Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + if (icon != null) + Container( + width: 48, + height: 48, + decoration: BoxDecoration(color: fgColor, borderRadius: BorderRadius.circular(12)), + child: Icon(icon, color: Colors.white), + ), + if (icon != null) const SizedBox(width: 16), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text(title, style: theme.textTheme.labelLarge?.copyWith(color: fgColor)), + const SizedBox(height: 4), + Text(value, style: theme.textTheme.headlineMedium?.copyWith(fontWeight: FontWeight.bold, color: fgColor)), + if (subtitle != null) ...[ + const SizedBox(height: 6), + Text(subtitle!, style: theme.textTheme.bodySmall?.copyWith(color: fgColor.withValues(alpha: 0.8))), + ], + ], + ), + ), + ], + ), + ); + } +} diff --git a/lib/widgets/analytics/empty_state_card.dart b/lib/widgets/analytics/empty_state_card.dart new file mode 100644 index 0000000..180af3b --- /dev/null +++ b/lib/widgets/analytics/empty_state_card.dart @@ -0,0 +1,34 @@ +import 'package:flutter/material.dart'; + +class EmptyStateCard extends StatelessWidget { + const EmptyStateCard({super.key, required this.message, this.icon}); + + final String message; + final IconData? icon; + + @override + Widget build(BuildContext context) { + final theme = Theme.of(context); + return Container( + width: double.infinity, + padding: const EdgeInsets.symmetric(vertical: 32, horizontal: 24), + decoration: BoxDecoration( + color: theme.colorScheme.surface, + borderRadius: BorderRadius.circular(20), + border: Border.all(color: theme.dividerColor.withValues(alpha: 0.2)), + ), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Icon(icon ?? Icons.analytics_outlined, color: theme.colorScheme.onSurface.withValues(alpha: 0.4), size: 48), + const SizedBox(height: 12), + Text( + message, + textAlign: TextAlign.center, + style: theme.textTheme.bodyMedium?.copyWith(color: theme.colorScheme.onSurface.withValues(alpha: 0.7)), + ), + ], + ), + ); + } +} diff --git a/lib/widgets/invoice_form/invoice_form_variant.dart b/lib/widgets/invoice_form/invoice_form_variant.dart new file mode 100644 index 0000000..fe3be0f --- /dev/null +++ b/lib/widgets/invoice_form/invoice_form_variant.dart @@ -0,0 +1,35 @@ +import 'package:flutter/material.dart'; + +import '../../models/invoice_models.dart'; + +class InvoiceFormVariant { + const InvoiceFormVariant({ + required this.id, + required this.title, + required this.defaultDocumentType, + this.heroDescription, + this.heroIcon, + }); + + final String id; + final String title; + final DocumentType defaultDocumentType; + final String? heroDescription; + final IconData? heroIcon; + + static const InvoiceFormVariant billingDocs = InvoiceFormVariant( + id: 'billing_docs', + title: 'A1:伝票入力', + defaultDocumentType: DocumentType.invoice, + heroDescription: '既存のA1伝票(見積/納品/請求/領収)を作成できます', + heroIcon: Icons.receipt_long, + ); + + static const InvoiceFormVariant salesSlip = InvoiceFormVariant( + id: 'sales_slip', + title: '売上伝票入力', + defaultDocumentType: DocumentType.invoice, + heroDescription: '売上伝票として販売実績を登録します', + heroIcon: Icons.point_of_sale, + ); +} diff --git a/lib/widgets/keyboard_inset_wrapper.dart b/lib/widgets/keyboard_inset_wrapper.dart index 776f6a7..d05de7b 100644 --- a/lib/widgets/keyboard_inset_wrapper.dart +++ b/lib/widgets/keyboard_inset_wrapper.dart @@ -20,13 +20,18 @@ class KeyboardInsetWrapper extends StatelessWidget { @override Widget build(BuildContext context) { - final bottomInset = MediaQuery.of(context).viewInsets.bottom; - return SafeArea( - child: AnimatedPadding( - duration: duration, - curve: curve, - padding: basePadding.add(EdgeInsets.only(bottom: bottomInset + extraBottom)), - child: child, + final mediaQuery = MediaQuery.of(context); + final bottomInset = mediaQuery.viewInsets.bottom; + final padding = basePadding.add(EdgeInsets.only(bottom: bottomInset + extraBottom)); + return MediaQuery( + data: mediaQuery.removeViewInsets(removeBottom: true), + child: SafeArea( + child: AnimatedPadding( + duration: duration, + curve: curve, + padding: padding, + child: child, + ), ), ); } diff --git a/lib/widgets/line_item_editor.dart b/lib/widgets/line_item_editor.dart new file mode 100644 index 0000000..e09aa26 --- /dev/null +++ b/lib/widgets/line_item_editor.dart @@ -0,0 +1,147 @@ +import 'package:flutter/material.dart'; + +import '../models/product_model.dart'; + +/// 可変な明細行データを保持するフォームモデル。 +class LineItemFormData { + LineItemFormData({ + this.id, + this.productId, + String? productName, + int? quantity, + int? unitPrice, + this.taxRate, + int? costAmount, + bool? costIsProvisional, + }) : descriptionController = TextEditingController(text: productName ?? ''), + quantityController = TextEditingController(text: quantity?.toString() ?? ''), + unitPriceController = TextEditingController(text: unitPrice?.toString() ?? ''), + costAmount = costAmount ?? 0, + costIsProvisional = costIsProvisional ?? true; + + final String? id; + String? productId; + final TextEditingController descriptionController; + final TextEditingController quantityController; + final TextEditingController unitPriceController; + double? taxRate; + int costAmount; + bool costIsProvisional; + + bool get hasProduct => productId != null && productId!.isNotEmpty; + String get description => descriptionController.text; + int get quantityValue => int.tryParse(quantityController.text) ?? 0; + int get unitPriceValue => int.tryParse(unitPriceController.text) ?? 0; + + void applyProduct(Product product) { + productId = product.id; + descriptionController.text = product.name; + if (quantityController.text.trim().isEmpty || quantityController.text.trim() == '0') { + quantityController.text = '1'; + } + unitPriceController.text = product.defaultUnitPrice.toString(); + costAmount = product.wholesalePrice; + costIsProvisional = product.wholesalePrice <= 0; + } + + void registerChangeListener(VoidCallback listener) { + descriptionController.addListener(listener); + quantityController.addListener(listener); + unitPriceController.addListener(listener); + } + + void removeChangeListener(VoidCallback listener) { + descriptionController.removeListener(listener); + quantityController.removeListener(listener); + unitPriceController.removeListener(listener); + } + + void dispose() { + descriptionController.dispose(); + quantityController.dispose(); + unitPriceController.dispose(); + } +} + +/// 明細1行分を編集するカード。仕入/売上どちらの画面でも流用できるよう +/// 追加のメタ情報やフッターを挿入できるようにしている。 +class LineItemCard extends StatelessWidget { + const LineItemCard({ + super.key, + required this.data, + required this.onPickProduct, + required this.onRemove, + this.meta, + this.footer, + }); + + final LineItemFormData data; + final VoidCallback onPickProduct; + final VoidCallback onRemove; + final Widget? meta; + final Widget? footer; + + @override + Widget build(BuildContext context) { + final theme = Theme.of(context); + return Card( + margin: const EdgeInsets.symmetric(vertical: 8), + child: Padding( + padding: const EdgeInsets.all(12), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + ListTile( + contentPadding: EdgeInsets.zero, + title: Text( + data.descriptionController.text.isEmpty ? '商品を選択' : data.descriptionController.text, + style: theme.textTheme.titleMedium, + ), + subtitle: data.hasProduct + ? null + : const Text( + '商品マスタから選択してください', + style: TextStyle(color: Colors.redAccent), + ), + trailing: Row( + mainAxisSize: MainAxisSize.min, + children: [ + if (meta != null) meta!, + const Icon(Icons.chevron_right), + ], + ), + onTap: onPickProduct, + ), + const SizedBox(height: 4), + Row( + children: [ + Expanded( + child: TextField( + controller: data.quantityController, + keyboardType: TextInputType.number, + decoration: const InputDecoration(labelText: '数量'), + scrollPadding: const EdgeInsets.only(bottom: 160), + ), + ), + const SizedBox(width: 12), + Expanded( + child: TextField( + controller: data.unitPriceController, + keyboardType: TextInputType.number, + decoration: const InputDecoration(labelText: '単価(税抜)'), + scrollPadding: const EdgeInsets.only(bottom: 160), + ), + ), + IconButton(onPressed: onRemove, icon: const Icon(Icons.close)), + ], + ), + if (footer != null) ...[ + const SizedBox(height: 8), + footer!, + ], + ], + ), + ), + ); + } +} diff --git a/lib/widgets/screen_id_title.dart b/lib/widgets/screen_id_title.dart new file mode 100644 index 0000000..1349485 --- /dev/null +++ b/lib/widgets/screen_id_title.dart @@ -0,0 +1,45 @@ +import 'package:flutter/material.dart'; + +/// AppBar 用の画面ID表示ウィジェット。 +/// 必ず2桁の ScreenID と正式タイトルをセットで表示し、 +/// サポート時に下段へ `ScreenID: XX` を出す。 +class ScreenAppBarTitle extends StatelessWidget { + const ScreenAppBarTitle({ + super.key, + required this.screenId, + required this.title, + this.caption, + }); + + final String screenId; + final String title; + final String? caption; + + @override + Widget build(BuildContext context) { + final theme = Theme.of(context); + final primaryStyle = theme.appBarTheme.titleTextStyle ?? + theme.textTheme.titleMedium?.copyWith(color: Colors.white, fontWeight: FontWeight.w600); + final secondaryStyle = theme.textTheme.bodySmall?.copyWith(color: Colors.white70, fontSize: 11); + + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisSize: MainAxisSize.min, + children: [ + Text( + '$screenId:$title', + style: primaryStyle, + ), + Text( + 'ScreenID: $screenId', + style: secondaryStyle, + ), + if (caption != null) + Text( + caption!, + style: theme.textTheme.bodySmall?.copyWith(color: Colors.white70), + ), + ], + ); + } +} diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift index 6bde8d8..b26fa74 100644 --- a/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/macos/Flutter/GeneratedPluginRegistrant.swift @@ -7,6 +7,7 @@ import Foundation import file_selector_macos import geolocator_apple +import google_sign_in_ios import mobile_scanner import package_info_plus import printing @@ -18,6 +19,7 @@ import url_launcher_macos func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { FileSelectorPlugin.register(with: registry.registrar(forPlugin: "FileSelectorPlugin")) GeolocatorPlugin.register(with: registry.registrar(forPlugin: "GeolocatorPlugin")) + FLTGoogleSignInPlugin.register(with: registry.registrar(forPlugin: "FLTGoogleSignInPlugin")) MobileScannerPlugin.register(with: registry.registrar(forPlugin: "MobileScannerPlugin")) FPPPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FPPPackageInfoPlusPlugin")) PrintingPlugin.register(with: registry.registrar(forPlugin: "PrintingPlugin")) diff --git a/pubspec.lock b/pubspec.lock index 347a328..4bc392e 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -1,6 +1,14 @@ # Generated by pub # See https://dart.dev/tools/pub/glossary#lockfile packages: + _discoveryapis_commons: + dependency: transitive + description: + name: _discoveryapis_commons + sha256: "113c4100b90a5b70a983541782431b82168b3cae166ab130649c36eb3559d498" + url: "https://pub.dev" + source: hosted + version: "1.0.7" archive: dependency: transitive description: @@ -74,7 +82,7 @@ packages: source: hosted version: "1.0.0" collection: - dependency: transitive + dependency: "direct main" description: name: collection sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" @@ -296,6 +304,62 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.3" + google_identity_services_web: + dependency: transitive + description: + name: google_identity_services_web + sha256: "5d187c46dc59e02646e10fe82665fc3884a9b71bc1c90c2b8b749316d33ee454" + url: "https://pub.dev" + source: hosted + version: "0.3.3+1" + google_sign_in: + dependency: "direct main" + description: + name: google_sign_in + sha256: d0a2c3bcb06e607bb11e4daca48bd4b6120f0bbc4015ccebbe757d24ea60ed2a + url: "https://pub.dev" + source: hosted + version: "6.3.0" + google_sign_in_android: + dependency: transitive + description: + name: google_sign_in_android + sha256: d5e23c56a4b84b6427552f1cf3f98f716db3b1d1a647f16b96dbb5b93afa2805 + url: "https://pub.dev" + source: hosted + version: "6.2.1" + google_sign_in_ios: + dependency: transitive + description: + name: google_sign_in_ios + sha256: "102005f498ce18442e7158f6791033bbc15ad2dcc0afa4cf4752e2722a516c96" + url: "https://pub.dev" + source: hosted + version: "5.9.0" + google_sign_in_platform_interface: + dependency: transitive + description: + name: google_sign_in_platform_interface + sha256: "5f6f79cf139c197261adb6ac024577518ae48fdff8e53205c5373b5f6430a8aa" + url: "https://pub.dev" + source: hosted + version: "2.5.0" + google_sign_in_web: + dependency: transitive + description: + name: google_sign_in_web + sha256: "460547beb4962b7623ac0fb8122d6b8268c951cf0b646dd150d60498430e4ded" + url: "https://pub.dev" + source: hosted + version: "0.12.4+4" + googleapis: + dependency: "direct main" + description: + name: googleapis + sha256: "864f222aed3f2ff00b816c675edf00a39e2aaf373d728d8abec30b37bee1a81c" + url: "https://pub.dev" + source: hosted + version: "13.2.0" gsettings: dependency: transitive description: @@ -481,7 +545,7 @@ packages: source: hosted version: "0.13.0" meta: - dependency: transitive + dependency: "direct main" description: name: meta sha256: "23f08335362185a5ea2ad3a4e597f1375e78bce8a040df5c600c8d3552ef2394" diff --git a/pubspec.yaml b/pubspec.yaml index 78d10f4..42e0b7f 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -16,7 +16,7 @@ publish_to: "none" # Remove this line if you wish to publish to pub.dev # https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html # In Windows, build-name is used as the major, minor, and patch parts # of the product and file versions while build-number is used as the build suffix. -version: 1.5.09+154 +version: 1.5.10+155 environment: sdk: ^3.10.7 @@ -57,6 +57,10 @@ dependencies: http: ^1.2.2 shelf: ^1.4.1 shelf_router: ^1.1.4 + collection: ^1.18.0 + meta: ^1.17.0 + google_sign_in: ^6.2.1 + googleapis: ^13.2.0 dev_dependencies: flutter_test: @@ -80,9 +84,8 @@ flutter: uses-material-design: true # To add assets to your application, add an assets section, like this: - # assets: - # - images/a_dot_burr.jpeg - # - images/a_dot_ham.jpeg + assets: + - assets/icon/app_icon.png # An image asset can refer to one or more resolution-specific "variants", see # https://flutter.dev/to/resolution-aware-images