✨ 기능: - 기간제 근로자 작업관리 시스템 기본 구조 - 한국어 기반 프론트엔드 (로그인, 대시보드, 작업자 관리) - Node.js Express 백엔드 API 서버 구조 - MySQL 데이터베이스 스키마 설계 - 14000번대 포트 구성으로 충돌 방지 📁 구조: - frontend/ : HTML, CSS, JS (Bootstrap 5) - backend/ : Node.js, Express, MySQL - database/ : 초기화 스크립트 - docs/ : 문서 🔌 포트: - 웹: 14000, API: 14001, DB: 14002, phpMyAdmin: 14003 🎯 다음 단계: 백엔드 API 라우트 구현 및 Docker 설정
2.9 KiB
2.9 KiB
기간제 근로자 작업관리 시스템
📋 프로젝트 개요
기간제 근로자의 일일 작업, 에러사항, 요청사항을 효율적으로 관리하는 웹 기반 시스템
🎯 주요 기능
- 인증 시스템: Admin/User 권한 분리
- 작업자 관리: 용접사/배관사 직종별 관리
- 일일 작업관리: 당일 작업 기록 및 조회
- 에러사항 관리: 간편한 에러 등록 및 추적
- 요청사항 관리: 장비/소모품 요청 관리
🛠️ 기술 스택
- Backend: Node.js + Express + MySQL
- Frontend: Vanilla JS + Bootstrap 5
- Database: MySQL 8.0
- 배포: Docker + Docker Compose
🔌 포트 구성 (14000번대)
| 서비스 | 포트 | 접속 URL | 용도 |
|---|---|---|---|
| 웹 인터페이스 | 14000 |
http://localhost:14000 | 프론트엔드 (HTML/CSS/JS) |
| API 서버 | 14001 |
http://localhost:14001/api | 백엔드 REST API |
| MySQL DB | 14002 |
localhost:14002 | 데이터베이스 연결 |
| phpMyAdmin | 14003 |
http://localhost:14003 | DB 관리 웹 도구 |
💡 포트 선택 이유: 14000번대를 사용하여 다른 서비스와의 포트 충돌을 방지
📂 프로젝트 구조
Worker-Management-System/
├── backend/ # Node.js API 서버
├── frontend/ # 웹 클라이언트
├── database/ # DB 초기화 스크립트
├── docs/ # 문서
├── docker-compose.yml # Docker 설정
└── README.md
🚀 실행 방법
# 프로젝트 실행
docker-compose up -d
# 로그 확인
docker-compose logs -f
# 종료
docker-compose down
🔧 개발 환경 실행
# 백엔드 개발 서버 (포트 14001)
cd backend
npm install
npm run dev
# 프론트엔드 (포트 14000)
# 웹 서버 또는 Live Server로 frontend 폴더 실행
📊 데이터베이스 스키마
users: 사용자 계정 (admin/user)workers: 작업자 정보 (용접사/배관사)daily_work: 일일 작업 기록error_reports: 에러사항 기록requests: 요청사항 기록
🔐 기본 계정
- Admin: admin / admin123
- User: user / user123
📱 서비스 접속 방법
🌐 웹 브라우저 접속
- 메인 웹사이트: http://localhost:14000
- API 문서: http://localhost:14001 (서버 상태 확인)
- 데이터베이스 관리: http://localhost:14003 (phpMyAdmin)
🔗 API 엔드포인트
- 기본 URL: http://localhost:14001/api
- 로그인: POST /api/auth/login
- 작업자 목록: GET /api/workers
- 일일 작업: GET /api/daily-work
- 에러사항: GET /api/errors
- 요청사항: GET /api/requests
🗄️ 데이터베이스 연결 정보
- 호스트: localhost
- 포트: 14002
- 데이터베이스명: worker_management
- 사용자명: root
- 비밀번호: rootpassword