hyperdashi-server/CLAUDE.md
2025-07-05 11:50:50 +09:00

61 lines
2.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

これは、情報メディアシステム局の物品管理システム「dashi」の発展版・汎用版であるところの「hyperdashi」のバックエンドである。
dashiはhttps://dashi.sohosai.comから使うことができる。
dashiではグラフデータベースと検索エンジンを利用していたが、運用の煩雑さと見合わないことから、RDBに置き換えることを目標としている。
以下にhyperdashiの要件を述べる。
物品情報の登録
機材の物品情報を登録する。
物品名
ラベルID
これがQRコード/バーコードによって物品に貼り付けられ、このラベルIDを参照することとなる
Alphanumeric使わない文字の制限あり、IとOは1と0に見間違えるので使わない
型番
備考
長さや古さ、傷があるなどを書く
購入年度
購入金額
耐久年数
減価償却対象かどうか
高い物品を買ったときに考える。過去に買ったものに関しては減価償却対象ではない
接続名(端子の名前を書く)
可変長配列らしい
ケーブル識別色のパターン
ケーブルに貼ってある色を端子側から順番に追加する。
白に注意!白は良く見えない
収納場所
複数選べる。なぜなら、部屋AのラックXのコンテナαに収納されているような場合に「部屋A」「ラックX」「コンテナα」と3つ書ければ検索性が良いと言えるから。
貸出中か否か
QRかバーコードかラベル未貼付か
登録日時
これは自動で割当たる
更新日時
これも自動で割当たる
廃棄/譲渡済み
削除とは別。削除はミスった時用で、廃棄時はこのフラグを立てる
画像
URLの予定。登録時はファイルが直接上がってくるので、それをオブジェクトストレージにアップロードした結果のURLか、ローカルにフォールバックされた結果のバックエンドのURLが入ることになる。
部分的な更新も可能、このAPIも必要
Excel風のUIから登録・編集を行う予定
貸出管理のテーブル
貸出物品のID
誰に貸出中か
学籍番号と名前
どこに貸出中か
String、団体名などが入る予定
貸出日時
返却日時
備考
貸出し情報も登録・更新返却時するためのAPIが必要
画像はS3系のオブジェクトストレージにアップロードすることを予定しているが、envの設定によってローカルにフォールバックできると嬉しい。
RDBも然り。プロダクションではPostgreSQLの予定だが、ローカルのsqliteにフォールバックできると嬉しい開発時に
サーバはRustで記述し、AxumとSQLxで実装する。
クライアントとの間ではREST APIを使ってやり取りを行う。