私立探偵事件ログバックエンドテンプレート
ケースファイル、証拠アイテム、請求
生産準備が整った私立探偵事件ログバックエンドがBack4appにあり、ケースファイル、証拠アイテム、監視ノート、請求エントリのクラスを備えています。ケース履歴を追跡し、証拠タグを保持し、請求を同じファイルに結び付けます。
重要なケースログの要点
このテンプレートは、スタッフが整理された年代記のファイルを維持できるように、CaseFile、EvidenceItem、SurveillanceNote、およびBillingEntryレコードを含む私立探偵のケースログバックエンドを提供します。
- ケースごとの証拠追跡 — 各アイテムのために、evidenceTag、evidenceType、storageUrl、およびisSealedフィールドを持つEvidenceItemモデル。
- 監視ノートの年代記 — SurveillanceNoteのエントリをnoteTime、場所、要約、詳細とともにCaseFileに結び付けておきます。
- クライアントの請求記録 — BillingEntryを使用して、各CaseFileごとに時間、レート、金額、作業タイプ、承認者をキャプチャします。
- ロールに基づくアクセス — ACLおよびCLPルールを使用してCaseFile、EvidenceItem、およびBillingEntryのアクセスを制限します。
- ウェブおよびモバイルAPIのパリティ — 同じRESTおよびGraphQLエンドポイントを通じてReact、Flutter、Next.js、およびネイティブアプリを提供します。
プライベートインベスティゲーターケースログテンプレートとは?
プライベートインベスティゲーターのケースログの取り込みが混沌としていると、すべての下流に悪影響を及ぼします — 前門でのクリーンなキャプチャは、後での再構成に何時間も節約します。明確さはヒロイックな行動に勝ります。このテンプレートはBack4appでのロールベースのアクセスを持つCaseFile、EvidenceItem、SurveillanceNote、およびBillingEntryをモデル化しており、すべてのプライベートインベスティゲーターケースログのチームメンバーが自分の持っているパイプラインの部分を見ることができます。
最適:
私立探偵ケースログテンプレートで得られるもの
私立探偵ケースログでは、最も厄介な会話は「どの番号が公式ですか?」で始まります。これは、バックエンドがまだ権威を持っていないことを示しています。
ここにあるすべてのテクノロジーカードは、同じ CaseFile、EvidenceItem、SurveillanceNote モデルにマッピングされています。バックエンド契約を再交渉することなく、スタックを選択してください。
PIケースログの主要機能
このハブ内のすべてのテクノロジーカードは、User、CaseFile、EvidenceItem、SurveillanceNote、およびBillingEntryを使用して、同じケースログバックエンドスキーマを使用しています。
ケースファイル管理
CaseFileはcaseNumber、clientName、status、assignedInvestigator、及びbillingRateを保存します。
証拠記録
EvidenceItemはCaseFileにリンクし、evidenceTag、evidenceType、storageUrl、isSealedをキャプチャします。
監視ノート
SurveillanceNoteは、各監視期間のnoteTime、location、summary、detail、およびfollowUpNeededを保存します。
クライアント請求エントリ
BillingEntryは、entryDate、hours、rate、amount、workType、およびapprovedByをキャプチャします。
なぜBack4appでPIケースログを構築するのか?
Back4appは、ケースファイル、証拠、メモ、請求エントリを整理するためのデータクラスとアクセス制御を提供し、チームが現場作業に集中できるようにします。
- •CaseFileとEvidenceItemはリンクしたままです。: 各EvidenceItemをCaseFileに関連付けることで、写真、領収書、証拠の連鎖の詳細が適切な調査に添付されたままになります。
- •SurveillanceNoteのタイムラインは読みやすくなります。: SurveillanceNoteのnoteTimeフィールドにより、監視ログは自由形式の推測ではなく、観察時間でソート可能になります。
- •BillingEntryは調査記録と一致します。: BillingEntryで時間、レート、金額、および作業タイプをキャプチャして、フィールド時間とクライアントの請求を接続します。
ケースログを一度構築し、その後はウェブ、モバイル、調査者ダッシュボードで同じバックエンド契約を再利用します。
PIケースログの利点
最初のエントリから捜査ノートと請求を整理するケースログバックエンド。
クリーンな証拠トレイル
EvidenceItem レコードは、各アイテムの evidenceTag、evidenceType、storageUrl、および collectedAt を保存します。
読みやすい監視履歴
サーベイランスノートのエントリは、ケースファイルに関連付けられており、場所、要約、詳細を含む時間順のフィールドレコードを提供します。
事件に従った請求
BillingEntry は、作業が行われた同じケースファイルに接続された時間、レート、金額、および作業タイプを保持します。
機密ファイルのアクセス制御
ACL と CLP を使用して、割り当てられた調査員だけがケースファイルを編集したり、EvidenceItem 行を追加できるようにします。
デバイス間でのケースログへのアクセス
REST と GraphQL APIs により、Web ダッシュボード、モバイルフィールドアプリ、およびバックオフィスの請求ツールが同じケースファイルデータを読み取ることができます。
高速スキーマ再利用
ケースレコードをフィールドごとに構築するのではなく、ユーザー、ケースファイル、証拠アイテム、監視ノート、および請求エントリから始めます。
プライベート探偵のケースログを開始する準備はできましたか?
Back4app AIエージェントにあなたのケースログのバックエンドをスカフォールドさせ、ケースファイル、証拠アイテム、監視ノート、および請求エントリのフローを一つのプロンプトから生成します。
開始は無料 — 月50件のAIエージェントプロンプト、クレジットカード不要
ケースログテクノロジースタック
このプライベート・インベスティゲーター・ケースログバックエンドテンプレートに含まれているすべて。
ケース ER ダイアグラム
プライベート・インベスティゲーターのケースログバックエンドスキーマのエンティティリレーションシップモデル。
ユーザー、ケースファイル、証拠アイテム、監視メモ、請求エントリをカバーするスキーマ。
図のソースを表示
erDiagram
User ||--o{ CaseFile : "assignedInvestigator"
User ||--o{ EvidenceItem : "collectedBy"
User ||--o{ SurveillanceNote : "observer"
User ||--o{ BillingEntry : "approvedBy"
CaseFile ||--o{ EvidenceItem : "caseFile"
CaseFile ||--o{ SurveillanceNote : "caseFile"
CaseFile ||--o{ BillingEntry : "caseFile"
User {
String objectId PK
String username
String email
String password
String role
Date createdAt
Date updatedAt
}
CaseFile {
String objectId PK
String caseNumber
String clientName
String status
String assignedInvestigatorId FK
Number billingRate
Date openedAt
Date closedAt
Date createdAt
Date updatedAt
}
EvidenceItem {
String objectId PK
String caseFileId FK
String evidenceTag
String evidenceType
String storageUrl
String collectedById FK
Date collectedAt
String locationLabel
Boolean isSealed
Date createdAt
Date updatedAt
}
SurveillanceNote {
String objectId PK
String caseFileId FK
Date noteTime
String observerId FK
String location
String summary
String detail
Boolean followUpNeeded
Date createdAt
Date updatedAt
}
BillingEntry {
String objectId PK
String caseFileId FK
Date entryDate
Number hours
Number rate
Number amount
String workType
String approvedById FK
Date createdAt
Date updatedAt
}
ケース同期フロー
サインイン、ケースファイルの読み込み、証拠アイテムのアップロード、監視メモの作成、請求エントリのレビューのための典型的な実行フロー。
図のソースを表示
sequenceDiagram
participant User
participant App as Private Investigator Case Log App
participant Back4app as Back4app Cloud
User->>App: Sign in to the case log
App->>Back4app: POST /login
Back4app-->>App: Session token
User->>App: Open today's CaseFile list
App->>Back4app: GET /classes/CaseFile?order=-openedAt
Back4app-->>App: CaseFile rows
User->>App: Add an EvidenceItem or SurveillanceNote
App->>Back4app: POST /classes/EvidenceItem or /classes/SurveillanceNote
Back4app-->>App: Saved objectId and timestamps
User->>App: Review BillingEntry totals for a CaseFile
App->>Back4app: GET /classes/BillingEntry?include=caseFile
Back4app-->>App: BillingEntry list
App->>Back4app: Live update case activity
Back4app-->>App: CaseFile, EvidenceItem, SurveillanceNote changesフィールド辞書
プライベート検査官のケースログスキーマ内の各クラスに対する完全なフィールドレベルのリファレンス。
| フィールド | タイプ | 説明 | 必須 |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | 自動 |
| username | String | User login name | |
| String | User email address | ||
| password | String | Hashed password (write-only) | |
| role | String | Staff role such as investigator, admin, or billing | |
| createdAt | Date | Auto-generated creation timestamp | 自動 |
| updatedAt | Date | Auto-generated last-update timestamp | 自動 |
7 フィールドを User に
ケースのセキュリティと権限
ACL と CLP ストラテジーがユーザー、ケースファイル、証拠アイテム、ノート、請求エントリをどのように保護するか。
割り当てられた調査員の制御
割り当てられたユーザーまたはケースオーナーのみが、ケースファイルを更新したり、証拠を追加したり、請求の詳細を修正したりできます。
証拠の整合性チェック
Cloud Code 検証を使用して、EvidenceItem 行が CaseFile ポインタ、storageUrl、および collectedBy トレイルを必要とするようにします。
スコープ付き読み取りアクセス
ファイルに取り組んでいるスタッフにケースノートと請求エントリへのアクセスを制限します。機密性の高いエントリは広く公開されるべきではありません。
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
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "CaseFile",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"caseNumber": {
"type": "String",
"required": true
},
"clientName": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"assignedInvestigator": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"billingRate": {
"type": "Number",
"required": true
},
"openedAt": {
"type": "Date",
"required": true
},
"closedAt": {
"type": "Date",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "EvidenceItem",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"caseFile": {
"type": "Pointer",
"required": true,
"targetClass": "CaseFile"
},
"evidenceTag": {
"type": "String",
"required": true
},
"evidenceType": {
"type": "String",
"required": true
},
"storageUrl": {
"type": "String",
"required": true
},
"collectedBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"collectedAt": {
"type": "Date",
"required": true
},
"locationLabel": {
"type": "String",
"required": false
},
"isSealed": {
"type": "Boolean",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "SurveillanceNote",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"caseFile": {
"type": "Pointer",
"required": true,
"targetClass": "CaseFile"
},
"noteTime": {
"type": "Date",
"required": true
},
"observer": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"location": {
"type": "String",
"required": true
},
"summary": {
"type": "String",
"required": true
},
"detail": {
"type": "String",
"required": true
},
"followUpNeeded": {
"type": "Boolean",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "BillingEntry",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"caseFile": {
"type": "Pointer",
"required": true,
"targetClass": "CaseFile"
},
"entryDate": {
"type": "Date",
"required": true
},
"hours": {
"type": "Number",
"required": true
},
"rate": {
"type": "Number",
"required": true
},
"amount": {
"type": "Number",
"required": true
},
"workType": {
"type": "String",
"required": true
},
"approvedBy": {
"type": "Pointer",
"required": false,
"targetClass": "User"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
}
]
}AIエージェントを使用してビルド
Back4app AIエージェントを使用して、このテンプレートから、フロントエンド、バックエンド、認証、そしてCaseFile、EvidenceItem、SurveillanceNote、BillingEntryフローを含む実際のプライベートインベスティゲーターケースログアプリを生成します。
Back4appでこの正確なスキーマと動作を持つ私立探偵のケースログアプリバックエンドを作成します。 スキーマ: 1. ユーザー(Back4appの組み込みを使用):ユーザー名、メール、パスワード、役割;objectId、createdAt、updatedAt(システム)。 2. ケースファイル:caseNumber(文字列、必須)、clientName(文字列、必須)、status(文字列、必須)、assignedInvestigator(ユーザーへのポインタ、必須)、billingRate(数値、必須)、openedAt(日時、必須)、closedAt(日時、オプション);objectId、createdAt、updatedAt(システム)。 3. 証拠アイテム:caseFile(ケースファイルへのポインタ、必須)、evidenceTag(文字列、必須)、evidenceType(文字列、必須)、storageUrl(文字列、必須)、collectedBy(ユーザーへのポインタ、必須)、collectedAt(日時、必須)、locationLabel(文字列、オプション)、isSealed(ブール値、必須);objectId、createdAt、updatedAt(システム)。 4. 監視ノート:caseFile(ケースファイルへのポインタ、必須)、noteTime(日時、必須)、observer(ユーザーへのポインタ、必須)、location(文字列、必須)、summary(文字列、必須)、detail(文字列、必須)、followUpNeeded(ブール値、必須);objectId、createdAt、updatedAt(システム)。 5. 請求エントリ:caseFile(ケースファイルへのポインタ、必須)、entryDate(日時、必須)、hours(数値、必須)、rate(数値、必須)、amount(数値、必須)、workType(文字列、必須)、approvedBy(ユーザーへのポインタ、オプション);objectId、createdAt、updatedAt(システム)。 セキュリティ: - ケースファイルの可視性を割り当てられた調査員と請求スタッフに制限します。 - 証拠アイテム記録は、ケースアクセスを持つスタッフのみが書き込み可能です。 - 監視ノートエントリは年chronological historyを保持しなければなりません。 - 請求エントリの合計は、請求承認を受けたスタッフによって編集できます。 認証: - サインアップ、ログイン、ログアウト。 動作: - 開いているケースファイルのリストを表示し、証拠エントリを作成し、監視ノートを追加し、請求エントリを計算し、ケースの活動のライブアップデートを表示します。 配信: - スキーマ、ACL、CLPを備えたBack4appアプリ;ケース管理、証拠のログ、監視ノート、クライアントの請求のためのフロントエンド。
下のボタンを押して、このテンプレートプロンプトが事前入力されたエージェントを開いてください。
これはテクノロジーサフィックスのない基本プロンプトです。生成されたフロントエンドスタックは後で適応できます。
APIサンドボックス
GraphQLエンドポイントに対して私立探偵のケースログスキーマを試す。レスポンスはモックデータを使用し、Back4appアカウントは不要です。
このテンプレートと同じスキーマを使用しています。
テクノロジーを選択
各カードを展開して、選択したスタックにCaseFile、EvidenceItem、およびSurveillanceNoteを統合する方法を確認してください。
Flutter プライベートインベスティゲーター ケースログバックエンド
React プライベートインベスティゲーター ケースログバックエンド
React ネイティブ プライベートインベスティゲーター ケースログバックエンド
Next.js プライベートインベスティゲーター ケースログバックエンド
JavaScript プライベートインベスティゲーター ケースログバックエンド
Android プライベートインベスティゲーター ケースログバックエンド
iOS プライベートインベスティゲーター ケースログバックエンド
Vue プライベートインベスティゲーター ケースログバックエンド
Angular プライベートインベスティゲーター ケースログバックエンド
GraphQL プライベートインベスティゲーター ケースログバックエンド
REST API プライベートインベスティゲーター ケースログバックエンド
PHP プライベートインベスティゲーター ケースログバックエンド
.NET プライベートインベスティゲーター ケースログバックエンド
すべてのテクノロジーで得られるもの
すべてのスタックは、同じプライベート調査官ケースログバックエンドスキーマとAPI契約を使用します。
統一されたケースログ構造
一貫したスキーマでユーザー、CaseFile、EvidenceItem、SurveillanceNote、BillingEntryレコードを管理します。
PI作業のための証拠ログ記録
各EvidenceItemについて、evidenceTag、evidenceType、storageUrl、およびcollectedAtを記録します。
監視ノートのタイムライン
フィールドワークレビューのために、位置、概要、詳細、およびノート時間をキャプチャします。
クライアント請求記録
ケースファイルごとの時間、料金、金額、作業種別を追跡します。
REST/GraphQL APIによる調査
ウェブ、モバイル、オフィスツールを1つのバックエンド契約で統合します。
拡張可能なケースワークフロー
調査プロセスが変化するにつれて、新しいクラスやフィールドを追加します。
私立探偵技術比較
すべてのサポートされた技術の設定速度、SDKスタイル、およびAIサポートを比較します。
| フレームワーク | セットアップ時間 | PIケースログの利点 | SDKタイプ | AIサポート |
|---|---|---|---|---|
| 約5分 | モバイルとウェブの調査員ケースログ用の単一のコードベース。 | タイプ付きSDK | フル | |
| 5分未満 | ケースファイルと証拠のための高速ウェブダッシュボード。 | タイプ付きSDK | フル | |
| ~3~7分 | フィールドノートと証拠収集のためのクロスプラットフォームモバイルアプリ。 | Typed SDK | フル | |
| 迅速な(5分)セットアップ | 調査官向けのサーバーレンダリングされたケース管理ポータル。 | Typed SDK | フル | |
| ~3~5分 | PIログ用の軽量ウェブ統合。 | Typed SDK | フル | |
| 約5分 | フィールド監視ノート用のネイティブ Android アプリ。 | タイプされたSDK | フル | |
| 5分未満 | 証拠記録用のネイティブ iOS アプリ。 | タイプされたSDK | フル | |
| 約3〜7分 | ケースログレビュー用の React Web UI。 | タイプされたSDK | フル | |
| 迅速な(5分)セットアップ | ケースファイルと請求用のエンタープライズWebアプリ。 | タイプされたSDK | フル | |
| 2分未満 | ネストされたケースデータ用の柔軟なGraphQL API。 | GraphQL API | フル | |
| 迅速な(2分)セットアップ | PIケースログのためのREST API統合。 | REST API | フル | |
| 〜3分 | ケースファイルワークフローのためのサーバーサイドPHPバックエンド。 | REST API | フル | |
| 約3〜7分 | 調査および請求用の.NETバックエンド。 | タイプされたSDK | フル |
セットアップ時間は、このテンプレートスキーマを使用してプロジェクトのブートストラップから最初のケースファイルまたは証拠のクエリまでの予想期間を示します。
PI ケースログ FAQ
このテンプレートを使ってプライベート・インベスティゲーターのケースログバックエンドを構築する際のよくある質問。