コンテナレンタル
AIエージェントで構築
コンテナレンタルアプリのバックエンド

コンテナレンタルアプリバックエンドテンプレート
ContainerCodeとヤードのドロップオフ管理

Back4app上の生産準備が整ったコンテナレンタルバックエンドで、containerCode、isoSize、状態レポート、ドロップオフ場所の管理が可能。ER図、データ辞書、JSONスキーマ、APIサンドボックス、および迅速なブートストラップのためのAIエージェントプロンプトを含みます。

コンテナレンタルの要点

このテンプレートには、containerCode、isoSize、状態報告、およびドロップオフ場所を備えたコンテナレンタルバックエンドが含まれており、デスクスタッフが手動での追跡を減らしながらユニットを見積もり、予約し、検査し、発送することができます。

  1. コードとサイズによるコンテナ在庫各コンテナをcontainerCode、isoSize、状態、およびステータスでモデル化し、スタッフが20GP、40GP、または40HCユニットを適切な予約にマッチさせることができるようにします。
  2. ユニットに関連付けられた状態報告コンテナにConditionReportエントリを添付し、ピックアップまたは返却前にreportDate、conditionNotes、およびphotosUrlをキャプチャします。
  3. ドロップオフ場所の管理予約記録をDropOffLocationに関連付けて、配送チームが各コンテナの送付先を把握できるようにします。
  4. ロールに応じた操作顧客の予約アクションとスタッフの更新を、予約および ConditionReport レコードで分離します。
  5. Web およびモバイル向けの 1 つのバックエンドデータモデルを重複させることなく、REST または GraphQL 経由でレンタルデスク、スタッフ、顧客にサービスを提供します。

概要: コンテナレンタルアプリ

コンテナレンタルにおける可用性は変動する対象です: メンテナンスウィンドウ、遅れている返却、および複数の資産を結びつけるバンドル。小さな遅延が急速に重なります。Back4app 上の Container、Booking、ConditionReport、および DropOffLocation を使用して、コンテナレンタルの可用性、価格フック、および実行記録を 1 つの一貫したバックエンドにエンコードします。このスキーマは、User(ユーザー名、メール、パスワード、ロール)、Container(コンテナコード、ISO サイズ、状態、ステータス、所有者)、Booking(予約番号、コンテナ、顧客、ドロップオフロケーション、ピックアップ日、返却日、配送状況)、ConditionReport(コンテナ、検査官、報告日、状態ノート、写真のURL)、および DropOffLocation(ロケーション名、住所1、都市、地域、国、緯度、経度、営業時間)をカバーし、認証、予約管理、およびレンタルワークフローを組み込んでいます。好みのフロントエンドを接続して、迅速に出荷してください。

最適:

コンテナレンタル操作ヤード予約システムデポドロップオフスケジューリングツール状態報告ワークフローMVPの立ち上げチームがレンタル製品にBaaSを選択する

このコンテナレンタルバックエンドの構成

コンテナレンタルチームは、日常業務が退屈になると勝利します:予測可能な記録、明らかな所有権、小さな問題がインシデントになる前のアラート。

コンテナ、予約、および状態報告をMVPスコープのチェックリストとして使用します:モデル化されていない場合、スプレッドシートの workaround になります。

コンテナレンタルアプリの機能

このハブ内のすべてのテクノロジーカードは、User、Container、ConditionReport、DropOffLocation、およびBookingを使用して、同じコンテナレンタルバックエンドスキーマを利用しています。

コンテナ在庫

コンテナクラスはcontainerCode、isoSize、condition、status、ownerを格納します。

予約ワークフロー

予約クラスは顧客、コンテナ、ドロップオフ場所、ピックアップ日、返却日、および配達状況をリンクします。

受取時および返却時の状態レポート

ConditionReportクラスはreportDate、conditionNotes、およびphotosUrlをキャプチャします。

ドロップオフ場所管理

