Commit Graph

16 Commits

Author SHA1 Message Date
8686b199ee feat: 더미 데이터 시더 추가 및 회계 관련 마이그레이션
- DummyDataSeeder 및 개별 시더 추가 (Client, BadDebt, Deposit 등)
- payments.paid_at nullable 마이그레이션
- subscriptions 취소 컬럼 추가
- clients 테이블 bad_debt 컬럼 제거
- PlanController, ClientService 수정
- 불필요한 claudedocs, flow-test 파일 정리
2025-12-24 08:54:52 +09:00
c946fa457c chore: API Flow Tester 설정 및 문서 업데이트
- flow-tester-auth.json: 인증 API 테스트 설정 추가
- flow-tester-client.json: Client API 테스트 설정 업데이트
- flow-tester-item-master.json: ItemMaster API 테스트 설정 추가
- LOGICAL_RELATIONSHIPS.md: 논리 관계 문서 업데이트
2025-12-04 22:22:46 +09:00
d164bb4c4a feat: [client] 거래처 API 2차 필드 추가 및 견적 계획 업데이트
- 거래처 유형(client_type), 연락처(mobile, fax), 담당자 정보 필드 추가
- 발주처 설정(account_id/password, payment_day) 필드 추가
- 약정 세금(tax_agreement, tax_amount, tax_start/end_date) 필드 추가
- 악성채권(bad_debt 관련 5개 필드) 정보 필드 추가
- Model, Service, FormRequest, Swagger 문서 업데이트
- 견적 API 계획에 문서 발송 API(email/fax/kakao) 요구사항 추가
2025-12-04 21:13:58 +09:00
96e9a0ba18 feat: [quote] 견적관리 API 기반 구축 (Phase 1)
- 마이그레이션 생성: quotes, quote_items, quote_revisions 테이블
- Model 생성: Quote, QuoteItem, QuoteRevision
- BelongsToTenant, SoftDeletes 트레이트 적용
- 상태 관리 메서드 및 스코프 구현
- 개발 계획서 작성 및 진행 상황 문서화
2025-12-04 17:17:05 +09:00
165512e121 feat: [client] Client API 사업자 정보 필드 및 toggle 버그 수정
- business_no, business_type, business_item 필드 추가
- toggle 로직 수정: boolean 캐스팅 호환 (is_active === 'Y' → !is_active)
2025-12-04 15:58:08 +09:00
fbaf2720d8 fix: 품목 삭제 시 BOM 참조 무결성 체크 추가
- 삭제 전 product_components 테이블에서 사용 여부 확인
- BOM 구성품으로 사용 중인 품목 삭제 차단 (400 에러)
- 일괄 삭제에도 동일한 참조 체크 적용
- 품목 관련 에러 메시지 추가 (error.item.*)
- 품목 삭제 API 테스트 플로우 JSON 추가
2025-12-03 22:35:38 +09:00
aabd791336 docs: 메뉴 동기화 시스템 상세 설계 추가
- 동기화 상태 분류 (new, up_to_date, updatable, customized, deleted)
- 동기화 액션 유형 (개별, 신규 가져오기, 기존 업데이트, 선택 동기화)
- 커스터마이징 메뉴 보호 정책 (force 옵션)
- 동기화 전용 API 스펙 4개 엔드포인트
- MenuSyncService 메서드 설계
- MNG 동기화 센터 UI 와이어프레임
2025-12-02 09:38:15 +09:00
d7fdfa841e docs: 메뉴 통합관리 시스템 설계서 및 SQL 쿼리 추가
- MENU_INTEGRATION_SYSTEM_DESIGN.md: 글로벌-테넌트 메뉴 연결 시스템 설계
  - global_menu_id, is_customized 컬럼 추가 계획
  - API 엔드포인트 설계 (글로벌/테넌트 메뉴 관리)
  - MNG 화면 설계 (복제, 동기화 기능)
  - 구현 Phase 1~4 계획

- MENU_INSERT_QUERIES.sql: PDF 기획서 기반 신규 메뉴 23개 INSERT 쿼리
  - 인사관리 (근태/휴가/급여)
  - 전자결재 (기안함/결재함/참조함)
  - 게시판, 보고서, 계정정보, 회사정보, 구독관리, 결제내역, 고객센터
  - 기준정보 관리 하위 8개 메뉴
2025-12-01 16:16:07 +09:00
3c9ba94784 chore: 불필요한 claudedocs 문서 정리
- 오래된 분석 문서 삭제
- Swagger 감사 문서 삭제
- MES 관련 임시 문서 삭제
2025-11-30 21:06:11 +09:00
4b04d6db87 feat: TenantStatField 모델 및 하이브리드 구조 사용 가이드 추가
[추가된 파일]
- app/Models/Tenants/TenantStatField.php
  - 테넌트별 통계 필드 설정 모델
  - Scopes: forTable, critical, withAggregation, ordered
  - 통계 시스템의 메타 정보 제공

