feat(frontend): 승인 템플릿 API 통합 및 디버그 로그인 확장

- docs 폴더 문서를 최신 API 계약으로 갱신하고 가이드를 다듬었다\n- approvals data/presentation 레이어를 API v4 스펙에 맞춰 리팩터링했다\n- approver 자동완성 위젯을 신규 공유 레포지토리에 맞춰 교체하고 UX를 보강했다\n- inventory/rental 페이지 테이블 초기화 시 승인 기준 연동을 정비했다\n- 로그인 페이지 디버그 버튼을 tera/exa 계정으로 분리해 QA 로그인을 단순화했다\n- get_it 등록과 테스트 케이스를 신규 공유 리포지토리에 맞춰 업데이트했다
This commit is contained in:
JiWoong Sul
2025-11-05 17:05:38 +09:00
parent 3e83408aa7
commit fa0bda5ea4
28 changed files with 1102 additions and 545 deletions

View File

@@ -67,7 +67,7 @@
- [x] 단계 행위: 승인/반려/코멘트 버튼(가능 여부 상태에 따라 비활성/툴팁) (현황: 단계 버튼·툴팁·행위 다이얼로그를 구현했고 `ApprovalRepository.performStepAction` 연동 완료, 권한 기반 노출/후속 알림은 TODO)
- [x] 단계 관리(`/approval-steps`): 목록/편집(신규/수정) (현황: 목록/필터 + 상세/신규/수정 모달 UI를 구현하고 컨트롤러에서 생성·수정 호출까지 연동, 삭제/권한 제어는 후속 예정)
- [x] 이력(`/approval-histories`): 조회 전용 테이블 (현황: AppLayout 기반 필터·페이지네이션 테이블과 기간 선택/엑셀 비활성 버튼까지 구현, 다운로드 API 연동은 후속 예정)
- [x] 템플릿(`/approval-templates`): 목록/헤더+단계 반복 폼 (현황: AppLayout + FilterBar + 페이지네이션 테이블과 생성/수정/삭제/복구 플로우를 구현했고 단계 등록 API까지 연동 완료, 승인자 자동완성·권한 제어 등 추가 UX는 후속 예정)
- [x] 템플릿(`/approval/templates`): 목록/헤더+단계 반복 폼 (현황: AppLayout + FilterBar + 페이지네이션 테이블과 생성/수정/삭제/복구 플로우를 구현했고 단계 등록 API까지 연동 완료, 승인자 자동완성·권한 제어 등 추가 UX는 후속 예정)
### Approval Flow v2 (신규)
- [ ] 입고/출고/대여 등록 폼에 결재 단계 구성 섹션 추가 (`ApprovalStepConfigurator` 모달/섹션, `ShadTable` 기반 리스트)

View File

@@ -183,7 +183,7 @@
- 테이블 전용: 번호, 결재ID, 단계ID, 승인자, 행위, 변경전상태, 변경후상태, 작업일시, 비고.
### 5.16 결재 템플릿 관리
- 라우트: `/approval-templates`
- 라우트: `/approval/templates`
- 테이블: 번호, 템플릿코드, 템플릿명, 설명, 작성자, 사용여부, 변경일시.
- 신규/수정:
- 헤더: 템플릿코드[TXT], 템플릿명[TXT], 설명[TXT], 작성자[RO], 사용여부[SW], 비고[TXT].
@@ -523,7 +523,7 @@
- 생성: `POST /stock-transactions` 바디 내 헤더/라인/고객 배열 동시 전달
- 결재 상세: `GET /approvals/{id}?include=steps,histories`
- 단계 행위: `POST /approval-steps/{id}/actions` with `approval_action_id`
- 결재 템플릿: `GET/POST/PATCH /approval-templates`, `POST/PATCH /approval-templates/{id}/steps`
- 결재 템플릿: `GET/POST/PATCH /approval/templates`, `POST/PATCH /approval/templates/{id}/steps`
- 룩업: `/uoms`, `/transaction-types`, `/transaction-statuses`, `/approval-statuses`, `/approval-actions`
## 20. 컴포넌트 매핑(shadcn_ui)

View File

@@ -1758,10 +1758,10 @@
---
## 6. 결재 템플릿 API
리소스: `/approval-templates`
리소스: `/approval/templates`
### 6.1 목록 조회
`GET /approval-templates?page=1`
`GET /approval/templates?page=1`
```json
{
"items": [
@@ -1788,7 +1788,7 @@
- `created_by`는 작성자의 `id`, `employee_id`, `name`을 포함하며 `include=` 파라미터 없이도 기본 반환된다.
### 6.2 단건 조회
`GET /approval-templates/3001?include=steps`
`GET /approval/templates/3001?include=steps`
```json
{
"data": {
@@ -1821,7 +1821,7 @@
```
### 6.3 생성·수정
- `POST /approval-templates`
- `POST /approval/templates`
```json
{
"template_code": "AP_OUTBOUND",
@@ -1832,7 +1832,7 @@
}
```
- `POST /approval-templates/3002/steps`
- `POST /approval/templates/3002/steps`
```json
{
"id": 3002,
@@ -1849,7 +1849,7 @@
}
```
- `PATCH /approval-templates/3002`
- `PATCH /approval/templates/3002`
```json
{
"id": 3002,
@@ -1858,7 +1858,7 @@
}
```
- `PATCH /approval-templates/3002/steps`
- `PATCH /approval/templates/3002/steps`
```json
{
"id": 3002,
@@ -1872,7 +1872,7 @@
}
```
- 삭제/복구: `DELETE /approval-templates/{id}`, `POST /approval-templates/{id}/restore`
- 삭제/복구: `DELETE /approval/templates/{id}`, `POST /approval/templates/{id}/restore`
---

View File

@@ -132,7 +132,7 @@ zipcodes ||--o{ customers : addressed
| created_at | 생성일시 | timestamp | - | now() | Y | | | |
| updated_at | 변경일시 | timestamp | - | now() | Y | | | |
> API 기본 응답(`GET /approval-templates`, `GET /approval-templates/{id}`)은 작성자 요약(`created_by { id, employee_id, name }`)을 항상 포함하며, `include=created_by` 없이도 반환된다.
> API 기본 응답(`GET /approval/templates`, `GET /approval/templates/{id}`)은 작성자 요약(`created_by { id, employee_id, name }`)을 항상 포함하며, `include=created_by` 없이도 반환된다.
---