DropOffLocationクラスはlocationName、addressLine1、city、region、country、geoLat、geoLng、およびopenHoursを保存します。

なぜBack4appでコンテナレンタルのバックエンドを構築するのか?

Back4appは、あなたのチームがサーバーのメンテナンスではなくレンタルに集中できるように、コンテナ、予約、検査、位置情報のプリミティブを提供します。

  • コンテナと予約レコードを一か所に: コンテナおよび予約クラスは、containerCode、isoSize、status、pickupDateを整列させます。
  • 資産に結びついたコンディションレポート: ConditionReportエントリは、実際のコンテナポインタに対してconditionNotes、photosUrl、reportDateをキャプチャします。
  • ライブ位置情報とステータス更新: Live Queriesを使用して予約の変更を行いながら、RESTとGraphQLをすべてのクライアントに対して利用可能に保ちます。

すべてのプラットフォームを横断する単一のバックエンド契約で、コンテナレンタルワークフローを迅速に構築および反復します。

コンテナレンタルアプリの利点

可用性、点検、および配達ポイントを整理するコンテナレンタルバックエンド。

利用可能なユニットのより迅速な見積もり

インベントリロジックを再構築するのではなく、Container containerCode、isoSize、およびstatusフィールドから始めます。

より安全な引き渡しと返品チェック

各ConditionReportをContainerに結び付けて、reportDateとconditionNotesがピックアップと返品の際にスタッフに見えるようにします。

明確な dispatch 計画

Booking dropOffLocation と pickupDate の詳細を使用して、各コンテナが行く必要のある場所を確認します。

スタッフと顧客のための役割ベースのアクセス

ACL/CLPを使用して、顧客が自分のBookingエントリを表示できるようにし、スタッフがContainerとConditionReportの更新を管理します。

問い合わせ可能なレンタル履歴

各予約、報告、およびドロップオフ場所をParseに保存し、デスクがスプレッドシートのマージなしでコンテナの経路を確認できるようにします。

AI支援のブートストラップワークフロー

構造化されたプロンプトを使用して、バックエンドの足場と統合ガイダンスを迅速に生成します。

コンテナレンタルアプリを開始する準備はできましたか?

Back4app AIエージェントにコンテナレンタルバックエンドの足場を作成させ、containerCode、isoSize、状態レポート、及びドロップオフ地点を1つのプロンプトから生成します。

無料で始められます — 月50件のAIエージェントプロンプト、クレジットカード不要

コンテナレンタル技術スタック

このコンテナレンタルバックエンドテンプレートに含まれているすべて。

フロントエンド
13+ テクノロジー
バックエンド
Back4app
データベース
MongoDB
認証
組み込みの認証 + セッション
API
REST と GraphQL
リアルタイム
Live Queries

コンテナ関係マップ

コンテナレンタルバックエンドスキーマのエンティティリレーションシップモデル。

