2.9 KiB
2.9 KiB
これは、情報メディアシステム局の物品管理システム「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を使ってやり取りを行う。