패드는 NFC를 못 쓰므로 학생이 사용 시간/목적을 신청하면 선생님이 대시보드의 반출 대장에서 승인/거절하는 흐름을 추가. 저울-아두이노 연동(무게 기반 픽업/반납 감지)은 백엔드에 구현되어 있으나 실기기 연동은 추후 진행. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
- 화면마다 위젯/스타일만 담당하는 UI 파일과, 서버통신/상태/파생로직만 담당하는 ChangeNotifier 컨트롤러 파일로 1:1 분리 (lib/screens/ -> lib/ui/ + lib/function/) - UI는 ListenableBuilder로 컨트롤러를 구독해서 재렌더링, 버튼은 컨트롤러 메서드만 호출 - 다이얼로그/스낵바 등 위젯 코드는 전부 UI 파일에 남기고, 컨트롤러는 결과값(성공여부+메시지) 또는 콜백으로만 UI와 통신 (BuildContext/Widget 의존성 없음) - 디자인/레이아웃은 기존과 완전히 동일하게 유지 (순수 코드 재배치) - change_password_screen.dart, debug_pocket_main.dart(미사용 파일)는 깨지지 않게 import 경로만 갱신하고 리팩터링은 보류