# 종량제 쓰레기봉투 물류시스템 개발 - 작업내역 > 노션 업로드용 상세 작업내역 문서 > 작성일: 2025년 기준 --- ## 📋 프로젝트 개요 | 항목 | 내용 | |------|------| | 프로젝트명 | 종량제 쓰레기봉투 물류시스템 | | 기술 스택 | CodeIgniter 4, PHP 8.2+, MariaDB | | 개발 환경 | jongryangje.local:8080 | --- ## ✅ 완료된 작업 목록 ### 1. 로그인/로그아웃 기능 개발 #### 1.1 구현 내용 - **로그인 화면** (`/login`) - 아이디/비밀번호 입력 폼 - CSRF 토큰 적용 - 유효성 검증 (필수 입력, 최대 길이) - 에러/성공 메시지 표시 - **로그인 처리** (`POST /login`) - 아이디·비밀번호 검증 - 계정 상태 체크 (정상/정지/탈퇴) - 로그인 성공 시 세션 저장 (`mb_idx`, `mb_id`, `mb_name`, `mb_level`, `logged_in`) - 최근 접속일(`mb_latestdate`) 업데이트 - **로그아웃 처리** (`/logout`) - 세션 파괴 - 로그아웃 이력 기록 - 로그인 페이지로 리다이렉트 #### 1.2 관련 파일 | 파일 경로 | 설명 | |-----------|------| | `app/Controllers/Auth.php` | 로그인/로그아웃/회원가입 컨트롤러 | | `app/Views/auth/login.php` | 로그인 화면 뷰 | | `app/Models/MemberModel.php` | 회원 조회 모델 | | `app/Models/MemberLogModel.php` | 로그 이력 모델 | #### 1.3 로그 테이블 - **member_log** 테이블: 로그인 성공/실패 이력 저장 - 기록 항목: 회원ID, 성공여부, IP, User-Agent, 메시지, 로그아웃 시각 등 --- ### 2. 로그인 후 메인 화면 연동 #### 2.1 구현 내용 - 로그인 성공 시 **일일봉투 수불현황** 페이지로 자동 이동 - 기존 대시보드(`home/dashboard`) 대신 `bag/daily_inventory` 뷰 표시 #### 2.2 수정 파일 | 파일 | 변경 내용 | |------|-----------| | `app/Controllers/Home.php` | `view('home/dashboard')` → `view('bag/daily_inventory')` | | `app/Controllers/Auth.php` | 리다이렉트 URL을 `site_url('/')`로 명시 | --- ### 3. 일일봉투 수불현황 페이지 개발 #### 3.1 페이지 구성 Google Stitch로 제작한 HTML을 CodeIgniter 뷰로 변환하여 구현 **레이아웃 구조** 1. **상단 헤더** - 로고 + 시스템명 - 메뉴 네비게이션 - 로그아웃(종료) 아이콘 2. **페이지 제목 바** - 화면 ID: `[w_gm804r]` - 제목: 일일 봉투 수불 현황 3. **컨트롤 패널 (검색/필터)** - 조회기간 (날짜 ~ 날짜) - 봉투구분 (드롭다운) - 봉투형식 (드롭다운) - 대행소 (드롭다운) - 액션 버튼: 조회, 엑셀저장, 인쇄, 종료 4. **데이터 테이블** - 일자 | 품 목 | 전일재고 | 입고(입고/반품/입고계) | 출고(판매/일반불출·무료불출/반품/기타/출고계) | 잔량 5. **푸터** - Ready..... | 북구 | Ver.. | 날짜/시간 #### 3.2 관련 파일 | 파일 경로 | 설명 | |-----------|------| | `app/Views/bag/daily_inventory.php` | 일일봉투 수불현황 뷰 (신규 생성) | | `app/Controllers/Home.php` | 로그인 시 해당 뷰 반환 | --- ### 4. 503 오류 및 리다이렉트 이슈 해결 #### 4.1 원인 - `jongryangje.local` 호스트가 `allowedHostnames`에 없어 URL 생성/리다이렉트 시 문제 발생 가능 #### 4.2 조치 내용 | 파일 | 변경 내용 | |------|-----------| | `app/Config/App.php` | `allowedHostnames`에 `jongryangje.local`, `localhost` 추가 | | `app/Controllers/Auth.php` | `redirect()->to('/')` → `redirect()->to(site_url('/'))` | --- ### 5. UI/UX 개선 (참조 이미지 반영) 일일봉투 수불현황 기준 이미지에 맞춰 UI 수정 #### 5.1 로고 변경 | 구분 | 변경 전 | 변경 후 | |------|---------|---------| | 형태 | 녹색 원형 + 새로고침 아이콘 | 파란색 사각형 + 흰색 사각형 2개 겹친 형태 | | 스타일 | 웹 스타일 | 데스크톱 앱 아이콘 스타일 | #### 5.2 타이틀 변경 | 구분 | 변경 전 | 변경 후 | |------|---------|---------| | 시스템명 | 스마트 폐기물 관리 시스템 | 쓰레기봉투 물류시스템 | #### 5.3 페이지 제목 바 | 항목 | 변경 내용 | |------|-----------| | 화면 ID | `[_gm804r]` → `[w_gm804r]` | | 제목 | 일별 봉투 수불황 → 일일 봉투 수불 현황 | #### 5.4 메뉴 구성 | 변경 내용 | |-----------| | 발주/입고 관리 → 발주 입고 관리 | | 통계/분석 관리 → 통계 분석 관리 | | 봉투 수불 관리 메뉴 추가 | | 설정 → 창 메뉴로 변경 | #### 5.5 버튼 및 아이콘 | 버튼 | 변경 전 | 변경 후 | |------|---------|---------| | 검색 | 검색 | 조회 | | 엑셀 | Excel 내보내기 | 엑셀저장 | | 종료 | 번개 아이콘 | 빨간색 X 아이콘 | | 우측 상단 | 로그아웃 아이콘 | 빨간색 X 아이콘 | #### 5.6 테이블 | 항목 | 변경 내용 | |------|-----------| | 헤더 | 품목 → 품 목 | --- ## 📁 파일 구조 변경 요약 ### 신규 생성 ``` app/Views/bag/daily_inventory.php # 일일봉투 수불현황 뷰 ``` ### 수정된 파일 ``` app/Controllers/Auth.php # 로그인 리다이렉트, allowedHostnames 대응 app/Controllers/Home.php # 로그인 후 표시 뷰 변경 app/Config/App.php # allowedHostnames 추가 app/Views/bag/daily_inventory.php # UI 수정 (로고, 메뉴, 버튼 등) ``` --- ## 🔧 설정 정보 ### 환경 변수 (.env) ``` CI_ENVIRONMENT = development app.baseURL = 'http://jongryangje.local:8080/' database.default.hostname = localhost database.default.database = jongryangje_dev database.default.username = jongryangje database.default.password = 'jongryangje_dev' ``` ### 라우트 (Routes.php) | Method | URI | Controller::Method | |--------|-----|---------------------| | GET | / | Home::index | | GET | login | Auth::showLoginForm | | POST | login | Auth::login | | GET | logout | Auth::logout | | GET | register | Auth::showRegisterForm | | POST | register | Auth::register | --- ## 📊 진행 현황 요약 | 작업 항목 | 진행률 | 비고 | |-----------|--------|------| | 로그인/로그아웃 개발 | 100% | 완료 | | 로그인 후 메인 화면 연동 | 100% | 완료 | | 일일봉투 수불현황 페이지 | 100% | 완료 | | 503 오류 해결 | 100% | 완료 | | UI/UX 개선 (참조 이미지 반영) | 100% | 완료 | --- ## 📌 참고 자료 - 참조 이미지: `docs/종량제 관련 자료/쓰레기봉투 물류시스템_스크린샷/봉투수불관리/일일봉투 수불현황.png` - 기술 스택: CodeIgniter 4.7.0, PHP 8.2+, Tailwind CSS (CDN) --- *본 문서는 노션 페이지 업로드용으로 작성되었습니다.*