- claudedocs/mes/HYBRID_STRUCTURE_GUIDE.md
  - 하이브리드 구조 사용 가이드 문서
  - 데이터베이스 구조 설명
  - 코드 예제 (Product, ProductComponent 생성)
  - 통계 쿼리 예제
  - 성능 고려사항 및 주의사항

[모델 기능]
- BelongsToTenant, ModelTrait 적용
- aggregation_types JSON 자동 캐스팅
- tenant, target_table, field_key 조합으로 통계 필드 관리

[문서 내용]
- 고정 필드 vs 동적 필드 선택 기준
- attributes JSON 사용법
- 통계 쿼리 예제 (JSON_EXTRACT)
- CategoryField와 연동 방법
- 향후 Virtual Column 최적화 가이드
2025-11-14 11:47:28 +09:00
ddc4bb99a0 feat: 통합 품목 조회 API 및 가격 통합 시스템 구현
- 통합 품목 조회 API (materials + products UNION)
  - ItemsService, ItemsController, Swagger 문서 생성
  - 타입 필터링 (FG/PT/SM/RM/CS), 검색, 카테고리 지원
  - Collection merge 방식으로 UNION 쿼리 안정화

- 품목-가격 통합 조회
  - PricingService.getPriceByType() 추가 (SALE/PURCHASE 지원)
  - 단일 품목 조회 시 판매가/매입가 선택적 포함
  - 고객그룹 가격 우선순위 적용 및 시계열 조회

- 자재 타입 명시적 관리
  - materials.material_type 컬럼 추가 (SM/RM/CS)
  - 기존 데이터 344개 자동 변환 (RAW→RM, SUB→SM)
  - 인덱스 추가로 조회 성능 최적화

- DB 데이터 정규화
  - products.product_type: 760개 정규화 (PRODUCT→FG, PART/SUBASSEMBLY→PT)
  - 타입 코드 표준화로 API 일관성 확보

최종 데이터: 제품 760개(FG 297, PT 463), 자재 344개(SM 215, RM 129)
2025-11-11 11:30:17 +09:00
97c0d8245e feat: UserApi.php Swagger 점검 및 개선 (Phase 3-4)
- UserUpdateRequest.php 생성 (검증 로직 분리)
- PasswordChangeRequest.php 생성 (비밀번호 변경 검증)
- SwitchTenantRequest.php 생성 (테넌트 전환 검증)
- UserApi.php에 Request 스키마 추가
- UserController.php FormRequest 적용 및 DI 패턴 적용
- MemberService static 호출 → DI 인스턴스 호출
- lang/ko/message.php user 메시지 키 추가
- SAM API Development Rules 준수 완료
2025-11-07 02:44:11 +09:00
c87aadc357 feat: ClientApi.php Swagger 점검 및 개선 (Phase 3-3)
- ClientStoreRequest.php 생성 (검증 로직 분리)
- ClientUpdateRequest.php 생성 (검증 로직 분리)
- ClientController.php FormRequest 적용 및 패턴 통일
- lang/ko/message.php client 메시지 키 추가
- ApiResponse::handle 패턴 통일 (메시지 두 번째 인자)
- SAM API Development Rules 준수 완료
2025-11-07 02:40:18 +09:00
78e3934baf feat: Product API에 FormRequest 및 i18n 적용
- ProductStoreRequest, ProductUpdateRequest 생성
- ProductController에 FormRequest 적용
- 하드코딩된 메시지를 i18n 키로 변경
- lang/ko/message.php에 product 관련 메시지 키 추가
- SAM API Development Rules 준수

Phase 3-1: ProductApi.php Swagger 점검 완료
2025-11-07 02:29:51 +09:00
977207f2fa docs: Swagger 문서 Phase 2 완료 (Auth API 점검)
- AuthApi.php 응답 형식 실제 코드와 일치화
  - logout: {success, message, data} → {message}
  - debug-apikey: description 및 응답 형식 추가

- login API 검증 완료
  - 요청/응답 스키마와 실제 코드 일치 확인
  - user, tenant, menus 구조 정확성 검증

- signup API 중복 확인
  - AuthApi.php와 RegisterApi.php 동일 엔드포인트
  - RegisterApi.php가 더 상세 (테넌트 생성 포함)

- SWAGGER_AUDIT.md 업데이트
  - Phase 2 완료 상태로 변경
  - 발견 이슈 4건 추가 (모두 해결)
2025-11-07 02:15:52 +09:00
9092ce8f93 docs: Swagger 문서 Phase 1 개선
- SAMInfo.php Auth 태그 상세화
  - 인증 흐름 설명 추가 (API Key + Bearer Token)
  - 사용 예시 코드 추가
  - IP 기반 접근 제어 안내 추가

- RegisterApi.php 보안 어노테이션 추가
  - security={"ApiKeyAuth": {}} 설정
  - "Authentication: Not Required" 오류 해결

- SWAGGER_AUDIT.md 작업 추적 문서 생성
  - Phase별 점검 계획 수립
  - 표준 체크리스트 정의
  - 진행 상황 추적 체계 구축
2025-11-06 20:54:23 +09:00