151 lines
4.0 KiB
Markdown
151 lines
4.0 KiB
Markdown
# 작업 이력 관리 시스템 설치 가이드
|
|
|
|
## 📋 개요
|
|
|
|
작업 이력 관리 시스템이 추가되었습니다. 입고/출고/이송/정비 작업을 관리하고 통계를 확인할 수 있습니다.
|
|
|
|
## 🚀 설치 방법
|
|
|
|
### 1. 데이터베이스 마이그레이션 실행
|
|
|
|
PostgreSQL 데이터베이스에 작업 이력 테이블을 생성해야 합니다.
|
|
|
|
```bash
|
|
# 방법 1: psql 명령어 사용 (로컬 PostgreSQL)
|
|
psql -U postgres -d plm -f db/migrations/20241020_create_work_history.sql
|
|
|
|
# 방법 2: Docker 컨테이너 사용
|
|
docker exec -i <DB_CONTAINER_NAME> psql -U postgres -d plm < db/migrations/20241020_create_work_history.sql
|
|
|
|
# 방법 3: pgAdmin 또는 DBeaver 사용
|
|
# db/migrations/20241020_create_work_history.sql 파일을 열어서 실행
|
|
```
|
|
|
|
### 2. 백엔드 재시작
|
|
|
|
```bash
|
|
cd backend-node
|
|
npm run dev
|
|
```
|
|
|
|
### 3. 프론트엔드 확인
|
|
|
|
대시보드 편집 화면에서 다음 위젯들을 추가할 수 있습니다:
|
|
|
|
- **작업 이력**: 작업 목록을 테이블 형식으로 표시
|
|
- **운송 통계**: 오늘 작업, 총 운송량, 정시 도착률 등 통계 표시
|
|
|
|
## 📊 주요 기능
|
|
|
|
### 작업 이력 위젯
|
|
|
|
- 작업 번호, 일시, 유형, 차량, 경로, 화물, 중량, 상태 표시
|
|
- 유형별 필터링 (입고/출고/이송/정비)
|
|
- 상태별 필터링 (대기/진행중/완료/취소)
|
|
- 실시간 자동 새로고침
|
|
|
|
### 운송 통계 위젯
|
|
|
|
- 오늘 작업 건수 및 완료율
|
|
- 총 운송량 (톤)
|
|
- 누적 거리 (km)
|
|
- 정시 도착률 (%)
|
|
- 작업 유형별 분포 차트
|
|
|
|
## 🔧 API 엔드포인트
|
|
|
|
### 작업 이력 관리
|
|
|
|
- `GET /api/work-history` - 작업 이력 목록 조회
|
|
- `GET /api/work-history/:id` - 작업 이력 단건 조회
|
|
- `POST /api/work-history` - 작업 이력 생성
|
|
- `PUT /api/work-history/:id` - 작업 이력 수정
|
|
- `DELETE /api/work-history/:id` - 작업 이력 삭제
|
|
|
|
### 통계 및 분석
|
|
|
|
- `GET /api/work-history/stats` - 작업 이력 통계
|
|
- `GET /api/work-history/trend?months=6` - 월별 추이
|
|
- `GET /api/work-history/routes?limit=5` - 주요 운송 경로
|
|
|
|
## 📝 샘플 데이터
|
|
|
|
마이그레이션 실행 시 자동으로 4건의 샘플 데이터가 생성됩니다:
|
|
|
|
1. 입고 작업 (완료)
|
|
2. 출고 작업 (진행중)
|
|
3. 이송 작업 (대기)
|
|
4. 정비 작업 (완료)
|
|
|
|
## 🎯 사용 방법
|
|
|
|
### 1. 대시보드에 위젯 추가
|
|
|
|
1. 대시보드 편집 모드로 이동
|
|
2. 상단 메뉴에서 "위젯 추가" 선택
|
|
3. "작업 이력" 또는 "운송 통계" 선택
|
|
4. 원하는 위치에 배치
|
|
5. 저장
|
|
|
|
### 2. 작업 이력 필터링
|
|
|
|
- 유형 선택: 전체/입고/출고/이송/정비
|
|
- 상태 선택: 전체/대기/진행중/완료/취소
|
|
- 새로고침 버튼으로 수동 갱신
|
|
|
|
### 3. 통계 확인
|
|
|
|
운송 통계 위젯에서 다음 정보를 확인할 수 있습니다:
|
|
|
|
- 오늘 작업 건수
|
|
- 완료율
|
|
- 총 운송량
|
|
- 정시 도착률
|
|
- 작업 유형별 분포
|
|
|
|
## 🔍 문제 해결
|
|
|
|
### 데이터가 표시되지 않는 경우
|
|
|
|
1. 데이터베이스 마이그레이션이 실행되었는지 확인
|
|
2. 백엔드 서버가 실행 중인지 확인
|
|
3. 브라우저 콘솔에서 API 에러 확인
|
|
|
|
### API 에러가 발생하는 경우
|
|
|
|
```bash
|
|
# 백엔드 로그 확인
|
|
cd backend-node
|
|
npm run dev
|
|
```
|
|
|
|
### 위젯이 표시되지 않는 경우
|
|
|
|
1. 프론트엔드 재시작
|
|
2. 브라우저 캐시 삭제
|
|
3. 페이지 새로고침
|
|
|
|
## 📚 관련 파일
|
|
|
|
### 백엔드
|
|
|
|
- `backend-node/src/types/workHistory.ts` - 타입 정의
|
|
- `backend-node/src/services/workHistoryService.ts` - 비즈니스 로직
|
|
- `backend-node/src/controllers/workHistoryController.ts` - API 컨트롤러
|
|
- `backend-node/src/routes/workHistoryRoutes.ts` - 라우트 정의
|
|
|
|
### 프론트엔드
|
|
|
|
- `frontend/types/workHistory.ts` - 타입 정의
|
|
- `frontend/components/dashboard/widgets/WorkHistoryWidget.tsx` - 작업 이력 위젯
|
|
- `frontend/components/dashboard/widgets/TransportStatsWidget.tsx` - 운송 통계 위젯
|
|
|
|
### 데이터베이스
|
|
|
|
- `db/migrations/20241020_create_work_history.sql` - 테이블 생성 스크립트
|
|
|
|
## 🎉 완료!
|
|
|
|
작업 이력 관리 시스템이 성공적으로 설치되었습니다!
|
|
|