-- 리비전 관리 개선: 자재 상태 추적 -- 리비전 업로드 시 삭제된 자재의 상태를 추적 -- materials 테이블에 revision_status 컬럼 추가 ALTER TABLE materials ADD COLUMN IF NOT EXISTS revision_status VARCHAR(20) DEFAULT 'active'; -- 가능한 값: 'active', 'inventory', 'deleted_not_purchased', 'changed' -- revision_status 설명: -- 'active': 정상 활성 자재 (기본값) -- 'inventory': 재고품 (구매신청 후 리비전에서 삭제됨 - 연노랑색 표시) -- 'deleted_not_purchased': 구매신청 전 삭제됨 (숨김 처리) -- 'changed': 변경된 자재 (추가 구매 필요) -- 인덱스 추가 (성능 최적화) CREATE INDEX IF NOT EXISTS idx_materials_revision_status ON materials(revision_status); CREATE INDEX IF NOT EXISTS idx_materials_drawing_name ON materials(drawing_name); CREATE INDEX IF NOT EXISTS idx_materials_line_no ON materials(line_no); COMMENT ON COLUMN materials.revision_status IS '리비전 자재 상태: active(활성), inventory(재고품), deleted_not_purchased(삭제됨), changed(변경됨)';