메뉴
13
원본 left_menu.php 기준
옮긴 화면
13 / 13
관리자 API
21
가드레일
31
critical 9
이관 진행도
100%
원본 admin/ 아래 PHP 는 143개지만, 좌측 메뉴가 가리키는 실제 화면은 13개입니다. 나머지는 백업과 폐기된 것입니다.
개발 스펙 (8)
메뉴 13개를 성격이 같은 것끼리 묶어 8개로 적었습니다. 요건 · 규칙 · API · 가드레일 · 구현 계획 · 자바 설계 · 테스트 방법이 들어 있습니다.
질문답변
ADMIN-QNAwvctesol-admin/qna완료이 화면에서 할 수 있어야 하는 것 (3)
- 회원이 남긴 문의에 답변한다.
- 답변대기 건수를 늘 보여 준다 — 밀리면 운영이 밀린다.
- 답을 비우고 저장하면 다시 답변대기로 돌아간다.
비즈니스 규칙 (4)
- 관리자 목록은 숨긴 글도 보여 준다. 공개 조회와 유스케이스를 나눈 이유다.
- 상태를 따로 고르게 하지 않는다 — 답이 있으면 end, 비우면 apply.근거: qa_proc.php:152
- 관리자는 문의를 새로 쓸 수 없다. 회원이 내는 글이라 작성자가 뒤섞인다.
- 수정일 컬럼이 moddate 다. apply 테이블만 mod_date 를 쓴다.
API (3)
| 메서드 | 경로 | 권한 | 모듈 · 설명 |
|---|---|---|---|
GET | /api/community/admin/{board} | 관리자 | 관리자 목록. 숨김 조건 없이 전부. status 로 거른다. domains:community:community-web |
GET | /api/community/admin/{board}/{id} | 관리자 | 관리자 상세. 숨긴 글도 돌려준다. domains:community:community-web |
POST | /api/community/admin/qna/{id}/answer | 관리자 | 답변 저장. 상태는 답 유무로 정해진다. domains:community:community-web404 POST_NOT_FOUND |
가드레일 (2) — id 가 곧 테스트 이름이다
| id | 반드시 만족해야 하는 것 | 등급 |
|---|---|---|
qna-answer-status-follows-answer | 답이 있으면 답변완료, 비우면 답변대기여야 한다. 둘이 어긋나면 안 된다. | high |
qna-admin-cannot-write | 관리자가 문의를 새로 쓸 수 없어야 한다. 회원이 내는 글이라 대신 쓰면 작성자가 뒤섞인다. | normal |
구현 계획 (4/4)
- ●QnaStatus — 답 유무로 상태를 정한다
community-domain - ●AdminBoardUseCase — 숨긴 글도 보는 별도 유스케이스
community-app - ●listForAdmin · findAny · answerQna
community-infrastructure - ●목록 · 상세 · 답변 폼
wvctesol-admin
서버 사이드 구현 계획 — 자바 객체별 요구사항 (2/2)
| 객체 | 모듈 | 책임 · 지켜야 할 것 |
|---|---|---|
● QnaStatusenum | community-domain | 문의 처리 상태.
|
● AdminBoardUseCaseservice | community-app | 관리자 게시판 조회·쓰기.
|
테스트 방법 (2)
| 가드레일 | 종류 | 확인 방법 |
|---|---|---|
qna-answer-status-follows-answer | e2e | 답변 저장 → 답변완료, 비우고 저장 → 답변대기 |
qna-admin-cannot-write | integration | POST /api/community/admin/qna → 400 NOT_WRITABLE |
운영
| 메뉴 | 원본 | 원본 줄수 | 옮긴 파일 | 상태 |
|---|---|---|---|---|
관리자 관리 /admins | admin/admin/ad_list.php | 443 |
| 완료 |
회원 관리 /members | admin/member/mb_list.php | 529 |
| 완료 |
배너 관리 /banners | admin/banner/banner_list.php | 187 |
| 완료 |
게시판
| 메뉴 | 원본 | 원본 줄수 | 옮긴 파일 | 상태 |
|---|---|---|---|---|
공지사항 /notices | admin/board/nt_list.php | 159 |
| 완료 |
수강후기 /reviews | admin/board/sty_list.php | 169 |
| 완료 |
합격노트 /pass-notes | admin/board/passnote_list.php | 248 |
| 완료 |
질문답변 /qna | admin/board/qa_list.php | 190 |
| 완료 |
상담신청 /applications | admin/board/ap_list.php | 621 |
| 완료 |
자주듣는 질문 /faqs | admin/board/faq_list.php | 203 |
| 완료 |
수강 · 결제
| 메뉴 | 원본 | 원본 줄수 | 옮긴 파일 | 상태 |
|---|---|---|---|---|
결제리스트 /payments | admin/payment/payment_list.php | 244 |
| 완료 |
TESOL Unit /units/tesol | admin/unit/unit_list.php | 75 |
| 완료 |
TEC Unit /units/tec | admin/unit/unit_list_tec.php | 75 |
| 완료 |
레벨테스트 /level-tests | admin/unit/level_test_list.php | 92 |
| 완료 |