修改患者档案
This commit is contained in:
parent
a04b2b5e36
commit
d058f15488
@ -638,6 +638,11 @@ export const historyAPI = {
|
|||||||
detectionDelById(id) {
|
detectionDelById(id) {
|
||||||
return api.delete(`/api/detection/data/${id}`, {})
|
return api.delete(`/api/detection/data/${id}`, {})
|
||||||
},
|
},
|
||||||
|
// 删除视频记录
|
||||||
|
VideoDelById(id) {
|
||||||
|
return api.delete(`/api/detection/video/${id}`, {})
|
||||||
|
},
|
||||||
|
|
||||||
// 删除检测会话及其相关的检测数据
|
// 删除检测会话及其相关的检测数据
|
||||||
sessionsDelById(id) {
|
sessionsDelById(id) {
|
||||||
return api.delete(`api/detection/sessions/${id}`, {})
|
return api.delete(`api/detection/sessions/${id}`, {})
|
||||||
@ -647,6 +652,12 @@ export const historyAPI = {
|
|||||||
return api.get(`/api/history/sessions/${id}`)
|
return api.get(`/api/history/sessions/${id}`)
|
||||||
},
|
},
|
||||||
|
|
||||||
|
detailsByIds(ids) {
|
||||||
|
return api.get(`/api/detection/data/details?ids=${ids}`)
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//获取最新的检测数据
|
//获取最新的检测数据
|
||||||
detectionLatestList(id) {
|
detectionLatestList(id) {
|
||||||
return api.get(`/api/detection/data/detail/${id}/latest`)
|
return api.get(`/api/detection/data/detail/${id}/latest`)
|
||||||
|
|||||||
220
frontend/src/renderer/src/views/ImageDetailsCompare.vue
Normal file
220
frontend/src/renderer/src/views/ImageDetailsCompare.vue
Normal file
@ -0,0 +1,220 @@
|
|||||||
|
<template>
|
||||||
|
<div class="ImageDetailsCompare-box">
|
||||||
|
<div class="ImageDetailsCompare-header">
|
||||||
|
<div></div>
|
||||||
|
<img src="@/assets/archive/close2.png" alt="" style="cursor: pointer;" @click="handleCancel">
|
||||||
|
</div>
|
||||||
|
<div class="ImageDetailsCompare-imgbgbox">
|
||||||
|
<div class="ImageDetailsCompare-display" v-if="indexActive == 0">
|
||||||
|
<div class="ImageDetailsCompare-content-imgbox" style="width: 740px;height: 100%;">
|
||||||
|
<div class="ImageDetailsCompare-content-title">{{ ImageDetailsInfoLeft.order }}</div>
|
||||||
|
<img :src="BACKEND_URL+'/' + ImageDetailsInfoLeft.screen_image" alt=""
|
||||||
|
style="width: 740px;height:416px;">
|
||||||
|
</div>
|
||||||
|
<div class="ImageDetailsCompare-content-imgbox"
|
||||||
|
style="width: 740px;height: 100%;margin-left: 50px;">
|
||||||
|
<div class="ImageDetailsCompare-content-title">{{ ImageDetailsInfoRight.order }}</div>
|
||||||
|
<img :src="BACKEND_URL+'/' + ImageDetailsInfoRight.screen_image" alt=""
|
||||||
|
style="width: 740px;height:416px;">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="ImageDetailsCompare-display" v-if="indexActive == 1">
|
||||||
|
<div class="ImageDetailsCompare-content-imgbox" style="width: 300px;height: 100%;">
|
||||||
|
<div class="ImageDetailsCompare-content-title">{{ ImageDetailsInfoLeft.order }}</div>
|
||||||
|
<img :src="BACKEND_URL+'/' + ImageDetailsInfoLeft.body_image" alt=""
|
||||||
|
style="width: 300px;height:600px;">
|
||||||
|
</div>
|
||||||
|
<div class="ImageDetailsCompare-content-imgbox"
|
||||||
|
style="width: 300px;height: 100%;margin-left: 50px;">
|
||||||
|
<div class="ImageDetailsCompare-content-title">{{ ImageDetailsInfoRight.order }}</div>
|
||||||
|
<img :src="BACKEND_URL+'/' + ImageDetailsInfoRight.body_image" alt=""
|
||||||
|
style="width: 300px;height:600px;">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="ImageDetailsCompare-display" v-if="indexActive == 2">
|
||||||
|
<div class="ImageDetailsCompare-content-imgbox" style="width: 740px;height: 100%;">
|
||||||
|
<div class="ImageDetailsCompare-content-title">{{ ImageDetailsInfoLeft.order }}</div>
|
||||||
|
<img :src="BACKEND_URL+'/' + ImageDetailsInfoLeft.screen_image" alt=""
|
||||||
|
style="width: 740px;height:361px">
|
||||||
|
</div>
|
||||||
|
<div class="ImageDetailsCompare-content-imgbox"
|
||||||
|
style="width: 740px;height: 100%;margin-left: 50px;">
|
||||||
|
<div class="ImageDetailsCompare-content-title">{{ ImageDetailsInfoRight.order }}</div>
|
||||||
|
<img :src="BACKEND_URL+'/' + ImageDetailsInfoRight.screen_image" alt=""
|
||||||
|
style="width: 740px;height:361px">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="ImageDetailsCompare-display" v-if="indexActive == 3">
|
||||||
|
<div class="ImageDetailsCompare-content-imgbox" style="width: 456px;height: 100%;">
|
||||||
|
<div class="ImageDetailsCompare-content-title">{{ ImageDetailsInfoLeft.order }}</div>
|
||||||
|
<img :src="BACKEND_URL+'/' + ImageDetailsInfoLeft.foot_data_image" alt=""
|
||||||
|
style="width: 456px;height:456px">
|
||||||
|
</div>
|
||||||
|
<div class="ImageDetailsCompare-content-imgbox"
|
||||||
|
style="width: 456px;height: 100%;margin-left: 50px;">
|
||||||
|
<div class="ImageDetailsCompare-content-title">{{ ImageDetailsInfoRight.order }}</div>
|
||||||
|
<img :src="BACKEND_URL+'/' + ImageDetailsInfoRight.foot_data_image" alt=""
|
||||||
|
style="width: 456px;height:456px">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="ImageDetailsCompare-display" v-if="indexActive == 4">
|
||||||
|
<div class="ImageDetailsCompare-content-imgbox" style="width: 500px;height: 100%;">
|
||||||
|
<div class="ImageDetailsCompare-content-title">{{ ImageDetailsInfoLeft.order }}视频1</div>
|
||||||
|
<img :src="BACKEND_URL+'/' + ImageDetailsInfoLeft.foot1_image" alt=""
|
||||||
|
style="width: 500px;height:281px">
|
||||||
|
<div class="ImageDetailsCompare-content-title" style="margin-top: 30px;">{{ ImageDetailsInfoRight.order }}视频1</div>
|
||||||
|
<img :src="BACKEND_URL+'/' + ImageDetailsInfoRight.foot1_image" alt=""
|
||||||
|
style="width: 500px;height:281px">
|
||||||
|
</div>
|
||||||
|
<div class="ImageDetailsCompare-content-imgbox"
|
||||||
|
style="width: 500px;height: 100%;margin-left: 50px;">
|
||||||
|
<div class="ImageDetailsCompare-content-title">{{ ImageDetailsInfoLeft.order }}视频2</div>
|
||||||
|
<img :src="BACKEND_URL+'/' + ImageDetailsInfoLeft.foot2_image" alt=""
|
||||||
|
style="width: 500px;height:281px">
|
||||||
|
<div class="ImageDetailsCompare-content-title" style="margin-top: 30px;">{{ ImageDetailsInfoRight.order }}视频2</div>
|
||||||
|
<img :src="BACKEND_URL+'/' + ImageDetailsInfoRight.foot2_image" alt=""
|
||||||
|
style="width: 500px;height:281px">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div style="display: flex;justify-content: center; margin-top: 35px;">
|
||||||
|
<div :class="indexActive == 0?'ImageDetailsCompare-buttonli-active':''" @click="clickIndex(0)"
|
||||||
|
class="ImageDetailsCompare-buttonli" style="border-radius: 4px 0 0 4px;">整体</div>
|
||||||
|
<div :class="indexActive == 1?'ImageDetailsCompare-buttonli-active':''" @click="clickIndex(1)"
|
||||||
|
class="ImageDetailsCompare-buttonli" >背部</div>
|
||||||
|
<div :class="indexActive == 2?'ImageDetailsCompare-buttonli-active':''" @click="clickIndex(2)"
|
||||||
|
class="ImageDetailsCompare-buttonli">头部</div>
|
||||||
|
<div :class="indexActive == 3?'ImageDetailsCompare-buttonli-active':''" @click="clickIndex(3)"
|
||||||
|
class="ImageDetailsCompare-buttonli">足底</div>
|
||||||
|
<div :class="indexActive == 4?'ImageDetailsCompare-buttonli-active':''" @click="clickIndex(4)"
|
||||||
|
class="ImageDetailsCompare-buttonli" style="border-radius: 0px 4px 4px 0px;">视频截图</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { ref, reactive, computed, onMounted, onUnmounted } from 'vue'
|
||||||
|
import { getBackendUrl } from '@/services/api.js'
|
||||||
|
const emit = defineEmits([ 'closeImageDetailsCompare' ]);
|
||||||
|
const props = defineProps({
|
||||||
|
ImageDetailsList: {
|
||||||
|
required: false,
|
||||||
|
type: Array,
|
||||||
|
default: []
|
||||||
|
}
|
||||||
|
})
|
||||||
|
const BACKEND_URL = getBackendUrl() // 后端地址
|
||||||
|
const indexActive = ref(0) // 图片详情索引
|
||||||
|
const ImageDetailsInfoLeft = ref({}) // 左图片详情信息
|
||||||
|
const ImageDetailsInfoRight = ref({}) // 右图片详情信息
|
||||||
|
const pageIndex = ref(0)
|
||||||
|
// 生命周期
|
||||||
|
onMounted(() => {
|
||||||
|
pageIndex.value = props.selectIndex
|
||||||
|
if(props.ImageDetailsList.length == 2){
|
||||||
|
ImageDetailsInfoLeft.value = props.ImageDetailsList[0]
|
||||||
|
ImageDetailsInfoRight.value = props.ImageDetailsList[1]
|
||||||
|
}
|
||||||
|
|
||||||
|
})
|
||||||
|
function clickIndex(index) {
|
||||||
|
indexActive.value = index
|
||||||
|
}
|
||||||
|
function handleCancel() {
|
||||||
|
emit("closeImageDetailsCompare",false)
|
||||||
|
}
|
||||||
|
onUnmounted(() => {
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.ImageDetailsCompare-box{
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100vw;
|
||||||
|
height: 100vh;
|
||||||
|
background: #191d28;
|
||||||
|
padding: 0px 30px 20px;
|
||||||
|
z-index: 299;
|
||||||
|
}
|
||||||
|
.ImageDetailsCompare-header{
|
||||||
|
width: 100%;
|
||||||
|
height: 60px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
box-sizing: border-box;
|
||||||
|
font-family: 'Noto Sans SC';
|
||||||
|
font-weight: 700;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 20px;
|
||||||
|
color: #FFFFFF;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
.ImageDetailsCompare-buttonli{
|
||||||
|
width: 120px;
|
||||||
|
height: 50px;
|
||||||
|
background: rgba(55, 65, 81, 1);
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
font-family: 'Noto Sans SC';
|
||||||
|
font-weight: 400;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 16px;
|
||||||
|
color: #FFFFFF;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.ImageDetailsCompare-buttonli:hover{
|
||||||
|
color: #14aaff;
|
||||||
|
}
|
||||||
|
.ImageDetailsCompare-buttonli-active{
|
||||||
|
background: #14aaff;
|
||||||
|
color: #FFFFFF !important;
|
||||||
|
}
|
||||||
|
.ImageDetailsCompare-imgbgbox{
|
||||||
|
width: calc(100%);
|
||||||
|
height: calc(100% - 150px);
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ImageDetailsCompare-leftbutton{
|
||||||
|
height: 60px;
|
||||||
|
width: 60px;
|
||||||
|
border-radius: 50%;
|
||||||
|
background: rgba(0, 0, 0, 0.5);
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
cursor: pointer;
|
||||||
|
margin: 0 20px;
|
||||||
|
}
|
||||||
|
.ImageDetailsCompare-content-imgbox{
|
||||||
|
display: flex;
|
||||||
|
align-content: center;
|
||||||
|
justify-content: center;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
height: calc(100% - 50px);
|
||||||
|
width: calc(100%);
|
||||||
|
}
|
||||||
|
|
||||||
|
.ImageDetailsCompare-display{
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
.ImageDetailsCompare-content-title{
|
||||||
|
font-weight: 700;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 20px;
|
||||||
|
color: #FFFFFF;
|
||||||
|
text-align: center;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@ -151,14 +151,14 @@
|
|||||||
<el-button type="primary"
|
<el-button type="primary"
|
||||||
class="button-width70"
|
class="button-width70"
|
||||||
:class="checkboxGroup.length == 2? 'patientprofile-selectedbutotn':'patientprofile-butotn'"
|
:class="checkboxGroup.length == 2? 'patientprofile-selectedbutotn':'patientprofile-butotn'"
|
||||||
@click="viewPatientProfile">
|
@click="viewCompareImg">
|
||||||
<img v-if="checkboxGroup.length == 2" src="@/assets/new/bi2.png" alt="" style="margin-right: 8px;">
|
<img v-if="checkboxGroup.length == 2" src="@/assets/new/bi2.png" alt="" style="margin-right: 8px;">
|
||||||
<img v-else src="@/assets/new/bi.png" alt="" style="margin-right: 8px;">
|
<img v-else src="@/assets/new/bi.png" alt="" style="margin-right: 8px;">
|
||||||
查看
|
查看
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button class="button-width70" type="primary"
|
<el-button class="button-width70" type="primary"
|
||||||
:class="checkboxGroup.length>0? 'patientprofile-selectedbutotn':'patientprofile-butotn'"
|
:class="checkboxGroup.length>0? 'patientprofile-selectedbutotn':'patientprofile-butotn'"
|
||||||
@click="viewPatientProfile">
|
@click="delImgClick('img')">
|
||||||
<img v-if="checkboxGroup.length>0" src="@/assets/new/del2.png" alt="" style="margin-right: 8px;">
|
<img v-if="checkboxGroup.length>0" src="@/assets/new/del2.png" alt="" style="margin-right: 8px;">
|
||||||
<img v-else src="@/assets/new/del3.png" alt="" style="margin-right: 8px;">
|
<img v-else src="@/assets/new/del3.png" alt="" style="margin-right: 8px;">
|
||||||
删除
|
删除
|
||||||
@ -204,7 +204,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<el-button class="button-width70" type="primary"
|
<el-button class="button-width70" type="primary"
|
||||||
:class="checkboxVideo.length>0? 'patientprofile-selectedbutotn':'patientprofile-butotn'"
|
:class="checkboxVideo.length>0? 'patientprofile-selectedbutotn':'patientprofile-butotn'"
|
||||||
@click="viewPatientProfile">
|
@click="delVideoClick">
|
||||||
<img v-if="checkboxVideo.length>0" src="@/assets/new/del2.png" alt="" style="margin-right: 8px;">
|
<img v-if="checkboxVideo.length>0" src="@/assets/new/del2.png" alt="" style="margin-right: 8px;">
|
||||||
<img v-else src="@/assets/new/del3.png" alt="" style="margin-right: 8px;">
|
<img v-else src="@/assets/new/del3.png" alt="" style="margin-right: 8px;">
|
||||||
删除
|
删除
|
||||||
@ -282,6 +282,25 @@
|
|||||||
</div>
|
</div>
|
||||||
<GenerateReport v-if="isGenerateReport" :selectedPatient="selectedPatient"
|
<GenerateReport v-if="isGenerateReport" :selectedPatient="selectedPatient"
|
||||||
:detectionId="detectionId" @closeGenerateReport="closeGenerateReport"/>
|
:detectionId="detectionId" @closeGenerateReport="closeGenerateReport"/>
|
||||||
|
|
||||||
|
<ImageDetailsCompare v-if="isImageDetailsCompare"
|
||||||
|
:ImageDetailsList="ImageDetailsList" @closeImageDetailsCompare="closeImageDetailsCompare"/>
|
||||||
|
|
||||||
|
<!-- 无操作退出提示 -->
|
||||||
|
<div class="pop-up-mask" v-if="isTip">
|
||||||
|
<div class="pop-up-tip-container">
|
||||||
|
<div class="pop-up-tip-header">
|
||||||
|
<div>提示</div>
|
||||||
|
<img src="@/assets/new/u264.svg" alt="" style="cursor: pointer;" @click="tipCancel">
|
||||||
|
</div>
|
||||||
|
<div class="pop-up-tip-text">{{ tipValue }}</div>
|
||||||
|
<div class="tipconfirmbutton-box">
|
||||||
|
<div class="pop-up-tip-cancelbutton" @click="tipCancel">取消</div>
|
||||||
|
<el-button type="primary" class="tipconfirmbutton" @click="tipConfirm">确定</el-button>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -292,6 +311,7 @@ import { ElMessage, ElMessageBox } from 'element-plus'
|
|||||||
import { patientAPI, detectionAPI,historyAPI,getBackendUrl } from '@/services/api.js'
|
import { patientAPI, detectionAPI,historyAPI,getBackendUrl } from '@/services/api.js'
|
||||||
import { useAuthStore } from '@/stores/index.js'
|
import { useAuthStore } from '@/stores/index.js'
|
||||||
import GenerateReport from '@/views/GenerateReport.vue'
|
import GenerateReport from '@/views/GenerateReport.vue'
|
||||||
|
import ImageDetailsCompare from '@/views/ImageDetailsCompare.vue'
|
||||||
|
|
||||||
const formatDate = (date) => {
|
const formatDate = (date) => {
|
||||||
return new Date(date).toLocaleDateString('zh-CN')
|
return new Date(date).toLocaleDateString('zh-CN')
|
||||||
@ -311,12 +331,18 @@ const props = defineProps({
|
|||||||
default: false
|
default: false
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
const isTip = ref(false) // 退出提示
|
||||||
|
const tipValue = ref('')
|
||||||
|
const delType = ref('')
|
||||||
const detectionId = ref('') // 列表检测ID
|
const detectionId = ref('') // 列表检测ID
|
||||||
const isGenerateReport = ref(false) // 是否生成报告
|
const isGenerateReport = ref(false) // 是否生成报告
|
||||||
const archiveType =ref(false)
|
const archiveType =ref(false)
|
||||||
const profileInfo = ref({}) // 患者信息
|
const profileInfo = ref({}) // 患者信息
|
||||||
const selectedRecord = ref({})
|
const selectedRecord = ref({})
|
||||||
const recordData =ref([])
|
const recordData =ref([])
|
||||||
|
const isImageDetailsCompare = ref(false) // 是否显示对比图片详情
|
||||||
|
|
||||||
|
const ImageDetailsList = ref([]) // 图片详情列表
|
||||||
|
|
||||||
const checkboxGroup = ref([]) // 图片列表选中的数据
|
const checkboxGroup = ref([]) // 图片列表选中的数据
|
||||||
|
|
||||||
@ -364,10 +390,11 @@ const handleSubmit = (item) => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
const sessionsId = ref('')
|
||||||
function selectRecord(data){ // 列表点击单选
|
function selectRecord(data){ // 列表点击单选
|
||||||
selectedRecord.value = data
|
selectedRecord.value = data
|
||||||
sessionsById(data.id)
|
sessionsById(data.id)
|
||||||
|
sessionsId.value = data.id
|
||||||
|
|
||||||
}
|
}
|
||||||
const handleSelectionChange = (val) => { // 列表多选
|
const handleSelectionChange = (val) => { // 列表多选
|
||||||
@ -439,6 +466,20 @@ onMounted(() => {
|
|||||||
sessionsInit()
|
sessionsInit()
|
||||||
|
|
||||||
})
|
})
|
||||||
|
const deleteId = ref('')
|
||||||
|
function sessionsDelById(id) {
|
||||||
|
let ids = id.join(',')
|
||||||
|
historyAPI.sessionsDelById(ids).then((response)=>{
|
||||||
|
if(response.success){
|
||||||
|
ElMessage.success({
|
||||||
|
message: response.message,
|
||||||
|
duration: 5000
|
||||||
|
});
|
||||||
|
sessionsInit()
|
||||||
|
}
|
||||||
|
}).catch(()=>{
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
function deleteClick(row){
|
function deleteClick(row){
|
||||||
// 检查状态是否为 checking
|
// 检查状态是否为 checking
|
||||||
@ -449,27 +490,10 @@ function deleteClick(row){
|
|||||||
// });
|
// });
|
||||||
// return;
|
// return;
|
||||||
// }
|
// }
|
||||||
|
deleteId.value = row.id
|
||||||
ElMessageBox.confirm(
|
delType.value = 'listone'
|
||||||
'确定义删除此条数据?',
|
tipValue.value = '确定删除此检测记录吗?'
|
||||||
'提示',
|
isTip.value = true
|
||||||
{
|
|
||||||
confirmButtonText: '确定',
|
|
||||||
cancelButtonText: '取消',
|
|
||||||
type: 'warning',
|
|
||||||
}
|
|
||||||
).then(() => {
|
|
||||||
historyAPI.sessionsDelById(row.id).then((response)=>{
|
|
||||||
if(response.success){
|
|
||||||
ElMessage.success({
|
|
||||||
message: response.message,
|
|
||||||
duration: 5000
|
|
||||||
});
|
|
||||||
sessionsInit()
|
|
||||||
}
|
|
||||||
}).catch(()=>{
|
|
||||||
})
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
function fileClick(row){
|
function fileClick(row){
|
||||||
ElMessage.success({
|
ElMessage.success({
|
||||||
@ -609,6 +633,88 @@ function generateReport(row,index){ // 打开生成报告页面
|
|||||||
function closeGenerateReport(){ // 关闭生成报告页面
|
function closeGenerateReport(){ // 关闭生成报告页面
|
||||||
isGenerateReport.value = false
|
isGenerateReport.value = false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function viewCompareImg(){
|
||||||
|
if(checkboxGroup.length != 2){
|
||||||
|
return
|
||||||
|
}
|
||||||
|
ImageDetailsList.value = []
|
||||||
|
for(let i=0;i<checkboxGroup.value.length;i++){
|
||||||
|
for(let j=0;j<imageList.value.length;j++){
|
||||||
|
if(imageList.value[j].id == checkboxGroup.value[i]){
|
||||||
|
ImageDetailsList.value.push(imageList.value[j])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
isImageDetailsCompare.value = true
|
||||||
|
}
|
||||||
|
function delImgClick(e){ // 临时方法
|
||||||
|
if(checkboxGroup.value.length < 1){
|
||||||
|
return
|
||||||
|
}
|
||||||
|
delType.value = e
|
||||||
|
tipValue.value = '确定删除勾选的检测数据吗?'
|
||||||
|
isTip.value = true
|
||||||
|
}
|
||||||
|
function delVideoClick(){ // 临时方法
|
||||||
|
if(checkboxVideo.value.length < 1){
|
||||||
|
return
|
||||||
|
}
|
||||||
|
delType.value = 'video'
|
||||||
|
tipValue.value = '确定删除勾选的检测数据吗?'
|
||||||
|
isTip.value = true
|
||||||
|
}
|
||||||
|
function closeImageDetailsCompare(){ // 关闭图片对比页面
|
||||||
|
isImageDetailsCompare.value = false
|
||||||
|
}
|
||||||
|
|
||||||
|
function tipCancel(){
|
||||||
|
isTip.value = false
|
||||||
|
}
|
||||||
|
function tipConfirm(){
|
||||||
|
if(delType.value == 'img'){
|
||||||
|
detectionDelById()
|
||||||
|
}else if(delType.value == 'video'){
|
||||||
|
VideoDelById()
|
||||||
|
}
|
||||||
|
else if(delType.value == 'listone'){
|
||||||
|
sessionsDelById([deleteId.value])
|
||||||
|
}
|
||||||
|
|
||||||
|
isTip.value = false
|
||||||
|
}
|
||||||
|
|
||||||
|
function detectionDelById(){
|
||||||
|
|
||||||
|
let ids = checkboxGroup.value.join(',')
|
||||||
|
historyAPI.detectionDelById(ids).then((response)=>{
|
||||||
|
if(response.success){
|
||||||
|
ElMessage.success({
|
||||||
|
message: response.message,
|
||||||
|
duration: 5000
|
||||||
|
});
|
||||||
|
sessionsById(sessionsId.value)
|
||||||
|
}
|
||||||
|
}).catch(()=>{
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
function VideoDelById(){
|
||||||
|
|
||||||
|
let ids = checkboxVideo.value.join(',')
|
||||||
|
historyAPI.VideoDelById(ids).then((response)=>{
|
||||||
|
if(response.success){
|
||||||
|
ElMessage.success({
|
||||||
|
message: response.message,
|
||||||
|
duration: 5000
|
||||||
|
});
|
||||||
|
sessionsById(sessionsId.value)
|
||||||
|
}
|
||||||
|
}).catch(()=>{
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped>
|
<style scoped>
|
||||||
@ -1131,4 +1237,128 @@ function closeGenerateReport(){ // 关闭生成报告页面
|
|||||||
.opacity50{
|
.opacity50{
|
||||||
opacity: 0.5;
|
opacity: 0.5;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.patient-profile-container .pop-up-mask{
|
||||||
|
position: fixed;
|
||||||
|
z-index: 199;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100vw;
|
||||||
|
height: 100vh;
|
||||||
|
background: rgba(0, 0, 0, 0.4);
|
||||||
|
}
|
||||||
|
|
||||||
|
.patient-profile-container .pop-up-tip-container {
|
||||||
|
width: 400px;
|
||||||
|
height:220px;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
left: 0;
|
||||||
|
bottom: 0;
|
||||||
|
margin: auto;
|
||||||
|
border-radius: 10px;
|
||||||
|
background: linear-gradient(135deg, rgba(53, 67, 90, 1) 0%, rgba(53, 67, 90, 1) 0%, rgba(62, 79, 105, 1) 99%, rgba(62, 79, 105, 1) 100%);
|
||||||
|
}
|
||||||
|
.patient-profile-container .pop-up-camera-container{
|
||||||
|
width: 608px;
|
||||||
|
height:495px;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
left: 0;
|
||||||
|
bottom: 0;
|
||||||
|
margin: auto;
|
||||||
|
background: linear-gradient(135deg, rgb(53, 67, 90) 0%, rgb(53, 67, 90) 0%, rgb(62, 79, 105) 99%, rgb(62, 79, 105) 100%);
|
||||||
|
border-radius: 10px;
|
||||||
|
box-shadow: rgb(17, 24, 33) 0px 0px 10px;
|
||||||
|
}
|
||||||
|
.patient-profile-container .pop-up-camera-header{
|
||||||
|
width: 100%;
|
||||||
|
height: 60px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 0 40px;
|
||||||
|
font-family: 'Noto Sans SC';
|
||||||
|
font-weight: 700;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 20px;
|
||||||
|
color: #FFFFFF;
|
||||||
|
text-align: left;
|
||||||
|
border-radius:10px 10px 0 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.patient-profile-container .pop-up-tip-header{
|
||||||
|
width: 100%;
|
||||||
|
height: 60px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 0 30px;
|
||||||
|
font-family: 'Noto Sans SC';
|
||||||
|
font-weight: 700;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 20px;
|
||||||
|
color: #FFFFFF;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
.patient-profile-container .tipconfirmbutton-box{
|
||||||
|
width:100%;
|
||||||
|
display:flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: flex-end;
|
||||||
|
padding: 0 30px;
|
||||||
|
padding-top: 10px;
|
||||||
|
}
|
||||||
|
.patient-profile-container .tipconfirmbutton{
|
||||||
|
font-weight: 400;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 14px;
|
||||||
|
color: rgb(255, 255, 255);
|
||||||
|
background:#0b94d5;
|
||||||
|
border:1px solid #0b94d5;
|
||||||
|
width: 80px;
|
||||||
|
height: 40px;
|
||||||
|
}
|
||||||
|
.patient-profile-container .tipconfirmbutton:hover{
|
||||||
|
background:#14aaff;
|
||||||
|
border:1px solid #14aaff;
|
||||||
|
}
|
||||||
|
.patient-profile-container .pop-up-tip-text{
|
||||||
|
width:100%;
|
||||||
|
font-weight: 400;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 16px;
|
||||||
|
color: #FFFFFF;
|
||||||
|
text-align: left;
|
||||||
|
height: 80px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding-left: 30px;
|
||||||
|
padding-right: 30px;
|
||||||
|
padding-top:20px ;
|
||||||
|
/* padding:20px 10px 30px; */
|
||||||
|
}
|
||||||
|
|
||||||
|
.patient-profile-container .pop-up-tip-cancelbutton{
|
||||||
|
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;
|
||||||
|
}
|
||||||
|
.patient-profile-container .pop-up-tip-cancelbutton:hover{
|
||||||
|
background-color: #14aaff;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user