Release Notes: v0.1.12

← バージョン一覧に戻る

v0.1.12 Release Notes

リリース日: 2025年11月26日

✨ 新機能

🚫 発送日制限による入力制御の強化

在庫反映ページ(/admin/catch-shipping/{id}/reflect)において、発送日が最終出庫日より前の場合の制御を強化しました。

入力フィールドの無効化

発送日が最終出庫日より前の組織は、反映数の入力フィールド自体が無効化されるようになりました。

変更前:

  • 反映ボタンのみ無効化
  • 入力フィールドには値を入力可能(混乱の原因)

変更後:

  • 反映ボタンに加え、入力フィールドも無効化
  • 入力値は自動的に0にリセット
  • ツールチップで「発送日が最終出庫日より前のため入力できません」と理由を表示

効果:

  • 反映できない組織に誤って値を入力してしまう混乱を防止
  • UIの一貫性が向上
  • ユーザーに明確なフィードバックを提供

🔧 改善

🔄 一括反映のフィルタリングロジックの簡素化

「全て反映」ボタンの処理ロジックをリファクタリングしました。

変更前:

  • 独自のバリデーションロジック(maxValue比較など)を実装
  • forEach内のreturn falseが機能しないバグ
  • DOM要素を複数回取得(パフォーマンス低下)
  • エラー表示の意味が不明確

変更後:

  • 反映ボタンの状態(disabled属性)でフィルタリング
  • 無効な組織は静かにスキップ
  • DOM要素は1回のみ取得
  • コードがシンプルで保守性が向上

効果:

  • 個別反映ボタンの状態制御と一貫性が保たれる
  • バリデーションロジックの重複が解消
  • パフォーマンスの向上
  • 潜在的なバグの解消

🔧 技術的改善

開発環境

Air(ホットリロードツール)の設定追加

Go アプリケーション開発用のホットリロードツール「Air」の設定ファイルを追加しました。

追加ファイル: .air.toml

設定内容:

  • ビルド設定(コマンド、監視対象など)
  • 監視対象の拡張子(.go, .gohtml
  • ログ出力設定

効果:

  • コード変更時に自動でビルド・再起動
  • 開発効率の大幅向上
  • テンプレートファイル変更時も自動リロード

📄 変更ファイル

フロントエンドテンプレート

  • web/templates/admin_catch_shipping_reflect.gohtml - 入力制御と一括反映ロジックの改善

設定ファイル

  • .air.toml - 開発用ホットリロード設定(新規)

ドキュメント

  • docs/release-notes/v0.1.12.md(このファイル)

🎯 対象ユーザー

  • システム管理者: より直感的な在庫反映操作が可能に
  • 入力担当者: 反映できない組織への誤入力を防止

🔗 関連プルリクエスト

  • #53 - 発送反映日制限と一括反映ロジックの改善

互換性: v0.1.11からの移行において、破壊的な変更はありません。既存の機能は全て動作します。