의무 등록 번호 관리 API
참고: 이 문서에 설명된 모든 API는
dta-wir-medi-api애플리케이션에 구현되어 있습니다. (Go)
개요
의무 등록 번호 관리 API는 환자의 의무 등록 번호(Medical Registration Number)를 생성, 업데이트, 상태 관리하는 기능을 제공합니다.
주요 기능
- 의무 등록 번호 생성: 새로운 의무 등록 번호 생성
- 환자 의무 등록 번호 업데이트: 특정 환자의 의무 등록 번호 업데이트
- 의무 등록 번호 상태 업데이트: 의무 등록 번호 활성화/비활성화
[POST] /v1/medical-registration-number - 의무 등록 번호 생성
의무 등록 번호 생성
새로운 의무 등록 번호를 생성합니다.
- HTTP Method:
POST - 인증: 액세스 토큰 (
accessToken) 필요
서버 로직 수정 필요
medical_registration_number 테이블은 더이상 사용하지 않습니다. user_accesscode 테이블에 데이터를 저장하도록 수정이 필요합니다.
Headers
| Header | Type | Description | Required |
|---|---|---|---|
| Authorization | Bearer {accessToken} | 사용자 인증을 통해 발급받은 액세스 토큰 입니다. | ✔ |
| Content-Type | application/json | 요청 본문 형식 | ✔ |
Request Body
| 필드 | 타입 | 설명 | Required |
|---|---|---|---|
| medicalRegistrationNumber | string | 의무 등록 번호 | ✔ |
| siteId | number | 사이트 ID | ✔ |
| groupId | number | 그룹 ID | ✔ |
| accountId | number | 담당 의료진 계정 ID | ✔ |
Request Body 예시
{
"medicalRegistrationNumber": "MRN-20240115-001",
"siteId": 1,
"groupId": 5,
"accountId": 10
}
Responses
| Http Status Code | 설명 | Error Code(s) |
|---|---|---|
200 OK | 의무 등록 번호 생성 성공 | - |
400 Bad Request | 잘못된 요청 | BAD_REQUEST (40000) |
401 Unauthorized | 인증 실패 | UNAUTHORIZED (40100) |
409 Conflict | 중복된 등록 번호 | CONFLICT (40900) |
500 Internal Server Error | 서버 내부 오류 | INTERNAL_SERVER_ERROR (50000) |
200 OK - 성공
{
"success": true
}
| 필드 | 타입 | 설명 |
|---|---|---|
| success | boolean | 성공 여부 (true) |
400 Bad Request - 잘못된 요청
{
"status": 400,
"code": 40000,
"message": "요청한 정보가 유효하지 않습니다."
}
발생 가능한 에러 메시지:
- 필수 필드가 누락된 경우
- 유효하지 않은 형식의 등록 번호
401 Unauthorized - 인증 실패
{
"status": 401,
"code": 40100,
"message": "UNAUTHORIZED"
}
409 Conflict - 중복된 등록 번호
{
"status": 409,
"code": 40900,
"message": "이미 존재하는 의무 등록 번호입니다."
}
500 Internal Server Error - 서버 내부 오류
{
"status": 500,
"code": 50000,
"message": "INTERNAL_SERVER_ERROR"
}
[PATCH] /v1/users/{userId}/medical-registration-number - 환자 의무 등록 번호 업데이트
환자 의무 등록 번호 업데이트
특정 환자(사용자 사이클)의 의무 등록 번호를 업데이트합니다.
[클라이언트 수정 필요]
asis:/v1/patients/user-cycles/{userCycleId}/medical-registration-number> tobe:/v1/users/{userId}/medical-registration-number
- HTTP Method:
PATCH - 인증: 액세스 토큰 (
accessToken) 필요
Headers
| Header | Type | Description | Required |
|---|---|---|---|
| Authorization | Bearer {accessToken} | 사용자 인증을 통해 발급받은 액세스 토큰 입니다. | ✔ |
| Content-Type | application/json | 요청 본문 형식 | ✔ |
Path Parameters
| 필드 | 타입 | 설명 | Required |
|---|---|---|---|
| userId | number | 사용자 ID | ✔ |
Request Body
| 필드 | 타입 | 설명 | Required |
|---|---|---|---|
| medicalRegistrationNumber | string | 의무 등록 번호 | ✔ |
Request Body 예시
{
"medicalRegistrationNumber": "MRN-20240115-002"
}
Responses
| Http Status Code | 설명 | Error Code(s) |
|---|---|---|
200 OK | 의무 등록 번호 업데이트 성공 | - |
400 Bad Request | 잘못된 요청 | BAD_REQUEST (40000) |
401 Unauthorized | 인증 실패 | UNAUTHORIZED (40100) |
404 Not Found | 환자 미발견 | NOT_FOUND (40400) |
500 Internal Server Error | 서버 내부 오류 | INTERNAL_SERVER_ERROR (50000) |
200 OK - 성공
{
"success": true
}
| 필드 | 타입 | 설명 |
|---|---|---|
| success | boolean | 성공 여부 (true) |
400 Bad Request - 잘못된 요청
{
"status": 400,
"code": 40000,
"message": "유효하지 않은 의무 등록 번호입니다."
}
401 Unauthorized - 인증 실패
{
"status": 401,
"code": 40100,
"message": "UNAUTHORIZED"
}
404 Not Found - 환자 미발견
{
"status": 404,
"code": 40400,
"message": "환자 정보를 찾을 수 없습니다."
}
500 Internal Server Error - 서버 내부 오류
{
"status": 500,
"code": 50000,
"message": "INTERNAL_SERVER_ERROR"
}
[PATCH] /v1/users/medical-registration-number/{medicalRegistrationNumberId}/status - 의무 등록 번호 상태 업데이트
의무 등록 번호 상태 업데이트
의무 등록 번호의 상태를 활성화 또는 비활성화합니다.
[클라이언트 수정 필요]
asis:/v1/patients/medical-registration-number/{medicalRegistrationNumberId}/status
tobe:/v1/userse/medical-registration-number/{medicalRegistrationNumberId}/status
- HTTP Method:
PATCH - 인증: 액세스 토큰 (
accessToken) 필요
Headers
| Header | Type | Description | Required |
|---|---|---|---|
| Authorization | Bearer {accessToken} | 사용자 인증을 통해 발급받은 액세스 토큰 입니다. | ✔ |
| Content-Type | application/json | 요청 본문 형식 | ✔ |
Path Parameters
| 필드 | 타입 | 설명 | Required |
|---|---|---|---|
| medicalRegistrationNumberId | number | 의무 등록 번호 ID | ✔ |
Request Body
| 필드 | 타입 | 설명 | Required |
|---|---|---|---|
| status | number | 상태 (1: 활성, 0: 비활성) | ✔ |
Request Body 예시
{
"status": 0
}
Responses
| Http Status Code | 설명 | Error Code(s) |
|---|---|---|
200 OK | 상태 업데이트 성공 | - |
400 Bad Request | 잘못된 요청 | BAD_REQUEST (40000) |
401 Unauthorized | 인증 실패 | UNAUTHORIZED (40100) |
404 Not Found | 등록 번호 미발견 | NOT_FOUND (40400) |
500 Internal Server Error | 서버 내부 오류 | INTERNAL_SERVER_ERROR (50000) |
200 OK - 성공
{
"success": true
}
| 필드 | 타입 | 설명 |
|---|---|---|
| success | boolean | 성공 여부 (true) |
400 Bad Request - 잘못된 요청
{
"status": 400,
"code": 40000,
"message": "유효하지 않은 상태 값입니다."
}
401 Unauthorized - 인증 실패
{
"status": 401,
"code": 40100,
"message": "UNAUTHORIZED"
}
404 Not Found - 등록 번호 미발견
{
"status": 404,
"code": 40400,
"message": "의무 등록 번호를 찾을 수 없습니다."
}
500 Internal Server Error - 서버 내부 오류
{
"status": 500,
"code": 50000,
"message": "INTERNAL_SERVER_ERROR"
}
의무 등록 번호 형식
의무 등록 번호는 일반적으로 다음과 같은 형식을 따릅니다:
- 형식:
MRN-YYYYMMDD-XXXMRN: Medical Registration Number의 약자YYYYMMDD: 생성 날짜XXX: 순차 번호
예시:
MRN-20240115-001MRN-20240115-002
상태 코드
| 코드 | 설명 | 비고 |
|---|---|---|
| 0 | 비활성 | 사용 불가 |
| 1 | 활성 | 정상 사용 가능 |