土地測量師應用後端模板
SurveyProject 工作、坐標日誌點、邊界記錄條目及現場筆記記錄
一個適合生產的 土地測量項目經理後端 於 Back4app,具有測量師身份驗證、SurveyProject 工作、坐標日誌點、邊界記錄條目及現場筆記記錄。包括 ER 圖、數據字典、JSON 架構、API 遊樂場,以及一個 AI 代理 提示以快速設置。
調查重點
此模板為您提供一個土地測量項目經理後端,包括 SurveyProject 工作、CoordinateLog 點、BoundaryRecord 條目和 FieldNote 記錄,以便協調員可以保持工作組織井然且可追蹤。
- 坐標記錄 — 存儲與 SurveyProject 相關的 CoordinateLog 條目,包含 pointLabel、緯度、經度、高度、準確性和 capturedAt。
- 邊界記錄控制 — 跟踪與正確的 SurveyProject 相關聯的 BoundaryRecord 行中的 parcelId 和 boundaryType,以及由 Surveyor 記錄的。
- 現場筆記捕捉 — 捕捉 FieldNote 摘要、詳細信息、noteType、loggedBy 和 loggedAt,以獲取訪問、天氣和觀察更新。
- 工作追蹤 — 通過狀態、經理、客戶名稱和現場地址字段管理 SurveyProject 記錄。
土地測量專案經理後台一覽
土地測量的真正成本是上下文切換:因為註釋在工具之間分散,每次會議都需要重建故事。客戶能在您承諾的預估交付時間中感受到這一點。使用 Back4app 上的 Surveyor、SurveyProject、CoordinateLog、BoundaryRecord 和 FieldNote,土地測量團隊可以在仍然協作同一案件記錄的同時強化職責分離。該架構涵蓋了 Surveyor(用戶名、電子郵件、角色、證書號)、SurveyProject(專案代碼、現場名稱、狀態、經理)、CoordinateLog(測量專案、測量員、點標籤、緯度、經度、高度、準確性、捕獲時間)、BoundaryRecord(測量專案、地塊 ID、邊界類型、描述、紀錄者、文檔 URL)和 FieldNote(測量專案、測量團隊、註記類型、摘要、細節、附加 URL、記錄者、記錄時間),並內建身份驗證和基於角色的訪問。連接您喜愛的前端並加快交付速度。
最佳用途:
您在土地測量模板中獲得的內容
土地測量的質量是一個滯後指標;先行指標是前線更新是否在同一天流入報告中。
無論您是發送網頁還是移動端,Surveyor、SurveyProject 和 CoordinateLog 仍然是骨幹——本頁是對齊利益相關者的最快方式。
調查應用程序功能
這個中心中的每個技術卡片都使用相同的測量後端架構,包括 Surveyor、SurveyProject、CoordinateLog、BoundaryRecord 和 FieldNote。
測量員訪問和個人檔案
測量員存儲用戶名、電子郵件、角色和證書號碼。
按地點跟蹤測量項目
測量項目存儲項目代碼、地點名稱、狀態、經理、客戶名稱和地點地址。
CoordinateLog點捕獲
CoordinateLog捕獲pointLabel、緯度、經度、高度、準確性和捕獲時間。
邊界記錄管理
邊界記錄儲存 parcelId、boundaryType、description、recordedBy 和 documentUrl。
現場筆記捕獲
現場筆記儲存 surveyProject、surveyingTeam、noteType、summary、details、attachmentUrl、loggedBy 和 loggedAt。
為什麼使用 Back4app 開發您的土地測量應用程式?
Back4app 為您提供 SurveyProject、CoordinateLog、BoundaryRecord 和 FieldNote 原語,以便您的團隊可以專注於現場工作,而不是後端管道。
- •在一個模型中協調和邊界數據: SurveyProject、CoordinateLog 和 BoundaryRecord 類別為每個工作保持 projectCode、pointLabel、latitude、longitude、boundaryType 和 parcelId 的組織。
- •具有可追溯性的現場筆記捕獲: FieldNote 行可以儲存 noteType、summary、loggedAt 和指向 Surveyor 的指標,以便小組能夠檢查誰記錄了每個觀察。
- •實時 + API 靈活性: 使用 Live Queries 進行 SurveyProject 和 FieldNote 更新,同時保持 REST 和 GraphQL 可用於移動小組和辦公室協調員。
透過一個後端合同更快地建立調查工作流程,適用於項目、點、邊界和現場筆記。
調查後端優勢
一個土地調查後端,幫助您協調現場工作而不會丟失位置或筆記。
更快速的調查工作設置
從 Surveyor 和 SurveyProject 類別開始,而不是在每次部署時重新創建地塊和隊伍表。
可追溯的座標歷史
CoordinateLog 條目保持 pointLabel、緯度、經度、準確性和 capturedAt 附加到產生它們的 SurveyProject。
保持組織化的邊界審查
BoundaryRecord 數據保持 parcelId、boundaryType、描述和 documentUrl 可供辦公室審查。
現場筆記問責制
FieldNote 記錄顯示哪位 Surveyor 編寫了摘要和詳細信息,以及 loggedAt 時間戳的創建時間。
項目級訪問控制
使用 ACL 和 CLP 規則,確保只有指定的調查工作人員可以讀取或更新 SurveyProject、CoordinateLog、BoundaryRecord 和 FieldNote 數據。
AI 輔助的啟動工作流程
通過一個結構化的提示快速生成後端腳手架和集成指南。
準備好啟動您的土地測量應用程式了嗎?
讓 Back4app AI 代理搭建您的測量後端,並從一個提示生成 SurveyProject 工作、CoordinateLog 點、BoundaryRecord 條目和 FieldNote 記錄。
免費開始 - 每月 50 個 AI 代理提示,不需要信用卡
調查技術堆疊
這個土地測量後端模板中包含所有內容。
調查實體圖
針對土地測量後端架構的實體關係模型。
涵蓋測量師、測量項目、坐標日誌、邊界記錄和現場筆記的模式。
查看圖表來源
erDiagram
Surveyor ||--o{ SurveyProject : "manager"
Surveyor ||--o{ BoundaryRecord : "recordedBy"
Surveyor ||--o{ CoordinateLog : "surveyor"
Surveyor ||--o{ FieldNote : "loggedBy"
SurveyProject ||--o{ BoundaryRecord : "surveyProject"
SurveyProject ||--o{ CoordinateLog : "surveyProject"
SurveyProject ||--o{ FieldNote : "surveyProject"
Surveyor ||--o{ FieldNote : "surveyingTeam"
Surveyor {
String objectId PK
String username
String email
String password
String role
String certificationNumber
Date createdAt
Date updatedAt
}
SurveyProject {
String objectId PK
String projectCode
String siteName
String status
String managerId FK
String clientName
String siteAddress
Date createdAt
Date updatedAt
}
BoundaryRecord {
String objectId PK
String surveyProjectId FK
String parcelId
String boundaryType
String description
String recordedById FK
String documentUrl
Date createdAt
Date updatedAt
}
CoordinateLog {
String objectId PK
String surveyProjectId FK
String surveyorId FK
String pointLabel
Number latitude
Number longitude
Number elevation
Number accuracy
Date capturedAt
Date createdAt
Date updatedAt
}
FieldNote {
String objectId PK
String surveyProjectId FK
Array surveyingTeam
String noteType
String summary
String details
String attachmentUrl
String loggedById FK
Date loggedAt
Date createdAt
Date updatedAt
}
測量整合流程
驗證、坐標日誌、邊界記錄和現場筆記的典型運行流程。
查看圖表來源
sequenceDiagram
participant Surveyor
participant App as Land Surveying Project Manager App
participant Back4app as Back4app Cloud
Surveyor->>App: Sign in
App->>Back4app: POST /login
Back4app-->>App: Session token
Surveyor->>App: Open project dashboard
App->>Back4app: GET /classes/SurveyProject?include=manager&order=-updatedAt
Back4app-->>App: SurveyProject list
Surveyor->>App: Add a coordinate log
App->>Back4app: POST /classes/CoordinateLog
Back4app-->>App: CoordinateLog objectId
Surveyor->>App: Save a boundary record
App->>Back4app: POST /classes/BoundaryRecord
Back4app-->>App: BoundaryRecord objectId
Surveyor->>App: Post a field note
App->>Back4app: POST /classes/FieldNote
Back4app-->>App: FieldNote objectId
App->>Back4app: Subscribe to live SurveyProject updates
Back4app-->>App: CoordinateLog and FieldNote change events字段字典
土地測量模式中每個類別的完整字段級參考。
| 欄位 | 類型 | 描述 | 必填 |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | 自動 |
| username | String | Surveyor login name | |
| String | Surveyor email address | ||
| password | String | Hashed password (write-only) | |
| role | String | Access role such as coordinator, fieldSurveyor, reviewer, or admin | |
| certificationNumber | String | Internal certification or registration reference | — |
| createdAt | Date | Auto-generated creation timestamp | 自動 |
| updatedAt | Date | Auto-generated last-update timestamp | 自動 |
8 欄位在 Surveyor
調查權限
ACL 和 CLP 策略如何保護調查員、項目、坐標日誌、邊界記錄和現場筆記。
調查員擁有的檔案
只有調查員可以更新他們自己的檔案;在接受寫入之前,應該驗證角色值,例如協調員、現場調查員、審核者或管理員。
項目範圍的記錄
只有指派的工作人員可以為 SurveyProject 創建或修改 CoordinateLog、BoundaryRecord 和 FieldNote 條目。
現場筆記完整性
保護 noteType、summary、details 和 loggedAt 免受未經授權的更改,並在 Cloud Code 中驗證測量師指標。
JSON Schema
原始 JSON schema 定義準備好可以複製到 Back4app 或作為實現參考使用。
{
"classes": [
{
"className": "Surveyor",
"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
},
"certificationNumber": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "SurveyProject",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"projectCode": {
"type": "String",
"required": true
},
"siteName": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"manager": {
"type": "Pointer",
"required": true,
"targetClass": "Surveyor"
},
"clientName": {
"type": "String",
"required": false
},
"siteAddress": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "BoundaryRecord",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"surveyProject": {
"type": "Pointer",
"required": true,
"targetClass": "SurveyProject"
},
"parcelId": {
"type": "String",
"required": true
},
"boundaryType": {
"type": "String",
"required": true
},
"description": {
"type": "String",
"required": true
},
"recordedBy": {
"type": "Pointer",
"required": true,
"targetClass": "Surveyor"
},
"documentUrl": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "CoordinateLog",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"surveyProject": {
"type": "Pointer",
"required": true,
"targetClass": "SurveyProject"
},
"surveyor": {
"type": "Pointer",
"required": true,
"targetClass": "Surveyor"
},
"pointLabel": {
"type": "String",
"required": true
},
"latitude": {
"type": "Number",
"required": true
},
"longitude": {
"type": "Number",
"required": true
},
"elevation": {
"type": "Number",
"required": false
},
"accuracy": {
"type": "Number",
"required": false
},
"capturedAt": {
"type": "Date",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "FieldNote",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"surveyProject": {
"type": "Pointer",
"required": true,
"targetClass": "SurveyProject"
},
"surveyingTeam": {
"type": "Array",
"required": false,
"targetClass": "Surveyor"
},
"noteType": {
"type": "String",
"required": true
},
"summary": {
"type": "String",
"required": true
},
"details": {
"type": "String",
"required": true
},
"attachmentUrl": {
"type": "String",
"required": false
},
"loggedBy": {
"type": "Pointer",
"required": true,
"targetClass": "Surveyor"
},
"loggedAt": {
"type": "Date",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
}
]
}與 AI Agent 一起構建
使用 Back4app AI Agent 從此模板生成真正的土地測量應用程序,包括前端、後端、身份驗證以及坐標、邊界和現場筆記流程。
在 Back4app 上創建一個土地測量項目管理應用後端,使用此確切的架構和行為。 架構: 1. 測量員(使用 Back4app 內建的身份驗證欄位加上團隊檔案):用戶名,電子郵件,密碼,角色(字符串,必填),認證號碼(字符串,選填);objectId,createdAt,updatedAt(系統)。 2. 測量項目:項目代碼(字符串,必填),場地名稱(字符串,必填),狀態(字符串,必填),管理者(指向測量員的指針,必填),客戶名稱(字符串,選填),場地地址(字符串,選填);objectId,createdAt,updatedAt(系統)。 3. 邊界記錄:測量項目(指向測量項目的指針,必填),地塊ID(字符串,必填),邊界類型(字符串,必填),描述(字符串,必填),記錄人(指向測量員的指針,必填),文檔鏈接(字符串,選填);objectId,createdAt,updatedAt(系統)。 4. 坐標記錄:測量項目(指向測量項目的指針,必填),測量員(指向測量員的指針,必填),點標籤(字符串,必填),緯度(數字,必填),經度(數字,必填),海拔(數字,選填),精度(數字,選填),擷取時間(日期,必填);objectId,createdAt,updatedAt(系統)。 5. 現場筆記:測量項目(指向測量項目的指針,必填),測量團隊(指向<測量員>的數組,選填),筆記類型(字符串,必填),摘要(字符串,必填),細節(字符串,必填),附件鏈接(字符串,選填),記錄人(指向測量員的指針,必填),記錄時間(日期,必填);objectId,createdAt,updatedAt(系統)。 安全性: - 只有測量員可以更新他們自己的檔案。只有指定的工作人員可以創建或編輯項目範圍的記錄。使用雲代碼進行驗證。 身份驗證: - 註冊,登錄,登出。 行為: - 列出測量項目工作,創建坐標記錄點,保存邊界記錄條目,並添加現場筆記更新。 交付: - Back4app 應用程序,具有架構、ACL、CLP;測量員的前端、測量項目儀表板、坐標記錄擷取、邊界記錄追蹤和現場筆記審查。
按下面的按鈕以使用此模板提示預先填充的內容開啟代理。
這是沒有技術後綴的基本提示。您可以之後調整生成的前端堆棧。
API 沙盒
嘗試對土地測量架構使用 REST 和 GraphQL 端點。回應使用模擬資料,並不需要 Back4app 帳戶。
使用與此模板相同的架構。
選擇您的技術堆疊
展開每個卡片以查看如何將 Surveyor、SurveyProject 和 CoordinateLog 整合到您選擇的技術堆疊中。
Flutter 地形測量後端
React 地形測量後端
React 原生 地形測量後端
Next.js 地形測量後端
JavaScript 地形測量後端
Android 地形測量後端
iOS 地形測量後端
Vue 地形測量後端
Angular 地形測量後端
GraphQL 地形測量後端
REST API 地形測量後端
PHP 地形測量後端
.NET 地形測量後端
每種技術所獲得的內容
每個堆疊都使用相同的土地測量後端架構和 API 合約。
統一的測量數據結構
使用一致的架構管理 Surveyor、SurveyProject、CoordinateLog、BoundaryRecord 和 FieldNote 記錄。
土地勘測 的坐標登記
儲存與每個 SurveyProject 相關的緯度、經度、高度和準確性值。
邊界記錄追踪 土地勘測
保持 parcelId、boundaryType、描述和 documentUrl 有序。
土地勘測 的現場筆記捕獲
記錄摘要、細節、noteType、attachmentUrl 和 loggedAt,而不失去上下文。
土地測量堆疊比較
比較所有支援技術的設置速度、SDK 類型和 AI 支持。
| 框架 | 設置時間 | 測量效益 | SDK 類型 | AI 支持 |
|---|---|---|---|---|
| 約 5 分鐘 | 用於現場和辦公室調查應用的單一代碼庫。 | 類型化 SDK | 完整 | |
| 少於 5 分鐘 | 快速的網頁儀表板,用於項目和邊界檢閱。 | 類型化 SDK | 完整 | |
| 約 3-7 分鐘 | 跨平台調查小組的行動應用程式。 | 類型化 SDK | 完整 | |
| 快速(5分鐘)設置 | 伺服器渲染的項目協調網絡應用程式。 | 類型化SDK | 完整 | |
| 約3–5分鐘 | 輕量級的調查工作流程網站整合。 | 類型化SDK | 完整 | |
| 約5分鐘 | 現場小組的本地Android應用程式。 | 類型化SDK | 完整 | |
| 少於 5 分鐘 | 專為現場團隊設計的原生 iOS 應用程式。 | 已輸入的 SDK | 完整 | |
| 約 3–7 分鐘 | Reactive 專案和備註管理的網頁 UI。 | 已輸入的 SDK | 完整 | |
| 快速 (5 分鐘) 設置 | 用於調查操作的企業網頁應用程式。 | 已輸入的 SDK | 完整 | |
| 少於 2 分鐘 | 靈活的 GraphQL API 用於坐標和邊界查詢。 | GraphQL API | 完整 | |
| 快速(2 分鐘)設置 | REST API 整合用於現場數據捕獲。 | REST API | 完整 | |
| 約 3 分鐘 | 伺服器端 PHP 後端用於辦公室協調。 | REST API | 完整 | |
| 約 3–7 分鐘 | .NET 後端用於項目與記錄管理。 | 類型化 SDK | 完整 |
設置時間反映了從項目啟動到第一次使用此模板架構的 SurveyProject、CoordinateLog 或 FieldNote 查詢的預期持續時間。
調查問題
有關如何使用此模板構建土地測量項目管理後端的常見問題。