전기 스쿠터 플릿 인벤토리 백엔드 템플릿
배터리 상태, 모터 로그 및 배포 영역 제어
장 production-ready 전기 스쿠터 플릿 백엔드 on Back4app with 스쿠터 기록, 배터리 상태 확인, 모터 로그, 및 배포 영역 제어. ER 다이어그램, 데이터 사전, JSON 스키마, API 놀이터, 및 신속 부트스트랩을 위한 AI 에이전트 프롬프트 포함.
함대 주요 내용
이 템플릿은 스쿠터 재고, 배터리 상태, 모터 로그 및 배치 영역에 대한 함대 백엔드를 제공하여 운영이 종이 검사를 실시간 추적으로 전환할 수 있도록 합니다.
- 배터리 상태 추적 — 배터리 클래스에 배터리 수준, 사이클 수 및 건강 점수를 저장하여 유지보수 계획을 세웁니다.
- 모터 로그 기록 — 실행 시간, 온도 및 고장 노트를 포함하여 MotorLog에서 모터 이벤트를 캡처하여 현장 검토를 위해 제공합니다.
- 배치 영역 제어 — 각 스쿠터를 배치 영역에 연결하여 배차 담당자가 지역별로 커버리지를 관리할 수 있도록 합니다.
전기 스쿠터 플릿 재고 백엔드 이해하기
이중 예약은 전기 스쿠터 플릿에서 단순히 당황스러운 일이 아닙니다; 어떤 마케팅 캠페인이 다시 구축하는 것보다 신뢰를 더 빠르게 침식시킵니다. Back4app에서 모델 운영자, 스쿠터, 배터리, 모터 로그 및 배치 영역을 사용하여 전기 스쿠터 플릿 팀에 단일 야드에서 다수의 사이트 운영으로 성장할 수 있는 백엔드를 제공합니다. 스키마는 운영자(사용자 이름, 이메일, 비밀번호), 스쿠터(플릿 코드, 일련 번호, 상태, 배터리, 구역), 배터리(스쿠터, 건강 점수, 충전 수준, 사이클 수), 모터 로그(스쿠터, 실행 시간(분), 온도(섭씨), 결함 코드) 및 배포 영역(이름, 도시, 커버리지 반경(킬로미터), 활성) 을 포함하며 인증 및 플릿 제어가 내장되어 있습니다. 선호하는 프론트엔드를 연결하고 더 빠르게 시작하세요.
에 가장 적합한:
전기 스쿠터 플릿: 백엔드 스냅샷
전기 스쿠터 플릿은 속도만이 아니라, 누군가가 “그렇다는 걸 어떻게 알았는지 보여줘.”라고 질문할 때 방어력이 중요합니다.
허브는 Operator, Scooter 및 Battery를 강조하여 클라이언트 스택을 동일한 엔터티, 필드 및 관계에 대해 비교할 수 있습니다.
핵심 전기 스쿠터 함대 기능
이 허브의 모든 기술 카드는 Operator, Scooter, Battery, MotorLog 및 DeploymentZone과 함께 동일한 전기 스쿠터 플릿 스키마를 사용합니다.
스쿠터 재고 관리
스쿠터는 fleetCode, serialNumber, status, battery 및 zone을 저장합니다.
배터리 상태 추적
배터리는 chargeLevel, healthScore 및 cycleCount를 유지합니다.
모터 진단
MotorLog는 runtimeMinutes, temperatureC 및 faultCode를 저장합니다.
배포 지역 관리
DeploymentZone은 이름, 도시, coverageRadiusKm 및 활성 상태를 정의합니다.
Back4app로 전기 스쿠터 플릿 백엔드를 구축해야 하는 이유는 무엇인가요?
Back4app는 운영 팀에게 스쿠터 재고, 배터리 상태 및 모터 로그를 위한 깔끔한 집을 제공하여 배치 및 유지 보수 작업이 동일한 데이터 모델에 유지되도록 합니다.
- •스쿠터 및 배터리 기록이 연결되어 있습니다.: 스쿠터 클래스는 배터리 및 배포 구역 필드를 가리켜 필드 점검, 교체 및 구역 이동을 추적 가능하게 합니다.
- •MotorLog 항목은 감사하기 쉽습니다.: 필드 직원이 서비스 호출 전에 무슨 일이 있었는지 검토할 수 있도록 MotorLog에 runtimeMinutes, temperatureC 및 faultCode를 저장합니다.
- •추가 인프라 없이 실시간 함대 가시성: Live Queries를 사용하여 스쿠터 및 배터리 업데이트를 하면서 REST와 GraphQL를 대시보드, 배차 도구 및 유지보수 앱을 위해 열어 둡니다.
모든 클라이언트에서 하나의 백엔드 계약으로 스쿠터, 배터리 및 구역을 관리합니다.
플릿 혜택
현장 작업과 배차 결정을 실제 플릿 데이터와 연결하는 스쿠터 백엔드입니다.
더 빠른 유지보수 분류
Battery.healthScore 및 MotorLog.faultCode를 사용하여 먼저 검사가 필요한 스쿠터를 결정합니다.
더 깔끔한 지역 할당
커버리지가 변경될 때 Scooter.zone을 DeploymentZone.name으로 업데이트합니다.
추적 가능한 필드 이력
서비스 팀이 반복적인 문제를 비교할 수 있도록 MotorLog.runtimeMinutes 및 temperatureC를 저장합니다.
일관된 배차 보기
차량을 서비스에 다시 배치하기 전에 Scooter.status 및 Battery.chargeLevel를 쿼리합니다.
공유 운영 계약
웹 및 모바일 도구가 동일한 차량 상태를 읽을 수 있도록 스쿠터, 배터리, 로그 및 존 필드를 하나의 스키마에 유지합니다.
AI 지원 부트스트랩 워크플로
차량 모델을 위한 하나의 구조화된 프롬프트로 백엔드 스캐폴딩 및 통합 지침을 생성합니다.
스쿠터 플릿 앱을 출시할 준비가 되셨습니까?
Back4app AI 에이전트가 귀하의 전기 스쿠터 플릿 백엔드를 설정하고 하나의 프롬프트에서 스쿠터, 배터리, 모터 및 구역 워크플로우를 생성합니다.
시작은 무료 — 월 50개의 AI 에이전트 프롬프트, 신용카드 필요 없음
기술 스택
이 전기 스쿠터 플릿 백엔드 템플릿에 포함된 모든 것.
ER 다이어그램
전기 스쿠터 함대 스키마에 대한 엔터티 관계 모델입니다.
운영자, 스쿠터, 배터리 건강 기록, 모터 로그 및 배포 구역을 포함하는 스키마입니다.
다이어그램 소스 보기
erDiagram
Operator ||--o{ Scooter : "assignedOperator"
Operator ||--o{ BatteryCheck : "operator"
Operator ||--o{ MotorLog : "operator"
Operator ||--o{ ZoneAssignment : "assignedBy"
DeploymentZone ||--o{ Scooter : "lastKnownZone"
DeploymentZone ||--o{ ZoneAssignment : "zone"
Scooter ||--o{ BatteryCheck : "scooter"
Scooter ||--o{ MotorLog : "scooter"
Scooter ||--o{ ZoneAssignment : "scooter"
Operator {
String objectId PK
String username
String email
String password
String role
Date createdAt
Date updatedAt
}
Scooter {
String objectId PK
String scooterTag
String status
Number batteryLevel
String lastKnownZoneId FK
String assignedOperatorId FK
Date createdAt
Date updatedAt
}
BatteryCheck {
String objectId PK
String scooterId FK
String operatorId FK
Number batteryLevel
String batteryHealth
Date checkedAt
Date createdAt
Date updatedAt
}
MotorLog {
String objectId PK
String scooterId FK
String operatorId FK
String motorStatus
String logNotes
Date capturedAt
Date createdAt
Date updatedAt
}
DeploymentZone {
String objectId PK
String zoneCode
String name
String city
Boolean active
Object boundaryGeoJSON
Date createdAt
Date updatedAt
}
ZoneAssignment {
String objectId PK
String scooterId FK
String zoneId FK
String assignedById FK
Date assignedAt
Date createdAt
Date updatedAt
}
통합 흐름
로그인, 스쿠터 재고 조회, 배터리 체크, 모터 로그 및 배포 구역 업데이트를 위한 일반적인 실행 흐름입니다.
다이어그램 소스 보기
sequenceDiagram
participant User
participant FleetApp as Electric Scooter Fleet App
participant Back4app as Back4app Cloud
User->>FleetApp: Sign in as operator
FleetApp->>Back4app: POST /login
Back4app-->>FleetApp: Session token
User->>FleetApp: Load scooters needing battery checks
FleetApp->>Back4app: GET /classes/Scooter?order=-updatedAt
Back4app-->>FleetApp: Scooter list with batteryLevel and lastKnownZone
User->>FleetApp: Record a BatteryCheck
FleetApp->>Back4app: POST /classes/BatteryCheck
Back4app-->>FleetApp: BatteryCheck objectId
User->>FleetApp: Review MotorLog history and zone assignments
FleetApp->>Back4app: GET /classes/MotorLog and /classes/ZoneAssignment
Back4app-->>FleetApp: MotorLog entries and deployment updates
FleetApp->>Back4app: Subscribe to live Scooter updates
Back4app-->>FleetApp: Scooters refresh when batteryLevel or status changes데이터 사전
전기 스쿠터 플리트 스키마의 각 클래스에 대한 필드 수준 참조.
| 필드 | 종류 | 설명 | 필수 |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | 자동 |
| username | String | Staff login name | |
| String | Staff email address | ||
| password | String | Hashed password (write-only) | |
| role | String | Operator role such as manager, coordinator, or field technician | |
| createdAt | Date | Auto-generated creation timestamp | 자동 |
| updatedAt | Date | Auto-generated last-update timestamp | 자동 |
7 필드 Operator에서
보안 및 권한
ACL 및 CLP 전략이 운영자, 스쿠터, 배터리, 로그 및 구역을 어떻게 보호하는지.
운영자 접근 제어
인증된 운영자만이 자신의 팀에 속하는 차량 기록을 생성하거나 변경할 수 있습니다.
스쿠터 및 배터리 무결성
Cloud Code를 사용하여 유닛이 사용 가능으로 표시되기 전에 Scooter.battery 및 Battery.healthScore를 검증합니다.
범위 지정 운영 기록 읽기
배차, 서비스 또는 감사 작업을 위해 기록이 필요한 직원에게만 구역 및 로그 가시성을 제한합니다.
스키마 (JSON)
Back4app에 복사하거나 구현 참조로 사용할 수 있는 원시 JSON 스키마 정의.
{
"classes": [
{
"className": "Operator",
"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": "Scooter",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"scooterTag": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"batteryLevel": {
"type": "Number",
"required": true
},
"lastKnownZone": {
"type": "Pointer",
"required": true,
"targetClass": "DeploymentZone"
},
"assignedOperator": {
"type": "Pointer",
"required": true,
"targetClass": "Operator"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "BatteryCheck",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"scooter": {
"type": "Pointer",
"required": true,
"targetClass": "Scooter"
},
"operator": {
"type": "Pointer",
"required": true,
"targetClass": "Operator"
},
"batteryLevel": {
"type": "Number",
"required": true
},
"batteryHealth": {
"type": "String",
"required": true
},
"checkedAt": {
"type": "Date",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "MotorLog",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"scooter": {
"type": "Pointer",
"required": true,
"targetClass": "Scooter"
},
"operator": {
"type": "Pointer",
"required": true,
"targetClass": "Operator"
},
"motorStatus": {
"type": "String",
"required": true
},
"logNotes": {
"type": "String",
"required": true
},
"capturedAt": {
"type": "Date",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "DeploymentZone",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"zoneCode": {
"type": "String",
"required": true
},
"name": {
"type": "String",
"required": true
},
"city": {
"type": "String",
"required": true
},
"active": {
"type": "Boolean",
"required": true
},
"boundaryGeoJSON": {
"type": "Object",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "ZoneAssignment",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"scooter": {
"type": "Pointer",
"required": true,
"targetClass": "Scooter"
},
"zone": {
"type": "Pointer",
"required": true,
"targetClass": "DeploymentZone"
},
"assignedBy": {
"type": "Pointer",
"required": true,
"targetClass": "Operator"
},
"assignedAt": {
"type": "Date",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
}
]
}AI 에이전트로 빌드하기
이 템플릿을 사용하여 Back4app AI 에이전트로 실제 전기 스쿠터 플릿 앱을 생성하십시오. 여기에는 프론트엔드, 백엔드, 인증, 스쿠터, 배터리, 모터 로그 및 존 흐름이 포함됩니다.
이 정확한 스키마와 동작을 사용하여 Back4app에서 전기 스쿠터 플릿 앱 백엔드를 만듭니다. 스키마: 1. 운영자 (사용 Back4app 내장): 사용자 이름, 이메일, 비밀번호; objectId, createdAt, updatedAt (시스템). 2. 스쿠터: fleetCode (문자열, 필수), serialNumber (문자열, 필수), status (문자열, 필수), battery (배터리에 대한 포인터, 선택적), zone (배포 존에 대한 포인터, 선택적); objectId, createdAt, updatedAt (시스템). 3. 배터리: scooter (스쿠터에 대한 포인터, 필수), healthScore (숫자, 필수), chargeLevel (숫자, 필수), cycleCount (숫자, 필수), lastCheckedAt (날짜, 필수); objectId, createdAt, updatedAt (시스템). 4. 모터 로그: scooter (스쿠터에 대한 포인터, 필수), runtimeMinutes (숫자, 필수), temperatureC (숫자, 필수), faultCode (문자열), notes (문자열); objectId, createdAt, updatedAt (시스템). 5. 배포 존: name (문자열, 필수), city (문자열, 필수), coverageRadiusKm (숫자, 필수), active (부울, 필수); objectId, createdAt, updatedAt (시스템). 보안: - 인증된 운영자만 자신의 팀에 속하는 플릿 레코드를 생성하거나 변경할 수 있습니다. 단위가 사용 가능으로 표시되기 전에 Cloud Code를 사용하여 Scooter.battery와 Battery.healthScore를 검증하십시오. 인증: - 회원 가입, 로그인, 로그아웃. 동작: - 스쿠터 목록을 작성하고, 배터리 건강을 검사하고, 모터 로그를 작성하고, 배포 구역 간에 스쿠터를 이동합니다. 전달: - 스키마, ACL, CLP가 포함된 Back4app 앱; 스쿠터, 배터리, 로그 및 존의 프론트엔드.
아래 버튼을 눌러 이 템플릿 프롬프트가 미리 채워진 에이전트를 여세요.
이것은 기술 접미사 없이 기본 프롬프트입니다. 나중에 생성된 프론트엔드 스택을 조정할 수 있습니다.
API 플레이그라운드
전기 스쿠터 플릿 스키마에 대해 REST 및 GraphQL 엔드포인트를 사용해 보세요. 응답은 모의 데이터를 사용하며 Back4app 계정이 필요하지 않습니다.
이 템플릿과 동일한 스키마를 사용합니다.
기술 선택
각 카드를 확장하여 선택한 스택과 Operator, Scooter 및 Battery를 통합하는 방법을 확인하세요.
Flutter 전기 스쿠터 플릿 백엔드
React 전기 스쿠터 플릿 백엔드
React 네이티브 전기 스쿠터 플릿 백엔드
Next.js 전기 스쿠터 플릿 백엔드
JavaScript 전기 스쿠터 플릿 백엔드
Android 전기 스쿠터 플릿 백엔드
iOS 전기 스쿠터 플릿 백엔드
Vue 전기 스쿠터 플릿 백엔드
Angular 전기 스쿠터 플릿 백엔드
GraphQL 전기 스쿠터 플릿 백엔드
REST API 전기 스쿠터 플릿 백엔드
PHP 전기 스쿠터 플릿 백엔드
.NET 전기 스쿠터 플릿 백엔드
모든 기술로 얻는 것
모든 스택은 동일한 전기 스쿠터 플릿 백엔드 스키마와 API 계약을 사용합니다.
통합된 플릿 데이터 구조
일관된 스키마를 사용하여 스쿠터, 배터리, 로그 및 구역을 관리합니다.
플릿 운영을 위한 배터리 상태 워크플로우
유지 관리를 위한 chargeLevel, healthScore 및 cycleCount를 추적합니다.
서비스 팀을 위한 모터 로그 기록
진단을 위해 runtimeMinutes, temperatureC 및 faultCode를 저장합니다.
배차를 위한 구역 할당 제어
DeploymentZone 기록을 사용하여 스쿠터를 적절한 서비스 영역으로 안내합니다.
플릿 도구를 위한 REST/GraphQL API
웹, 모바일 및 운영 대시보드를 유연한 API를 통해 통합합니다.
플릿 기술 비교
모든 지원되는 기술에서 설정 속도, 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 | 전체 |
설정 시간은 프로젝트 시작부터 첫 번째 스쿠터, 배터리 또는 존 쿼리를 수행하기까지의 예상 기간을 반영합니다.
자주 묻는 질문
이 템플릿을 사용하여 전기 스쿠터 플리트 백엔드를 구축하는 것에 대한 일반적인 질문입니다.