equipment_site_change (장비 현장 강제 변경)
관리자가 장비의 현장을 강제로 변경합니다.
기본 정보
| 항목 |
값 |
| URL |
https://asia-northeast3-construction24-test.cloudfunctions.net/equipment_site_change |
| Method |
POST |
| 인증 |
Firebase ID Token 필요 |
| 권한 |
회사 멤버여야 함 |
요청
| 헤더 |
값 |
필수 |
설명 |
| Authorization |
Bearer |
O |
Firebase ID Token |
| Content-Type |
application/json |
O |
- |
Body
| 필드 |
타입 |
필수 |
설명 |
검증 |
| company_id |
string |
O |
회사 ID |
- |
| from_site_id |
string |
O |
출발 현장 ID |
- |
| to_site_id |
string |
O |
도착 현장 ID |
- |
| equipment_id |
string |
O |
이동시킬 장비 ID |
- |
요청 예시
{
"company_id": "company123",
"from_site_id": "site456",
"to_site_id": "site789",
"equipment_id": "equipment123"
}
응답
성공 (200)
{
"message": "장비 현장 변경 완료: 강남현장 -> 서초현장",
"equipment_name": "굴삭기 1호",
"from_site": "강남현장",
"to_site": "서초현장"
}
실패
| 코드 |
message |
원인 |
| 400 |
"출발 현장이 존재하지 않습니다." |
from_site_id에 해당하는 현장이 없음 |
| 400 |
"도착 현장이 존재하지 않습니다." |
to_site_id에 해당하는 현장이 없음 |
| 400 |
"도착 현장이 활성화 상태가 아닙니다." |
to_site의 status가 activate가 아님 |
| 400 |
"해당 장비가 출발 현장에 존재하지 않습니다." |
장비가 from_site에 배정되어 있지 않음 |
| 400 |
"이미 해제된 장비입니다." |
장비가 resign=True 상태 |
| 400 |
"출근 중이므로 현장 변경이 불가합니다." |
장비가 출발 현장에 출근 중인 상태 |
| 400 |
"출퇴근 요청이 처리 중이므로 현장 변경이 불가합니다." |
장비의 출퇴근 요청이 pending 상태 |
| 400 |
"장비 소유자 정보를 찾을 수 없습니다." |
장비 소유자 정보가 없음 |
| 400 |
"장비 정보를 찾을 수 없습니다." |
users/{UID}/equipments에서 장비 정보를 찾을 수 없음 |
| 403 |
"권한이 없습니다." |
요청자가 회사 멤버가 아님 |
| 500 |
"현장 변경 처리 중 오류 발생: {에러메시지}" |
서버 내부 오류 |
참고
- 관리자가 승인 절차 없이 직접 장비 현장을 변경합니다.
- 출발 현장에서는 해제 처리되고 도착 현장에 배정됩니다.
- 관련 API: equipment_site_change_request, equipment_site_change_request_approval