From a0696d382c0e0f0fe49c82f9b129cbe711999a91 Mon Sep 17 00:00:00 2001 From: wangjian963 <15215920+aprilry@user.noreply.gitee.com> Date: Mon, 29 Jun 2026 11:52:03 +0800 Subject: [PATCH 1/2] =?UTF-8?q?i18n:=20=E5=AE=8C=E5=96=84=E4=BC=9A?= =?UTF-8?q?=E8=AF=8A=E7=AE=A1=E7=90=86=E6=A8=A1=E5=9D=97=E7=9A=84=E4=B8=AD?= =?UTF-8?q?=E6=96=87=E5=9B=BD=E9=99=85=E5=8C=96=E6=96=87=E6=A1=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1. 新增会诊申请和会诊确认的全量中文翻译词条 2. 将页面内的国际化引用从旧的consultation路径切换到新的consultationMgmt路径 3. 同步更新了原有医嘱相关的国际化文案为中文 --- healthlink-his-ui/src/i18n/locales/zhCN.json | 214 ++++++++++++++++-- .../consultationapplication/index.vue | 168 +++++++------- .../consultationconfirmation/index.vue | 74 +++--- 3 files changed, 322 insertions(+), 134 deletions(-) diff --git a/healthlink-his-ui/src/i18n/locales/zhCN.json b/healthlink-his-ui/src/i18n/locales/zhCN.json index 1fdf05e55..1a4eb2593 100644 --- a/healthlink-his-ui/src/i18n/locales/zhCN.json +++ b/healthlink-his-ui/src/i18n/locales/zhCN.json @@ -1885,6 +1885,117 @@ "valPhoneRequired": "联系电话不能为空", "other": "其他" }, + "consultationMgmt": { + "application": { + "title": "会诊申请", + "timeType": "时间类型", + "consultationTime": "会诊时间", + "applyTime": "申请时间", + "startTime": "开始时间", + "endTime": "结束时间", + "datePlaceholder": "请选择日期时间", + "applyDept": "申请科室", + "placeholderDept": "请输入科室", + "applyDoctor": "申请医生", + "placeholderDoctor": "请输入医生", + "urgency": "紧急程度", + "all": "全部", + "urgencyNormal": "普通", + "urgencyUrgent": "紧急", + "status": "状态", + "statusNotSubmitted": "未提交", + "statusSubmitted": "已提交", + "statusEnded": "已结束", + "patientName": "患者姓名", + "placeholderPatientName": "请输入患者姓名", + "consultationId": "会诊申请单号", + "placeholderConsultationId": "请输入会诊申请单号", + "print": "打印", + "urgentShort": "急", + "colConsultationTime": "会诊时间", + "invitedObject": "邀请对象", + "colApplyTime": "申请时间", + "colApplyDoctor": "申请医生", + "colSubmitted": "提交", + "colEnded": "结束", + "void": "作废", + "applicationNo": "申请单号", + "formApplyTime": "申请时间", + "cardNo": "证件号", + "formApplyDoctor": "申请医生", + "formConsultationTime": "会诊时间", + "urgentCheckbox": "紧急", + "diagnosis": "诊断", + "purpose": "会诊目的", + "placeholderPurpose": "请输入会诊目的", + "formInvitedObject": "邀请对象", + "confirmingPhysician": "会诊确认参加医师", + "recordSection": "会诊记录", + "opinion": "会诊意见", + "attendingDoctor": "参加医师", + "representDept": "代表科室", + "signDoctor": "签名医生", + "signTime": "签名时间", + "valApplyDoctor": "请填写申请医生", + "valConsultationTime": "请选择会诊时间", + "valPurpose": "请填写会诊目的", + "viewTitle": "查看会诊申请", + "editTitle": "编辑会诊申请", + "printTitle": "会诊申请单", + "msg": { + "endBeforeStart": "结束时间不能早于开始时间", + "noPrintData": "暂无可打印数据", + "printFailed": "打印失败", + "endedNotEditable": "已结束的会诊申请不可编辑", + "saveSuccess": "保存成功", + "saveFailed": "保存失败", + "confirmedNotVoidable": "已确认/已签名状态的会诊申请不可作废", + "voidConfirm": "确定要作废这条会诊申请吗?", + "userVoid": "用户作废", + "voidSuccess": "作废成功", + "voidFailed": "作废失败", + "noResults": "未查询到会诊申请", + "loadDataFailed": "加载会诊申请失败", + "networkError": "网络异常", + "loadDataFailedWithMsg": "加载会诊申请失败:" + } + }, + "confirm": { + "title": "会诊确认", + "print": "打印", + "sign": "签名", + "urgent": "紧急", + "applicationNo": "申请单号", + "patientName": "患者姓名", + "consultationDate": "会诊时间", + "invitedObject": "邀请对象", + "applyDept": "申请科室", + "applyDoctor": "申请医生", + "applyTime": "申请时间", + "confirm": "确认", + "signColumn": "签名", + "recordSheet": "会诊记录单", + "cardNo": "证件号", + "urgentFlag": "紧急标志", + "invitedObjectLabel": "邀请对象", + "submittingDoctor": "提交医生", + "submittingTime": "提交时间", + "consultationPurpose": "会诊目的", + "diagnosis": "诊断", + "confirmingPhysician": "会诊确认参加医师", + "placeholderPhysician": "请输入会诊确认参加医师", + "opinion": "会诊意见", + "placeholderOpinion": "请输入会诊意见", + "allOpinions": "全部会诊意见", + "signed": "已签名", + "confirmed": "已确认", + "signatureTime": "签名时间:", + "noOpinions": "暂无会诊意见", + "attendingDoctor": "参加医师", + "representDept": "代表科室", + "signDoctor": "签名医生" + } + }, "doctorstation": { "currentPatients": "现诊患者", "openCallQueue": "点击打开叫号界面", @@ -4192,18 +4303,18 @@ "groupCountExceeded": "分组\"{group}\"数量超出限制", "groupAmountExceeded": "分组\"{group}\"金额总和超出限制" }, - "natureOfCost": "Nature of Cost", - "orderType": "Order Type", - "orderStatus": "Order Status", - "order": "Order", - "pleaseSelectItem": "Please select item", - "totalQty": "Total Qty", - "pharmacyDept": "Pharmacy/Dept", - "freqUsage": "Freq/Usage", - "diagnosisCol": "Diagnosis", - "stopOrderConfirm": "Stop Order Confirm", - "stopOrderTimeLabel": "Stop Order Time", - "pleaseSelectStopTime": "Please select stop time" + "natureOfCost": "费用性质", + "orderType": "医嘱类型", + "orderStatus": "医嘱状态", + "order": "医嘱", + "pleaseSelectItem": "请选择项目", + "totalQty": "总量", + "pharmacyDept": "药房/科室", + "freqUsage": "频次/用法", + "diagnosisCol": "诊断", + "stopOrderConfirm": "停嘱确认", + "stopOrderTimeLabel": "停嘱时间", + "pleaseSelectStopTime": "请选择停嘱时间" }, "diagnosis": { "addDiagnosis": "新增诊断", @@ -4372,7 +4483,84 @@ "print": "打印", "reportReady": "报告已就绪", "requestFormId": "申请单ID", - "noMatchRecord": "未匹配到记录" + "noMatchRecord": "未匹配到记录", + "applicationFormStatus": "申请单状态", + "prescriptionNo": "申请单号", + "examineApplication": "检查申请", + "bloodTransfusion": "输血申请", + "examineApplicationDetail": "检查申请详情", + "bloodTransfusionDetail": "输血申请详情", + "editExamineApplication": "编辑检查申请", + "examineKeywordPlaceholder": "请输入患者姓名/就诊号/申请单号", + "received": "已接收", + "examined": "已检查", + "reportIssued": "已出报告", + "reportInfo": "报告信息", + "reportTime": "报告时间", + "diagnosisOpinion": "诊断意见", + "reportContent": "报告内容", + "imagePreview": "影像预览", + "openPacs": "打开PACS", + "clickPacsButton": "请点击按钮打开PACS", + "noReportData": "暂无报告数据", + "reportNotGenerated": "报告未生成", + "categoryType": "项目类别", + "targetDepartment": "目标科室", + "urgencyLevel": "紧急程度", + "allergyHistory": "过敏史", + "examinationPurpose": "检查目的", + "expectedExaminationTime": "预计检查时间", + "medicalHistorySummary": "病史摘要", + "allergyConfirmed": "过敏史确认", + "symptom": "症状", + "sign": "体征", + "clinicalDiagnosis": "临床诊断", + "otherDiagnosis": "其他诊断", + "relatedResult": "相关结果", + "attention": "注意事项", + "urgent": "急诊", + "normal": "普通", + "allergyConfirmedYes": "已确认", + "allergyConfirmedNo": "未确认", + "confirmDeleteExamine": "确定删除检查申请单“{applyNo}”吗?", + "confirmRecallExamine": "确定撤回检查申请单“{applyNo}”吗?", + "confirmRecall": "确认撤回", + "withdrawSuccess": "撤回成功", + "withdrawFailed": "撤回失败", + "generatingPrintPreview": "正在生成打印预览", + "examineApplicationPrint": "检查申请单", + "printTime": "打印时间", + "treatmentItems": "诊疗项目", + "barcodeVerify": "条码核验", + "printFooter": "请妥善保管申请单,并按预约时间检查", + "printWindowBlocked": "打印窗口被浏览器拦截", + "printFailed": "打印失败", + "unknown": "未知", + "reportNotReady": "报告未就绪", + "getReportFailed": "获取报告失败", + "queryBloodFailed": "查询输血申请失败", + "queryReportFailed": "查询报告失败", + "pleaseSelectPatient": "请先选择患者", + "getNursingDataFailed": "获取护理状态失败", + "cancelled": "已取消", + "nursingOrderSaveSuccess": "护理医嘱保存成功", + "saveFailedRetry": "保存失败,请重试", + "nursingLevel": "护理级别", + "condition": "病情", + "nursingRoutine": "护理常规", + "diet": "饮食", + "position": "体位", + "companionCare": "陪护", + "isolationLevel": "隔离级别", + "none": "无", + "noReportLink": "暂无报告链接", + "editSuccess": "编辑成功", + "queryTestFailed": "查询检验申请失败", + "querySurgeryFailed": "查询手术申请失败", + "confirmDeleteTest": "确定删除检验申请单“{applyNo}”吗?", + "confirmWithdrawTest": "确定撤回检验申请单“{applyNo}”吗?", + "confirmDeleteSurgery": "确定删除手术申请单“{applyNo}”吗?", + "confirmWithdrawSurgery": "确定撤回手术申请单“{applyNo}”吗?" }, "applicationForm": { "searchProjectPlaceholder": "请输入项目名称/拼音码/编码", diff --git a/healthlink-his-ui/src/views/consultationmanagement/consultationapplication/index.vue b/healthlink-his-ui/src/views/consultationmanagement/consultationapplication/index.vue index 85041c896..9536270c6 100755 --- a/healthlink-his-ui/src/views/consultationmanagement/consultationapplication/index.vue +++ b/healthlink-his-ui/src/views/consultationmanagement/consultationapplication/index.vue @@ -2,7 +2,7 @@
@@ -11,122 +11,122 @@ :model="queryParams" inline > - + - + - + - + - + - + - + - + - + @@ -146,7 +146,7 @@ type="success" @click="handlePrint" > - {{ $t('consultation.application.print') }} + {{ $t('consultationMgmt.application.print') }} @@ -171,7 +171,7 @@ show-overflow="title" /> @@ -184,12 +184,12 @@ @@ -318,7 +318,7 @@ > - + - + - + - + @@ -384,13 +384,13 @@ - + - + - {{ $t('consultation.application.urgentCheckbox') }} + {{ $t('consultationMgmt.application.urgentCheckbox') }} @@ -421,27 +421,27 @@ - + - + - +
- {{ $t('consultation.application.recordSection') }} + {{ $t('consultationMgmt.application.recordSection') }}
- + - + - + - + - + ({ requestingPhysician: [ - { required: true, message: t('consultation.application.valApplyDoctor'), trigger: 'blur' } + { required: true, message: t('consultationMgmt.application.valApplyDoctor'), trigger: 'blur' } ], consultationDate: [ - { required: true, message: t('consultation.application.valConsultationTime'), trigger: 'change' } + { required: true, message: t('consultationMgmt.application.valConsultationTime'), trigger: 'change' } ], consultationPurpose: [ - { required: true, message: t('consultation.application.valPurpose'), trigger: 'blur' } + { required: true, message: t('consultationMgmt.application.valPurpose'), trigger: 'blur' } ] })) const dialogTitle = computed(() => { - return isViewMode.value ? t('consultation.application.viewTitle') : t('consultation.application.editTitle') + return isViewMode.value ? t('consultationMgmt.application.viewTitle') : t('consultationMgmt.application.editTitle') }) const handleQuery = async () => { @@ -676,7 +676,7 @@ const handleQuery = async () => { const start = new Date(queryParams.startTime) const end = new Date(queryParams.endTime) if (end < start) { - ElMessage.warning(t('consultation.application.msg.endBeforeStart')) + ElMessage.warning(t('consultationMgmt.application.msg.endBeforeStart')) return } } @@ -711,7 +711,7 @@ const handleCurrentChange = (val) => { const handlePrint = async (row) => { const printRows = row && row.consultationId ? [row] : tableData.value if (printRows.length === 0) { - ElMessage.warning(t('consultation.application.msg.noPrintData')) + ElMessage.warning(t('consultationMgmt.application.msg.noPrintData')) return } @@ -729,13 +729,13 @@ const handlePrint = async (row) => { ended: printRow.consultationStatus === STATUS.ENDED ? '√' : '' })) await simplePrint(PRINT_TEMPLATE.CONSULTATION, { consultationRows }, undefined, { - title: t('consultation.application.printTitle'), + title: t('consultationMgmt.application.printTitle'), width: 297, height: 210 }) } catch (error) { console.error('会诊申请单打印失败:', error) - ElMessage.error(t('consultation.application.msg.printFailed')) + ElMessage.error(t('consultationMgmt.application.msg.printFailed')) } } @@ -757,7 +757,7 @@ const loadConsultationOpinions = async (consultationId) => { const openDialog = async (row, viewOnly = false) => { if (!viewOnly && row.consultationStatus >= STATUS.ENDED) { - ElMessage.warning(t('consultation.application.msg.endedNotEditable')) + ElMessage.warning(t('consultationMgmt.application.msg.endedNotEditable')) return } isViewMode.value = viewOnly @@ -807,16 +807,16 @@ const handleSave = async () => { const res = await saveConsultation(submitData) if (res.code === 200) { - ElMessage.success(t('consultation.application.msg.saveSuccess')) + ElMessage.success(t('consultationMgmt.application.msg.saveSuccess')) dialogVisible.value = false await loadData() } else { - ElMessage.error(res.msg || t('consultation.application.msg.saveFailed')) + ElMessage.error(res.msg || t('consultationMgmt.application.msg.saveFailed')) } } catch (error) { if (error !== 'cancel') { console.error('保存失败:', error) - ElMessage.error(t('consultation.application.msg.saveFailed')) + ElMessage.error(t('consultationMgmt.application.msg.saveFailed')) } } finally { saving.value = false @@ -825,30 +825,30 @@ const handleSave = async () => { const handleDelete = async (row) => { if (row.consultationStatus >= STATUS.CONFIRMED) { - ElMessage.warning(t('consultation.application.msg.confirmedNotVoidable')) + ElMessage.warning(t('consultationMgmt.application.msg.confirmedNotVoidable')) return } try { - await ElMessageBox.confirm(t('consultation.application.msg.voidConfirm'), t('common.tip'), { + await ElMessageBox.confirm(t('consultationMgmt.application.msg.voidConfirm'), t('common.tip'), { confirmButtonText: t('common.confirm'), cancelButtonText: t('common.cancel'), type: 'warning' }) loading.value = true - const res = await cancelConsultation(row.consultationId, t('consultation.application.msg.userVoid')) + const res = await cancelConsultation(row.consultationId, t('consultationMgmt.application.msg.userVoid')) if (res.code === 200) { - ElMessage.success(t('consultation.application.msg.voidSuccess')) + ElMessage.success(t('consultationMgmt.application.msg.voidSuccess')) await loadData() } else { - ElMessage.error(res.msg || t('consultation.application.msg.voidFailed')) + ElMessage.error(res.msg || t('consultationMgmt.application.msg.voidFailed')) } } catch (error) { if (error !== 'cancel') { console.error('作废失败:', error) - ElMessage.error(t('consultation.application.msg.voidFailed')) + ElMessage.error(t('consultationMgmt.application.msg.voidFailed')) } } finally { loading.value = false @@ -880,11 +880,11 @@ const loadData = async () => { tableData.value = res.data.records || [] pagination.total = res.data.total || 0 if (tableData.value.length === 0 && pagination.currentPage === 1) { - ElMessage.info(t('consultation.application.msg.noResults')) + ElMessage.info(t('consultationMgmt.application.msg.noResults')) } } else { if (!res.msg || !res.msg.includes('数据正在处理')) { - ElMessage.error(res.msg || t('consultation.application.msg.loadDataFailed')) + ElMessage.error(res.msg || t('consultationMgmt.application.msg.loadDataFailed')) } tableData.value = [] pagination.total = 0 @@ -894,9 +894,9 @@ const loadData = async () => { return } - const errorMsg = error.message || error.msg || t('consultation.application.msg.networkError') + const errorMsg = error.message || error.msg || t('consultationMgmt.application.msg.networkError') if (!errorMsg.includes('数据正在处理')) { - ElMessage.error(t('consultation.application.msg.loadDataFailedWithMsg') + errorMsg) + ElMessage.error(t('consultationMgmt.application.msg.loadDataFailedWithMsg') + errorMsg) } tableData.value = [] diff --git a/healthlink-his-ui/src/views/consultationmanagement/consultationconfirmation/index.vue b/healthlink-his-ui/src/views/consultationmanagement/consultationconfirmation/index.vue index 723d80234..6365158a1 100755 --- a/healthlink-his-ui/src/views/consultationmanagement/consultationconfirmation/index.vue +++ b/healthlink-his-ui/src/views/consultationmanagement/consultationconfirmation/index.vue @@ -1,7 +1,7 @@
@@ -299,7 +299,7 @@ @@ -835,4 +835,4 @@ function cancel() { } getList(); - \ No newline at end of file +