summaryrefslogtreecommitdiff
path: root/i18n/locales
diff options
context:
space:
mode:
authordujinkim <dujin.kim@dtsolution.co.kr>2025-08-11 09:02:00 +0000
committerdujinkim <dujin.kim@dtsolution.co.kr>2025-08-11 09:02:00 +0000
commitcbb4c7fe0b94459162ad5e998bc05cd293e0ff96 (patch)
tree0a26712f7685e4f6511e637b9a81269d90a47c8f /i18n/locales
parenteb654f88214095f71be142b989e620fd28db3f69 (diff)
(대표님) 입찰, EDP 변경사항 대응, spreadJS 오류 수정, 벤더실사 수정
Diffstat (limited to 'i18n/locales')
-rw-r--r--i18n/locales/en/engineering.json347
-rw-r--r--i18n/locales/ko/engineering.json347
2 files changed, 694 insertions, 0 deletions
diff --git a/i18n/locales/en/engineering.json b/i18n/locales/en/engineering.json
new file mode 100644
index 00000000..705b4c0c
--- /dev/null
+++ b/i18n/locales/en/engineering.json
@@ -0,0 +1,347 @@
+{
+ "buttons": {
+ "delete": "Delete",
+ "tagOperations": "Tag Operations",
+ "syncTags": "Sync Tags",
+ "getTags": "Get Tags",
+ "addTags": "Add Tags",
+ "reportOperations": "Report Operations",
+ "uploadTemplate": "Upload Template",
+ "batchDocument": "Batch Document",
+ "import": "Import",
+ "export": "Export",
+ "viewTemplate": "View Template",
+ "compareWithSEDP": "Compare with SEDP",
+ "sendToSHI": "Send to SHI",
+ "refresh": "Refresh",
+ "close": "Close",
+ "cancel": "Cancel",
+ "save": "Save",
+ "create": "Create",
+ "addRow": "Add New Row",
+ "duplicate": "Duplicate Row",
+ "remove": "Delete Row"
+ },
+ "labels": {
+ "class": "Class",
+ "tagType": "Tag Type",
+ "tagNo": "Tag Number",
+ "description": "Description",
+ "actions": "Actions",
+ "status": "Status",
+ "matching": "Match",
+ "different": "Different",
+ "legend": "Legend",
+ "localValue": "Local Value",
+ "sedpValue": "SEDP Value"
+ },
+ "placeholders": {
+ "selectClass": "Select class...",
+ "searchClass": "Search class...",
+ "autoSetByClass": "Automatically determined when class is selected",
+ "enterDescription": "Enter item description",
+ "searchTagOrDesc": "Search tag number or description..."
+ },
+ "messages": {
+ "noSearchResults": "No search results",
+ "loadingClasses": "Loading classes...",
+ "loadingFields": "Loading fields...",
+ "selectClassFirst": "Please select a class first to enter tag data",
+ "noFieldsForTagType": "No fields available for this tag type",
+ "invalidTagsExist": "Invalid tags exist",
+ "allAttributesMatch": "All attributes match",
+ "allTagsExistInBothSystems": "All tags exist in both systems",
+ "noMatchingTags": "No tags match current filter",
+ "dataComparing": "Comparing data...",
+ "sendingSEDP": "Sending to SEDP...",
+ "processing": "Processing..."
+ },
+ "tabs": {
+ "allTags": "All Tags",
+ "differences": "Differences",
+ "matching": "Matching",
+ "missingTags": "Missing Tags"
+ },
+ "sections": {
+ "tagItems": "Tag Items",
+ "localOnlyTags": "Local Only Tags",
+ "sedpOnlyTags": "SEDP Only Tags",
+ "differenceCount": " attributes different"
+ },
+ "switches": {
+ "showOnlyDifferences": "Show only items with differences"
+ },
+ "dialogs": {
+ "addFormTag": "Add Form Tag",
+ "sedpDataComparison": "SEDP Data Comparison",
+ "selectClassToLoadFields": "Select a class to load tag type and sub-fields, then add multiple rows to create multiple tags"
+ },
+ "tooltips": {
+ "duplicateRow": "Duplicate Row",
+ "deleteRow": "Delete Row"
+ },
+ "delete": {
+ "confirmTitle": "Are you sure you want to delete?",
+ "confirmDescription": "This action cannot be undone. {{count}} {{items}} and related tag records will be permanently deleted from the database.",
+ "tagNumbers": "Tag Numbers",
+ "andMore": " and {{count}} more...",
+ "item": "item",
+ "items": "items",
+ "deleteButtonLabel": "Delete Selected Items",
+ "noValidItems": "No valid items to delete",
+ "dataInconsistency": "Deleted {{deletedCount}} form items and {{deletedTagsCount}} tags (data inconsistency detected)",
+ "successMessage": "Successfully deleted {{count}} {{items}}"
+ },
+ "batchReport": {
+ "dialogTitle": "Vendor Document Create",
+ "dialogDescription": "Please select a Vendor Document Template and upload the cover page.",
+ "templateSelectLabel": "Vendor Document Template Select",
+ "templateSelectPlaceholder": "Please select the Report Template you want to use.",
+ "coverPageUploadLabel": "Vendor Document Cover Page Upload(.docx)",
+ "dropFileHere": "Drop files here",
+ "orClickToSelect": "or click to select files. Max size: {{maxSize}}",
+ "unlimited": "unlimited",
+ "multipleFilesAllowed": "Multiple files can be selected.",
+ "selectedFiles": "Selected Files ({{count}})",
+ "fileCount": "{{count}} files",
+ "publish": "Publish",
+ "createDocument": "Create Vendor Document",
+ "remove": "Remove",
+ "fileError": "File Error",
+ "uploadFailed": "Upload failed",
+ "downloadComplete": "Report download completed!",
+ "reportGenerationError": "An error occurred while generating the report.",
+ "error": "Error",
+ "documentGenerated": "Document has been generated. Please enter publishing information.",
+ "documentGenerationError": "An error occurred while generating the document."
+ },
+ "singleReport": {
+ "dialogTitle": "Create Vendor Document",
+ "dialogDescription": "Please select the Vendor Document Template you want to use.",
+ "templateSelectLabel": "Vendor Document Template Select",
+ "templateSelectPlaceholder": "Please select the Vendor Document Template you want to use.",
+ "publish": "Publish",
+ "createDocument": "Create Vendor Document",
+ "downloadComplete": "Report download completed!",
+ "publishPreparationFailed": "Failed to prepare document for publishing",
+ "documentViewerLoading": "Loading document viewer..."
+ },
+ "templateUpload": {
+ "dialogTitle": "Vendor Document Template",
+ "sampleFile": "Sample File",
+ "uploadTab": "Upload Template File",
+ "uploadedListTab": "Uploaded Template File List"
+ },
+ "templateUploadTab": {
+ "uploadLabel": "Vendor Document Template File Upload(.docx)",
+ "dropFileHere": "Drop files here",
+ "orClickToSelect": "or click to select files. Max size: {{maxSize}}",
+ "unlimited": "unlimited",
+ "multipleFilesAllowed": "Multiple files can be selected.",
+ "selectedFiles": "Selected Files ({{count}})",
+ "fileCount": "{{count}} files",
+ "upload": "Upload",
+ "remove": "Remove",
+ "uploadingProgress": "{{progress}}% uploading...",
+ "uploadComplete": "Template File upload completed!",
+ "fileError": "File Error",
+ "uploadFailed": "Upload failed",
+ "error": "Error",
+ "uploadError": "An error occurred while uploading files."
+ },
+ "templateUploadedList": {
+ "listLabel": "Uploaded Template File List",
+ "loading": "Loading...",
+ "download": "Download",
+ "delete": "Delete",
+ "cancel": "Cancel",
+ "deleteConfirmTitle": "Do you want to delete Report Template File({{fileName}})?",
+ "downloadComplete": "Template File download completed!",
+ "deleteComplete": "Template File deleted successfully!",
+ "error": "Error",
+ "downloadError": "An error occurred while downloading the Template File.",
+ "deleteError": "An error occurred while deleting the Template File."
+ },
+ "sedp": {
+ "sendDataTitle": "Send Data to SEDP",
+ "sendDataDescription": "You are about to send form data to the Samsung Engineering Design Platform (SEDP).",
+ "formName": "Form Name",
+ "totalTags": "Total Tags",
+ "warningMessage": "Data sent to SEDP cannot be easily reverted. Please ensure all information is correct before proceeding.",
+ "sending": "Sending...",
+ "sendToSEDP": "Send to SEDP",
+ "dataSentSuccessfully": "Data Sent Successfully",
+ "partiallySuccessful": "Partially Successful",
+ "failedToSendData": "Failed to Send Data",
+ "progress": "Progress",
+ "successfulCount": "{{count}} Successful",
+ "failedCount": "{{count}} Failed"
+ },
+ "excelDownload": {
+ "noDifferencesToDownload": "No differences to download",
+ "attributeDifferencesSheet": "Attribute Differences",
+ "missingTagsSheet": "Missing Tags",
+ "tagNumber": "Tag Number",
+ "tagDescription": "Tag Description",
+ "attribute": "Attribute",
+ "localValue": "Local Value",
+ "sedpValue": "SEDP Value",
+ "status": "Status",
+ "emptyValue": "(empty)",
+ "localOnlyStatus": "Local Only",
+ "sedpOnlyStatus": "SEDP Only",
+ "fileNamePrefix": "SEDP_Differences",
+ "downloadComplete": "Excel download completed",
+ "downloadFailed": "Excel download failed",
+ "downloadButtonText": "Download Differences to Excel"
+ },
+ "updateTagSheet": {
+ "title": "Update Row",
+ "unknownTag": "Unknown TAG",
+ "description": "Modify the fields below and save changes. Fields with",
+ "readOnlyIndicator": "are read-only.",
+ "editableFieldsCount": "{{editableCount}} of {{totalCount}} fields are editable for this TAG.",
+ "selectOption": "Select an option",
+ "searchOptions": "Search options...",
+ "noOptionFound": "No option found.",
+ "readOnlyReasons": {
+ "shiOnly": "SHI-only field (managed by SHI system)",
+ "noEditableFields": "No editable fields information for this TAG",
+ "notEditableForTag": "Not editable for this TAG class",
+ "readOnly": "Read-only field"
+ },
+ "messages": {
+ "updateSuccess": "Updated successfully!",
+ "updateError": "An unexpected error occurred while updating"
+ }
+ },
+ "varListDownload": {
+ "headers": {
+ "tableColumnLabel": "Table Column Label",
+ "reportVariable": "Report Variable"
+ },
+ "fileNameSuffix": "_report_variable_list.xlsx",
+ "buttonText": "Variable List Download",
+ "buttonAriaLabel": "Variable List Download",
+ "iconAltText": "Variable List Download Icon",
+ "messages": {
+ "downloadComplete": "Report Variable List file download completed!",
+ "errorTitle": "Error",
+ "errorDescription": "Variable List file could not be found."
+ }
+ },
+ "dolceImport": {
+ "buttons": {
+ "getList": "Get List",
+ "importing": "Importing...",
+ "importNow": "Import Now",
+ "startImport": "Start Import"
+ },
+ "status": {
+ "loadingProjectInfo": "Loading project information...",
+ "checkingConnection": "Checking DOLCE connection...",
+ "connectionError": "DOLCE Connection Error",
+ "importDisabled": "DOLCE Import Disabled",
+ "updatesAvailable": "Updates Available ({{projectCount}} projects)",
+ "synchronized": "Synchronized with DOLCE",
+ "statusCheckFailed": "Status check failed"
+ },
+ "labels": {
+ "importStatus": "DOLCE Import Status",
+ "currentStatus": "Current Status",
+ "targetProjects": "Target Projects",
+ "projectCount": "{{count}} projects",
+ "projectIds": "Project IDs",
+ "newDocuments": "New Documents",
+ "updates": "Updates",
+ "totalDocuments": "Total Documents (B3/B4/B5)",
+ "detailsByProject": "Details by Project",
+ "projectLabel": "Project {{projectId}}",
+ "itemsToImport": "Items to Import",
+ "progress": "Progress"
+ },
+ "messages": {
+ "statusCheckError": "Unable to check status. Please verify project settings.",
+ "projectFetchError": "Failed to fetch project information.",
+ "importSuccess": "DOLCE import completed",
+ "importSuccessDescription": "New {{newCount}}, Updated {{updatedCount}}, Skipped {{skippedCount}} ({{projectCount}} projects)",
+ "importPartiallyFailed": "DOLCE import partially failed",
+ "importPartiallyFailedDescription": "Some projects failed to import.",
+ "importFailed": "DOLCE import failed",
+ "unknownError": "An unknown error occurred."
+ },
+ "descriptions": {
+ "noDocumentsImportAll": "No documents found, importing from all projects.",
+ "projectDetails": "New {{newDocuments}}, Updates {{updatedDocuments}}",
+ "includesNewAndUpdated": "Includes new and updated documents (B3, B4, B5).",
+ "b4DocumentsNote": "For B4 documents, GTTPreDwg and GTTWorkingDwg issue stages will be auto-generated.",
+ "sequentialImport": "Will import sequentially from {{count}} projects."
+ },
+ "dialog": {
+ "title": "Import Document List from DOLCE",
+ "description": "Import the latest document list from Samsung Heavy Industries DOLCE system.",
+ "multipleProjects": "{{count}} projects targeted"
+ }
+ },
+ "shiSync": {
+ "buttons": {
+ "sendToSHI": "Send to SHI",
+ "syncing": "Syncing...",
+ "syncNow": "Sync Now",
+ "startSync": "Start Sync"
+ },
+ "status": {
+ "checking": "Checking...",
+ "connectionError": "Connection Error",
+ "noContracts": "No Contracts",
+ "pendingItems": "{{count}} Pending",
+ "synchronized": "Synchronized",
+ "noChanges": "No Changes",
+ "loading": "Loading...",
+ "error": "Error",
+ "upToDate": "Up to Date",
+ "pendingCount": "{{count}} Pending"
+ },
+ "labels": {
+ "syncStatus": "SHI Sync Status",
+ "overallStatus": "Overall Status",
+ "pending": "Pending",
+ "synced": "Synced",
+ "failed": "Failed",
+ "statusByContract": "Status by Contract",
+ "contractLabel": "Contract {{projectId}}",
+ "syncTarget": "Sync Target",
+ "targetContracts": "Target Contracts",
+ "progress": "Progress",
+ "itemCount": "{{count}} items",
+ "contractCount": "{{count}} contracts"
+ },
+ "messages": {
+ "noContractsToSync": "No contracts to sync.",
+ "noPendingChanges": "No pending changes to sync.",
+ "contractError": "Contract {{projectId}}: {{error}}",
+ "unknownError": "Unknown error",
+ "allSyncCompleted": "All contracts sync completed: {{successCount}} successful",
+ "allSyncCompletedDescription": "{{itemCount}} items from {{contractCount}} contracts have been sent to SHI system.",
+ "partialSyncCompleted": "Partial sync completed: {{successfulCount}} successful, {{failedCount}} failed",
+ "andMore": " and more...",
+ "allSyncFailed": "Sync failed: All {{failedCount}} contracts failed",
+ "allContractsSyncFailed": "All contract synchronization failed.",
+ "syncFailed": "Sync failed"
+ },
+ "descriptions": {
+ "targetInfo": "{{contractCount}} contracts targeted • {{targetSystem}} system",
+ "statusCheckError": "Unable to check sync status for some contracts. Please check network connection.",
+ "contractsWithError": "{{count}} contracts with errors",
+ "noDocumentsToSync": "No documents to sync. Please select documents.",
+ "includesChanges": "Includes changes to documents, revisions, and attachments.",
+ "currentlyProcessing": "Currently processing: Contract {{contractId}}",
+ "dialogStatusCheckError": "Unable to check sync status for some contracts. Please check network connection and try again.",
+ "noContractsToSyncDialog": "No contracts to sync. Please select documents."
+ },
+ "dialog": {
+ "title": "Sync to SHI System",
+ "description": "Send changed document data from {{contractCount}} contracts to {{targetSystem}} system."
+ }
+ }
+} \ No newline at end of file
diff --git a/i18n/locales/ko/engineering.json b/i18n/locales/ko/engineering.json
new file mode 100644
index 00000000..c1e44538
--- /dev/null
+++ b/i18n/locales/ko/engineering.json
@@ -0,0 +1,347 @@
+{
+ "buttons": {
+ "delete": "삭제",
+ "tagOperations": "태그 작업",
+ "syncTags": "태그 동기화",
+ "getTags": "태그 가져오기",
+ "addTags": "태그 추가",
+ "reportOperations": "보고서 작업",
+ "uploadTemplate": "템플릿 업로드",
+ "batchDocument": "일괄 문서",
+ "import": "가져오기",
+ "export": "내보내기",
+ "viewTemplate": "템플릿 보기",
+ "compareWithSEDP": "SEDP와 비교",
+ "sendToSHI": "SHI로 전송",
+ "refresh": "새로고침",
+ "close": "닫기",
+ "cancel": "취소",
+ "save": "저장",
+ "create": "생성",
+ "addRow": "새 행 추가",
+ "duplicate": "행 복제",
+ "remove": "행 삭제"
+ },
+ "labels": {
+ "class": "클래스",
+ "tagType": "태그 유형",
+ "tagNo": "태그 번호",
+ "description": "설명",
+ "actions": "작업",
+ "status": "상태",
+ "matching": "일치",
+ "different": "다름",
+ "legend": "범례",
+ "localValue": "로컬 값",
+ "sedpValue": "SEDP 값"
+ },
+ "placeholders": {
+ "selectClass": "클래스 선택...",
+ "searchClass": "클래스 검색...",
+ "autoSetByClass": "클래스 선택 시 자동 결정됨",
+ "enterDescription": "항목 설명 입력",
+ "searchTagOrDesc": "태그 번호 또는 설명 검색..."
+ },
+ "messages": {
+ "noSearchResults": "검색 결과가 없습니다",
+ "loadingClasses": "클래스 로딩 중...",
+ "loadingFields": "필드 로딩 중...",
+ "selectClassFirst": "태그 데이터를 입력하려면 먼저 클래스를 선택하세요",
+ "noFieldsForTagType": "이 태그 유형에 사용할 수 있는 필드가 없습니다",
+ "invalidTagsExist": "유효하지 않은 태그가 존재합니다",
+ "allAttributesMatch": "모든 속성이 일치합니다",
+ "allTagsExistInBothSystems": "모든 태그가 두 시스템에 모두 존재합니다",
+ "noMatchingTags": "현재 필터와 일치하는 태그가 없습니다",
+ "dataComparing": "데이터 비교 중...",
+ "sendingSEDP": "SEDP로 전송 중...",
+ "processing": "처리 중..."
+ },
+ "tabs": {
+ "allTags": "모든 태그",
+ "differences": "차이점",
+ "matching": "일치",
+ "missingTags": "누락된 태그"
+ },
+ "sections": {
+ "tagItems": "태그 항목",
+ "localOnlyTags": "로컬 전용 태그",
+ "sedpOnlyTags": "SEDP 전용 태그",
+ "differenceCount": "개 속성이 다름"
+ },
+ "switches": {
+ "showOnlyDifferences": "차이점이 있는 항목만 표시"
+ },
+ "dialogs": {
+ "addFormTag": "폼 태그 추가",
+ "sedpDataComparison": "SEDP 데이터 비교",
+ "selectClassToLoadFields": "클래스를 선택하여 태그 유형과 하위 필드를 로드한 다음 여러 행을 추가하여 여러 태그를 생성하세요"
+ },
+ "tooltips": {
+ "duplicateRow": "행 복제",
+ "deleteRow": "행 삭제"
+ },
+ "delete": {
+ "confirmTitle": "정말로 삭제하시겠습니까?",
+ "confirmDescription": "이 작업은 되돌릴 수 없습니다. 데이터베이스에서 {{count}}개의 {{items}}과 관련 태그 레코드가 영구적으로 삭제됩니다.",
+ "tagNumbers": "태그 번호",
+ "andMore": " 외 {{count}}개 더...",
+ "item": "항목",
+ "items": "항목",
+ "deleteButtonLabel": "선택된 항목 삭제",
+ "noValidItems": "삭제할 유효한 항목이 없습니다",
+ "dataInconsistency": "{{deletedCount}}개의 폼 항목과 {{deletedTagsCount}}개의 태그를 삭제했습니다 (데이터 불일치 감지됨)",
+ "successMessage": "{{count}}개의 {{items}}을 성공적으로 삭제했습니다"
+ },
+ "batchReport": {
+ "dialogTitle": "벤더 문서 생성",
+ "dialogDescription": "벤더 문서 템플릿을 선택하고 표지를 업로드하세요.",
+ "templateSelectLabel": "벤더 문서 템플릿 선택",
+ "templateSelectPlaceholder": "사용할 보고서 템플릿을 선택하세요.",
+ "coverPageUploadLabel": "벤더 문서 표지 업로드(.docx)",
+ "dropFileHere": "파일을 여기에 드롭하세요",
+ "orClickToSelect": "또는 클릭하여 파일을 선택하세요. 최대 크기: {{maxSize}}",
+ "unlimited": "무제한",
+ "multipleFilesAllowed": "여러 파일을 선택할 수 있습니다.",
+ "selectedFiles": "선택된 파일 ({{count}}개)",
+ "fileCount": "{{count}}개 파일",
+ "publish": "게시",
+ "createDocument": "벤더 문서 생성",
+ "remove": "제거",
+ "fileError": "파일 오류",
+ "uploadFailed": "업로드 실패",
+ "downloadComplete": "보고서 다운로드가 완료되었습니다!",
+ "reportGenerationError": "보고서 생성 중 오류가 발생했습니다.",
+ "error": "오류",
+ "documentGenerated": "문서가 생성되었습니다. 게시 정보를 입력하세요.",
+ "documentGenerationError": "문서 생성 중 오류가 발생했습니다."
+ },
+ "singleReport": {
+ "dialogTitle": "벤더 문서 생성",
+ "dialogDescription": "사용할 벤더 문서 템플릿을 선택하세요.",
+ "templateSelectLabel": "벤더 문서 템플릿 선택",
+ "templateSelectPlaceholder": "사용할 벤더 문서 템플릿을 선택하세요.",
+ "publish": "게시",
+ "createDocument": "벤더 문서 생성",
+ "downloadComplete": "보고서 다운로드가 완료되었습니다!",
+ "publishPreparationFailed": "게시를 위한 문서 준비에 실패했습니다",
+ "documentViewerLoading": "문서 뷰어 로딩 중..."
+ },
+ "templateUpload": {
+ "dialogTitle": "벤더 문서 템플릿",
+ "sampleFile": "샘플 파일",
+ "uploadTab": "템플릿 파일 업로드",
+ "uploadedListTab": "업로드된 템플릿 파일 목록"
+ },
+ "templateUploadTab": {
+ "uploadLabel": "벤더 문서 템플릿 파일 업로드(.docx)",
+ "dropFileHere": "파일을 여기에 드롭하세요",
+ "orClickToSelect": "또는 클릭하여 파일을 선택하세요. 최대 크기: {{maxSize}}",
+ "unlimited": "무제한",
+ "multipleFilesAllowed": "여러 파일을 선택할 수 있습니다.",
+ "selectedFiles": "선택된 파일 ({{count}}개)",
+ "fileCount": "{{count}}개 파일",
+ "upload": "업로드",
+ "remove": "제거",
+ "uploadingProgress": "{{progress}}% 업로드 중...",
+ "uploadComplete": "템플릿 파일 업로드가 완료되었습니다!",
+ "fileError": "파일 오류",
+ "uploadFailed": "업로드 실패",
+ "error": "오류",
+ "uploadError": "파일 업로드 중 오류가 발생했습니다."
+ },
+ "templateUploadedList": {
+ "listLabel": "업로드된 템플릿 파일 목록",
+ "loading": "로딩 중...",
+ "download": "다운로드",
+ "delete": "삭제",
+ "cancel": "취소",
+ "deleteConfirmTitle": "보고서 템플릿 파일({{fileName}})을 삭제하시겠습니까?",
+ "downloadComplete": "템플릿 파일 다운로드가 완료되었습니다!",
+ "deleteComplete": "템플릿 파일이 성공적으로 삭제되었습니다!",
+ "error": "오류",
+ "downloadError": "템플릿 파일 다운로드 중 오류가 발생했습니다.",
+ "deleteError": "템플릿 파일 삭제 중 오류가 발생했습니다."
+ },
+ "sedp": {
+ "sendDataTitle": "SEDP로 데이터 전송",
+ "sendDataDescription": "Samsung Engineering Design Platform (SEDP)으로 폼 데이터를 전송하려고 합니다.",
+ "formName": "폼 이름",
+ "totalTags": "총 태그 수",
+ "warningMessage": "SEDP로 전송된 데이터는 쉽게 되돌릴 수 없습니다. 진행하기 전에 모든 정보가 정확한지 확인하세요.",
+ "sending": "전송 중...",
+ "sendToSEDP": "SEDP로 전송",
+ "dataSentSuccessfully": "데이터가 성공적으로 전송되었습니다",
+ "partiallySuccessful": "부분적으로 성공",
+ "failedToSendData": "데이터 전송 실패",
+ "progress": "진행률",
+ "successfulCount": "{{count}}개 성공",
+ "failedCount": "{{count}}개 실패"
+ },
+ "excelDownload": {
+ "noDifferencesToDownload": "다운로드할 차이점이 없습니다",
+ "attributeDifferencesSheet": "속성 차이점",
+ "missingTagsSheet": "누락된 태그",
+ "tagNumber": "태그 번호",
+ "tagDescription": "태그 설명",
+ "attribute": "속성",
+ "localValue": "로컬 값",
+ "sedpValue": "SEDP 값",
+ "status": "상태",
+ "emptyValue": "(비어있음)",
+ "localOnlyStatus": "로컬만",
+ "sedpOnlyStatus": "SEDP만",
+ "fileNamePrefix": "SEDP_차이점",
+ "downloadComplete": "엑셀 다운로드가 완료되었습니다",
+ "downloadFailed": "엑셀 다운로드가 실패했습니다",
+ "downloadButtonText": "차이점을 엑셀로 다운로드"
+ },
+ "updateTagSheet": {
+ "title": "행 업데이트",
+ "unknownTag": "알 수 없는 TAG",
+ "description": "아래 필드를 수정하고 변경사항을 저장하세요.",
+ "readOnlyIndicator": "가 있는 필드는 읽기 전용입니다.",
+ "editableFieldsCount": "{{editableCount}}개 / 총 {{totalCount}}개 필드가 이 TAG에서 편집 가능합니다.",
+ "selectOption": "옵션을 선택하세요",
+ "searchOptions": "옵션 검색...",
+ "noOptionFound": "옵션을 찾을 수 없습니다.",
+ "readOnlyReasons": {
+ "shiOnly": "SHI 전용 필드 (SHI 시스템에서 관리)",
+ "noEditableFields": "이 TAG에 대한 편집 가능한 필드 정보가 없습니다",
+ "notEditableForTag": "이 TAG 클래스에서는 편집할 수 없습니다",
+ "readOnly": "읽기 전용 필드"
+ },
+ "messages": {
+ "updateSuccess": "성공적으로 업데이트되었습니다!",
+ "updateError": "업데이트 중 예상치 못한 오류가 발생했습니다"
+ }
+ },
+ "varListDownload": {
+ "headers": {
+ "tableColumnLabel": "테이블 컬럼 라벨",
+ "reportVariable": "보고서 변수"
+ },
+ "fileNameSuffix": "_report_variable_list.xlsx",
+ "buttonText": "Variable List 다운로드",
+ "buttonAriaLabel": "Variable List 다운로드",
+ "iconAltText": "Variable List 다운로드 아이콘",
+ "messages": {
+ "downloadComplete": "Report Variable List 파일 다운로드 완료!",
+ "errorTitle": "오류",
+ "errorDescription": "Variable List 파일을 찾을 수가 없습니다."
+ }
+ },
+ "dolceImport": {
+ "buttons": {
+ "getList": "목록 가져오기",
+ "importing": "가져오는 중...",
+ "importNow": "지금 가져오기",
+ "startImport": "가져오기 시작"
+ },
+ "status": {
+ "loadingProjectInfo": "프로젝트 정보 로딩 중...",
+ "checkingConnection": "DOLCE 연결 확인 중...",
+ "connectionError": "DOLCE 연결 오류",
+ "importDisabled": "DOLCE 가져오기 비활성화됨",
+ "updatesAvailable": "업데이트 가능 ({{projectCount}}개 프로젝트)",
+ "synchronized": "DOLCE와 동기화됨",
+ "statusCheckFailed": "상태 확인 실패"
+ },
+ "labels": {
+ "importStatus": "DOLCE 가져오기 상태",
+ "currentStatus": "현재 상태",
+ "targetProjects": "대상 프로젝트",
+ "projectCount": "{{count}}개 프로젝트",
+ "projectIds": "프로젝트 ID",
+ "newDocuments": "새 문서",
+ "updates": "업데이트",
+ "totalDocuments": "총 문서 (B3/B4/B5)",
+ "detailsByProject": "프로젝트별 세부사항",
+ "projectLabel": "프로젝트 {{projectId}}",
+ "itemsToImport": "가져올 항목",
+ "progress": "진행률"
+ },
+ "messages": {
+ "statusCheckError": "상태 확인을 할 수 없습니다. 프로젝트 설정을 확인하세요.",
+ "projectFetchError": "프로젝트 정보를 가져오는데 실패했습니다.",
+ "importSuccess": "DOLCE 가져오기 완료",
+ "importSuccessDescription": "새로 추가 {{newCount}}개, 업데이트 {{updatedCount}}개, 건너뜀 {{skippedCount}}개 ({{projectCount}}개 프로젝트)",
+ "importPartiallyFailed": "DOLCE 가져오기 부분 실패",
+ "importPartiallyFailedDescription": "일부 프로젝트에서 가져오기에 실패했습니다.",
+ "importFailed": "DOLCE 가져오기 실패",
+ "unknownError": "알 수 없는 오류가 발생했습니다."
+ },
+ "descriptions": {
+ "noDocumentsImportAll": "문서를 찾을 수 없습니다. 모든 프로젝트에서 가져옵니다.",
+ "projectDetails": "새로 추가 {{newDocuments}}개, 업데이트 {{updatedDocuments}}개",
+ "includesNewAndUpdated": "새 문서와 업데이트된 문서 (B3, B4, B5)를 포함합니다.",
+ "b4DocumentsNote": "B4 문서의 경우, GTTPreDwg와 GTTWorkingDwg 발행 단계가 자동 생성됩니다.",
+ "sequentialImport": "{{count}}개 프로젝트에서 순차적으로 가져옵니다."
+ },
+ "dialog": {
+ "title": "DOLCE에서 문서 목록 가져오기",
+ "description": "Samsung Heavy Industries DOLCE 시스템에서 최신 문서 목록을 가져옵니다.",
+ "multipleProjects": "{{count}}개 프로젝트 대상"
+ }
+ },
+ "shiSync": {
+ "buttons": {
+ "sendToSHI": "SHI로 전송",
+ "syncing": "동기화 중...",
+ "syncNow": "지금 동기화",
+ "startSync": "동기화 시작"
+ },
+ "status": {
+ "checking": "확인 중...",
+ "connectionError": "연결 오류",
+ "noContracts": "계약 없음",
+ "pendingItems": "{{count}}건 대기",
+ "synchronized": "동기화됨",
+ "noChanges": "변경사항 없음",
+ "loading": "로딩...",
+ "error": "오류",
+ "upToDate": "최신",
+ "pendingCount": "{{count}}건 대기"
+ },
+ "labels": {
+ "syncStatus": "SHI 동기화 상태",
+ "overallStatus": "전체 상태",
+ "pending": "대기 중",
+ "synced": "동기화됨",
+ "failed": "실패",
+ "statusByContract": "계약별 상태",
+ "contractLabel": "Contract {{projectId}}",
+ "syncTarget": "전송 대상",
+ "targetContracts": "대상 계약",
+ "progress": "진행률",
+ "itemCount": "{{count}}건",
+ "contractCount": "{{count}}개"
+ },
+ "messages": {
+ "noContractsToSync": "동기화할 계약이 없습니다.",
+ "noPendingChanges": "동기화할 변경사항이 없습니다.",
+ "contractError": "Contract {{projectId}}: {{error}}",
+ "unknownError": "알 수 없는 오류",
+ "allSyncCompleted": "모든 계약 동기화 완료: {{successCount}}건 성공",
+ "allSyncCompletedDescription": "{{contractCount}}개 계약에서 {{itemCount}}개 항목이 SHI 시스템으로 전송되었습니다.",
+ "partialSyncCompleted": "부분 동기화 완료: {{successfulCount}}개 성공, {{failedCount}}개 실패",
+ "andMore": " 외 더보기...",
+ "allSyncFailed": "동기화 실패: {{failedCount}}개 계약 모두 실패",
+ "allContractsSyncFailed": "모든 계약 동기화에 실패했습니다.",
+ "syncFailed": "동기화 실패"
+ },
+ "descriptions": {
+ "targetInfo": "{{contractCount}}개 계약 대상 • {{targetSystem}} 시스템",
+ "statusCheckError": "일부 계약의 동기화 상태를 확인할 수 없습니다. 네트워크 연결을 확인해주세요.",
+ "contractsWithError": "{{count}}개 계약에서 오류",
+ "noDocumentsToSync": "동기화할 문서가 없습니다. 문서를 선택해주세요.",
+ "includesChanges": "문서, 리비전, 첨부파일의 변경사항이 포함됩니다.",
+ "currentlyProcessing": "현재 처리 중: Contract {{contractId}}",
+ "dialogStatusCheckError": "일부 계약의 동기화 상태를 확인할 수 없습니다. 네트워크 연결을 확인하고 다시 시도해주세요.",
+ "noContractsToSync": "동기화할 계약이 없습니다. 문서를 선택해주세요."
+ },
+ "dialog": {
+ "title": "SHI 시스템으로 동기화",
+ "description": "{{contractCount}}개 계약의 변경된 문서 데이터를 {{targetSystem}} 시스템으로 전송합니다."
+ }
+ }
+} \ No newline at end of file