입실신청서 (키오스크 K-03) — feature/admission_form/app
앱(키오스크) 번들 admission_form 의 화면 K-03(/admission_form). 조립된 스캐폴드(wizard · BLoC · 목 저장소)를
지우고 Figma K-03 화면으로 바꿨다. 다음 화면은 consent_record(K-04).
라우트 화면(AdmissionFormPage)이 공용 데모 세계 · 세션을 서비스 로케이터에서 받는다(없으면 S-05). 세션의 코드
(passId)가 입실 코드가 아니거나 제출 · 만료됐으면 /code 로 돌려보낸다(FR-123). 처음 값은 저장해 둔 초안, 없으면
예약 · 고객 · 신생아 행(AdmissionFormPrefill — 이름 · 휴대전화 뒤 4자리 · 태어난 해 · 출생 기록). 단계를 옮길 때마다
초안을 documents(AdmissionPaperwork.saveForm)에 저장하고 — 콘솔 C-07 ① 이 「작성 중」을 본다 — 마지막 「다음」은
끝냈다고 적은 뒤 /consent_record 로 간다. 틀은 공용 KioskFrame(postpartum_ui)이다.
화면
| 단계 | 내용 | 검사 |
|---|---|---|
| 1 / 4 산모 정보 | 이름 · 휴대전화 뒤 4자리 · 태어난 해 · 이번 출산(첫째/둘째/셋째 이상) · 알레르기 · 복용 약 · 주소(예약에서 채워 온 칸은 확인 · 보완) | 필수 · 형식(AdmissionFormRules) |
| 2 / 4 신생아 정보 | 이름 · 태명 · 성별 · 출생 일시(서울 시각) · 재태 기간 · 출생 체중 · 분만형태 · 병원 · 수유. 다태아는 아기 탭(최대 3) | 체중 g/kg 입력(parseWeightGrams) |
| 3 / 4 보호자 | 이름 · 관계 · 휴대전화 번호, 끝에 「다음은 동의서 · 서명이에요」 안내 | 필수 · 번호 형식 |
| 4 / 4 동의 · 서명 | K-04 화면(진행 표시에만 보인다) | — |
- 머리: 지점 · 기기 이름 · 저장 시각, 진행(「2 / 3 신생아 정보」), 처음으로(확인 다이얼로그).
- 폭이 600 × scaling 보다 좁으면(QR 로 연 폰) 진행 · 안내를 본문으로 옮기고 버튼을 한 줄로 둔다.
- 마지막 「다음」 → 제출(
onSubmit) →/consent_record. 처음으로 →/code.
FR ↔ 구현 ↔ 시험
| FR | 상태 | 구현 | 시험 |
|---|---|---|---|
| FR-122 입실 서류(신청서) | 실동작 | AdmissionFormView · AdmissionFormRules · AdmissionFormPayload · AdmissionPaperwork.saveForm |
admission_form_rules_test · admission_form_view_test(빠진 칸 · 보호자 · 쌍둥이 · ar · 스케일 4조합) · admission_form_page_test(예약에서 채움 · 단계 자동 저장 · 끝내면 K-04) · BDD admission_form.feature |
| FR-123 제출 뒤 정리 | 실동작 | 코드 없음 · 제출됨 · 만료 → /code |
admission_form_page_test |
| FR-41(입실 쪽) | 실동작 | 초안 · 완료가 C-07 ① 에 실시간 | stay_world_pages_test(두 세션) |
골든: test/golden/admission_form_golden_test.dart(산모 · 신생아 단계).
모의 경계
- 없음 — 입력 · 검사 · 저장 · 이동이 실제로 돈다. 산모가 적은 내용은
documents.payload(C)에 그대로 남는다.
Figma 와 다르게 둔 점
- 머리의 「앱 이름 · 지점 · 기기」는 셸의
KioskChromeScope가 준다(없으면 화면이 받은 값으로 씌운다). - 지시서의 「입실 규정 확인」 단계는 따로 두지 않았다 — 규정 확인은 K-04 의 첫 필수 동의 항목(「입실 규정 확인」)으로 받고, K-03 보호자 단계 끝에 다음 화면 안내를 둔다. 진행 표시는 K-04 까지 넷이다.