Files
sam-docs/system/database/production.md
권혁성 d4e5f62413 docs: [종합정비] Phase 1 시스템 현황 문서 14개 작성
- system/overview.md: 전체 아키텍처 개요
- system/api-structure.md: API 구조 (220 모델, 1027 엔드포인트, 18 라우트 도메인)
- system/react-structure.md: React 구조 (249 페이지, 612 컴포넌트)
- system/mng-structure.md: MNG 구조 (171 컨트롤러, 436 Blade 뷰)
- system/docker-setup.md: Docker 7 컨테이너 구성
- system/database/README.md + 9개 도메인 스키마 (270+ 테이블)
  - core, hr, sales, production, finance, boards, files, system, erp-analysis

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-27 18:03:13 +09:00

112 lines
3.0 KiB
Markdown

# 생산 / 시공 / 자재 / 품질 도메인
> **모델 수**: Production 8 + Construction 5 + Materials 4 + Qualitys 3 = 20
> **핵심**: 작업지시, 공정 관리, 자재/LOT 추적, 품질 검사
---
## 주요 테이블
### 생산 (Production)
| 테이블 | 모델 | 역할 |
|--------|------|------|
| work_orders | WorkOrder | 작업지시 마스터 |
| work_order_items | WorkOrderItem | 작업지시 항목 (options JSON) |
| work_order_step_progress | WorkOrderStepProgress | 단계별 진행 추적 |
| work_order_bending_details | WorkOrderBendingDetail | 절곡 상세 사양 |
| work_order_assignees | WorkOrderAssignee | 작업자 배정 |
| work_order_issues | WorkOrderIssue | 작업 이슈 기록 |
| work_results | WorkResult | 작업실적 |
| work_order_material_inputs | WorkOrderMaterialInput | 자재 투입 기록 |
### 시공 (Construction)
| 테이블 | 모델 | 역할 |
|--------|------|------|
| contracts | Contract | 시공 계약 |
| handover_reports | HandoverReport | 인수인계 보고서 |
| handover_report_managers | HandoverReportManager | 인수인계 담당자 |
| structure_reviews | StructureReview | 구조 검토 |
### 자재 (Materials)
| 테이블 | 모델 | 역할 |
|--------|------|------|
| materials | Material | 자재 마스터 |
| material_receipts | MaterialReceipt | 자재 입고 |
| material_inspections | MaterialInspection | 수입검사 마스터 |
| material_inspection_items | MaterialInspectionItem | 수입검사 항목 |
### 품질 (Qualitys)
| 테이블 | 모델 | 역할 |
|--------|------|------|
| inspections | Inspection | 검사 마스터 |
| lots | Lot | LOT 관리 |
| lot_sales | LotSale | LOT 출고 |
---
## 관계 구조
```
WorkOrder (작업지시)
├─ belongsTo Order
├─ belongsTo Process (공정)
├─ belongsTo Department (담당 팀)
├─ hasMany WorkOrderItem
│ ├─ options: JSON { floor, code, width, height, slat_info, bending_info }
│ └─ hasMany WorkOrderMaterialInput
├─ hasMany WorkOrderStepProgress
├─ hasMany WorkOrderBendingDetail
├─ hasMany WorkOrderAssignee
├─ hasMany WorkOrderIssue
└─ hasMany WorkResult
Material
├─ belongsTo Category
├─ hasMany MaterialReceipt
├─ hasMany Lot
└─ morphMany File
Inspection
├─ belongsTo WorkOrder (또는 MaterialReceipt)
└─ hasMany InspectionItem
```
---
## WorkOrderItem options JSON 구조
```json
{
"floor": "1F",
"code": "SL-001",
"width": 1200,
"height": 800,
"cutting_info": { ... },
"slat_info": { "joint_bar": 2, "glass_qty": 10 },
"bending_info": { ... },
"wip_info": { ... }
}
```
- OrderItem.options에서 복사됨 (width 직접 접근 가능)
- 조인트바 자동계산: `createWorkOrders()` 에서 처리
---
## LOT 관리 흐름
```
Material → MaterialReceipt (입고)
MaterialInspection (수입검사)
Lot (LOT 생성)
WorkOrderMaterialInput (투입)
LotSale (출고)
```