ATMメンテナンス
AIエージェントで構築
ATMメンテナンスマネージャーバックエンド

ATMメンテナンスマネージャーバックエンドテンプレート
カセット追跡、現金モニタリング、監査準備

生産準備の整ったATMメンテナンスバックエンドがBack4app上にあります:カセットログ、現金レベル、セキュリティ監査を含みます。ER図、データ辞書、JSONスキーマ、APIプレイグラウンド、迅速な設定のためのAIエージェントプロンプトも含まれています。

ATMオペレーションの主要なポイント

このテンプレートは、カセットログ、現金レベル、およびセキュリティ監査のためのATMメンテナンスバックエンドをチームに提供し、コーディネーターと現場スタッフが一つの真実の情報源から作業できるようにします。

  1. カセットログを一か所にすべてのCassetteLogエントリをATMとそのカセットスロットに対して追跡します。
  2. 現金レベルの可視性各ATMの紙幣の denomination とサービス訪問のためにCashLevelスナップショットを最新の状態に保ちます。
  3. セキュリティ監査のトレイルATMが開かれた、検査された、または封印されたときにSecurityAuditの結果を記録します。

概要: ATMメンテナンスマネージャー

ATMメンテナンスの保有物は決して静的ではありません:アイテムはビン、サイト、修理、隔離の間を移動し、各移動にはタイムスタンプ付きのストーリーが必要です。解決策は操作的であり、モチベーショナルではありません。ATM、CassetteLog、CashLevel、SecurityAuditがBack4appに基づいてクリーンにモデル化されているため、ATMメンテナンスの関係者は5つの異なるスプレッドシートをエクスポートすることなく、一貫した報告を受けることができます。このスキーマは、ATM(atmId、location、status)、CassetteLog(atm、cassetteSlot、cashAdded、cashRemoved、technician)、CashLevel(atm、denomination、countedAmount、expectedAmount)、およびSecurityAudit(atm、auditType、checklistStatus、findings、performedBy)をカバーし、認証とアクセスルールが組み込まれています。お好みのフロントエンドを接続し、サービス作業の追跡を迅速に開始してください。

最適:

ATMメンテナンステーム現金補充調整セキュリティ監査追跡フィールドサービス業務オペレーションダッシュボードATMワークフローにBaaSを選択するチーム

このATMメンテナンスバックエンドの構成

ATMメンテナンスにおいて、小さな不一致が蓄積します:誤ったステータスが誤った出荷、次に誤った請求書、そして失われた顧客になります。

利害関係者はここでATM、CassetteLog、およびCashLevelのカバレッジを確認できます:名前、関係、およびそれらが有効にするワークフロー。

コアATMメンテナンス機能

このハブのすべてのテクノロジーカードは、ATM、CassetteLog、CashLevel、および SecurityAudit を持つ同じ ATM バックエンドスキーマを使用しています。

ATM資産レジストリ

ATMクラスはatmId、場所、ステータス、branchCodeを保存します。

カセットログの追跡

CassetteLogクラスは、cassetteSlot、cashAdded、cashRemoved、およびtechnicianを記録します。

現金レベルのスナップショット

CashLevelクラスは、denomination、countedAmount、expectedAmount、およびvarianceを保存します。

セキュリティ監査チェック

SecurityAudit クラスは auditType、checklistStatus、findings、及び performedBy をキャプチャします。

なぜBack4appでATMメンテナンスマネージャーバックエンドを構築するのですか?

Back4appは、オペレーションチームにクリーンなATM、カセット、および監査データモデルを提供するため、インフラストラクチャの配線ではなくサービス作業に集中できます。

  • ATMとカセットの記録は一緒に結びついています。: ATMクラスとCassetteLogクラスは、サービスアクションを正しいマシンとカセットスロットにリンクさせます。
  • CashLevelおよびSecurityAuditのクエリはシンプルです: CashLevelのスナップショットとSecurityAuditのエントリを使用して、カッシュの不一致とチェックリストの結果をカスタムデータベースの配管なしにレビューします。
  • 現場作業のリアルタイム更新: Live Queriesは、サービスルート中にCassetteLogまたはSecurityAudit行が変更されたときにコーディネーターに通知できます。

モバイルとウェブの両方で、1つのバックエンド契約からATMメンテナンスワークフローを実行します。

ATM チームのための主要な利点

サービスデータと監査ノートを整理された状態で保つ ATM メンテナンスバックエンド。

より迅速なサービス調整

メンテナンススキーマをゼロから構築するのではなく、ATM および CassetteLog クラスから始めます。

