"use client" import * as React from "react" import { type Project } from "@/db/schema/projects" import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle, } from "@/components/ui/dialog" import { Table, TableBody, TableCell, TableRow, } from "@/components/ui/table" import { Badge } from "@/components/ui/badge" import { formatDate } from "@/lib/utils" interface ProjectDetailDialogProps { project: Project open: boolean onOpenChange: (open: boolean) => void } export function ProjectDetailDialog({ project, open, onOpenChange, }: ProjectDetailDialogProps) { const formatValue = (value: string | null | undefined) => { return value || "-" } return ( 프로젝트 상세 정보 {project.code} 프로젝트코드: {project.code} | {project.name}

프로젝트 전체 정보

{/* 기본 프로젝트 정보 */} 프로젝트 코드 {formatValue(project.code)} 프로젝트명 {formatValue(project.name)} 프로젝트 타입 {project.type === "ship" ? "조선" : "해양"} {/* 선주 및 기본 정보 */} 선주명 {formatValue(project.OWN_NM)} 선주약어 {formatValue(project.OWN_AB)} 선주1 {formatValue(project.OWN_1)} {/* 선급 정보 */} 선급1 {formatValue(project.CLS_1)} 선급2 {formatValue(project.CLS_2)} {/* 선박 정보 */} 선종 {formatValue(project.SKND)} 선형 {formatValue(project.SHTYPE)} 선형코드 {formatValue(project.SHTYPE_CD)} 선형군 {formatValue(project.SHTYPE_GRP)} 선형단위 {formatValue(project.SHTYPE_UOM)} {/* 도크 및 건조 정보 */} 도크 {formatValue(project.DOCK_CD)} 기준호선 {formatValue(project.MSHIP_NO)} {/* 계약 정보 */} 계약일자 {formatValue(project.CNRT_DT)} 계약인도일자 {formatValue(project.CNRT_DL_DT)} 실인도일자 {formatValue(project.RL_DL_DT)} 선표인도일자 {formatValue(project.BP_DL_DT)} Sail Away Date {formatValue(project.SA_DT)} 고객발주번호 {formatValue(project.CSTM_PO_NO)} 계약존속여부 {formatValue(project.CNRT_CNTN_YN)} 계약유보여부 {formatValue(project.CNRT_RESV_YN)} 전체 계약 대수 {formatValue(project.TOT_CNRT_CNT)} {/* 프로젝트 상태 */} 진행상태 {formatValue(project.PRGS_STAT)} 공사진행여부 {formatValue(project.PROJ_PRGS_YN)} 시작일자 {formatValue(project.STDT)} 인터페이스 진행단계 {formatValue(project.IF_STAT)} {/* 기술 정보 */} IMO 번호 {formatValue(project.IMO_NO)} 국적 {formatValue(project.NTTP)} Main engine type code {formatValue(project.MN_ENGN_TP_CD)} 관청명 {formatValue(project.GOV)} {/* 조직 정보 */} 사업부 {formatValue(project.BIZCLS)} 사업장코드 {formatValue(project.BIZLOC_CD)} 사업영역 {formatValue(project.BIZ_DMN)} 영업그룹 {formatValue(project.SALE_GRP)} 영업조직 {formatValue(project.SALE_ORG_CD)} 손익센터 {formatValue(project.PRCTR)} 설계담당자 {formatValue(project.DSN_CHRGR)} 회사코드 {formatValue(project.CO_CD)} 플랜트 코드 {formatValue(project.PLNT_CD)} 관리회계영역 {formatValue(project.MNG_ACOT_DMN)} 품질사업부 {formatValue(project.QM_CLS)} {/* 프로젝트 세부 정보 */} 프로젝트 세부타입 {formatValue(project.PROJ_DTL_TP)} 프로젝트 기타타입 {formatValue(project.PROJ_ETC_TP)} 프로젝트구분 {formatValue(project.PROJ_GB)} 프로젝트 프로파일 {formatValue(project.PROJ_PROF)} 프로젝트범위 {formatValue(project.PROJ_SCP)} 프로젝트 WBS타입 {formatValue(project.PROJ_WBS_TP)} 원본 TYPE {formatValue(project.TYPE)} (중국)프로젝트타입 {formatValue(project.CHN_PROJ_TP)} (풍력)프로젝트타입 {formatValue(project.WP_PROJ_TP)} {/* 시리즈 정보 */} 시리즈여부 {formatValue(project.SERS_YN)} 시리즈첫공사번호 {formatValue(project.SERS_NO)} 시리즈번호 {formatValue(project.REF_NO)} 세대수/시리즈 {formatValue(project.GENT_CNT)} 연관프로젝트 {formatValue(project.RLTD_PROJ)} {/* 제품 정보 */} 제품 Level 4 {formatValue(project.PDT_LVL_4)} 전기전자 제품군 {formatValue(project.DIGT_PDT_GRP)} {/* 프로젝트 관리 정보 */} 프로젝트 생성요청일 {formatValue(project.PROJ_CRTE_REQ_DT)} 프로젝트 생성요청자 {formatValue(project.PROJ_CRTE_REQ_EMPNO)} 모프로젝트 인도계획일 {formatValue(project.PROJ_DL_PLN_DT)} 모프로젝트 인도실적일 {formatValue(project.PROJ_DL_RT_DT)} 프로포절 프로젝트 {formatValue(project.PRO_PROJ_NO)} {/* 안건 정보 */} 안건번호 {formatValue(project.INQY_NO)} 안건순번 {formatValue(project.INQY_SEQ)} {/* 보증 정보 */} A/S 보증기간 {formatValue(project.AS_GRNT_PRD)} Project Warranty Start Date {formatValue(project.GRNT_STDT)} 주문주 보증기간 {formatValue(project.ORDR_GRNT_PRD)} 주문주 보증종료일 {formatValue(project.ORDR_GRNT_FN_DT)} 최종수요자 보증종료일 {formatValue(project.FIN_GRNT_FN_DT)} {/* 기타 정보 */} MC YN {formatValue(project.NEW_MC_YN)} 사내외 구분 {formatValue(project.IO_GB)} 유통경로 {formatValue(project.DIST_PATH)} 인도전선명 {formatValue(project.DL_BF_PROJ_NM)} 인도고객 ID {formatValue(project.DL_CSTM_CD)} {/* 시스템 정보 */} 시스템회계마감일자 {formatValue(project.SYS_ACOT_CLSD_DT)} Source System {formatValue(project.SRC_SYS_ID)} 삭제 여부 {project.DEL_YN ? ( 삭제됨 ) : ( 활성 )} {/* 생성/수정 정보 */} 생성일시 {formatDate(project.createdAt, "KR")} 수정일시 {formatDate(project.updatedAt, "KR")}
) }