company_assign_request_approval (회사 입사 신청 승인/거절)
회사 관리자가 입사 신청을 승인하거나 거절합니다.
기본 정보
| 항목 | 값 |
|---|---|
| URL | https://asia-northeast3-construction24-test.cloudfunctions.net/company_assign_request_approval |
| Method | POST |
| 인증 | Firebase ID Token 필요 |
| 권한 | 해당 회사의 멤버여야 함 |
요청
Body
| 필드 | 타입 | 필수 | 설명 | 검증 |
|---|---|---|---|---|
| token | string | O | Firebase ID Token | - |
| company_id | string | O | 회사 ID | - |
| request_id | string | O | 요청 ID (membership_requests 문서 ID) | - |
| request_state | string | O | 처리 상태 | "approved" 또는 "rejected" |
| role | string | O | 부여할 역할 (승인 시) | "manager" 또는 "admin" |
요청 예시
{
"token": "eyJhbGci...",
"company_id": "company123",
"request_id": "request456",
"request_state": "approved",
"role": "manager"
}
응답
성공 (200)
승인 시:
거절 시:
실패
| 코드 | error | 원인 |
|---|---|---|
| 400 | "권한이 없습니다." | 요청자가 해당 회사의 멤버가 아님 |
| 400 | "올바르지 않은 역할입니다." | role이 manager/admin이 아님 |
| 400 | "올바르지 않은 상태입니다." | request_state가 approved/rejected가 아님 |
| 400 | "존재하지 않는 기업입니다." | 잘못된 company_id |
| 400 | "요청 데이터가 없습니다." | 존재하지 않는 request_id |
| 400 | "요청 상태가 pending 이 아닙니다." | 이미 처리된 요청 |
| 400 | "이미 입사 사용자입니다." | 이미 활성 상태의 멤버 |
| 500 | "{에러 내용}" | 서버 오류 |
참고
- 관련 API: [[company_assign_request]], [[company_assign_request_cancel]], [[company_resign]]
- 승인 시 생성/업데이트되는 데이터:
companies/{company_id}/members/{UID}: 회사 멤버 정보users/{UID}/membership/{company_id}: 사용자의 소속 회사 정보- 재입사의 경우 기존 멤버 문서의 resign 상태를 false로 변경
- 멤버 기본 설정: wage_rate=0, labor_supplier="없음", allowed_sites=[], allowed_pages=[]