콘텐츠로 이동

site_change_request_approval (현장 변경 요청 승인/거절)

현장 관리자가 현장 변경 요청을 승인하거나 거절합니다.

기본 정보

항목
URL https://asia-northeast3-construction24-test.cloudfunctions.net/site_change_request_approval
Method POST
인증 Firebase ID Token 필요
권한 회사 멤버여야 함

요청

Headers

헤더 필수 설명
Authorization Bearer O Firebase ID Token
Content-Type application/json O -

Body

필드 타입 필수 설명 검증
company_id string O 회사 ID -
request_ids array O 처리할 요청 ID 배열 -
request_state string O 처리 상태 approved 또는 rejected

요청 예시

{
  "company_id": "company123",
  "request_ids": ["request1", "request2"],
  "request_state": "approved"
}

응답

성공 (200)

{
  "message": "사이트 변경 요청 처리 완료",
  "fail_list": []
}

부분 실패 시

{
  "message": "사이트 변경 요청 처리 완료",
  "fail_list": [
    {"request_id": "request1", "error": "요청 데이터가 없습니다."},
    {"request_id": "request2", "error": "이미 퇴사한 사용자입니다."}
  ]
}

실패

코드 message 원인
400 "권한이 없습니다." 요청자가 회사 멤버가 아님
400 "올바르지 않은 상태입니다." request_state가 approved/rejected가 아님
500 "{에러메시지}" 서버 내부 오류

개별 요청 실패 사유 (fail_list)

error 원인
"요청 데이터가 없습니다." request_id에 해당하는 요청이 없음
"요청 데이터에 사이트 정보가 없습니다." from_site_id 또는 to_site_id가 없음
"출발 현장이 존재하지 않습니다." from_site가 없음
"도착 현장이 존재하지 않습니다." to_site가 없음
"도착 현장이 활성화 상태가 아닙니다." to_site의 status가 activate가 아님
"요청 상태가 pending 이 아닙니다." 이미 처리된 요청
"출발 현장 멤버 정보를 찾을 수 없습니다." 출발 현장에 멤버 정보가 없음
"이미 퇴사한 사용자입니다." 이미 퇴사 처리된 멤버

참고

  • 여러 요청을 한 번에 처리할 수 있습니다.
  • 승인 시 출발 현장에서 퇴사 처리되고 도착 현장에 입사 처리됩니다.
  • 관련 API: site_change_request, site_change_request_cancel, site_change