수업 기본 설정 폼: Zod 조건부 검증과 이탈 방지 훅
그룹 수업의 예약 오픈 시점, 예약 마감 시점, 폐강 시점을 센터 단위 기본값으로 정해 두는 "수업 기본 설정" 페이지를 만들었다. 수업을 새로 만들 때 이 값이 기본으로 채워진다.
그룹 수업의 예약 오픈 시점, 예약 마감 시점, 폐강 시점을 센터 단위 기본값으로 정해 두는 "수업 기본 설정" 페이지를 만들었다. 수업을 새로 만들 때 이 값이 기본으로 채워진다.
CRM에는 시간 선택기가 화면마다 따로 있었다. 공통 폴더에 하나, 결제 모달 쪽에 또 하나. 동작도 조금씩 달랐다. 공용 컴포넌트 폴더(ui/stable)에 단일 시간과 범위 시간 선택기를 새로 만들었다.
CRM 출석 페이지는 월간 달력과 일별 목록으로 되어 있다. 달을 넘기거나 탭을 바꿀 때마다 화면 전체가 멈칫하는 게 계속 거슬려서 데이터를 가져오는 방식을 바꿨다.
이번 주는 CRM의 의존성과 정적 자산을 정리했다. 기능 개발 사이에 미뤄 두던 일이다.
CRM 직원 회원가입과 내 정보 수정 폼을 다시 썼다. 닉네임 필드를 새로 추가해야 했는데, 기능을 얹기 전에 폼 구조부터 바꿨다.
한동안 손을 놓았던 fit-hr을 다시 잡았다. 열흘 남짓 동안 계정 구조, 위치 정보, 좋아요 반응 속도를 차례로 바꿨다.
CRM 회원 상세에 보호자를 등록하는 기능을 만들고 있다. 이번에는 코드를 쓰기 전에 설계 문서부터 저장소에 남기는 방식으로 진행했다.
팀에서 Claude Code 설정을 같이 쓰기 위한 .claude 저장소가 생겼다. 이번 주에는 거기 들어 있는 CRM 개발 스킬을 다시 썼다.
CRM에서 문자를 보내려면 센터가 미리 잔액을 충전해 둬야 한다. 그 충전과 환불, 발신번호 심사를 관리하는 화면을 사내 어드민(assistfit-admin-next)에 만들고 있다. 11월 말에 시작해서 이번 주까지 이어졌다.
12월에는 메시지 기능에 문자(SMS) 발송이 붙었다. 앱 알림만 보내던 화면이라 생각보다 바뀌는 곳이 많았다.