From e95c77117125414e66bdff6bd4b79987e3249378 Mon Sep 17 00:00:00 2001 From: limengnan <420004014@qq.com> Date: Thu, 22 Jan 2026 18:18:29 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8C=89=E7=85=A7=E9=9C=80=E6=B1=82=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=EF=BC=88=E9=A6=96=E9=A1=B5=E5=B8=83=E5=B1=80=EF=BC=8C?= =?UTF-8?q?=E8=B6=B3=E5=BA=95=EF=BC=8C=E8=A7=86=E9=A2=91=E7=AD=89=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/renderer/src/assets/video1.png | Bin 0 -> 1544 bytes frontend/src/renderer/src/assets/video2.png | Bin 0 -> 1625 bytes frontend/src/renderer/src/main.js | 5 +- .../src/views/AloneReportComparison.vue | 4 +- frontend/src/renderer/src/views/Dashboard.vue | 3 +- frontend/src/renderer/src/views/Detection.vue | 322 ++++++++++++------ .../renderer/src/views/DiagnosticMessage.vue | 2 +- .../src/renderer/src/views/GenerateReport.vue | 14 +- frontend/src/renderer/src/views/Login.vue | 8 +- .../src/renderer/src/views/PatientProfile.vue | 132 ++++++- .../renderer/src/views/PopUpOnlyReport.vue | 2 +- .../src/renderer/src/views/PopUpReport.vue | 2 +- .../renderer/src/views/ReportComparison.vue | 4 +- 13 files changed, 364 insertions(+), 134 deletions(-) create mode 100644 frontend/src/renderer/src/assets/video1.png create mode 100644 frontend/src/renderer/src/assets/video2.png diff --git a/frontend/src/renderer/src/assets/video1.png b/frontend/src/renderer/src/assets/video1.png new file mode 100644 index 0000000000000000000000000000000000000000..12bb9a13364036f24eb0ab6c91105ecdb5b2285a GIT binary patch literal 1544 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 literal 0 HcmV?d00001 diff --git a/frontend/src/renderer/src/main.js b/frontend/src/renderer/src/main.js index b25c60aa..e6cc93e0 100644 --- a/frontend/src/renderer/src/main.js +++ b/frontend/src/renderer/src/main.js @@ -1,6 +1,7 @@ import { createApp } from 'vue'; import { createPinia } from 'pinia'; import ElementPlus from 'element-plus'; +import zhCn from 'element-plus/es/locale/lang/zh-cn'; import 'element-plus/dist/index.css'; import * as ElementPlusIconsVue from '@element-plus/icons-vue'; import App from './App.vue'; @@ -17,6 +18,8 @@ for (const [key, component] of Object.entries(ElementPlusIconsVue)) { app.use(pinia); app.use(router); -app.use(ElementPlus); +app.use(ElementPlus, { + locale: zhCn +}); app.mount('#app'); \ No newline at end of file diff --git a/frontend/src/renderer/src/views/AloneReportComparison.vue b/frontend/src/renderer/src/views/AloneReportComparison.vue index ae8a80c8..2d551f75 100644 --- a/frontend/src/renderer/src/views/AloneReportComparison.vue +++ b/frontend/src/renderer/src/views/AloneReportComparison.vue @@ -136,7 +136,7 @@
{{ leftInfo.diagnosis_info }}
处理
{{ leftInfo.treatment_info }}
-
备注
+
建议
{{ leftInfo.suggestion_info }}
@@ -225,7 +225,7 @@
{{ rightInfo.diagnosis_info }}
处理
{{ rightInfo.treatment_info }}
-
备注
+
建议
{{ rightInfo.suggestion_info }}
diff --git a/frontend/src/renderer/src/views/Dashboard.vue b/frontend/src/renderer/src/views/Dashboard.vue index 38cdcafc..56285f52 100644 --- a/frontend/src/renderer/src/views/Dashboard.vue +++ b/frontend/src/renderer/src/views/Dashboard.vue @@ -445,6 +445,7 @@ const loadPatients = async (type) => { }) if(type === '02' && patients.value[rowIndex.value] != null){ tableRef.value?.setCurrentRow(patients.value[rowIndex.value], true); // 第二个参数为 true 表示选中 + selectedPatient.value = patients.value[rowIndex.value] } if(type === '01' && patients.value[rowIndex.value] != null){ rowIndex.value = 0 @@ -463,7 +464,6 @@ const loadPatients = async (type) => { const lastcheck = mh && mh.lastcheck_time ? mh.lastcheck_time : '' return { ...p, doctor, status, updated_at: lastcheck || p.updated_at } }) - debugger if(type === '01' && patients.value[rowIndex.value] != null){ rowIndex.value = 0 tableRef.value?.setCurrentRow(patients.value[0], true); // 第二个参数为 true 表示选中 @@ -473,6 +473,7 @@ const loadPatients = async (type) => { if(type === '02' && patients.value[rowIndex.value] != null){ tableRef.value?.setCurrentRow(patients.value[rowIndex.value], true); // 第二个参数为 true 表示选中 + selectedPatient.value = patients.value[rowIndex.value] } patienttotal.value =response.total } else { diff --git a/frontend/src/renderer/src/views/Detection.vue b/frontend/src/renderer/src/views/Detection.vue index 53cd305f..7e167529 100644 --- a/frontend/src/renderer/src/views/Detection.vue +++ b/frontend/src/renderer/src/views/Detection.vue @@ -3,7 +3,6 @@
-
+
@@ -190,74 +189,93 @@
-
-
-
-
- 左前足 - - {{ footPressure.left_front }}% - +
+
+
+
+
+ 左前足 + + {{ footPressure.left_front }}% + +
+
+ 左后足 + + {{ footPressure.left_rear }}% + +
+
-
- 左后足 - - {{ footPressure.left_rear }}% - +
+
+
+
左足
+
右足
-
- 左足总压力 - - {{ footPressure.left_total}}% - +
+ + +
+ +
连接已断开!
+
+
+
+ +
+
+
+
+
+
+ 右前足 + + {{ footPressure.right_front }}% + +
+
+ 右后足 + + {{ footPressure.right_rear }}% + +
+
-
-
-
左足
-
右足
+
+
+ 左足总压力 + + {{ footPressure.left_total}}% +
-
- - -
- -
连接已断开!
-
-
-
-
-
-
-
-
-
- 右前足 - - {{ footPressure.right_front }}% - -
-
- 右后足 - - {{ footPressure.right_rear }}% - -
-
- 右足总压力 - - {{ footPressure.right_total}}% - -
+
+ 右足总压力 + + {{ footPressure.right_total}}% +
+
-
@@ -427,9 +445,9 @@
- -
+ +
@@ -441,7 +459,7 @@
+ class="userinfo-edit-img" style="cursor: pointer;" @click="handleEditUserInfo">
@@ -458,61 +476,116 @@
-
-
-
出生日期
+
+ +
+
出生日期
{{ formatDate(patientInfo.birth_date) }}
-
-
身高
+
+
身高
{{ patientInfo.height ==''||patientInfo.height ==null ?'—':patientInfo.height}}cm
-
-
体重
+
+
体重
{{ patientInfo.weight ==''||patientInfo.weight ==null ?'—':patientInfo.weight}}kg
-
-
鞋码
+
+
鞋码
{{ patientInfo.shoe_size ==''||patientInfo.shoe_size ==null ?'—':patientInfo.shoe_size}}码
-
-
电话
+
+
电话
{{ patientInfo.phone ==''||patientInfo.phone ==null ?'—':patientInfo.phone}}
-
-
民族
+
+
民族
{{ patientInfo.nationality ==''||patientInfo.nationality ==null ?'—':patientInfo.nationality}}
-
-
身份证号
+
+
身份证号
{{ patientInfo.idcode ==''||patientInfo.idcode ==null ?'—':patientInfo.idcode}}
-
-
职业
+
+
职业
{{ patientInfo.occupation ==''||patientInfo.occupation ==null ?'—':patientInfo.occupation}}
-
-
居住地
+
+
+ +
+
出生日期
+
+ + {{ formatDate(patientInfo.birth_date) }} + +
+
+
+
身高
+
+ {{ patientInfo.height ==''||patientInfo.height ==null ?'—':patientInfo.height}}cm +
+
+
+
体重
+
+ {{ patientInfo.weight ==''||patientInfo.weight ==null ?'—':patientInfo.weight}}kg +
+
+
+
鞋码
+
+ {{ patientInfo.shoe_size ==''||patientInfo.shoe_size ==null ?'—':patientInfo.shoe_size}}码
+
+
+
电话
+
+ {{ patientInfo.phone ==''||patientInfo.phone ==null ?'—':patientInfo.phone}} +
+
+
+
民族
+
+ {{ patientInfo.nationality ==''||patientInfo.nationality ==null ?'—':patientInfo.nationality}}
+
+
+
身份证号
+
+ {{ patientInfo.idcode ==''||patientInfo.idcode ==null ?'—':patientInfo.idcode}} +
+
+
+
职业
+
+ {{ patientInfo.occupation ==''||patientInfo.occupation ==null ?'—':patientInfo.occupation}}
+
+
+
居住地
{{ patientInfo.residence ==''||patientInfo.residence ==null ?'—':patientInfo.residence}}
-
-
邮箱
+
+
邮箱
{{ patientInfo.email ==''||patientInfo.email ==null ?'—':patientInfo.email}}
@@ -520,7 +593,8 @@
-
+
+
@@ -535,14 +609,14 @@
-
+
camera1 + style="width: 100%; height: 100%;object-fit:contain;" />
连接已断开!
@@ -554,7 +628,7 @@
camera2 + style="width: 100%; height: 100%;object-fit:contain;" />
连接已断开!
@@ -563,7 +637,7 @@
- +
@@ -710,6 +784,7 @@
本次检测未截图或录像操作,不予存档记录!
本次检测未截图操作,存档记录不可生成报告!
+
取消
确定
@@ -2611,9 +2686,23 @@ const isPhotoAlbum = ref(false) function closePhotoAlbum(){ isPhotoAlbum.value = false } -function closecreatbox(e){ - if(e === true){ - loadPatientInfo() +function closecreatbox(e,info){ + if(e === '编辑'){ + patientInfo.value.age = info.age + patientInfo.value.birth_date = info.birth_date + patientInfo.value.email = info.email + patientInfo.value.gender = info.gender + patientInfo.value.height = info.height + patientInfo.value.id = info.id + patientInfo.value.idcode = info.idcode + patientInfo.value.name = info.name + patientInfo.value.nationality = info.nationality + patientInfo.value.occupation = info.occupation + patientInfo.value.phone = info.phone + patientInfo.value.residence = info.residence + patientInfo.value.shoe_size = info.shoe_size + patientInfo.value.weight = info.weight + // loadPatientInfo() } isCloseCreat.value = false } @@ -2655,7 +2744,7 @@ function viewClick(e){ .displaycontainer { width: 100%; - height: 62px; + height: 46px; display: flex; align-items: center; justify-content: space-between; @@ -2825,10 +2914,8 @@ function viewClick(e){ text-align: left; } .body-footbottom-box{ - display: flex; - align-items: center; - justify-content: center; - height: calc(100% - 70px); + height: calc(100% - 50px); + padding-bottom: 15px; } .body-footbottom-left{ width: 28%; @@ -2841,8 +2928,8 @@ function viewClick(e){ .body-footbottom-leftbox{ min-width: 215px; width: 80%; - min-height: 60px; - height: 20%; + min-height: 57px; + height: 57px; background: inherit; background-color: rgba(255, 255, 255, 0.1); border-radius: 4px; @@ -2852,8 +2939,8 @@ function viewClick(e){ padding: 0px 20px; } .body-footbottom-center{ - width: 40%; - height: calc(100%); + width: 37%; + height: calc(100% - 0px); } .body-footbottom-topbox{ display: flex; @@ -2888,7 +2975,7 @@ function viewClick(e){ display: flex; justify-content: center; flex-wrap: wrap; - align-content:space-between ; + align-content:space-around; } .body-userinfo-box{ @@ -2896,18 +2983,18 @@ function viewClick(e){ z-index: 10; width: 100%; height: 346px; - /* background: linear-gradient(135deg, rgba(42, 54, 73, 1) 0%, rgba(42, 54, 73, 1) 0%, rgba(34, 43, 56, 1) 100%, rgba(34, 43, 56, 1) 100%); */ background: linear-gradient(135deg, #1a1e2a 0%, #222b38 100%); border: 1px solid #242E3D; border-radius: 4px; } .body-userinfo-expandbox{ - height: 638px ; + height: 680px !important; } .body-userinfo-box1{ + position: relative; + z-index: 10; width: 100%; - height: 534px ; - /* background: linear-gradient(135deg, rgba(42, 54, 73, 1) 0%, rgba(42, 54, 73, 1) 0%, rgba(34, 43, 56, 1) 100%, rgba(34, 43, 56, 1) 100%); */ + height: 524px ; background: linear-gradient(135deg, #1a1e2a 0%, #222b38 100%); border: 1px solid #242E3D; border-radius: 4px; @@ -2933,7 +3020,7 @@ function viewClick(e){ } .body-video-box1{ width: 100%; - height: calc(100% - 534px - 14px) ; + height: calc(100% - 534px - 4px) ; background: linear-gradient(135deg, #1a1e2a 0%, #222b38 100%); border: 1px solid #242E3D; border-radius: 4px; @@ -3070,10 +3157,10 @@ function viewClick(e){ } .userinfo-disyplaypadding1{ width: calc(64%); - padding-bottom: 15px; + padding-bottom: 20px; } .padding10{ - padding-bottom: 5px; + padding-bottom: 10px; } .userinfo-disyplaypadding2{ width: calc(36%); @@ -3308,6 +3395,25 @@ function viewClick(e){ background:#14aaff; border:1px solid #14aaff; } +.tipclosebutton{ + width: 80px; + height: 40px; + background-color: #597194; + border-radius: 4px; + color: rgba(255, 255, 255, 0.6); + font-weight: 400; + font-style: normal; + font-size: 16px; + display: flex; + align-items: center; + justify-content: center; + margin-right: 20px; + cursor: pointer; +} +.tipclosebutton:hover{ + background-color: #14aaff; + color: #fff; +} .pop-up-tip-text{ width:100%; font-weight: 400; diff --git a/frontend/src/renderer/src/views/DiagnosticMessage.vue b/frontend/src/renderer/src/views/DiagnosticMessage.vue index 6a533f01..2642ea67 100644 --- a/frontend/src/renderer/src/views/DiagnosticMessage.vue +++ b/frontend/src/renderer/src/views/DiagnosticMessage.vue @@ -33,7 +33,7 @@
-
diff --git a/frontend/src/renderer/src/views/GenerateReport.vue b/frontend/src/renderer/src/views/GenerateReport.vue index 1b1a515e..20e50baf 100644 --- a/frontend/src/renderer/src/views/GenerateReport.vue +++ b/frontend/src/renderer/src/views/GenerateReport.vue @@ -213,7 +213,7 @@
{{ detectionInfo.diagnosis_info }}
处理
{{ detectionInfo.treatment_info }}
-
备注
+
建议
{{ detectionInfo.suggestion_info }}
@@ -599,12 +599,12 @@ function closePopUpOnlyReport(e) { .generateReport-border1{ padding: 5px; width: 100%; - min-height: 200px; + /* min-height: 200px; */ background: rgba(255, 255, 255, 1); box-sizing: border-box; border-width: 1px; border-style: solid; - border-color: rgba(220, 223, 230, 1); + border-color: rgba(220, 223, 230, 0); border-radius: 4px; font-weight: 400; font-style: normal; @@ -614,12 +614,12 @@ function closePopUpOnlyReport(e) { } .generateReport-border2{ width: 100%; - min-height: 40px; + /* min-height: 40px; */ background: rgba(255, 255, 255, 1); box-sizing: border-box; border-width: 1px; border-style: solid; - border-color: rgba(220, 223, 230, 1); + border-color: rgba(220, 223, 230, 0); border-radius: 4px; font-style: normal; font-size: 18px; @@ -629,12 +629,12 @@ function closePopUpOnlyReport(e) { } .generateReport-border3{ width: 100%; - min-height: 120px; + /* min-height: 120px; */ background: rgba(255, 255, 255, 1); box-sizing: border-box; border-width: 1px; border-style: solid; - border-color: rgba(220, 223, 230, 1); + border-color: rgba(220, 223, 230, 0); border-radius: 4px; font-style: normal; font-size: 18px; diff --git a/frontend/src/renderer/src/views/Login.vue b/frontend/src/renderer/src/views/Login.vue index a2efde54..a27ca536 100644 --- a/frontend/src/renderer/src/views/Login.vue +++ b/frontend/src/renderer/src/views/Login.vue @@ -1,7 +1,10 @@ + +
+ + + + +
+ + +
+
+ +
+ +
+ +
+ +
+ +
+ +
diff --git a/frontend/src/renderer/src/views/PopUpOnlyReport.vue b/frontend/src/renderer/src/views/PopUpOnlyReport.vue index 31c1eafe..e6352f92 100644 --- a/frontend/src/renderer/src/views/PopUpOnlyReport.vue +++ b/frontend/src/renderer/src/views/PopUpOnlyReport.vue @@ -140,7 +140,7 @@
{{ detectionInfo.diagnosis_info }}
处理
{{ detectionInfo.treatment_info }}
-
备注
+
建议
{{ detectionInfo.suggestion_info }}