Commit Graph

1553 Commits

Author SHA1 Message Date
김보곤
4d6081beb6 fix:정산관리 필터를 기간 범위 고정 방식으로 변경 (체크박스 제거, 컴팩트 1줄 레이아웃)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 14:04:21 +09:00
김보곤
11c685bda7 feat:정산관리 기간설정 체크박스 필터 추가 (시작~끝 년월 범위 조회)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 13:57:16 +09:00
김보곤
5a35e3fdfc fix:납입일 변경 시 통합정산 입금일(payment_date)도 함께 동기화
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 13:30:59 +09:00
김보곤
ef007a582a fix:납입일 변경 시 지급예정일(scheduled_payment_date)도 함께 재계산되도록 수정
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 13:24:37 +09:00
김보곤
2430c39738 feat:튜토리얼 영상 생성 이력에 제작시간 열 추가
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 12:29:50 +09:00
김보곤
bf35d177c0 fix:거래처 검색 팝업 폭 축소 (420→220px) 및 모달 내 수용되도록 개선
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 11:19:57 +09:00
김보곤
744f8c54f4 fix:거래처 검색 팝업 위치 개선 - createPortal + fixed 포지셔닝으로 뷰포트 밖 벗어남 방지
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 11:16:12 +09:00
김보곤
7ec39cd1aa fix:Blade 템플릿 style={{}} 충돌 → Tailwind max-h 클래스로 교체
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 11:10:04 +09:00
김보곤
31d02197c7 feat:사업자번호 옆 검색 버튼 클릭 시 거래처 검색 팝업 UI 구현
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 11:09:00 +09:00
김보곤
8c59cbbf40 feat:사업자번호 검색 버튼으로 거래처 상세정보 자동 입력 기능 추가
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 11:05:58 +09:00
김보곤
95e7728ff5 feat:거래처 선택 시 상세정보(대표자/주소/업태/종목/이메일) 자동 입력
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 10:57:48 +09:00
김보곤
63dd9bd510 feat:홈택스 수동입력 모달에 거래처 상세정보 필드 추가 (종사업장번호, 성명, 주소, 업태, 종목, 이메일)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 10:51:34 +09:00
a2c8731937 feat:품목관리 수식 산출에 전원(단상/삼상) 선택 추가
- 수식 입력 패널에 전원 Select 추가 (단상 220V / 삼상 380V)
- calculateFormula()에서 MP 변수 수집 및 API 전송
- Controller에서 MP 파라미터 수신 후 FormulaApiService로 전달

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 10:50:24 +09:00
f271f8bdc3 feat:품목관리 3-Panel 페이지 신규 구현 + FormulaEvaluatorService 연동
- 품목관리 3-Panel 레이아웃 (좌:목록, 중:BOM/수식산출, 우:상세)
- FormulaApiService로 API 견적수식 엔진 연동
- FG 품목 선택 시 기본값(W:1000, H:1000, QTY:1) 자동 산출
- 수식 산출 결과 트리 렌더링 (그룹별/소계/합계)
- 중앙 패널 클릭 시 우측 상세만 변경 (skipCenterUpdate)
- API 인증 버튼 전역 헤더로 이동 (모든 페이지에서 사용 가능)
- FormulaApiService에 Bearer 토큰 지원 추가

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 10:50:24 +09:00
김보곤
a875e3ec62 fix:홈택스 분개수정 모달 금액 입력에 콤마 포맷 적용
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 10:45:05 +09:00
김보곤
41d6087131 fix:결제 내용 입력을 textarea에서 input으로 변경
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 10:40:15 +09:00
김보곤
bfad25a208 fix:결제 모달 레이아웃을 flex 기반으로 변경 (날짜/금액 고정폭, 내용 flex-1)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 10:38:52 +09:00
김보곤
8ed7b2698a fix:결제 내역 모달 폭 확대 및 내용 컬럼 비율 조정
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 10:37:10 +09:00
김보곤
23abe912e4 fix:prepaymentTotal 계산이 parseInputCurrency 정의 전에 실행되는 오류 수정
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 10:35:25 +09:00
김보곤
ed1a792d37 feat:법인카드 결제 기능 개선 (동적 항목 입력, 선불결제→결제 명칭 변경)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 10:32:58 +09:00
김보곤
14b4f5c98e fix:부서 권한 관리 전체 거부 버튼 제거 + 초기화 deny-all로 변경 + 로딩 오버레이 추가
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 09:47:00 +09:00
김보곤
55a0ac2a44 fix:역할 권한 관리 전체 거부 버튼 제거 (초기화와 중복)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 09:33:18 +09:00
김보곤
c06a0d39aa fix:denyAllPermissions 권한 삭제 로직 개선 (직접 DB 쿼리로 변경)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 09:30:33 +09:00
김보곤
a14db44c72 fix:역할 권한 관리 초기화 버튼 전체 체크 해제로 변경 + 로딩 오버레이 추가
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 09:23:48 +09:00
김보곤
3bb657ba1a docs:데이터 동기화 실전 사례 레퍼런스 추가 (로컬↔서버) 2026-02-20 08:50:47 +09:00
김보곤
f370971bc3 docs:테이블 전체 동기화 프롬프트 추가 (로컬→서버, 서버→로컬) 2026-02-20 08:45:19 +09:00
김보곤
9c70136c3c docs:MNG 서버-로컬 데이터 동기화 가이드 추가 2026-02-20 08:43:08 +09:00
김보곤
7849c63507 fix:발송 방식 선택 UI 개선 - 이메일/알림톡 선택 가능, 이메일 기본값, 리마인더 발송 방식 모달 추가 2026-02-19 23:55:28 +09:00
김보곤
3724bc4475 fix:알림톡 미설정 시 에러 방지 - 기본 발송을 이메일로 변경, 알림톡 실패 시 이메일 자동 폴백 2026-02-19 23:50:37 +09:00
김보곤
6cf440f349 fix:고객 검색을 TenantProspect(명함 등록 고객)에서 조회하도록 수정
- Tenant 대신 TenantProspect(tenant_prospects 테이블) 사용
- 업체명/사업자번호/대표자명/연락처로 검색
- 필드명 매칭: business_number, contact_phone, contact_email

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 23:44:17 +09:00
김보곤
d7bde8952a fix:고객 서비스이용 계약서 기본값 - 라벨 기반 매칭으로 수정
- 하드코딩 키 대신 템플릿 변수의 라벨(계약번호/총개발비/월구독료)로 매칭
- 빈 문자열 기본값도 덮어쓰도록 trim() 체크 추가

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 23:25:41 +09:00
김보곤
bcc95ffafa feat:고객 서비스이용 계약서 - 고객 불러오기/계약번호 자동채번/기본값
- 테넌트(고객) 검색 API 추가 (searchTenants)
- 계약번호 자동 채번 API 추가 (CONTRACT-YYYYMMDD-N 형식)
- 고객 서비스이용 계약서 선택 시 "고객 불러오기" 버튼 표시
- 고객 선택 시 상호/사업자등록번호/주소/전화번호 자동 채움
- 총개발비 기본값 20,000,000 / 월구독료 기본값 500,000 자동 세팅
- TenantSearchModal 컴포넌트 추가

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 23:23:06 +09:00
김보곤
abf424d10e feat:새 계약 생성 - 계약제목 드롭박스 + 번개 버튼 랜덤 상대방
- 계약 제목을 드롭박스로 변경 (영업파트너 계약서/비밀유지 서약서/고객 서비스이용 계약서/직접입력)
- 직접입력 선택 시 텍스트 입력 필드 표시
- 번개마크 2개 → 1개로 축소
- 번개마크 클릭 시 영업파트너 목록에서 랜덤으로 상대방 정보 자동 채우기

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 23:13:16 +09:00
김보곤
f1c557b37c docs:전자계약 문서에 카카오톡 알림톡 내용 전반적 추가
- OverviewTab: 기술 스택에 카카오 알림톡 API 추가
- UserManualTab: 소개, 역할, 준비물, 서명 요청, 리마인더, OTP 인증 등 전반에 알림톡 채널 추가
- UserManualTab: 을 가이드에 알림톡 수신 예시 UI 추가
- WorkflowTab: 발송/인증/완료 단계에 알림톡 채널 반영
- SecurityTab: OTP 인증 프로세스에 알림톡 우선 발송 반영
- ArchitectureTab: KakaoAlimtalkService 서비스 추가
- OperationsTab: 알림톡 환경 변수, 장애 대응 가이드 추가
- ChangelogTab: v1.1 계획에 카카오 알림톡 연동 추가
- FAQ, 용어사전 등 전반적으로 알림톡 관련 내용 반영

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 22:40:25 +09:00
김보곤
0d987ab685 fix:VAT 페이지 신고서 출력 버튼 제거
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 22:28:24 +09:00
김보곤
71f745bdb9 fix:거래처 검색을 trading_partners 테이블로 변경 (clients → trading_partners)
- Barobill/Client 모델 삭제, Finance/TradingPartner 모델 사용
- 거래처관리(finance/partners)와 동일한 데이터 소스 사용
- status='active' 필터 적용

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 21:32:16 +09:00
김보곤
69f117ef8e fix:거래처코드 검색을 고유번호(id) 기반으로 변경
- Client::searchByCodeOrName → searchByIdOrName으로 변경
- 검색 기준: id(숫자일 때 정확 매칭) + name(LIKE 검색)
- 반환값: client_code 대신 id를 code로 반환

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 21:25:08 +09:00
김보곤
072268a1cf feat:계좌 입출금내역 거래처코드 검색 기능 추가
- Client 모델 생성 (거래처 검색용)
- EaccountController에 searchClients API 추가
- save/parseTransactionLogs/convertManualToLogs/convertDbToRawLog에 client_code/client_name 필드 추가
- ClientCodeSelect 컴포넌트 추가 (서버 검색 기반 debounce 드롭다운)
- 테이블에 거래처코드 컬럼 추가
- BankTransaction 모델 fillable에 client_code/client_name 추가
- 라우트에 clients/search 엔드포인트 추가

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 21:18:31 +09:00
김보곤
1686198fcd feat:바로빌 계좌 입출금내역 API 캐싱 전략 구현
- BankSyncStatus 모델 추가 (월별 동기화 상태 추적)
- BankTransaction에 getCachedByMonth() 메서드 추가
- EaccountController fetchAccountTransactions() 캐싱 로직 적용
  - 과거 월: sync 레코드 존재 시 DB 캐시 반환
  - 현재 월: 10분 이내 sync이면 DB 캐시 반환, 초과 시 API 재호출
  - 미동기화: API 호출 → DB 자동 저장 → sync 상태 갱신
