diff --git a/backend/Log/OrbbecSDK.log.txt b/backend/Log/OrbbecSDK.log.txt index cdf03d3a..cfac73c7 100644 Binary files a/backend/Log/OrbbecSDK.log.txt and b/backend/Log/OrbbecSDK.log.txt differ diff --git a/backend/main.py b/backend/main.py index d39ce6e0..e544e087 100644 --- a/backend/main.py +++ b/backend/main.py @@ -1525,7 +1525,7 @@ class AppServer: return jsonify({'success': False, 'error': f'删除文件失败: {str(e)}'}), 500 # 更新数据库 - self.db_manager.update_session_report_path(session_id, None) + self.db_manager.update_session_report_path(session_id, None, None) return jsonify({'success': True, 'message': '报告已删除'}) diff --git a/frontend/src/renderer/src/assets/archive/close.png b/frontend/src/renderer/src/assets/archive/close.png deleted file mode 100644 index bc942fe8..00000000 Binary files a/frontend/src/renderer/src/assets/archive/close.png and /dev/null differ diff --git a/frontend/src/renderer/src/assets/archive/close2.png b/frontend/src/renderer/src/assets/archive/close2.png deleted file mode 100644 index 87d3f8ea..00000000 Binary files a/frontend/src/renderer/src/assets/archive/close2.png and /dev/null differ diff --git a/frontend/src/renderer/src/assets/archive/download.png b/frontend/src/renderer/src/assets/archive/download.png new file mode 100644 index 00000000..5730dca8 Binary files /dev/null and b/frontend/src/renderer/src/assets/archive/download.png differ diff --git a/frontend/src/renderer/src/views/PatientProfile.vue b/frontend/src/renderer/src/views/PatientProfile.vue index ef5842e3..9c28b782 100644 --- a/frontend/src/renderer/src/views/PatientProfile.vue +++ b/frontend/src/renderer/src/views/PatientProfile.vue @@ -305,7 +305,7 @@ + :selectedPatient="selectedPatient" @closeReportComparison="isReportComparison = false"/> @@ -421,6 +421,8 @@ const handleSubmit = (item) => { const sessionsId = ref('') function selectRecord(data){ selectedRecord.value = data + checkboxVideo.value = [] + checkboxGroup.value = [] sessionsById(data.id) sessionsId.value = data.id profileInfo.value = { @@ -696,6 +698,27 @@ function viewPatientProfile() { //对比报告 if (selectedData.value.length !== 2) { return } + if (selectedData.value[0].data_ids == null) { + ElMessage.error({ + message: '对比报告不能为空', + duration: 5000 + }) + return + } + if (selectedData.value[1].data_ids == null) { + ElMessage.error({ + message: '对比报告不能为空', + duration: 5000 + }) + return + } + if (selectedData.value[0].data_ids.split(',').length !== selectedData.value[1].data_ids.split(',').length) { + ElMessage.error({ + message: '请选择相同类型报告对比', + duration: 5000 + }) + } + isReportComparison.value = true } diff --git a/frontend/src/renderer/src/views/PopUpOnlyReport.vue b/frontend/src/renderer/src/views/PopUpOnlyReport.vue index a7b3256e..c89a4ad1 100644 --- a/frontend/src/renderer/src/views/PopUpOnlyReport.vue +++ b/frontend/src/renderer/src/views/PopUpOnlyReport.vue @@ -232,7 +232,8 @@ const generatePDF = async () => { // 使用检测ID作为文件名 const filename = `${props.detectionInfo.id || 'report'}.pdf` form.append('file', blob, filename) - + form.append('data_ids', rawData.value.id) + // 如果有detectionInfo.id,则上传到后端 if (props.detectionInfo.id) { const res = await fetch(`${BACKEND_URL}/api/reports/${props.detectionInfo.id}/upload`, { diff --git a/frontend/src/renderer/src/views/PopUpReport.vue b/frontend/src/renderer/src/views/PopUpReport.vue index b040518b..fd613c50 100644 --- a/frontend/src/renderer/src/views/PopUpReport.vue +++ b/frontend/src/renderer/src/views/PopUpReport.vue @@ -54,21 +54,20 @@
整体数据
-
- -
-
身体姿态
-
- +
+
身体姿态
+
头部姿态
-
+
-
+
左: {{headPoseMaxValuesLeft.rotationLeftMax}}° @@ -80,7 +79,7 @@ {{headPoseMaxValuesLeft.pitchDownMax}}°
-
+
右: {{headPoseMaxValuesLeft.rotationRightMax}}°
@@ -96,7 +95,7 @@
足底压力
-
+
@@ -120,21 +119,19 @@
整体数据
-
+
身体姿态
-
- -
+
头部姿态
-
+
-
+
左: {{headPoseMaxValuesRight.rotationLeftMax}}° @@ -146,7 +143,7 @@ {{headPoseMaxValuesRight.pitchDownMax}}°
-
+
右: {{headPoseMaxValuesRight.rotationRightMax}}°
@@ -162,7 +159,7 @@
足底压力
-
+
@@ -190,9 +187,6 @@
检测医生:{{ detectionInfo.creator_name }}
- - -
@@ -301,6 +295,7 @@ const generatePDF = async () => { // 使用检测ID作为文件名 const filename = `${props.detectionInfo.id || 'report'}.pdf` form.append('file', blob, filename) + form.append('data_ids', rawData.value.id + ',' + calibrationData.value.id) // 如果有detectionInfo.id,则上传到后端 if (props.detectionInfo.id) { @@ -684,7 +679,7 @@ function getFormattedTime() { } } -.PopUpOnlyReport-footer{ +.PopUpReport-footer{ margin-top: 40px; padding-top: 40px; border-top: 1px solid #333; @@ -694,4 +689,5 @@ function getFormattedTime() { color: rgb(40, 40, 40); font-size: 18px; } + diff --git a/frontend/src/renderer/src/views/ReportComparison - 副本.vue b/frontend/src/renderer/src/views/ReportComparison - 副本.vue new file mode 100644 index 00000000..14caf7f6 --- /dev/null +++ b/frontend/src/renderer/src/views/ReportComparison - 副本.vue @@ -0,0 +1,731 @@ + + + + + + + diff --git a/frontend/src/renderer/src/views/ReportComparison.vue b/frontend/src/renderer/src/views/ReportComparison.vue index 589c8259..039e7d53 100644 --- a/frontend/src/renderer/src/views/ReportComparison.vue +++ b/frontend/src/renderer/src/views/ReportComparison.vue @@ -1,11 +1,17 @@