From 4e0218bc2714c68964fb6d37b7d3cac887de2daf Mon Sep 17 00:00:00 2001 From: Jafeng <2998840497@qq.com> Date: Thu, 12 Feb 2026 10:55:48 +0800 Subject: [PATCH 1/4] =?UTF-8?q?fix=EF=BC=9A=E4=BC=98=E5=8C=96=E5=8C=BB?= =?UTF-8?q?=E7=96=97=E7=B1=BB=E5=9E=8B=E5=A4=84=E7=90=86=E5=92=8C=E6=97=B6?= =?UTF-8?q?=E9=97=B4=E5=AD=97=E6=AE=B5=E8=A7=A3=E6=9E=90=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/case/visit-record-detail.vue | 33 ++++++++++++++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-) diff --git a/pages/case/visit-record-detail.vue b/pages/case/visit-record-detail.vue index 4ea9f37..17c9c91 100644 --- a/pages/case/visit-record-detail.vue +++ b/pages/case/visit-record-detail.vue @@ -113,6 +113,35 @@ const showItems = computed(() => { const formRef = ref(null); +function normalizeMedicalType(raw) { + const s = String(raw || '').trim(); + if (!s) return ''; + const lower = s.toLowerCase(); + if (lower.includes('preconsultationrecord')) return 'preConsultationRecord'; + if (lower.includes('preconsult') || (lower.includes('pre') && lower.includes('consult'))) return 'preConsultationRecord'; + if (lower === 'outpatient' || lower === 'out_patient' || lower === 'out-patient') return 'outpatient'; + if (lower === 'inhospital' || lower === 'in_hospital' || lower === 'in-hospital' || lower === 'inpatient') return 'inhospital'; + if (lower === 'physicalexaminationtemplate' || lower === 'physicalexamination' || lower === 'physical_examination') return 'physicalExaminationTemplate'; + if (s === 'outPatient') return 'outpatient'; + if (s === 'inHospital') return 'inhospital'; + if (s === 'preConsultation') return 'preConsultationRecord'; + if (s === 'preConsultationRecord') return 'preConsultationRecord'; + if (s === 'physicalExaminationTemplate') return 'physicalExaminationTemplate'; + return s; +} + +function resolveSortTimeKey() { + const ui = normalizeMedicalType(templateType.value); + // 预问诊:时间字段固定使用 consultationDate,避免被模板配置覆盖,且与列表展示一致 + if (ui === 'preConsultationRecord') return 'consultationDate'; + const t = temp.value || {}; + if (t?.service?.timeTitle) return String(t.service.timeTitle); + if (ui === 'outpatient') return 'visitTime'; + if (ui === 'inhospital') return 'inhosDate'; + if (ui === 'physicalExaminationTemplate') return 'inspectDate'; + return ''; +} + function ensureFilesField() { if (form.files !== undefined) return; if (detail.value && detail.value.files !== undefined) return; @@ -151,7 +180,7 @@ onLoad(async (options) => { ensureFilesField(); // 默认填充模板时间字段 - const timeKey = temp.value?.service?.timeTitle || ''; + const timeKey = resolveSortTimeKey(); if (timeKey && !form[timeKey]) form[timeKey] = dayjs().format('YYYY-MM-DD'); } @@ -237,7 +266,7 @@ async function save() { } // sortTime:使用模板中的时间字段 - const sortTimeKey = temp.value?.service?.timeTitle || ''; + const sortTimeKey = resolveSortTimeKey(); if (sortTimeKey) { const sortTimeValue = forms.value?.[sortTimeKey]; if (sortTimeValue && dayjs(sortTimeValue).isValid()) { From ac4161b8e6207c518c9288bbf6a9744c0db4d7f3 Mon Sep 17 00:00:00 2001 From: wangdongbo <949818794@qq.com> Date: Thu, 12 Feb 2026 10:57:20 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E9=94=AE=E7=9B=98=E5=BC=B9=E5=87=BA?= =?UTF-8?q?=E6=A1=86=E9=97=AE=E9=A2=98=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/message/chat.scss | 10 +++++++++- pages/message/components/ai-assistant-buttons.vue | 1 - pages/message/components/chat-input.vue | 4 +++- pages/message/index.vue | 2 +- 4 files changed, 13 insertions(+), 4 deletions(-) diff --git a/pages/message/chat.scss b/pages/message/chat.scss index d97865b..5faa0b8 100644 --- a/pages/message/chat.scss +++ b/pages/message/chat.scss @@ -370,12 +370,18 @@ $primary-color: #0877F1; left: 0; right: 0; background: #fff; - border-top: 1rpx solid #e0e0e0; z-index: 200; flex-shrink: 0; transform: translateZ(0); /* 开启硬件加速,提升性能 */ transition: bottom 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94); will-change: bottom; + display: flex; + flex-direction: column; +} + +.ai-assistant-slot { + width: 100%; + background: #fff; } .input-toolbar { @@ -384,6 +390,8 @@ $primary-color: #0877F1; padding: 12rpx 20rpx; padding-bottom: env(safe-area-inset-bottom); gap: 12rpx; + border-top: 1rpx solid #e0e0e0; + background: #fff; } .voice-toggle-btn { diff --git a/pages/message/components/ai-assistant-buttons.vue b/pages/message/components/ai-assistant-buttons.vue index 40b93af..634cf87 100644 --- a/pages/message/components/ai-assistant-buttons.vue +++ b/pages/message/components/ai-assistant-buttons.vue @@ -383,7 +383,6 @@ defineExpose({ gap: 16rpx; padding: 16rpx 24rpx; background-color: #f8f9fa; - border-bottom: 1rpx solid #e5e5e5; .ai-button { display: flex; diff --git a/pages/message/components/chat-input.vue b/pages/message/components/chat-input.vue index bcf46d6..e05714b 100644 --- a/pages/message/components/chat-input.vue +++ b/pages/message/components/chat-input.vue @@ -1,7 +1,9 @@