- cacheApiTransactions(): insertOrIgnore로 기존 레코드 보호
- convertDbToRawLog(): DB→SOAP 객체 변환 (기존 파싱 로직 호환)
- updateSyncStatus(): 동기화 상태 upsert

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 20:48:35 +09:00
김보곤
fea28d6652 fix:바로빌 계좌 입출금내역 긴 기간 검색 시 데이터 누락 수정 2026-02-19 20:35:17 +09:00
김보곤
4191e4637f feat:거래처 수정 모달에 고유번호 readonly 필드 추가
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 20:24:50 +09:00
김보곤
e7127ff65b feat:거래처 목록 첫 열에 고유번호 컬럼 추가
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 20:23:14 +09:00
김보곤
e8432df28f feat:거래처 목록에 고유 ID 표시 (거래처명 앞)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 20:21:15 +09:00
김보곤
ecbb8e4cc7 feat:수당지급현황통계 페이지 고도화 (종합 대시보드)
- 필터: 년/월 범위, 상태, 지급유형, 파트너, 매니저, 검색어
- 통계 카드 4→8개 (총 발생액, 지급완료, 미지급, 파트너수, 유형별 합계, 평균)
- 차트 4→6개 (월별 추이, 유형비율, Top10, 상태분포 건수/금액, 파트너vs매니저)
- 테이블 1→3개 탭 (월별 요약, 파트너별 결산, 매니저별 결산 + 완료율 프로그레스바)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 19:59:45 +09:00
김보곤
c5edefc5a3 fix:구독관리 탭 조회조건 변경 (contracted→hq_status=handover)
인계(handover) 완료된 업체 = 구독 업체로 간주.
기존 contracted() 스코프 + subscription_fee 조건 대신
hq_status='handover' 조건으로 변경. 불필요한 상태 필터 제거.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 19:12:45 +09:00
김보곤
b04444ef68 fix:고객사정산/구독관리 필터 레이아웃 유연한 너비로 변경
grid 균등분할 → flex wrap + min-width로 자연스러운 너비 적용.
수당관리 필터와 동일한 스타일로 통일.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 19:09:09 +09:00
김보곤
4077841452 fix:입금구분 필터 옵션명 변경 (계약금/잔금 → 1차/2차)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 19:00:07 +09:00
김보곤
1bf313b788 refactor:매니저 수당 테이블 1차/2차 구분 제거 (계약 단위 1행)
매니저 수당은 1계약당 1회 지급 구조이므로
그룹핑/구분 열/rowspan 로직을 제거하고 단순 1행 구조로 변경.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 18:51:51 +09:00
김보곤
f4658100d7 fix:매니저 수당 테이블에서 입금 열 제거
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 18:49:14 +09:00
김보곤
8a2be0aeae fix:Alpine.js 내부 API 접근 오류 수정 (__x.$data)
getActiveSubtabContainer에서 Alpine 내부 API 대신
offsetParent로 활성 서브탭 컨테이너를 판별하도록 변경.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 18:45:43 +09:00