Commit Graph

191 Commits

Author SHA1 Message Date
pro
0ae3c5aa07 feat: 계좌관리 추가 2026-01-20 20:43:38 +09:00
7246ac003f fix(WEB): 수주 페이지 필드 매핑 및 제품-부품 트리 구조 개선
- ApiClient 인터페이스: representative → manager_name, contact_person 변경
- transformApiToFrontend: client.representative → client.manager_name 수정
- ApiOrderItem에 floor_code, symbol_code 필드 추가 (제품-부품 매핑)
- ApiOrder에 options 타입 정의 추가
- ApiQuote에 calculation_inputs 타입 정의 추가
- 수주 상세 페이지 제품-부품 트리 구조 UI 개선
2026-01-20 16:14:46 +09:00
7dd683ace8 feat: 입찰(Bidding) 관리 기능 구현
- Bidding 모델, 서비스, 컨트롤러, FormRequest 추가
- 마이그레이션 및 시더 추가
- Swagger API 문서 추가
- 견적에서 입찰 전환 시 중복 체크 로직 추가
- per_page 파라미터 100 초과 시 자동 클램핑 처리
- error.bidding.already_registered 에러 메시지 추가
2026-01-19 20:23:30 +09:00
121c888c7c fix: 마이그레이션 실행 순서 및 멱등성 수정
- 작업지시 관련 마이그레이션 파일명 날짜 수정 (의존성 순서 해결)
  - 2025_01_08 → 2025_12_26_100400 (tenant_id 추가)
  - 2025_01_09 → 2025_12_26_100600 (assignees 테이블)
  - 2025_01_09 → 2025_12_26_183200 (process_type → process_id)
- process_type → process_id 마이그레이션에 멱등성 체크 추가
  - 컬럼 존재 여부 확인 (Schema::hasColumn)
  - FK 존재 여부 확인 (information_schema 쿼리)
2026-01-19 13:19:18 +09:00
090c07605e fix(WEB): 수주 등록/수정 옵션 필드 저장 및 담당자 표시 문제 해결
- FormRequest에 options 필드 validation 추가 (StoreOrderRequest, UpdateOrderRequest)
  - shipping_cost_code, receiver, receiver_contact, shipping_address 등
- OrderService.show()에서 client 로드 시 manager_name 필드 추가
- 수주확정/생산지시 되돌리기 기능 추가 (revertOrderConfirmation, revertProductionOrder)
- 견적 calculation_inputs 포함하여 로드

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-16 21:58:57 +09:00
b86397cbee feat: 견적서 옵션용 공통코드 마이그레이션 추가
- material_type: 제품 종류 (스크린, 슬랫, 벤딩, 조인트바)
- painting_type: 도장 옵션
- motor_type: 모터 옵션
- controller_type: 제어기 옵션
- width_construction_cost: 가로시공비 옵션
- height_construction_cost: 세로시공비 옵션

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-16 19:35:11 +09:00
7543fd2256 feat(WEB): 작업지시/출근부 기능 개선 및 마이그레이션 추가
- 작업지시 우선순위 필드 추가 (priority 마이그레이션)
- 수주-작업지시 품목 연동 source_order_item_id 컬럼 추가
- 수주 테이블에 account_code 필드 추가
- 작업지시 StoreRequest/UpdateRequest 우선순위 검증 추가
- WorkOrder 모델 priority fillable 추가
- 출근부 StoreRequest/UpdateRequest 검증 규칙 개선
- Employee Request 검증 규칙 수정
- SaleService/ItemService 수정
- WorkResultService 결과 처리 개선
- BankTransactionService 수정
- routes/api.php 엔드포인트 업데이트
- error.php 에러 메시지 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 15:38:52 +09:00
8bac207274 fix(WEB): 작업지시 품목 수주 연동 및 발주처 표시 수정
- 작업지시 생성 시 수주 품목 자동 복사 기능 추가
- 품목 추적용 source_order_item_id 컬럼 추가
- 발주처 표시를 위해 salesOrder 로딩에 client_id 추가
- 담당자 수정 시 assignee_ids 배열 처리 추가

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-16 15:30:50 +09:00
fa6e96dcbc fix: clients 테이블 Collation 불일치 수정
- BUG-BANK-20260115-001: 은행거래 테이블 데이터 미표시 오류 해결
- clients 테이블 Collation을 utf8mb4_unicode_ci로 변경
- UNION 쿼리 (deposits, withdrawals, clients) 호환성 확보
- 통계 카드와 테이블 데이터 동기화 완료

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-15 20:06:25 +09:00
566f34a4c9 fix: MES 모델 및 서비스 개선
- WorkOrderItem 모델 관계 정의 추가
- InspectionService, WorkResultService 로직 개선
- ItemReceipt, Inspection 모델 수정
- work_order_items 테이블에 options 컬럼 추가 마이그레이션

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-15 08:52:53 +09:00
3d1dbfc3ca fix: users.password 컬럼 nullable로 변경
- 사원 전용 계정(시스템 로그인 불가) 지원
- 비밀번호 없이 사원 등록 시 500 에러 수정
- EmployeeService.store()에서 password null 허용

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-14 19:42:56 +09:00
a8ae5e177f feat: quotes 테이블에 options JSON 컬럼 추가
- 견적요약, 공과상세, 품목 단가조정 데이터를 JSON으로 저장
- Quote 모델에 options 필드 추가 (fillable, casts)
- 중요도가 낮은 필드는 개별 테이블 대신 JSON으로 관리

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 12:35:21 +09:00
be90c351fa chore(API): Seeder 파일 정리
- Dummy Seeder 파일들 정리 및 개선
- ApprovalTestDataSeeder 수정
- PositionSeeder, StockReceivingSeeder 수정

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-13 19:49:28 +09:00
1044b57e15 chore(API): 마이그레이션 파일 정리 및 추가
- 기존 마이그레이션 파일 정리
- handover_reports 테이블 마이그레이션 추가
- site_briefings 테이블 마이그레이션 추가
- work_orders process_id 마이그레이션 추가

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-13 19:49:23 +09:00
38d56aa564 feat(work-order): 품목 상태 변경 및 작업지시 상태 자동 연동
- WorkOrderItem 모델에 status 컬럼 및 상수 추가 (waiting/in_progress/completed)
- 품목 상태 변경 API 엔드포인트 추가 (PATCH /work-orders/{id}/items/{itemId}/status)
- syncWorkOrderStatusFromItems() 메서드로 품목→작업지시 상태 자동 동기화
  - 품목 중 하나라도 in_progress → 작업지시 in_progress
  - 모든 품목 completed → 작업지시 completed
  - 모든 품목 waiting → 작업지시 waiting
- 감사 로그: item_status_changed, status_synced_from_items 액션 추가

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-13 16:00:47 +09:00
84ad9e1fc4 feat(quote): quote_type 컬럼 추가 및 건설 견적 필터링 구현
- quotes 테이블에 quote_type 컬럼 추가 (manufacturing/construction)
- Quote 모델에 TYPE 상수 및 스코프 메서드 추가
- QuoteService.index()에 quote_type 필터 적용
- QuoteService.upsertFromSiteBriefing()에 construction 타입 설정
- QuoteIndexRequest에 quote_type 유효성 검증 추가
- 기존 site_briefing_id 있는 데이터는 construction으로 자동 업데이트

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-13 09:55:22 +09:00
f59dd1b9fb feat(labor): 노임관리 API 구현
- Labor 모델 (BelongsToTenant, SoftDeletes)
- LaborController 7개 엔드포인트
- LaborService 비즈니스 로직
- FormRequest 4개 (Index/Store/Update/BulkDelete)
- 마이그레이션 및 라우트 등록

API: GET/POST /labor, GET/PUT/DELETE /labor/{id}, DELETE /labor/bulk, GET /labor/stats

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-11 23:29:32 +09:00
e6a4bf0870 feat(construction): 구조검토관리 API 구현
- Migration: structure_reviews 테이블 생성
- Model: StructureReview (BelongsToTenant, SoftDeletes)
- Service: StructureReviewService (CRUD + 통계 + 일괄삭제)
- Controller: StructureReviewController (7 endpoints)
- FormRequest: Store/Update 검증 규칙

API Endpoints:
- GET    /construction/structure-reviews (목록)
- POST   /construction/structure-reviews (생성)
- GET    /construction/structure-reviews/stats (통계)
- DELETE /construction/structure-reviews/bulk (일괄삭제)
- GET    /construction/structure-reviews/{id} (상세)
- PUT    /construction/structure-reviews/{id} (수정)
- DELETE /construction/structure-reviews/{id} (삭제)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-09 21:31:27 +09:00
9f8bff2f3d feat(common-codes): order_status/order_type 공용 코드 추가
- common_codes 테이블에 order_status 코드 그룹 추가 (DRAFT, CONFIRMED, IN_PROGRESS, COMPLETED, CANCELLED)
- common_codes 테이블에 order_type 코드 그룹 추가 (ORDER, PURCHASE)
- CommonController index 메서드 구현 (GET /api/v1/settings/common/{group})
- 멀티테넌트 지원 (tenant_id NULL 또는 현재 테넌트)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-09 17:25:14 +09:00
00f57ce244 feat(시공사): 2.1 현장관리 - Backend API 확장
- 마이그레이션: site_code, client_id, status 컬럼 추가
- Site 모델: 상태 상수, Client 관계 추가
- SiteService: stats(), bulkDestroy(), 필터 확장
- SiteController: stats, bulkDestroy 엔드포인트 추가
- 라우트: /stats, /bulk 추가

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-09 16:34:59 +09:00
3a8af2d7ee feat: [시공관리] 계약관리 API 구현
- Contract 모델, 마이그레이션 추가
- ContractController CRUD 엔드포인트 구현
- ContractService 비즈니스 로직 구현
- ContractStoreRequest, ContractUpdateRequest 검증 추가
- Swagger API 문서 작성
- 라우트 등록 (GET/POST/PUT/DELETE)
- 통계 및 단계별 건수 조회 API 추가

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-09 10:18:43 +09:00
349917f019 refactor(work-orders): 코드 리뷰 기반 전면 개선
## Critical 수정
- Multi-tenancy: WorkOrderItem, BendingDetail, Issue에 BelongsToTenant 적용
- 감사 로그: 상태변경, 품목수정, 이슈 등록/해결 시 로깅 추가
- 상태 전이 규칙: STATUS_TRANSITIONS + canTransitionTo() 구현

## High 수정
- 다중 담당자: work_order_assignees 피벗 테이블 및 관계 추가
- 부분 수정: 품목 ID 기반 upsert/delete 로직 구현

## 변경 파일
- Models: WorkOrder, WorkOrderAssignee(신규), 하위 모델들
- Services: WorkOrderService (assign, update 메서드 개선)
- Migrations: tenant_id 추가, assignees 테이블 생성

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-09 08:32:44 +09:00
18aa745518 feat: 공정 관리 API 개선 및 ProcessItem 추가
- ProcessItem 모델 및 마이그레이션 추가
- Process 요청/서비스 로직 수정
- Swagger API 문서 추가

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-08 20:23:52 +09:00
1410cf725a feat(API): 견적-주문 연동 필드 및 마이그레이션 추가
- Order, OrderItem 모델에 견적 연동 필드 추가
- Quote 모델에 order_id 관계 추가
- QuoteService 개선
- 관련 마이그레이션 파일 추가

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-05 15:56:46 +09:00
4fa38e39e6 feat(API): 채권현황 동적월 지원 및 year=0 파라미터 버그 수정
- ReceivablesController: boolean 유효성 검사를 string|in:true,false,1,0으로 변경
  - 쿼리 문자열의 "true" 문자열을 올바르게 처리
  - 디버깅용 Log::info 추가
- ReceivablesService: 동적 월 기간 지원
  - recent_year=true 시 최근 12개월 동적 계산
  - 월별 레이블 동적 생성 (예: 25.02, 25.03...)
  - 이월잔액(carry_forward_balance) 계산 추가
- Client 모델: is_overdue, memo 필드 추가
- 마이그레이션: clients 테이블에 is_overdue 컬럼 추가

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-02 14:47:51 +09:00
d6e18fb54e feat(API): 직책/직원/근태 관리 API 개선
- Position 모델: key 필드 추가 및 마이그레이션
- PositionSeeder: 기본 직책 시더 추가
- TenantUserProfile: 프로필 이미지 관련 필드 추가
- Employee Request: 직원 등록/수정 요청 검증 강화
- EmployeeService: 직원 관리 서비스 로직 개선
- AttendanceService: 근태 관리 서비스 개선

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-30 17:25:13 +09:00
08c9a74cbc feat(API): 역할/권한 관리 API 개선
- RoleController: 역할 CRUD API 개선
- RolePermissionController: 역할별 권한 설정 API 추가
- RoleService/RolePermissionService: 비즈니스 로직 분리
- Role 모델: is_hidden 필드 추가 (시스템 역할 숨김)
- 역할 숨김 마이그레이션 추가

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-30 17:24:19 +09:00
75576323fe feat(API): Position API 추가 (직급/직책 통합)
- Position 모델 생성 (type: rank | title)
- PositionService: CRUD + reorder 구현
- PositionController: REST API 엔드포인트
- Swagger 문서 작성 (PositionApi.php)
- 마이그레이션: positions 테이블 + common_codes 등록
- routes/api.php에 라우트 등록

Phase L-3 (직급관리), L-4 (직책관리) 백엔드 완료

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-30 11:18:17 +09:00
bdb7460bfa feat: 품목(Item) 더미 데이터 시더 추가
- DummyItemSeeder.php 생성: 10,000개 품목 더미 데이터
  - FG(완제품) 2,000개, PT(부품) 3,000개
  - SM(부자재) 2,000개, RM(원자재) 2,000개, CS(소모품) 1,000개
- 1,000개씩 배치 삽입으로 성능 최적화
- 타입별 속성(attributes) 자동 생성
- DummyDataSeeder에 품목 시더 등록

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-30 09:43:20 +09:00
39538aa812 refactor: 검사 테이블 통합 및 출하 대시보드 수정
## 변경 사항

### 검사 시스템 통합
- 레거시 검사 모델 삭제 (MaterialInspection, MaterialInspectionItem, MaterialReceipt)
- 통합 검사 모델 추가 (Inspection.php) - IQC/PQC/FQC 지원
- 품목 입고 모델 추가 (ItemReceipt.php)
- PricingService에서 ItemReceipt 참조로 변경

### 출하 대시보드 수정
- ShipmentService stats() 프론트엔드 호환 필드 추가
  - today_shipment_count, scheduled_count, shipping_count, urgent_count

### 마이그레이션
- inspections 테이블 생성 (IQC/PQC/FQC 통합)
- item_receipts로 테이블명 변경

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-29 19:31:51 +09:00
d7bfb3e5ae feat(SAM/API): 결재 시더를 DummyDataSeeder에 통합
- ApprovalTestDataSeeder: 테넌트 ID 동적 처리 (DummyDataSeeder.TENANT_ID)
- DummyDataSeeder: 결재 시더 호출 추가
- 결재 양식 3건, 결재 문서 20건, 결재선 ~40건 생성

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-29 15:41:46 +09:00
d1ed374acf fix(SAM/API): 더미 시더 클라이언트 매칭 오류 수정
- DummySaleSeeder: 클라이언트 이름 매칭 실패 시 기존 클라이언트 랜덤 선택
- DummyPurchaseSeeder: 동일한 fallback 로직 추가
- 거래처 없을 경우 조기 반환 처리

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-29 15:34:42 +09:00
a639e0fa60 feat(SAM/API): Stock 모델에 Item 관계 추가 및 시더 생성
- Stock 모델에 item_id 필드 및 item() 관계 추가
- StockService에 item eager loading 적용
- stocks 테이블 item_id 마이그레이션 추가
- StockReceivingSeeder 더미 데이터 시더 생성
- Process 모델 Traits 경로 수정

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-29 15:31:00 +09:00
3e74999e89 fix: 고객센터 시스템 게시판 API 엔드포인트 및 날짜 필터 수정
- shared/actions.ts: /boards/ → /system-boards/ 엔드포인트 변경
- EventList, InquiryList, NoticeList: 날짜 범위 초기값 빈 문자열로 변경 (전체 조회)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 02:49:46 +09:00
472cf53289 fix: 종합분석 오늘의 이슈 승인/반려 버그 수정
- ComprehensiveAnalysisService::getTodayIssue() 수정
  - 현재 사용자가 결재자인 문서만 조회하도록 whereHas 조건 추가
  - 이전: 테넌트의 모든 대기 결재 표시 → "결재 순서가 아닙니다" 오류
  - 수정: 현재 로그인 사용자가 approver_id인 문서만 표시

