安全預金アプリバックエンドテンプレート
レンタルデスク運営と金庫アクセス制御
プロダクション対応の安全預金アプリバックエンドが Back4app 上にあり、施設、安全預金ボックス、キー割当て、およびアクセスログデータが含まれています。ERダイアグラム、フィールドガイド、JSONスキーマ、APIサンドボックス、および迅速なセットアップためのAIエージェントプロンプトが含まれています。
重要なポイント
このテンプレートは、ファシリティ、安全預金ボックス、キーアサインメント、およびアクセスログデータを持つ安全預金アプリのバックエンドを提供しますので、スタッフがボックスの占有状況と金庫のアクセスを整理できます。
- 施設に関連付けられた在庫 — 各安全預金ボックスをファシリティに対してモデル化し、デスクが各ボックスの位置を把握できるようにします。
- キーアサインメントの保管 — どのユーザーがボックスのキーを持っているか、いつ発行されたか、いつ返却されたかを追跡します。
- アクセスログの監査証跡 — アクセスログに各エントリー、検査、または引き出しをタイムスタンプと検証者と共に記録します。
- デスクスタッフのコントロール — User.role、Facility.manager、およびKeyAssignment.issuedByを使用して、スタッフに関連付けられた引き継ぎを維持します。
- クロスプラットフォームバックエンド — ボックス、鍵、およびアクセスログのために、1つのRESTおよびGraphQL APIを介してWebおよびモバイルツールを提供します。
貸金庫アプリテンプレートとは?
貸金庫アプリでは、運用上の真実はスケジュールです — カレンダーが間違っていると、すべての下流の約束も間違ってしまいます。Back4appは、対顧客のフローと同期を保つ必要がある貸金庫アプリ製品のために、Facility、SafeDepositBox、KeyAssignment、およびAccessLogを強化します。このスキーマは、User(ユーザー名、メール、パスワード、役割、電話)、Facility(施設コード、名称、住所、セキュリティレベル、ステータス、マネージャー)、SafeDepositBox(ボックス番号、サイズ、ステータス、施設、現在のテナント、月額料金、アクセスポリシー)、KeyAssignment(ボックス、テナント、キータグ、発行日、返却日、ステータス、発行者)、およびAccessLog(ボックス、ユーザー、施設、アクセス種類、アクセス日時、ノート、確認者)をカバーし、認証および制御されたアクセスが組み込まれています。お気に入りのフロントエンドを接続して、より早く出荷しましょう。
最適:
安全預金アプリのバックエンド概要
季節的な変動は、スタッフが変わるときに安全預金アプリに最も影響し、データモデルは新しいSKU、サイト、またはポリシーに応じて柔軟に対応しません。
利害関係者はここで施設、安全預金箱、およびキー割り当てのカバレッジを確認できます: 名前、関係、そしてそれらが可能にするワークフロー。
安全預かりアプリのコア機能
このハブのすべてのテクノロジーカードは、ユーザー、施設、セーフデポジットボックス、キーアサインメント、およびアクセスログを使用して同じレンタルバックエンドスキーマを利用しています。
スタッフと顧客アカウント
ユーザーはスタッフ、オーナー、および顧客のためにユーザー名、メールアドレス、役割、および電話番号を保存します。
施設記録
施設はfacilityCode、名前、住所、securityLevel、ステータス、およびマネージャーを追跡します。
ボックスの在庫と状態
SafeDepositBoxはboxNumber、サイズ、状態、月額料金、アクセスポリシーを追跡します。
キー割り当てのワークフロー
KeyAssignmentはボックス、テナント、keyTag、issuedAt、returnedAt、およびissuedByにリンクしています。
アクセスログ履歴
AccessLogはボックス、ユーザー、施設、accessType、accessedAt、ノート、およびverifiedByを記録します。
なぜBack4appであなたの安全預かりアプリのバックエンドを構築するのか?
Back4appは、スタッフがバックエンドの配管ではなく、レンタルおよびセキュリティレビューに集中できるように、Facility、SafeDepositBox、KeyAssignment、およびAccessLogのプリミティブを提供します。
- •ボックスと鍵の保管記録: SafeDepositBoxクラスとKeyAssignmentクラスは、在庫、ステータス、引き渡しの詳細を結びつけて管理します。
- •施設のセキュリティと監査履歴: Facility.managerとAccessLogの記録により、支店のチェックや金庫への訪問が簡単にレビューできます。
- •リアルタイム + APIの柔軟性: 鍵の割り当ての変更にLive Queriesを使用しながら、デスクソフトウェアと顧客ポータルのためにRESTおよびGraphQLを利用可能にします。
すべてのプラットフォームで1つのバックエンド契約を通じて、レンタルデスクのワークフローを迅速に構築し、反復します。
セーフデポジットアプリの利点
アクセスの追跡を困難にすることなく、デスク操作を整然と保つレンタルバックエンド。
迅速なボックスオンボーディング
レンタルテーブルをゼロからスケッチする代わりに、完全なユーザー、施設、セーフデポジットボックス、およびキーアサインメントスキーマから開始します。
追跡可能なアクセス管理
各アクセスログエントリをキャプチャして、スタッフが誰がいつ金庫に入ったかをレビューできるようにします。
明確な保管記録
キーアサインメントフィールド(keyTag、issuedAt、returnedAtなど)を使用して、どの鍵が流通しているかを示します。
施設レベルのレビュー
支店のマネージャーがアクセスを開く前に準備状況を確認できるように、Facility.securityLevel と AccessLog ノートを保存します。
レンタルおよびアクセスデータ
API コントラクトを書き換えることなく、ボックスの状態、テナントの割り当て、および施設チェックを 1 つのスキーマに保持します。
AI ブートストラップ ワークフロー
1 つの構造化されたプロンプトでバックエンドのスキャフォールディングと統合ガイダンスを迅速に生成します。
安全預金アプリを起動する準備はできましたか?
Back4app AI エージェントにレンタルバックエンドのスキャフォールディングを作成させ、Facility、SafeDepositBox、KeyAssignment、および AccessLog のフローを 1 つのプロンプトから生成させましょう。
無料で開始 — 月50件のAIエージェントのプロンプト、クレジットカードは不要
安全な預金アプリ技術スタック
この安全な預金アプリのバックエンドテンプレートにはすべてが含まれています。
安全預金 ER モデル
安全預金アプリスキーマのためのエンティティリレーションシップモデル。
ユーザー、施設、安全預金ボックス、キー割り当て、およびアクセスログをカバーするスキーマ。
図のソースを表示
erDiagram
User ||--o{ Facility : "manager"
Facility ||--o{ SafeDepositBox : "houses"
User ||--o{ SafeDepositBox : "currentTenant"
SafeDepositBox ||--o{ KeyAssignment : "box"
User ||--o{ KeyAssignment : "tenant"
User ||--o{ KeyAssignment : "issuedBy"
SafeDepositBox ||--o{ AccessLog : "box"
User ||--o{ AccessLog : "user"
Facility ||--o{ AccessLog : "facility"
User ||--o{ AccessLog : "verifiedBy"
User {
String objectId PK
String username
String email
String password
String role
String phone
Date createdAt
Date updatedAt
}
Facility {
String objectId PK
String facilityCode
String name
String address
String securityLevel
String status
String managerId FK
Date createdAt
Date updatedAt
}
SafeDepositBox {
String objectId PK
String boxNumber
String size
String status
String facilityId FK
String currentTenantId FK
Number monthlyRate
String accessPolicy
Date createdAt
Date updatedAt
}
KeyAssignment {
String objectId PK
String boxId FK
String tenantId FK
String keyTag
Date issuedAt
Date returnedAt
String status
String issuedById FK
Date createdAt
Date updatedAt
}
AccessLog {
String objectId PK
String boxId FK
String userId FK
String facilityId FK
String accessType
Date accessedAt
String notes
String verifiedById FK
Date createdAt
Date updatedAt
}
デスク統合フロー
認証、ボックス検索、キー割り当て、アクセスログ記録、および施設レビューの典型的な実行フロー。
シーケンスソースを表示
sequenceDiagram
participant User
participant App as Safe Deposit Box Rental App
participant Back4app as Back4app Cloud
User->>App: Sign in to the rental desk or customer portal
App->>Back4app: POST /login
Back4app-->>App: Session token
User->>App: Open facility dashboard
App->>Back4app: GET /classes/Facility?include=manager
Back4app-->>App: Facility list with securityLevel and status
User->>App: Review available safe deposit boxes
App->>Back4app: GET /classes/SafeDepositBox?include=facility,currentTenant&order=boxNumber
Back4app-->>App: Boxes with size, monthlyRate, and accessPolicy
User->>App: Issue or return a key assignment
App->>Back4app: POST /classes/KeyAssignment
Back4app-->>App: KeyAssignment objectId and status
User->>App: Record a facility access visit
App->>Back4app: POST /classes/AccessLog
Back4app-->>App: AccessLog saved and ready for live updates安全な預金フィールドガイド
安全な預金アプリスキーマのすべてのクラスに対する完全なフィールドレベルのリファレンス。
| フィールド | タイプ | 説明 | 必須 |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | 自動 |
| username | String | Login name for staff, owners, or customers | |
| String | Email address used for account contact | ||
| password | String | Hashed password (write-only) | |
| role | String | Account role such as admin, deskStaff, owner, or customer | |
| phone | String | Contact number for access coordination | — |
| createdAt | Date | Auto-generated creation timestamp | 自動 |
| updatedAt | Date | Auto-generated last-update timestamp | 自動 |
8 フィールドは User にあります
セキュリティと権限
ACLとCLP戦略がどのようにユーザー、施設、安全預金ボックス、キー割り当て、アクセスログを保護するか。
スタッフアカウントの管理
権限のあるスタッフのみがユーザーロールを編集し、施設記録を更新できます。
ボックスとキーの保管整合性
レンタルデスクのスタッフのみがKeyAssignment記録を作成または閉じ、SafeDepositBoxのステータスを変更できます。
スコープアクセスの可視性
アクセスログの読み取りを、訪問を確認する必要のあるテナント、割り当てられたスタッフ、または支店管理者に制限します。
JSONスキーマ
Back4appにコピーする準備が整った生のJSONスキーマ定義、または実装の参考として使用します。
{
"classes": [
{
"className": "User",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"username": {
"type": "String",
"required": true
},
"email": {
"type": "String",
"required": true
},
"password": {
"type": "String",
"required": true
},
"role": {
"type": "String",
"required": true
},
"phone": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Facility",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"facilityCode": {
"type": "String",
"required": true
},
"name": {
"type": "String",
"required": true
},
"address": {
"type": "String",
"required": true
},
"securityLevel": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"manager": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "SafeDepositBox",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"boxNumber": {
"type": "String",
"required": true
},
"size": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"facility": {
"type": "Pointer",
"required": true,
"targetClass": "Facility"
},
"currentTenant": {
"type": "Pointer",
"required": false,
"targetClass": "User"
},
"monthlyRate": {
"type": "Number",
"required": true
},
"accessPolicy": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "KeyAssignment",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"box": {
"type": "Pointer",
"required": true,
"targetClass": "SafeDepositBox"
},
"tenant": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"keyTag": {
"type": "String",
"required": true
},
"issuedAt": {
"type": "Date",
"required": true
},
"returnedAt": {
"type": "Date",
"required": false
},
"status": {
"type": "String",
"required": true
},
"issuedBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "AccessLog",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"box": {
"type": "Pointer",
"required": true,
"targetClass": "SafeDepositBox"
},
"user": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"facility": {
"type": "Pointer",
"required": true,
"targetClass": "Facility"
},
"accessType": {
"type": "String",
"required": true
},
"accessedAt": {
"type": "Date",
"required": true
},
"notes": {
"type": "String",
"required": false
},
"verifiedBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
}
]
}AIエージェントと共に構築
このテンプレートを使用して、フロントエンド、バックエンド、認証、Facility、SafeDepositBox、KeyAssignment、およびAccessLogのフローを含む安全預け入れアプリをBack4app AIエージェントで生成します。
この正確なスキーマと動作でBack4appに安全預け入れアプリバックエンドを作成します。 スキーマ: 1. ユーザー(Back4appの組み込みを使用):ユーザー名、メール、パスワード、役割、電話; objectId, createdAt, updatedAt(システム)。 2. Facility: facilityCode, 名称、住所、セキュリティレベル、ステータス、マネージャー(ユーザーへのポインタ); objectId, createdAt, updatedAt。 3. SafeDepositBox: boxNumber, サイズ、ステータス、施設(施設へのポインタ)、現在のテナント(ユーザーへのポインタ、オプション)、月額料金、アクセスポリシー; objectId, createdAt, updatedAt。 4. KeyAssignment: box(SafeDepositBoxへのポインタ)、テナント(ユーザーへのポインタ)、keyTag、issuedAt、returnedAt(オプション)、ステータス、issuedBy(ユーザーへのポインタ); objectId, createdAt, updatedAt。 5. AccessLog: box(SafeDepositBoxへのポインタ)、ユーザー(ユーザーへのポインタ)、施設(施設へのポインタ)、アクセス方法、accessedAt、メモ(オプション)、verifiedBy(ユーザーへのポインタ); objectId, createdAt, updatedAt。 セキュリティ: - 認証されたスタッフのみがFacilityおよびSafeDepositBoxレコードを作成または更新できます。 - KeyAssignmentの作成には有効なボックスとテナントが必要です。 - AccessLogの作成はスタッフまたは検証されたワークフローに制限されるべきです。 - オーナーと顧客は自分のボックス、キーアサインメント、アクセスログを読むことができますが、他のテナントのプライベートなエントリは読むことができません。 認証: - サインアップ、ログイン、ログアウト。 動作: - 施設とボックスのリスト、キーの発行と返却、アクセス訪問の記録、および最近のアクセス活動の表示。
下のボタンを押して、このテンプレートプロンプトが事前に入力されたエージェントを開いてください。
これはテクノロジーサフィックスのない基本プロンプトです。生成されたフロントエンドスタックを後で調整できます。
APIサンドボックス
安全な預金アプリのスキーマに対してRESTおよびGraphQLエンドポイントを試してください。レスポンスはモックデータを使用し、Back4appアカウントは不要です。
このテンプレートと同じスキーマを使用しています。
技術を選択
各カードを展開して、選択したスタックで施設、セーフデポジットボックス、キーアサインメントを統合する方法を確認してください。
Flutter セーフデポジットアプリバックエンド
React セーフデポジットアプリバックエンド
React ネイティブ セーフデポジットアプリバックエンド
Next.js セーフデポジットアプリバックエンド
JavaScript セーフデポジットアプリバックエンド
Android セーフデポジットアプリバックエンド
iOS セーフデポジットアプリバックエンド
Vue セーフデポジットアプリバックエンド
Angular セーフデポジットアプリバックエンド
GraphQL セーフデポジットアプリバックエンド
REST API セーフデポジットアプリバックエンド
PHP セーフデポジットアプリバックエンド
.NET セーフデポジットアプリバックエンド
各テクノロジーで得られるもの
すべてのスタックは、同じセーフデポジットアプリスキーマとAPI契約を使用します。
統一されたレンタルデータ構造
ユーザー、施設、ボックス、キーの割り当て、アクセスログを1つのスキーマで管理します。
制御されたキー引き渡しフロー
発行されたキーと返却されたキーを各ボックスの明確な割り当て記録で追跡します。
監査対応のアクセスログ
タイムスタンプ、確認済みのスタッフ、訪問ノートを含む入場イベントを保存します。
支店レビューサポート
キーが発行される前に各サイトのセキュリティレベルと施設状況を記録します。
REST/GraphQL APIsによるレンタル操作
デスクツールと顧客アプリを柔軟なエンドポイントで統合します。
施設用の拡張可能なアーキテクチャ
アラート、メンテナンスチェック、または顧客通知をコアモデルを壊すことなく追加します。
セーフデポジットアプリ技術比較
すべてのサポートされた技術にわたって、設定速度、SDKスタイル、AIサポートを比較します。
| フレームワーク | セットアップ時間 | レンタル特典 | SDKタイプ | AIサポート |
|---|---|---|---|---|
| 約5分 | モバイルおよびウェブ向けのレンタルデスクアプリの単一コードベース。 | 型付けされたSDK | フル | |
| 5分未満 | ボックス割り当てとアクセスログのための高速ウェブダッシュボード。 | 型付けされたSDK | フル | |
| 約3〜7分 | 鍵の引き渡し用のクロスプラットフォームモバイルアプリ。 | 型付けされたSDK | フル | |
| 迅速な(5分)セットアップ | 支店業務のためのサーバーでレンダリングされたスタッフポータル。 | タイプされたSDK | フル | |
| 約3〜5分 | レンタルデスクツールのための軽量なウェブ統合。 | タイプされたSDK | フル | |
| 約5分 | ボックスおよびキーのワークフロー用のネイティブAndroidアプリ。 | タイプされたSDK | フル | |
| 5分未満 | 支店スタッフおよびスーパーバイザー向けのネイティブ iOS アプリ。 | タイプされたSDK | フル | |
| ~3〜7分 | レンタルデスク操作のための React のウェブUI。 | タイプ化されたSDK | フル | |
| 迅速な(5分)セットアップ | 施設管理者向けのエンタープライズウェブアプリ。 | タイプ化されたSDK | フル | |
| 2分未満 | レンタルおよびアクセスデータのための柔軟な GraphQL API。 | GraphQL API | フル | |
| クイック(2分)セットアップ | REST API デスクおよび監査ツールの統合。 | REST API | フル | |
| 約3分 | ブランチ業務のためのサーバーサイド PHP バックエンド。 | REST API | フル | |
| 約3~7分 | 安全なレンタルワークフローのための .NET バックエンド。 | タイプ付きSDK | フル |
セットアップ時間は、このテンプレートスキーマを使用したプロジェクトのブートストラップから最初のSafeDepositBoxまたはKeyAssignmentクエリまでの予想所要時間を反映しています。
貸金庫に関する質問
このテンプレートを使用して貸金庫アプリのバックエンドを構築する際の一般的な質問。