Skip to content

Repository files navigation

ORCA API Web Client

これは、ORCA医療システムAPIから患者の診療情報を取得して表示するための、シンプルなWebアプリケーションです。 元々はPythonのTkinterで作られたデスクトップアプリでしたが、Webアプリとして移植され、Vercelでのデプロイにも対応しています。

ORCA API Web Client

✨ 主な機能

  • 患者情報と受診履歴の取得: 患者番号を入力すると、ORCAトライアルサーバから患者の基本情報と過去の受診履歴を取得して一覧表示します。
  • 診療内容明細の表示: 受診履歴の一覧から特定の診療日を選択すると、その日処方された薬剤などの詳細情報を表示します。

📂 ディレクトリ構成

.
├── vercel.json          # Vercel設定ファイル
├── requirements.txt     # Python依存関係
├── api/                 # Vercel Functions (バックエンド)
│   ├── medical-history.py   # 受診履歴取得API
│   ├── medical-details.py   # 診療内容明細取得API
│   └── orcam_logic.py       # ORCA APIとの通信ロジック (参考用)
├── backend/             # 従来のFastAPI (ローカル開発用)
│   ├── main.py              # APIサーバーのメインファイル
│   ├── orcam_logic.py       # ORCA APIとの通信ロジック
│   └── requirements.txt     # 必要なPythonライブラリ
└── frontend/            # フロントエンド (HTML/CSS/JS)
    ├── index.html           # メインのHTMLファイル
    ├── css/
    │   └── style.css        # スタイルシート
    └── js/
        ├── main.js          # 画面操作のロジック (Vercel用)
        └── main-local.js    # 画面操作のロジック (ローカル開発用)

🚀 デプロイ方法

Vercelデプロイ (推奨)

最も簡単な方法です。フロントエンドとバックエンドを一緒にデプロイできます。

  1. Vercel CLIのインストール

    npm install -g vercel
  2. Vercelにログイン

    vercel login
  3. デプロイ実行

    vercel
  4. 設定確認

    • Project name: お好みの名前
    • Deploy to production: Yes
    • Framework: Other (自動検出)

デプロイ後、提供されるURLでアプリケーションにアクセスできます。

💻 ローカル開発

方法1: Vercel CLI (推奨)

本番環境と同じ動作を確認できます。

# プロジェクトディレクトリで実行
vercel dev

→ http://localhost:3000 でアクセス

方法2: 従来のFastAPI方式

  1. バックエンド起動

    cd backend
    pip install -r requirements.txt
    python main.py
  2. フロントエンド用にJSファイル変更

    frontend/index.htmlの<script>タグを以下に変更:

    <script src="js/main-local.js"></script>

    その後、frontend/index.htmlをブラウザで開く

🛠️ 技術スタック

フロントエンド

  • HTML5, CSS3, Vanilla JavaScript
  • レスポンシブデザイン (1280x720最適化)

バックエンド

  • Vercel Functions: Vercel環境でのサーバーレス関数
  • FastAPI: ローカル開発用のPython Webフレームワーク
  • requests: HTTP通信ライブラリ
  • xml.etree.ElementTree: XML解析

デプロイ・開発環境

  • Vercel: 本番デプロイとローカル開発
  • Python 3.9+: バックエンド実行環境

📝 使い方

  1. アプリケーションにアクセス
  2. 患者番号「1」を入力(テスト用)
  3. 「受診履歴」ボタンをクリック
  4. 患者情報と受診履歴一覧が表示される
  5. 受診履歴の行をクリックして選択
  6. 「診療内容明細」ボタンをクリック
  7. 薬剤情報などの詳細が表示される

🔧 注意事項

  • このアプリは、ORCAプロジェクトが提供するトライアルサーバーに接続します
  • Vercel Functionsでは、各APIファイルが独立して動作します
  • CORS対応済みで、ブラウザから安全にAPIを呼び出せます
  • 開発時はvercel devの使用を推奨します

📋 変更履歴

  • v1.0: TkinterからWebアプリに移植
  • v1.1: Vercelデプロイ対応、Vercel Functions導入
  • v1.2: ローカル開発環境の改善、モジュール依存問題解決

About

ORCA からAPI経由で診療情報を表示します

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages