Skip to content

KTaisei/Order-Management-System

Repository files navigation

🎪 注文管理システム

ローカルネットワークで動作する、リアルタイム注文管理システムです。レジ端末とキッチン端末をシームレスに連携し、注文状況を即時に共有できます。

✅ 主な機能 • 🔄 リアルタイム同期:レジとキッチンが即時通信 • 🧑‍🍳 端末別UI:レジ用・キッチン用インターフェースをそれぞれ用意 • 📊 売上分析:日別売上、商品別統計、収益グラフ • 🌐 ネット不要:インターネットなしでローカル運用可能

🖥 使用端末

レジ端末 • 注文作成・管理 • 注文状況の確認 • 完了済み履歴表示 • 通信状況の表示

キッチン端末 • 新しい注文をリアルタイム表示 • 「調理開始」「完了」ステータス管理 • 注文が届いたら音で通知 • フィルター・並び替え対応

分析ダッシュボード • 日次売上のグラフ表示 • 商品別売上ランキング • 総売上・注文数の確認

🛠 技術構成 • フロントエンド:React + TypeScript + Vite • スタイリング:Tailwind CSS • アイコン:Lucide React • グラフ表示:Chart.js(React-Chartjs-2) • リアルタイム通信:Socket.IO • 状態管理:React Context • サーバー:Express + Socket.IO

🚀 導入手順(ローカル起動)

  1. リポジトリをクローン

git clone https://github.com/your-username/your-repo.git cd your-repo

  1. 依存パッケージをインストール

npm install

  1. サーバー(バックエンド)を起動

別ターミナルで以下を実行:

node server/index.js

  1. フロントエンドを起動

別のターミナルで以下を実行:

npm run dev

※ ローカルネットワーク内の他の端末から接続する場合、server/index.js 内の IP アドレスとポート(通常3001)を確認してアクセスしてください。

📌 注意点 • すべての端末は同じWi-Fi(ローカルネットワーク)に接続してください • データは localStorage に一時保存されるため、再読み込みでリセットされます • 印刷や外部APIとの連携は非対応です(シンプルな構成)

💬 問題が起きたときは

通信できない • サーバーが起動しているか確認 • IPアドレスとポートを再確認 • 端末が同じネットワークにあるか確認

注文が更新されない • ページを更新する • サーバーを再起動する

📝 メニューの改変

data/menu.tsのファイルを開く

(例) id: 'food_1', name: 'たこ焼き', rice: 140, category: 'food'

id ,name .rice ,category は自由に改変可能 idのみ、他の商品と被らないように注意すること

About

厨房と、レジとの間で、注文を管理、共有することができるアプリです

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published