팀원, 장비 대여 및 호출서 백엔드 템플릿
팀 스케줄링, 장비 추적 및 호출서 배달
프로덕션 준비 완료된 비디오 제작 팀 CRM 백엔드 on Back4app는 팀원 프로파일, 가용성 슬롯 일정, 장비 항목 재고, 장비 대여 체크아웃, 호출서 기록, 호출서 배포, 고객 프로젝트 추적을 포함합니다. ER 다이어그램, 데이터 사전, JSON 스키마, API 놀이터, 및 신속한 부트스트랩을 위한 AI 에이전트 프롬프트가 포함되어 있습니다.
크루 CRM 주요 사항
이 템플릿은 크루 멤버 일정 관리, 장비 항목 추적, 콜시트 배달이 포함된 비디오 제작 크루 CRM 백엔드를 제공하여 조정자가 제작 일정을 조직할 수 있습니다.
- 크루 멤버 가용성 한눈에 보기 — 각 크루 멤버와 가용성 시간대를 추적하여 조정자가 촬영일 전에 누가 자유로운지를 확인할 수 있습니다.
- 감사할 수 있는 장비 대여 로그 — 장비 항목 및 장비 대여 클래스를 사용하여 카메라, 조명 및 오디오 키트의 체크아웃, 반환 및 상태 노트를 기록합니다.
- 추측 없이 콜시트 배포 — 각 부서가 적시에 올바른 시트를 받을 수 있도록 콜시트 및 콜시트 배포 항목을 저장합니다.
- 명확한 소유권이 있는 크루 운영 — Parse 포인터와 역할 인식 액세스를 통해 적절한 사람에게 할당, 장비 및 호출 시트를 연결합니다.
- 모바일 및 웹 도구를 위한 단일 백엔드 — 동일한 REST 및 GraphQL API에서 스케줄러, 프로듀서 및 조수에게 서비스합니다.
개요: 비디오 프로덕션 크루 CRM
비디오 프로덕션 크루에서의 보고서는 폴더와 메시지 스레드를 수동으로 검색하지 않고도 리더십 질문에 답해야 합니다. 신뢰성은 기능이며 각주가 아닙니다. 더 명확한 소유권, 더 적은 태스크 누락 및 클라이언트 준비가 완료된 기록으로 비디오 프로덕션 크루 사항을 운영하기 위해 Back4app에서 CrewMember, AvailabilitySlot, GearItem, GearRental 및 CallSheet을 형성합니다. 스키마는 CrewMember (fullName, email, phone, role, notes), AvailabilitySlot (crewMember, date, startTime, endTime, status, location), GearItem (assetTag, name, category, condition, isAvailable, location), GearRental (gearItem, checkedOutBy, rentalDate, returnDueDate, returnedAt, status, conditionOut, conditionIn), CallSheet (projectName, shootDate, callTime, location, status, notes, createdBy), CallSheetDistribution (callSheet, recipientEmail, deliveryMethod, sentAt, deliveryStatus, openedAt) 및 ClientProject (clientName, projectCode, title, status, producer, callSheet)와 함께 인증 및 크루 워크플로우 제어가 내장되어 있습니다. 선호하는 프론트엔드를 연결하고 더 빠르게 배송하세요.
최고의 용도:
이 비디오 제작 크루 백엔드가 어떻게 구성되어 있는지
비디오 제작 크루의 운영자들은 일반적으로 인계에서 먼저 고통을 느낍니다: 한 팀이 시트를 업데이트하면 다른 팀이 채팅 스레드를 신뢰하고, 두 팀 모두 고객에게 전달된 내용과 일치하지 않습니다.
이 요약은 팀이 ER 다이어그램이나 JSON 내보내기를 dive하기 전에 CrewMember, AvailabilitySlot 및 GearItem에 대한 방향을 정하는 데 도움을 줍니다.
크루 CRM 핵심 기능
이 허브의 모든 기술 카드에는 CrewMember, AvailabilitySlot, GearItem, GearRental, CallSheet, CallSheetDistribution, 및 ClientProject가 포함된 동일한 크루 CRM 백엔드 스키마가 사용됩니다.
크루 멤버 명단 관리
크루 멤버는 전체 이름, 역할, 이메일, 전화번호를 저장합니다.
가능성 슬롯 창
가능성 슬롯은 크루 멤버, 날짜, 시작 시간, 종료 시간 및 상태를 추적합니다.
기어 아이템 재고 및 상태
기어 아이템은 자산 태그, 이름, 카테고리, 상태, 및 사용 가능 여부를 기록합니다.
기어 렌탈 체크아웃 및 반납 로그
기어 렌탈은 기어 아이템을 대출자, 대여일, 반납 예정일 및 상태에 연결합니다.
콜 시트 생성
콜 시트는 프로젝트 이름, 촬영 날짜, 장소, 호출 시간, 상태 및 노트를 저장합니다.
콜 시트 배포 추적
콜 시트 배포는 callSheet, recipientEmail, deliveryMethod, sentAt, 및 deliveryStatus를 연결합니다.
왜 Back4app와 함께 귀하의 크루 CRM 백엔드를 구축해야 할까요?
Back4app는 귀하의 팀이 백엔드 정비가 아닌 통화에 시간을 쓸 수 있도록 크루, 장비 및 배급 기본 요소를 제공합니다.
- •가용성 슬롯을 사용한 크루 일정 관리: 각 CrewMember에 연결된 AvailabilitySlot 기록은 누가 촬영, 픽업 또는 야간 통화를 할 수 있는지 쉽게 확인할 수 있도록 합니다.
- •GearRental 및 GearItem을 사용한 장비 임대 기록: GearRental에서 체크아웃 및 반납 순간을 기록하면서 GearItem.assetTag, 상태 및 isAvailable을 빠른 자산 확인을 위해 표시합니다.
- •CallSheetDistribution을 사용한 호출 시트 배포: 각 CallSheet에 대해 CallSheetDistribution 항목을 사용하여 프로듀서가 누가 시트를 받았는지, 언제 발송되었는지, 열린 적이 있는지 확인할 수 있도록 합니다.
모든 클라이언트에 대해 하나의 백엔드 계약으로 제작 운영 흐름을 빠르게 구축하고 조정합니다.
크루 CRM의 이점
스케줄링, 장비, 및 콜 시트를 한 곳에서 관리하는 크루 CRM 백엔드.
더 빠른 크루 예약 결정
다음 전화를 누가 받을 수 있는지를 결정하기 위해 AvailabilitySlot 레코드를 CrewMember 프로필과 함께 사용하세요.
장비 책임 분명히 하기
GearRental 행을 GearItem.assetTag 값과 일치시켜 모든 체크아웃에 추적 가능한 소유자와 기한이 있도록 합니다.
의사소통 부족 감소
각 CallSheet에서 CallSheetDistribution을 추적하여 제작 직원이 최신 버전을 정확히 알고 있도록 합니다.
보다 깔끔한 제작일 기록
shootDate, callTime, returnDueDate 필드를 정리하여 준비 및 정리가 쉬운 빠른 검토가 가능합니다.
역할 인식 접근
ACL 및 CLP 규칙을 사용하여 승인된 코디네이터만 장비, 임대 및 호출 시트를 편집할 수 있습니다.
AI 부트스트랩 워크플로우
하나의 구조화된 프롬프트로 백엔드 스캐폴딩 및 통합 지침을 빠르게 생성합니다.
당신의 크루 CRM을 시작할 준비가 되셨나요?
Back4app AI 에이전트가 당신의 크루 CRM 백엔드를 스캐폴드하고, CrewMember 가용성, GearRental 로그 및 CallSheet 배포를 하나의 프롬프트로 생성하도록 하세요.
무료로 시작 — 월 50 AI 에이전트 프롬프트, 신용카드 불필요
프로덕션 기술 스택
이 크루 CRM 백엔드 템플릿에 모든 것이 포함되어 있습니다.
크루 관계 다이어그램
비디오 제작 크루 CRM 스키마의 엔티티 관계 모델입니다.
크루 멤버, 가용성 슬롯, 장비 항목, 장비 대여, 호출 시트, 호출 시트 배포 기록 및 클라이언트 프로젝트를 포함하는 스키마입니다.
다이어그램 소스 보기
erDiagram
CrewMember ||--o{ AvailabilitySlot : "has"
CrewMember ||--o{ GearRental : "checks out"
CrewMember ||--o{ CallSheet : "creates"
CallSheet ||--o{ CallSheetDistribution : "sent as"
GearItem ||--o{ GearRental : "rented in"
ClientProject ||--o{ CallSheet : "uses"
ClientProject }o--|| CrewMember : "producer"
ClientProject }o--o| CallSheet : "primary call sheet"
CrewMember {
String objectId PK
String fullName
String email
String phone
String role
String notes
Date createdAt
Date updatedAt
}
AvailabilitySlot {
String objectId PK
String crewMemberId FK
Date date
String startTime
String endTime
String status
String location
Date createdAt
Date updatedAt
}
GearItem {
String objectId PK
String assetTag
String name
String category
String condition
Boolean isAvailable
String location
Date createdAt
Date updatedAt
}
GearRental {
String objectId PK
String gearItemId FK
String checkedOutById FK
Date rentalDate
Date returnDueDate
Date returnedAt
String status
String conditionOut
String conditionIn
Date createdAt
Date updatedAt
}
CallSheet {
String objectId PK
String projectName
Date shootDate
String callTime
String location
String status
String notes
String createdById FK
Date createdAt
Date updatedAt
}
CallSheetDistribution {
String objectId PK
String callSheetId FK
String recipientEmail
String deliveryMethod
Date sentAt
String deliveryStatus
Date openedAt
Date createdAt
Date updatedAt
}
ClientProject {
String objectId PK
String clientName
String projectCode
String title
String status
String producerId FK
String callSheetId FK
Date createdAt
Date updatedAt
}
생산 통합 흐름
인증, CrewMember 가용성 확인, GearRental 로그 생성 및 CallSheet 기록 배포를 위한 일반적인 실행 흐름입니다.
다이어그램 소스 보기
sequenceDiagram
participant User
participant App as Video Production Crew CRM App
participant Back4app as Back4app Cloud
User->>App: Login to the crew dashboard
App->>Back4app: POST /login
Back4app-->>App: Session token
User->>App: Check freelancer availability
App->>Back4app: GET /classes/AvailabilitySlot?include=crewMember
Back4app-->>App: AvailabilitySlot list
User->>App: Reserve gear for the shoot
App->>Back4app: POST /classes/GearRental
Back4app-->>App: GearRental objectId
User->>App: Send the call sheet
App->>Back4app: POST /classes/CallSheetDistribution
Back4app-->>App: Delivery status
App->>Back4app: Subscribe to CallSheet updates
Back4app-->>App: Live query events클래스 사전
크루 CRM 스키마의 모든 클래스에 대한 전체 필드 수준 참조입니다.
| 필드 | 유형 | 설명 | 필수 |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | 자동 |
| fullName | String | Crew member display name | |
| String | Crew member email address | ||
| phone | String | Crew member contact number | — |
| role | String | Crew role such as producer, camera operator, gaffer, sound mixer, or PA | |
| notes | String | Short crew notes for scheduling or on-set needs | — |
| createdAt | Date | Auto-generated creation timestamp | 자동 |
| updatedAt | Date | Auto-generated last-update timestamp | 자동 |
8 필드 CrewMember에
크루 접근 및 권한
ACL 및 CLP 전략이 CrewMember, GearItem, GearRental, CallSheet 및 CallSheetDistribution 기록을 어떻게 보호하는지.
크루 프로필 제어
권한이 있는 사용자만 CrewMember 프로필을 업데이트하거나 크루 구성원의 연락처 세부정보를 변경할 수 있습니다.
장비 및 대여 무결성
자산 태그와 대여 날짜 기록의 신뢰성을 유지하기 위해 오직 조정자만 GearItem 및 GearRental 행을 생성하거나 편집할 수 있습니다.
제한된 호출 시트 접근
현재 시트가 필요한 제작 팀, 고객 및 공급업체에 대한 CallSheet 및 CallSheetDistribution 읽기를 제한합니다.
JSON 스키마
복사하여 Back4app에 붙여넣거나 구현 참조로 사용할 준비가 된 원시 JSON 스키마 정의입니다.
{
"classes": [
{
"className": "CrewMember",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"fullName": {
"type": "String",
"required": true
},
"email": {
"type": "String",
"required": true
},
"phone": {
"type": "String",
"required": false
},
"role": {
"type": "String",
"required": true
},
"notes": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "AvailabilitySlot",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"crewMember": {
"type": "Pointer",
"required": true,
"targetClass": "CrewMember"
},
"date": {
"type": "Date",
"required": true
},
"startTime": {
"type": "String",
"required": true
},
"endTime": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"location": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "GearItem",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"assetTag": {
"type": "String",
"required": true
},
"name": {
"type": "String",
"required": true
},
"category": {
"type": "String",
"required": true
},
"condition": {
"type": "String",
"required": true
},
"isAvailable": {
"type": "Boolean",
"required": true
},
"location": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "GearRental",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"gearItem": {
"type": "Pointer",
"required": true,
"targetClass": "GearItem"
},
"checkedOutBy": {
"type": "Pointer",
"required": true,
"targetClass": "CrewMember"
},
"rentalDate": {
"type": "Date",
"required": true
},
"returnDueDate": {
"type": "Date",
"required": true
},
"returnedAt": {
"type": "Date",
"required": false
},
"status": {
"type": "String",
"required": true
},
"conditionOut": {
"type": "String",
"required": false
},
"conditionIn": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "CallSheet",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"projectName": {
"type": "String",
"required": true
},
"shootDate": {
"type": "Date",
"required": true
},
"callTime": {
"type": "String",
"required": true
},
"location": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"notes": {
"type": "String",
"required": false
},
"createdBy": {
"type": "Pointer",
"required": true,
"targetClass": "CrewMember"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "CallSheetDistribution",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"callSheet": {
"type": "Pointer",
"required": true,
"targetClass": "CallSheet"
},
"recipientEmail": {
"type": "String",
"required": true
},
"deliveryMethod": {
"type": "String",
"required": true
},
"sentAt": {
"type": "Date",
"required": true
},
"deliveryStatus": {
"type": "String",
"required": true
},
"openedAt": {
"type": "Date",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "ClientProject",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"clientName": {
"type": "String",
"required": true
},
"projectCode": {
"type": "String",
"required": true
},
"title": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"producer": {
"type": "Pointer",
"required": true,
"targetClass": "CrewMember"
},
"callSheet": {
"type": "Pointer",
"required": false,
"targetClass": "CallSheet"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
}
]
}AI 에이전트로 빌드
이 템플릿을 사용하여 Back4app AI 에이전트를 활용하여 실제 비디오 제작 팀 CRM 앱을 생성하세요. 프론트엔드, 백엔드, 인증 및 CrewMember, GearItem, CallSheet 흐름을 포함합니다.
이 정확한 스키마와 동작을 사용하여 Back4app에서 비디오 제작 팀 CRM 앱 백엔드를 생성하세요. 스키마: 1. CrewMember: fullName (String, 필수), email (String, 필수), phone (String), role (String, 필수), notes (String); objectId, createdAt, updatedAt (시스템). 2. AvailabilitySlot: crewMember (CrewMember에 대한 포인터, 필수), date (Date, 필수), startTime (String, 필수), endTime (String, 필수), status (String, 필수), location (String); objectId, createdAt, updatedAt (시스템). 3. GearItem: assetTag (String, 필수), name (String, 필수), category (String, 필수), condition (String, 필수), isAvailable (Boolean, 필수), location (String); objectId, createdAt, updatedAt (시스템). 4. GearRental: gearItem (GearItem에 대한 포인터, 필수), checkedOutBy (CrewMember에 대한 포인터, 필수), rentalDate (Date, 필수), returnDueDate (Date, 필수), returnedAt (Date), status (String, 필수), conditionOut (String), conditionIn (String); objectId, createdAt, updatedAt (시스템). 5. CallSheet: projectName (String, 필수), shootDate (Date, 필수), callTime (String, 필수), location (String, 필수), status (String, 필수), notes (String), createdBy (CrewMember에 대한 포인터, 필수); objectId, createdAt, updatedAt (시스템). 6. CallSheetDistribution: callSheet (CallSheet에 대한 포인터, 필수), recipientEmail (String, 필수), deliveryMethod (String, 필수), sentAt (Date, 필수), deliveryStatus (String, 필수), openedAt (Date); objectId, createdAt, updatedAt (시스템). 7. ClientProject: clientName (String, 필수), projectCode (String, 필수), title (String, 필수), status (String, 필수), producer (CrewMember에 대한 포인터, 필수), callSheet (CallSheet에 대한 포인터); objectId, createdAt, updatedAt (시스템). 보안: - 권한이 있는 조정자만 GearItem 및 GearRental을 생성/편집할 수 있습니다. 검증 및 촉탁서 배포 검사를 위해 Cloud Code를 사용하세요. 인증: - 가입, 로그인, 로그아웃. 행동: - 팀원 목록, 가용 시간 확인, 장비 대여 로그 생성, 촉탁서 생성 및 촉탁서 배포 추적. 배포: - 스키마, ACL, CLP가 포함된 Back4app 앱; 팀 명단, 가용성, 장비, 대여, 촉탁서 및 배포를 위한 프론트엔드.
아래 버튼을 눌러 이 템플릿 프롬프트가 미리 채워진 상태로 에이전트를 열어보세요.
이것은 기술 접미사가 없는 기본 프롬프트입니다. 생성된 프론트엔드 스택은 이후에 조정할 수 있습니다.
API 플레이그라운드
크루 CRM 스키마에 대해 REST 및 GraphQL 엔드포인트를 시도해 보세요. 응답은 모의 데이터를 사용하며 Back4app 계정이 필요하지 않습니다.
이 템플릿과 동일한 스키마 사용
스택 선택
각 카드를 확장하여 선택한 스택과 CrewMember, AvailabilitySlot 및 GearItem을 통합하는 방법을 확인하세요.
Flutter 크루 CRM 백엔드
React 크루 CRM 백엔드
React 네이티브 크루 CRM 백엔드
__브랜드0__ 크루 CRM 백엔드
__브랜드0__ 크루 CRM 백엔드
__브랜드0__ 크루 CRM 백엔드
__브랜드0__ 크루 CRM 백엔드
__브랜드0__ 크루 CRM 백엔드
__브랜드0__ 크루 CRM 백엔드
__브랜드0__ 크루 CRM 백엔드
__브랜드0__ 크루 CRM 백엔드
__브랜드0__ 크루 CRM 백엔드
__브랜드0__ 크루 CRM 백엔드
모든 기술로 얻을 수 있는 것
모든 스택은 동일한 팀 CRM 백엔드 스키마와 API 계약을 사용합니다.
통합된 프로덕션 운영 데이터 구조
CrewMember, AvailabilitySlot, GearItem, GearRental, CallSheet 및 CallSheetDistribution을 하나의 스키마로 관리합니다.
팀 일정 관리 지원
전화를 하기 전에 누가 가능한지 확인하고 연락처 정보를 한 곳에 보관하세요.
장비 및 대여 추적
프로덕션 장비의 체크아웃 시간, 기한 및 반납 상태를 기록합니다.
콜 시트 전달 작업 흐름
모든 부서가 현재 시트를 받을 수 있도록 배포 영수증을 추적하세요.
REST/GraphQL API는 제작 팀을 위한 것입니다.
웹, 모바일 및 내부 도구를 하나의 백엔드 계약으로 통합하세요.
Crew Stack 비교
모든 지원되는 기술에 걸쳐 설정 속도, SDK 스타일 및 AI 지원을 비교합니다.
| 프레임워크 | 설정 시간 | 크루 CRM 혜택 | 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분 이내 | 크루 CRM 쿼리를 위한 유연한 GraphQL API. | GraphQL API | 전체 | |
| 간편한 (2분) 설정 | 크루 도구를 위한 REST API 통합. | REST API | 전체 | |
| ~3분 | 생산 워크플로우를 위한 서버 측 PHP 백엔드. | REST API | 전체 | |
| ~3–7 분 | .NET 스튜디오 운영을 위한 백엔드. | 입력된 SDK | 전체 |
설정 시간은 이 템플릿 스키마를 사용하여 프로젝트 부트스트랩부터 첫 번째 크루, 장비 또는 콜 시트 쿼리까지 예상되는 기간을 반영합니다.
팀 FAQ
이 템플릿으로 비디오 제작 팀 CRM 백엔드를 구축하는 것에 대한 일반적인 질문입니다.