# 기간제 근로자 작업관리 시스템 ## 📋 프로젝트 개요 기간제 근로자의 일일 작업, 에러사항, 요청사항을 효율적으로 관리하는 웹 기반 시스템 ## 🎯 주요 기능 - **인증 시스템**: 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 ``` ## 🚀 실행 방법 ```bash # 프로젝트 실행 docker-compose up -d # 로그 확인 docker-compose logs -f # 종료 docker-compose down ``` ## 🔧 개발 환경 실행 ```bash # 백엔드 개발 서버 (포트 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