よりクリーンな現金調整

CashLevel.countedAmount と CashLevel.expectedAmount を使用して、技術者が現場で見つけたものを比較します。

監査に優しい記録

すべてのサービスイベントに対して SecurityAudit.checklistStatus と SecurityAudit.findings を保存します。

ロール認識フィールドアクセス

コーディネーター、技術者、レビュー担当者が必要な ATM データのみにアクセスできるように、ACL と CLP を使用します。

クロスプラットフォームの機械可視性

モバイルツール、ディスパッチダッシュボード、または支店コンソールから ATM、CassetteLog、および CashLevel をクエリします。

AI支援の展開

バックエンドのスキャフォールドとサービスフローを1つのプロンプトで生成し、その後ルート操作に合わせて適応させます。

ATM メンテナンスアプリの準備はできていますか?

Back4app AIエージェントにATMメンテナンスバックエンドを構築させ、1つのプロンプトからカセットログ、現金レベルの追跡、セキュリティ監査を生成します。

無料で開始 — 月50のAIエージェントプロンプト、クレジットカード不要

技術スタック

このATMメンテナンスバックエンドテンプレートに含まれるすべて。

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

ATM操作のER図

ATMメンテナンスバックエンドスキーマのエンティティ関係モデル。

図のソースを表示
Mermaid
erDiagram
    User ||--o{ ATM : "assignedManager"
    User ||--o{ CassetteLog : "sealedBy"
    User ||--o{ CashLevel : "checkedBy"
    User ||--o{ SecurityAudit : "auditor"
    User ||--o{ MaintenanceTicket : "assignedTo"
    ATM ||--o{ CassetteLog : "atm"
    ATM ||--o{ CashLevel : "atm"
    ATM ||--o{ SecurityAudit : "atm"
    ATM ||--o{ MaintenanceTicket : "atm"

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

    ATM {
        String objectId PK
        String atmId
        String locationName
        String status
        String assignedManagerId FK
        Date createdAt
        Date updatedAt
    }

    CassetteLog {
        String objectId PK
        String atmId FK
        String cassetteNumber
        Number cashDenomination
        Number countBefore
        Number countAfter
        String sealedById FK
        Date loggedAt
        Date createdAt
        Date updatedAt
    }

    CashLevel {
        String objectId PK
        String atmId FK
        Number currentAmount
        Number fillThreshold
        Number forecastAmount
        String checkedById FK
        Date checkedAt
        Date createdAt
        Date updatedAt
    }

    SecurityAudit {
        String objectId PK
        String atmId FK
        String auditType
        String result
        String notes
        String auditorId FK
        Date auditedAt
        Date createdAt
        Date updatedAt
    }

    MaintenanceTicket {
        String objectId PK
        String atmId FK
        String ticketNumber
        String priority
        String issueSummary
        String assignedToId FK
        String resolutionStatus
        Date reportedAt
        Date createdAt
        Date updatedAt
    }

ATM統合フロー

ログイン、ATM検索、カセットロギング、現金レベルの更新、およびセキュリティ監査の典型的な実行フロー。

図のソースを表示
Mermaid
sequenceDiagram
  participant User
  participant App as ATM Maintenance Manager App
  participant Back4app as Back4app Cloud

  User->>App: Sign in to review ATM worklists
  App->>Back4app: POST /login
  Back4app-->>App: Session token

  User->>App: Load ATM roster
  App->>Back4app: GET /classes/ATM?include=assignedManager&order=locationName
  Back4app-->>App: ATM rows with status and assignedManager

  User->>App: Record cassette log and cash level
  App->>Back4app: POST /classes/CassetteLog
  App->>Back4app: POST /classes/CashLevel
  Back4app-->>App: New objectIds

  User->>App: Submit security audit
  App->>Back4app: POST /classes/SecurityAudit
  Back4app-->>App: Audit saved

  App->>Back4app: Subscribe to live updates for MaintenanceTicket
  Back4app-->>App: MaintenanceTicket changes

ATMメンテナンスのデータ辞書

ATMメンテナンススキーマ内の各クラスに対するフィールドレベルの完全なリファレンス。

フィールドタイプ説明必須
objectIdStringAuto-generated unique identifier自動
usernameStringUser login name
emailStringUser email address
passwordStringHashed password (write-only)
roleStringUser role such as manager, coordinator, or fieldTech
createdAtDateAuto-generated creation timestamp自動
updatedAtDateAuto-generated last-update timestamp自動

7 フィールドは User にあります

ATMデータのセキュリティと権限

ACLとCLP戦略がATM資産、カセットログ、現金レベル、および監査エントリをどのように保護するか。

ロールスコープのサービスアクセス

技術者は割り当てられたATMのカセットログエントリを作成でき、レビュアーはセキュリティ監査記録を検査できます。

現金レベルの整合性

認可されたユーザーのみがCashLevel値を変更でき、Cloud Codeは不一致のcountedAmountの更新を拒否できます。

監査トレイルの保護

セキュリティ監査記録はチェックリストの状態と所見を保持し、サービス履歴がシフト間で追跡可能に保たれます。

スキーマ (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": "ATM",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "atmId": {
          "type": "String",
          "required": true
        },
        "locationName": {
          "type": "String",
          "required": true
        },
        "status": {
          "type": "String",
          "required": true
        },
        "assignedManager": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "CassetteLog",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "atm": {
          "type": "Pointer",
          "required": true,
          "targetClass": "ATM"
        },
        "cassetteNumber": {
          "type": "String",
          "required": true
        },
        "cashDenomination": {
          "type": "Number",
          "required": true
        },
        "countBefore": {
          "type": "Number",
          "required": true
        },
        "countAfter": {
          "type": "Number",
          "required": true
        },
        "sealedBy": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "loggedAt": {
          "type": "Date",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "CashLevel",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "atm": {
          "type": "Pointer",
          "required": true,
          "targetClass": "ATM"
        },
        "currentAmount": {
          "type": "Number",
          "required": true
        },
        "fillThreshold": {
          "type": "Number",
          "required": true
        },
        "forecastAmount": {
          "type": "Number",
          "required": true
        },
        "checkedBy": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "checkedAt": {
          "type": "Date",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "SecurityAudit",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "atm": {
          "type": "Pointer",
          "required": true,
          "targetClass": "ATM"
        },
        "auditType": {
          "type": "String",
          "required": true
        },
        "result": {
          "type": "String",
          "required": true
        },
        "notes": {
          "type": "String",
          "required": true
        },
        "auditor": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "auditedAt": {
          "type": "Date",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "MaintenanceTicket",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "atm": {
          "type": "Pointer",
          "required": true,
          "targetClass": "ATM"
        },
        "ticketNumber": {
          "type": "String",
          "required": true
        },
        "priority": {
          "type": "String",
          "required": true
        },
        "issueSummary": {
          "type": "String",
          "required": true
        },
        "assignedTo": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "resolutionStatus": {
          "type": "String",
          "required": true
        },
        "reportedAt": {
          "type": "Date",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    }
  ]
}

AIエージェントで構築

Back4app AIエージェントを使用して、このテンプレートから実際のATMメンテナンスアプリを生成します。フロントエンド、バックエンド、認証、カセット、現金、および監査フローが含まれます。

Back4app AIエージェント
ビルドの準備ができました
Back4appでこの正確なスキーマと動作を持つATMメンテナンスマネージャーアプリのバックエンドを作成します。

スキーマ:
1. ユーザー(Back4appの組み込み使用): ユーザー名、メール、パスワード; objectId、createdAt、updatedAt(システム)。
2. ATM: atmId(文字列、必須)、場所(文字列、必須)、ステータス(文字列、必須)、branchCode(文字列、オプション); objectId、createdAt、updatedAt(システム)。
3. CassetteLog: atm(ATMへのポインター、必須)、cassetteSlot(文字列、必須)、cashAdded(数値、必須)、cashRemoved(数値、必須)、technician(ユーザーへのポインター、必須)、note(文字列、オプション); objectId、createdAt、updatedAt(システム)。
4. CashLevel: atm(ATMへのポインター、必須)、denomination(文字列、必須)、countedAmount(数値、必須)、expectedAmount(数値、必須)、variance(数値、必須); objectId、createdAt、updatedAt(システム)。
5. SecurityAudit: atm(ATMへのポインター、必須)、auditType(文字列、必須)、checklistStatus(文字列、必須)、findings(文字列、オプション)、performedBy(ユーザーへのポインター、必須); objectId、createdAt、updatedAt(システム)。

セキュリティ:
- 技術者は割り当てられたATMのCassetteLogエントリを作成します。認可されたユーザーのみがCashLevelデータを編集できます。Cloud Code検証を用いてSecurityAudit履歴を保持します。

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

動作:
- ATMをリストし、カセットログを作成し、現金レベルを更新し、セキュリティ監査を記録します。

配信:
- スキーマ、ACL、CLPを持つBack4appアプリ; ATMリスト、カセットログ、現金レベル、セキュリティ監査のためのフロントエンド。

以下のボタンを押して、このテンプレートプロンプトが事前入力されたエージェントを開きます。

これは技術的サフィックスのない基本プロンプトです。その後、生成されたフロントエンドスタックを適応できます。

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

ATMメンテナンス用APIプレイグラウンド

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

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

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

テクノロジーを選択

各カードを展開して、選択したスタックでATM、CassetteLog、CashLevelをどのように統合するかを確認してください。

Flutter ATMメンテナンスバックエンド

React ATMメンテナンスバックエンド

Reactネイティブ ATMメンテナンスバックエンド

Next.js ATMメンテナンスバックエンド

JavaScript ATMメンテナンスバックエンド

Android ATMメンテナンスバックエンド

iOS ATMメンテナンスバックエンド

Vue ATMメンテナンスバックエンド

Angular ATMメンテナンスバックエンド

GraphQL ATMメンテナンスバックエンド

REST API ATMメンテナンスバックエンド

PHP ATMメンテナンスバックエンド

.NET ATMメンテナンスバックエンド

すべての技術で得られるもの

すべてのスタックは同じATMメンテナンススキーマとAPI契約を使用します。

統一されたATM操作データ構造

ATM資産、カセットログ、現金レベル、およびセキュリティ監査を1つのスキーマで追跡します。

フィールドチーム向けのカセットログ追跡

サービス訪問中にcassetteSlotの変更、cashAdded、cashRemovedをキャプチャします。

オペレーションのための現金レベルの監視

マシンが完了としてマークされる前に、countedAmountとexpectedAmountを比較します。

コンプライアンスのためのセキュリティ監査ワークフロー

各検査のためにchecklistStatus、所見、およびperformedByを記録します。

REST/GraphQL APIs for dispatch tools

モバイルアプリ、コーディネーターダッシュボード、およびサービスポータルを同じバックエンドと統合します。

ATMメンテナンスフレームワークの比較

すべてのサポートされているテクノロジー間で、セットアップ速度、SDKスタイル、およびAIサポートを比較します。

フレームワークセットアップ時間ATMメンテナンスの利点SDKタイプAIサポート
約5分モバイルおよびウェブ用のATMメンテナンスのための単一コードベース。型付きSDKフル
5分未満ATM操作のための高速ウェブダッシュボード。型付きSDKフル
約3〜7分技術者向けのクロスプラットフォームモバイルアプリ。型付きSDKフル
迅速な(5分)セットアップATMチーム用のサーバーレンダリングされたディスパッチポータル。型付きSDKフル
約3~5分ATMメンテナンスのための軽量ブラウザ統合。Typed SDKフル
約5分ルート技術者のためのネイティブAndroidアプリ。Typed SDKフル
5分未満現金および監査チェックのためのネイティブiPhoneアプリ。Typed SDKフル
約3~7分サービスコーディネーターのためのReactウェブUI。型付けされたSDKフル
迅速な(5分)セットアップ保守業務のためのエンタープライズウェブアプリ。型付けされたSDKフル
2分未満ATM保守のための柔軟なGraphQL API。GraphQL APIフル
クイック(2分)セットアップREST API の ATM フィールドシステム統合。REST APIフル
~3 分メンテナンスツール用のサーバーサイド PHP 統合。REST APIフル
~3~7 分.NET バックエンドの ATM 操作。タイプ付き SDKフル

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

よくある質問

このテンプレートを使用してATMメンテナンスマネージャーのバックエンドを構築する際の一般的な質問。

ATMメンテナンス組織は、物理的に存在するがシステムにはない「見えない」在庫をどのように防ぐのですか?
ATMメンテナンスチームは、クエリを壊すことなくキット、バンドル、および代替品をどのように表現すべきですか?
モデルはスキャナーやERPフィードのようなATMメンテナンス統合に十分柔軟ですか?
Flutter でATMと現金レベルをクエリするにはどうすればよいですか?
Next.js で技術者のアクセスをどう扱いますか?
React ネイティブはオフラインでカセットログをキャッシュできますか?
無断の現金レベル編集をどう止めますか?
AndroidでATMリストを表示する最適な方法は何ですか?

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

Back4app テンプレートを使用して、ATM メンテナンス製品をより速く出荷するチームに参加しましょう。

G2 Users Love Us Badge

ATM メンテナンスマネージャーを構築する準備はできましたか?

数分でATMメンテナンスプロジェクトを開始します。クレジットカードは不要です。

テクノロジーを選択