ダイアグラムソースを表示
Mermaid
erDiagram
    User ||--o{ Container : "owner"
    User ||--o{ ConditionReport : "inspector"
    User ||--o{ Booking : "customer"
    Container ||--o{ ConditionReport : "inspected"
    Container ||--o{ Booking : "reserved"
    DropOffLocation ||--o{ Booking : "drop-off"

    User {
        String objectId PK
        String username
        String email
        String password
        String role
        Date createdAt
        Date updatedAt
    }

    Container {
        String objectId PK
        String containerCode
        String isoSize
        String condition
        String status
        String ownerId FK
        Date createdAt
        Date updatedAt
    }

    ConditionReport {
        String objectId PK
        String containerId FK
        String inspectorId FK
        Date reportDate
        String conditionNotes
        String photosUrl
        Date createdAt
        Date updatedAt
    }

    DropOffLocation {
        String objectId PK
        String locationName
        String addressLine1
        String city
        String region
        String country
        Number geoLat
        Number geoLng
        String openHours
        Date createdAt
        Date updatedAt
    }

    Booking {
        String objectId PK
        String bookingNumber
        String containerId FK
        String customerId FK
        String dropOffLocationId FK
        Date pickupDate
        Date returnDate
        String deliveryStatus
        Date createdAt
        Date updatedAt
    }

コンテナアプリのフロー

認証、コンテナのブラウジング、予約作成、状態報告、ドロップオフ場所の更新の典型的な実行フロー。

ダイアグラムソースを表示
Mermaid
sequenceDiagram
  participant User
  participant App as Shipping Container Rental App
  participant Back4app as Back4app Cloud

  User->>App: Sign in
  App->>Back4app: POST /login
  Back4app-->>App: Session token

  User->>App: Browse ISO sizes and container status
  App->>Back4app: GET /classes/Container?include=owner&order=-updatedAt
  Back4app-->>App: Container list

  User->>App: Review condition report
  App->>Back4app: GET /classes/ConditionReport?include=container,inspector
  Back4app-->>App: Inspection notes and photos URL

  User->>App: Schedule a drop-off booking
  App->>Back4app: POST /classes/Booking
  Back4app-->>App: Booking number and delivery status

  App->>Back4app: GET /classes/DropOffLocation?order=city
  Back4app-->>App: Drop-off locations

  opt Live updates for desk staff
    App->>Back4app: Subscribe to Booking and Container changes
    Back4app-->>App: Booking status changed
  end

フィールドガイド

コンテナレンタルスキーマ内のすべてのクラスに対する完全なフィールドレベルの参照。

フィールドタイプ説明必須
objectIdStringAuto-generated unique identifier自動
usernameStringUser login name
emailStringUser email address
passwordStringHashed password (write-only)
roleStringRole of the user (e.g., staff, owner, customer)
createdAtDateAuto-generated creation timestamp自動
updatedAtDateAuto-generated last-update timestamp自動

7フィールドをUserで

アクセスルールと権限

ACLおよびCLP戦略がユーザー、コンテナ、予約、状態レポート、ドロップオフ場所をどのように保護するか。

顧客の予約範囲

顧客は自分の予約エントリを作成および表示できますが、スタッフはコンテナおよびドロップオフ場所の記録を管理します。

検査の完全性

認可されたレンタルデスクスタッフのみがコンテナに関連する状態レポートエントリを作成または修正するべきです。

位置と資産の可視性

スコープ付き読み取りを使用して、関係のないレンタルを公開することなく、正しいチームがコンテナの空き状況、予約状況、及び返却指示を確認できるようにします。

JSONスキーマ

Back4appにコピーする準備ができた生のJSONスキーマ定義、または実装の参考として使用。

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
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "Container",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "containerCode": {
          "type": "String",
          "required": true
        },
        "isoSize": {
          "type": "String",
          "required": true
        },
        "condition": {
          "type": "String",
          "required": true
        },
        "status": {
          "type": "String",
          "required": true
        },
        "owner": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "ConditionReport",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "container": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Container"
        },
        "inspector": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "reportDate": {
          "type": "Date",
          "required": true
        },
        "conditionNotes": {
          "type": "String",
          "required": true
        },
        "photosUrl": {
          "type": "String",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "DropOffLocation",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "locationName": {
          "type": "String",
          "required": true
        },
        "addressLine1": {
          "type": "String",
          "required": true
        },
        "city": {
          "type": "String",
          "required": true
        },
        "region": {
          "type": "String",
          "required": true
        },
        "country": {
          "type": "String",
          "required": true
        },
        "geoLat": {
          "type": "Number",
          "required": false
        },
        "geoLng": {
          "type": "Number",
          "required": false
        },
        "openHours": {
          "type": "String",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "Booking",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "bookingNumber": {
          "type": "String",
          "required": true
        },
        "container": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Container"
        },
        "customer": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "dropOffLocation": {
          "type": "Pointer",
          "required": true,
          "targetClass": "DropOffLocation"
        },
        "pickupDate": {
          "type": "Date",
          "required": true
        },
        "returnDate": {
          "type": "Date",
          "required": false
        },
        "deliveryStatus": {
          "type": "String",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    }
  ]
}

AIエージェントで構築

Back4app AIエージェントを使用して、このテンプレートからリアルなコンテナレンタルアプリを生成します。フロントエンド、バックエンド、認証、コンテナ、予約、検査、および返却フローを含みます。

Back4app AIエージェント
ビルドの準備ができました
Back4app上にこの正確なスキーマと動作で安全なコンテナレンタルアプリのバックエンドを作成します。

スキーマ:
1. ユーザー(Back4appのビルトインを使用):ユーザー名、メール、パスワード、役割;objectId、createdAt、updatedAt(システム)。
2. コンテナ:containerCode(String、必須)、isoSize(String、必須)、condition(String、必須)、status(String、必須)、owner(ユーザーへのポインタ、必須);objectId、createdAt、updatedAt(システム)。
3. ConditionReport:container(コンテナへのポインタ、必須)、inspector(ユーザーへのポインタ、必須)、reportDate(Date、必須)、conditionNotes(String、必須)、photosUrl(String、任意);objectId、createdAt、updatedAt(システム)。
4. DropOffLocation:locationName(String、必須)、addressLine1(String、必須)、city(String、必須)、region(String、必須)、country(String、必須)、geoLat(Number、任意)、geoLng(Number、任意)、openHours(String、任意);objectId、createdAt、updatedAt(システム)。
5. Booking:bookingNumber(String、必須)、container(コンテナへのポインタ、必須)、customer(ユーザーへのポインタ、必須)、dropOffLocation(ドロップオフ位置へのポインタ、必須)、pickupDate(Date、必須)、returnDate(Date、任意)、deliveryStatus(String、必須);objectId、createdAt、updatedAt(システム)。

セキュリティ:
- スタッフはコンテナ、状態レポート、およびドロップオフ位置を作成および更新できます。
- オーナーは自身のコンテナと予約を表示できます。
- カスタマーは利用可能なコンテナの予約を作成し、自身のbookingNumbersおよびdeliveryStatusを表示できます。
- 状態レポートはスタッフと対応するコンテナのオーナーに表示されるべきです。

認証:
- サインアップ、ログイン、ログアウト。

動作:
- isoSizeおよびstatusでコンテナをリストします。
- 検査後に状態レポートを作成します。
- 選択されたドロップオフ位置に紐付けられた予約を作成します。
- 配送状況と位置の詳細をカスタマーに表示します。

提供:
- Back4appアプリとスキーマ、ACL、CLP;コンテナ在庫、状態レポート、予約管理、およびドロップオフ位置選択のためのフロントエンド。

下のボタンを押して、このテンプレートプロンプトが自動入力された状態でエージェントを開いてください。

これは技術の接尾辞なしでの基本プロンプトです。生成されたフロントエンドスタックは後で適応できます。

数分でデプロイ無料プロンプト50件/月クレジットカード不要

APIサンドボックス

RESTおよびGraphQLエンドポイントをコンテナレンタルスキーマに対して試してみてください。レスポンスはモックデータを使用し、Back4appアカウントは必要ありません。

プレイグラウンドを読み込んでいます…

このテンプレートと同じスキーマを使用しています。

テクノロジーを選択

各カードを展開して、選択したスタックにContainer、Booking、ConditionReportを統合する方法を確認してください。

Flutter コンテナレンタルバックエンド

React コンテナレンタルバックエンド

React ネイティブ コンテナレンタルバックエンド

Next.js コンテナレンタルバックエンド

JavaScript コンテナレンタルバックエンド

Android コンテナレンタルバックエンド

iOS コンテナレンタルバックエンド

Vue コンテナレンタルバックエンド

Angular コンテナレンタルバックエンド

GraphQL コンテナレンタルバックエンド

REST API コンテナレンタルバックエンド

PHP コンテナレンタルバックエンド

.NET コンテナレンタルバックエンド

すべてのテクノロジーで得られるもの

すべてのスタックは同じコンテナレンタルバックエンドスキーマとAPI契約を使用します。

統一された コンテナレンタル 在庫構造

一貫したスキーマでコンテナ、予約、状態レポートを追跡します。

コンテナレンタル のISOサイズログ

各コンテナをコード、サイズ、状態、ステータスで特定します。

コンテナレンタル の状態報告

ピックアップ前または返却後に検査ノートと写真を記録します。

コンテナレンタルでの返却場所の管理

各予約に関連付けられた配達サイトと返却指示を保持します。

コンテナレンタルフレームワークの比較

すべてのサポートされている技術にわたって、セットアップ速度、SDKスタイル、およびAIサポートを比較します。

フレームワークセットアップ時間コンテナレンタルの利点SDKタイプAIサポート
約5分モバイルおよびウェブ用のコンテナレンタルのための単一のコードベース。タイプ付きSDKフル
5分未満レンタルデスクスタッフのための高速ウェブダッシュボード。タイプ付きSDKフル
~3〜7分ヤードおよび配車チーム向けのクロスプラットフォームモバイルアプリ。Typed SDKフル
迅速なセットアップ(5分)予約および在庫確認のためのサーバーレンダリングウェブアプリ。Typed SDKフル
~3〜5分レンタル業務向けの軽量ウェブ統合。Typed SDKフル
約5分ネイティブ Android アプリでの庭の検査とドロップオフキャプチャ。入力されたSDKフル
5分未満ネイティブ iOS アプリでの現場スタッフと現地予約確認。入力されたSDKフル
約3〜7分React 的なウェブUIでコンテナの可用性とレポート。入力されたSDKフル
迅速な(5分)セットアップ複数のデポによるレンタルチーム向けのエンタープライズWebアプリ。入力されたSDKフル
2分未満ネストされたコンテナと予約ビューのための柔軟なGraphQL API。GraphQL APIフル
迅速な(2分)セットアップ配送および在庫画面用のREST API統合。REST APIフル
約3分レンタル業務のためのサーバーサイドPHPバックエンド。REST APIフル
~3~7分.NETの企業向けコンテナレンタルワークフロー。入力されたSDKフル

セットアップ時間は、プロジェクトのブートストラップから最初のコンテナまたは予約クエリをこのテンプレートスキーマを使用して行うまでの予想される期間を反映しています。

コンテナレンタルに関する質問

このテンプレートを使用してコンテナレンタルバックエンドを構築する際の一般的な質問。

コンテナレンタルの価格と保証金を、公平に保ちながらチェックアウトを遅くせずに、どのように維持できますか?
コンテナレンタルモデルの予約、競合、預金をどのように1つの一貫したグラフにするべきですか?
コンテナレンタルカタログの複雑さが季節ごとにどのように変化するか、移行はどのようになりますか?
Flutterを使用してコンテナと予約のクエリを実行するにはどうすればよいですか?
Next.js Server Actionsを使用してドロップオフ場所を管理するにはどうすればよいですか?
React Nativeはオフラインで予約および状態報告データをキャッシュできますか?
不正なコンテナ編集を防ぐにはどうすればよいですか?
Android でレンタル在庫を表示する最良の方法は何ですか?
状態レポートフローはどのように機能しますか?
このコンテナレンタルテンプレートを支えるクラスは何ですか?

世界中の開発者に信頼されています

Back4appテンプレートで、コンテナレンタル製品を迅速に出荷するチームに参加しましょう

G2 Users Love Us Badge

コンテナレンタルアプリを構築する準備はできていますか?

数分でコンテナレンタルプロジェクトを始めましょう。クレジットカードは不要です。

技術を選択