- ComprehensiveAnalysisSeeder 테스트 데이터 수정
  - Tenant 287 (프론트_테스트회사) 기준
  - User 33 (홍킬동) 기준으로 결재 단계 생성

- Client 모델 재무 컬럼 추가 (마이그레이션 포함)
  - outstanding_balance: 미수금
  - credit_limit: 여신한도

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-27 18:47:46 +09:00
71a33d79cc feat: 매입유형(purchase_type) 필드 추가
- 마이그레이션: purchases 테이블에 purchase_type 컬럼 추가
- Purchase 모델: $fillable 및 PURCHASE_TYPES 상수 추가
- StorePurchaseRequest: purchase_type validation 추가
- UpdatePurchaseRequest: purchase_type validation 추가
- PurchaseService: store/update에 purchase_type 처리 추가

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-27 16:47:26 +09:00
3994e0faf1 feat: 공정관리 API 구현 (L-1)
- processes, process_classification_rules 테이블 마이그레이션
- Process, ProcessClassificationRule 모델 (BelongsToTenant, SoftDeletes)
- ProcessService: CRUD + 통계/옵션/상태토글
- ProcessController + FormRequest 검증
- API 라우트 등록 (/v1/processes)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-26 18:58:44 +09:00
5c0f92d74a feat: I-8 휴가 정책 관리 API 구현
- LeavePolicyController: 휴가 정책 CRUD API
- LeavePolicyService: 정책 관리 로직
- LeavePolicy 모델: 다중 테넌트 지원
- FormRequest 검증 클래스
- Swagger 문서화
- leave_policies 테이블 마이그레이션

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-26 15:48:06 +09:00
e7862ed6e6 feat: I-3 법인카드 사용내역 API 구현
- CardTransactionController: 카드 거래내역 조회 API
- CardTransactionService: 카드 거래 조회 로직
- Withdrawal 모델 카드 필드 확장
- Swagger 문서화
- withdrawals 테이블 카드 필드 마이그레이션

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-26 15:46:48 +09:00
aca0902c26 feat: H-3 출하 관리 API 구현
- ShipmentController: 출하 CRUD 및 상태 관리 API
- ShipmentService: 출하 비즈니스 로직
- Shipment, ShipmentItem 모델
- FormRequest 검증 클래스
- Swagger 문서화
- shipments, shipment_items 테이블 마이그레이션

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-26 15:46:07 +09:00
5ec201b985 feat: H-2 재고 현황 API 구현
- StockController: 재고 조회 및 통계 API
- StockService: 재고 비즈니스 로직
- Stock, StockLot 모델: 재고/로트 관리
- Swagger 문서화
- stocks, stock_lots 테이블 마이그레이션

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-26 15:45:48 +09:00
43ccd1e6e0 feat: H-1 입고 관리 API 구현
- ReceivingController: CRUD 및 목록 조회 API
- ReceivingService: 입고 비즈니스 로직
- Receiving 모델: 다중 테넌트 지원
- FormRequest 검증 클래스
- Swagger 문서화
- receivings 테이블 마이그레이션

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-26 15:45:33 +09:00
84cce6742e feat: G-2 작업실적 관리 API 구현
- WorkResult 모델 생성 (Production 네임스페이스)
- WorkResultService 서비스 구현 (CRUD + 통계 + 토글)
- WorkResultController 컨트롤러 생성 (8개 엔드포인트)
- FormRequest 검증 클래스 (Store/Update)
- Swagger 문서 작성 (WorkResultApi.php)
- 라우트 추가 (/api/v1/work-results)
- i18n 메시지 추가 (work_result 키)

