콘텐츠로 이동

sites 스키마

현장(건설 사이트) 본문 문서의 전체 스키마. 각 엔드포인트 문서에서 참조용으로 사용합니다.

저장 위치

companies/{company_id}/sites/{site_id}

상태 흐름

preparation → activate → complete
preparation → activate ↔ deactivate
  • preparation: 현장 생성 직후 준비 단계 (기본값)
  • activate: 활성화 상태. 출퇴근/배정/현장 변경 요청 처리 가능
  • deactivate: 비활성화. pending 상태의 모든 요청(입사/출석/현장변경)이 자동 거절됨
  • complete: 완료/종료. 모든 요청 자동 거절 + 미완결 출근 로그 삭제 + 모든 멤버 자동 퇴사 처리

문서 필드

필드 타입 설명
company_id string 소속 회사 ID
name string 현장명 (같은 회사 내 유일)
location string 현장 주소/위치
status string "preparation" | "activate" | "deactivate" | "complete"
supervisor_UID string 현장 감독자 UID (companies/{cid}/members 중 1명)
supervisor_name string 감독자 이름 (캐시)
tags string[] 현장 태그 배열
scale int 현장 규모(연면적/층수 등 숫자 값)
start_date timestamp 공사 시작일
end_date timestamp 공사 종료일
task_name_list object[]? 작업 이름 + 기본 시작 시각 프리셋. 아래 task_name_list 참조
task_management_layout string[]? 작업 관리 페이지 레이아웃 배열 (아래 Layout 항목 참조)
created_at timestamp 생성 시각 (서버 타임스탬프)
create_UID string 생성한 사용자 UID
updated_at timestamp? 정보 수정 시각
update_UID string? 최근 수정자 UID

task_name_list

[
  { "task_name": "A동 타설", "task_start_time": "08:00" },
  { "task_name": "B동 마감", "task_start_time": "13:00" }
]
필드 타입 설명
task_name string 작업 이름 (같은 현장 내 중복 불가)
task_start_time string 기본 시작 시각 "HH:MM"

Layout 항목

task_management_layout 배열에 들어갈 수 있는 허용 값:

  • "작업 개요" (필수)
  • "일일 위험성 평가"
  • "근로자 의견"
  • "자재 반입 현황"
  • "폐기물 처리 현황"
  • "특이사항 메모"
  • "첨부파일"

관련 서브컬렉션

현장 본문 하위에 다음 서브컬렉션이 존재합니다:

경로 설명
members/{uid} 현장 근로자 (workers)
equipments/{equipment_id} 현장 장비
supervisor/{uid} 현장 감독자 (owner, admin, 감독자)
attendance_logs/{log_id} 근로자 출퇴근 로그
attendance_requests/{request_id} 근로자 출퇴근 요청
equipment_attendance_logs/{log_id} 장비 출퇴근 로그
equipment_attendance_requests/{request_id} 장비 출퇴근 요청
membership_requests/{request_id} 현장 입사 요청
change_requests/{request_id} 근로자 현장 변경 요청
equipment_assign_requests/{request_id} 장비 배정 요청
equipment_change_requests/{request_id} 장비 현장 변경 요청
tasks/{task_id} 일별 작업
waste/{waste_id} 폐기물 품목 마스터
material/{material_id} 자재 품목 마스터
files/{file_id} 현장 관련 파일 메타
folders/{folder_id} 드라이브 폴더
labor_ledger/{YYYYMM} 노임대장 (월별)
dashboard/{YYYYMM} 작업 대시보드 (월별)
task_summary/{YYYYMM} 자재/폐기물 사용량 월별 요약
suspension_works/{id} 작업 중지권

예시 문서 (activate 상태)

{
  "company_id": "company_abc",
  "name": "A현장",
  "location": "서울시 강남구 테헤란로 123",
  "status": "activate",
  "supervisor_UID": "uid_supervisor",
  "supervisor_name": "김감독",
  "tags": ["아파트", "신축"],
  "scale": 1500,
  "start_date": "2026-01-01T00:00:00Z",
  "end_date": "2026-12-31T00:00:00Z",
  "task_name_list": [
    { "task_name": "A동 타설", "task_start_time": "08:00" }
  ],
  "task_management_layout": ["작업 개요", "일일 위험성 평가", "첨부파일"],
  "created_at": "2025-12-20T10:00:00Z",
  "create_UID": "uid_owner"
}