リクエスト詳細
💡 新機能の要望
対応完了
DeadStockAlert - 不動在庫・滞留在庫 早期発見&処分アクション管理システム
## 1. アプリの目的・ターゲットユーザー
倉庫に眠る「売れない・使われない在庫」を早期に発見し、値引き販売・他拠点転送・廃棄・返品などの具体的な処分アクションを管理するWebアプリ。在庫金額圧縮とキャッシュフロー改善を狙う中小製造業・卸売業・小売業の在庫担当者・経営者をターゲットとする。StockPilot(在庫管理全般)や inventory-replenishment(補充・融通)とは異なり、「滞留リスクのある在庫を見つけて処分する」プロセスに特化する。
---
## 2. 主要機能
- **滞留スコア自動算出**: 商品ごとに「在庫日数・在庫金額・直近3か月出荷ゼロ判定・保管コスト試算」の4指標を重み付け集計し、滞留リスクをA〜Dの4段階でスコアリングして一覧表示する。
- **アクション登録&進捗管理**: 滞留品に対して「値引き販売・他拠点転送・廃棄・返品・プロモーション投入・保留」の6種アクションを登録し、担当者・期日・完了ステータスをカンバン形式で管理する。
- **ロス金額シミュレーター**: 廃棄を選んだ場合の帳簿ロス金額、値引き販売を選んだ場合の回収額・粗利ロス・保管継続コストを比較する試算パネルを表示し、最適な処分方法を判断しやすくする。
- **月次滞留レポート**: 部門別・カテゴリ別の滞留在庫金額推移を棒グラフ・折れ線グラフで表示。前月比の増減と処分完了済み回収額もあわせて表示。CSV出力と印刷レイアウト対応。
- **入荷時リスク予警告**: 新規入荷登録時に過去の同品番の出荷実績を自動参照し「前回入荷分も滞留中」「過去6か月出荷ゼロ」などの警告バナーを表示して過剰発注を抑止する。
---
## 3. 画面構成
### ① ダッシュボード(トップ)
- 滞留品件数・滞留在庫金額合計・今月の処分完了件数・今月の回収金額をKPIカード4枚で表示
- 滞留リスクA品の商品名・在庫日数・在庫金額を赤帯の上位5件リストで表示
- 直近7日間の処分アクション完了ステータス速報(バーチャート)
### ② 滞留在庫一覧
- 商品コード・商品名・カテゴリ・倉庫・在庫数・在庫金額・入荷日・直近出荷日・在庫日数・スコア(A〜D)を表形式で表示
- フィルター:カテゴリ、倉庫、スコア、在庫日数(30日以上/60日以上/90日以上/180日以上)
- 行クリックで詳細パネルを展開。ロスシミュレーターをインライン表示
- 「アクション追加」ボタンで処分アクション登録フォームをモーダル表示
### ③ アクション管理(カンバン)
- ステータス列:「未着手」「進行中」「保留」「完了」の4列カンバン
- カードに商品名・アクション種別アイコン・担当者名・期日・在庫金額を表示
- カードをドラッグ&ドロップでステータス変更(JS実装)
- 完了時に回収金額・廃棄金額を入力して実績を確定
### ④ ロスシミュレーター(単品)
- 単価・在庫数・原価・保管コスト/日を入力
- 「今すぐ廃棄」「50%値引き販売(30日後)」「継続保管(90日後)」の3シナリオで損益を比較テーブル+水平棒グラフ表示
- 最小損失シナリオを緑バッジでハイライト
### ⑤ 商品・入荷登録
- 商品マスタ(商品コード・商品名・カテゴリ・倉庫・単価・原価・保管コスト/日)の登録・編集・削除
- 入荷実績の登録(入荷日・数量)。登録時に過去データと照合してリスク警告を表示
- 出荷実績の登録(出荷日・数量・出荷先)
### ⑥ 月次レポート
- 対象年月セレクター
- 部門別・カテゴリ別の滞留在庫金額推移グラフ(Chart.js)
- 処分アクション完了件数・回収金額・廃棄ロス金額の月次サマリー表
- CSV出力ボタン・印刷用レイアウト切替ボタン
---
## 4. データ構造(DBテーブル)
```sql
-- 商品マスタ
products(
id INT PK AUTO_INCREMENT,
code VARCHAR(50) UNIQUE,
name VARCHAR(200),
category VARCHAR(100),
warehouse VARCHAR(100),
unit_price DECIMAL(12,2),
cost_price DECIMAL(12,2),
storage_cost_per_day DECIMAL(10,2),
created_at DATETIME,
updated_at DATETIME
)
-- 入荷実績
stock_in(
id INT PK AUTO_INCREMENT,
product_id INT FK,
quantity INT,
received_date DATE,
note TEXT,
created_at DATETIME
)
-- 出荷実績
stock_out(
id INT PK AUTO_INCREMENT,
product_id INT FK,
quantity INT,
shipped_date DATE,
destination VARCHAR(200),
note TEXT,
created_at DATETIME
)
-- 現在庫スナップショット(日次集計キャッシュ)
inventory_snapshot(
id INT PK AUTO_INCREMENT,
product_id INT FK,
stock_quantity INT,
stock_amount DECIMAL(14,2),
oldest_stock_date DATE, -- 最古ロットの入荷日
stock_days INT, -- 在庫日数
last_shipped_date DATE,
stagnation_score CHAR(1), -- A/B/C/D
snapshot_date DATE,
created_at DATETIME
)
-- 処分アクション
disposal_actions(
id INT PK AUTO_INCREMENT,
product_id INT FK,
action_type ENUM('discount','transfer','disposal','return','promotion','hold'),
status ENUM('todo','in_progress','hold','done'),
assignee VARCHAR(100),
due_date DATE,
target_quantity INT,
estimated_recovery DECIMAL(12,2),
actual_recovery DECIMAL(12,2),
actual_loss DECIMAL(12,2),
note TEXT,
created_at DATETIME,
updated_at DATETIME
)
```
---
## 5. デザインの方向性
- **カラー**: ベースは白+グレー系。滞留リスクA(赤)・B(オレンジ)・C(黄)・D(緑)の4色でスコアを直感的に表現。処分完了は青バッジ。
- **フォント**: 日本語:Noto Sans JP、英数:Inter(Google Fonts CDN)
- **レイアウト**: 左サイドバーナビ(PC)、下タブナビ(スマホ)のレスポンシブ2レイアウト。
- **グラフ**: Chart.js(CDN)で棒グラフ・折れ線グラフ・水平棒グラフを実装。
- **トーン**: 経営数字を扱うツールらしく落ち着いたビジネス調。過剰なアニメーションは排除し、データ密度を重視した情報設計。
- **規模感**: 登録不要で即使い始められるシンプル構成。PHP(index.php, api/ ディレクトリにREST風エンドポイント)+ MySQL + Vanilla JS (Chart.js + Dragula.jsでカンバン) の1回で完成する構成。
倉庫に眠る「売れない・使われない在庫」を早期に発見し、値引き販売・他拠点転送・廃棄・返品などの具体的な処分アクションを管理するWebアプリ。在庫金額圧縮とキャッシュフロー改善を狙う中小製造業・卸売業・小売業の在庫担当者・経営者をターゲットとする。StockPilot(在庫管理全般)や inventory-replenishment(補充・融通)とは異なり、「滞留リスクのある在庫を見つけて処分する」プロセスに特化する。
---
## 2. 主要機能
- **滞留スコア自動算出**: 商品ごとに「在庫日数・在庫金額・直近3か月出荷ゼロ判定・保管コスト試算」の4指標を重み付け集計し、滞留リスクをA〜Dの4段階でスコアリングして一覧表示する。
- **アクション登録&進捗管理**: 滞留品に対して「値引き販売・他拠点転送・廃棄・返品・プロモーション投入・保留」の6種アクションを登録し、担当者・期日・完了ステータスをカンバン形式で管理する。
- **ロス金額シミュレーター**: 廃棄を選んだ場合の帳簿ロス金額、値引き販売を選んだ場合の回収額・粗利ロス・保管継続コストを比較する試算パネルを表示し、最適な処分方法を判断しやすくする。
- **月次滞留レポート**: 部門別・カテゴリ別の滞留在庫金額推移を棒グラフ・折れ線グラフで表示。前月比の増減と処分完了済み回収額もあわせて表示。CSV出力と印刷レイアウト対応。
- **入荷時リスク予警告**: 新規入荷登録時に過去の同品番の出荷実績を自動参照し「前回入荷分も滞留中」「過去6か月出荷ゼロ」などの警告バナーを表示して過剰発注を抑止する。
---
## 3. 画面構成
### ① ダッシュボード(トップ)
- 滞留品件数・滞留在庫金額合計・今月の処分完了件数・今月の回収金額をKPIカード4枚で表示
- 滞留リスクA品の商品名・在庫日数・在庫金額を赤帯の上位5件リストで表示
- 直近7日間の処分アクション完了ステータス速報(バーチャート)
### ② 滞留在庫一覧
- 商品コード・商品名・カテゴリ・倉庫・在庫数・在庫金額・入荷日・直近出荷日・在庫日数・スコア(A〜D)を表形式で表示
- フィルター:カテゴリ、倉庫、スコア、在庫日数(30日以上/60日以上/90日以上/180日以上)
- 行クリックで詳細パネルを展開。ロスシミュレーターをインライン表示
- 「アクション追加」ボタンで処分アクション登録フォームをモーダル表示
### ③ アクション管理(カンバン)
- ステータス列:「未着手」「進行中」「保留」「完了」の4列カンバン
- カードに商品名・アクション種別アイコン・担当者名・期日・在庫金額を表示
- カードをドラッグ&ドロップでステータス変更(JS実装)
- 完了時に回収金額・廃棄金額を入力して実績を確定
### ④ ロスシミュレーター(単品)
- 単価・在庫数・原価・保管コスト/日を入力
- 「今すぐ廃棄」「50%値引き販売(30日後)」「継続保管(90日後)」の3シナリオで損益を比較テーブル+水平棒グラフ表示
- 最小損失シナリオを緑バッジでハイライト
### ⑤ 商品・入荷登録
- 商品マスタ(商品コード・商品名・カテゴリ・倉庫・単価・原価・保管コスト/日)の登録・編集・削除
- 入荷実績の登録(入荷日・数量)。登録時に過去データと照合してリスク警告を表示
- 出荷実績の登録(出荷日・数量・出荷先)
### ⑥ 月次レポート
- 対象年月セレクター
- 部門別・カテゴリ別の滞留在庫金額推移グラフ(Chart.js)
- 処分アクション完了件数・回収金額・廃棄ロス金額の月次サマリー表
- CSV出力ボタン・印刷用レイアウト切替ボタン
---
## 4. データ構造(DBテーブル)
```sql
-- 商品マスタ
products(
id INT PK AUTO_INCREMENT,
code VARCHAR(50) UNIQUE,
name VARCHAR(200),
category VARCHAR(100),
warehouse VARCHAR(100),
unit_price DECIMAL(12,2),
cost_price DECIMAL(12,2),
storage_cost_per_day DECIMAL(10,2),
created_at DATETIME,
updated_at DATETIME
)
-- 入荷実績
stock_in(
id INT PK AUTO_INCREMENT,
product_id INT FK,
quantity INT,
received_date DATE,
note TEXT,
created_at DATETIME
)
-- 出荷実績
stock_out(
id INT PK AUTO_INCREMENT,
product_id INT FK,
quantity INT,
shipped_date DATE,
destination VARCHAR(200),
note TEXT,
created_at DATETIME
)
-- 現在庫スナップショット(日次集計キャッシュ)
inventory_snapshot(
id INT PK AUTO_INCREMENT,
product_id INT FK,
stock_quantity INT,
stock_amount DECIMAL(14,2),
oldest_stock_date DATE, -- 最古ロットの入荷日
stock_days INT, -- 在庫日数
last_shipped_date DATE,
stagnation_score CHAR(1), -- A/B/C/D
snapshot_date DATE,
created_at DATETIME
)
-- 処分アクション
disposal_actions(
id INT PK AUTO_INCREMENT,
product_id INT FK,
action_type ENUM('discount','transfer','disposal','return','promotion','hold'),
status ENUM('todo','in_progress','hold','done'),
assignee VARCHAR(100),
due_date DATE,
target_quantity INT,
estimated_recovery DECIMAL(12,2),
actual_recovery DECIMAL(12,2),
actual_loss DECIMAL(12,2),
note TEXT,
created_at DATETIME,
updated_at DATETIME
)
```
---
## 5. デザインの方向性
- **カラー**: ベースは白+グレー系。滞留リスクA(赤)・B(オレンジ)・C(黄)・D(緑)の4色でスコアを直感的に表現。処分完了は青バッジ。
- **フォント**: 日本語:Noto Sans JP、英数:Inter(Google Fonts CDN)
- **レイアウト**: 左サイドバーナビ(PC)、下タブナビ(スマホ)のレスポンシブ2レイアウト。
- **グラフ**: Chart.js(CDN)で棒グラフ・折れ線グラフ・水平棒グラフを実装。
- **トーン**: 経営数字を扱うツールらしく落ち着いたビジネス調。過剰なアニメーションは排除し、データ密度を重視した情報設計。
- **規模感**: 登録不要で即使い始められるシンプル構成。PHP(index.php, api/ ディレクトリにREST風エンドポイント)+ MySQL + Vanilla JS (Chart.js + Dragula.jsでカンバン) の1回で完成する構成。
💬 返信 (3)
🛠 開発を開始しました (新規アプリ)
ご要望ありがとうございます。AI 開発ワーカーが実装を開始します。
通常 5〜30 分で Pull Request を作成し、レビュー後にリリースされます。
ご要望ありがとうございます。AI 開発ワーカーが実装を開始します。
通常 5〜30 分で Pull Request を作成し、レビュー後にリリースされます。
📝 開発が完了しました
ご要望いただいた内容の実装が完了し、最終チェック段階に入りました。
レビュー (自動) → リリース、の流れで進みます。
もう少々お待ちください。
ご要望いただいた内容の実装が完了し、最終チェック段階に入りました。
レビュー (自動) → リリース、の流れで進みます。
もう少々お待ちください。
✅ リリース完了のお知らせ
ご要望いただいた「DeadStockAlert - 不動在庫・滞留在庫 早期発見&処分アクション管理システム」を実装し、リリースいたしました。
【ご利用方法】
ダッシュボード: https://www.aiapps.jp/?action=dashboard
アプリ詳細: https://www.aiapps.jp/apps/show.php?slug=deadstock-alert
デモ環境は 1 時間以内に自動構築されます:
https://www.aiapps.jp/demo/deadstock-alert/
ご利用ありがとうございます!
ご要望いただいた「DeadStockAlert - 不動在庫・滞留在庫 早期発見&処分アクション管理システム」を実装し、リリースいたしました。
【ご利用方法】
ダッシュボード: https://www.aiapps.jp/?action=dashboard
アプリ詳細: https://www.aiapps.jp/apps/show.php?slug=deadstock-alert
デモ環境は 1 時間以内に自動構築されます:
https://www.aiapps.jp/demo/deadstock-alert/
ご利用ありがとうございます!
Echo
Iris