API Endpoints:
- GET /work-results - 목록 조회 (페이징, 필터링)
- GET /work-results/stats - 통계 조회
- GET /work-results/{id} - 상세 조회
- POST /work-results - 등록
- PUT /work-results/{id} - 수정
- DELETE /work-results/{id} - 삭제
- PATCH /work-results/{id}/inspection - 검사 상태 토글
- PATCH /work-results/{id}/packaging - 포장 상태 토글

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-26 15:18:08 +09:00
05a53cdc8e feat: G-1 작업지시 관리 API 구현
- 작업지시 테이블 마이그레이션 (work_orders, work_order_items, work_order_bending_details, work_order_issues)
- 작업지시 모델 4개 (WorkOrder, WorkOrderItem, WorkOrderBendingDetail, WorkOrderIssue)
- WorkOrderService 비즈니스 로직 구현
- WorkOrderController REST API 엔드포인트 11개
- FormRequest 검증 클래스 5개
- Swagger API 문서화 완료

API Endpoints:
- GET /work-orders (목록)
- GET /work-orders/stats (통계)
- POST /work-orders (등록)
- GET /work-orders/{id} (상세)
- PUT /work-orders/{id} (수정)
- DELETE /work-orders/{id} (삭제)
- PATCH /work-orders/{id}/status (상태변경)
- PATCH /work-orders/{id}/assign (담당자배정)
- PATCH /work-orders/{id}/bending/toggle (벤딩토글)
- POST /work-orders/{id}/issues (이슈등록)
- PATCH /work-orders/{id}/issues/{issueId}/resolve (이슈해결)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-26 13:57:42 +09:00
1f5539db32 feat: I-1 미지급비용 관리 API 개발
- ExpectedExpense 모델 및 마이그레이션 생성
- ExpectedExpenseService 구현 (CRUD, 일괄삭제, 지급일 변경, 요약)
- ExpectedExpenseController REST API 구현
- FormRequest 검증 클래스 3개 생성
- Swagger API 문서 작성
- 라우트 추가 (8개 엔드포인트)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-26 13:23:07 +09:00
0fef26f42a feat: HR 모델 userProfile 관계 추가 및 서비스 개선
## 모델 개선
- Leave: userProfile relation 추가
- Salary: userProfile relation 추가
- TenantUserProfile: department, position 관계 및 label accessor 추가

## 서비스 개선
- LeaveService: userProfile eager loading 추가
- SalaryService: 사원 정보 조회 개선
- CardService: 관계 정리 및 개선
- AttendanceService: 조회 기능 개선

## 시더
- DummySalarySeeder 추가
- DummyCardSeeder 멀티테넌트 지원 개선
- DummyDataSeeder에 급여 시더 등록

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-26 01:32:07 +09:00
3e313ebec8 fix: 카드 시더 멀티 테넌트 지원 2025-12-25 20:42:06 +09:00
559e932b1c feat: 법인카드 더미 시더 추가
- DummyCardSeeder 생성 (5개 법인카드)
- DummyDataSeeder에 카드 시더 연동

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-25 20:38:54 +09:00
638e87b05d feat: 급여 관리 API 및 더미 시더 확장
- 급여 관리 API 추가 (SalaryController, SalaryService, Salary 모델)
  - 급여 목록/상세/등록/수정/삭제
  - 상태 변경 (scheduled/completed)
  - 일괄 상태 변경
  - 통계 조회
- 더미 시더 확장
  - 근태, 휴가, 부서, 사용자 시더 추가
  - 기존 시더 tenant_id/created_by/updated_by 필드 추가
- 부서 서비스 개선 (tree 조회 기능 추가)
- 카드 서비스 수정

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-25 03:48:32 +09:00
01d9ccaf57 feat: 휴가 부여현황 API 추가
- leave_grants 테이블 마이그레이션 추가
- LeaveGrant 모델 생성 (annual/monthly/reward/condolence/other 유형)
- LeaveService에 getGrants, storeGrant, destroyGrant 메서드 추가
- LeaveController에 grants, storeGrant, destroyGrant 엔드포인트 추가
- GET/POST/DELETE /api/v1/leaves/grants 라우트 추가
- 연차/월차 부여 시 LeaveBalance total_days 자동 갱신
2025-12-24 19:39:33 +09:00