支持下载查看扫描的文件直接标识符列表
Showing
3 changed files
with
39 additions
and
3 deletions
| ... | @@ -380,3 +380,9 @@ export const retryDicom = (taskGuid) => request({ | ... | @@ -380,3 +380,9 @@ export const retryDicom = (taskGuid) => request({ |
| 380 | url: `${import.meta.env.VITE_APP_DIGITAL_CONTRACT_URL}/anon-task/dicom/retry?taskGuid=${taskGuid}`, | 380 | url: `${import.meta.env.VITE_APP_DIGITAL_CONTRACT_URL}/anon-task/dicom/retry?taskGuid=${taskGuid}`, |
| 381 | method: 'get' | 381 | method: 'get' |
| 382 | }) | 382 | }) |
| 383 | |||
| 384 | export const downDicomPath = (taskExecGuid) => request({ | ||
| 385 | url: `${import.meta.env.VITE_APP_DIGITAL_CONTRACT_URL}/anon-task/down-dicom-path?taskExecGuid=${taskExecGuid}`, | ||
| 386 | method: 'get', | ||
| 387 | responseType: 'blob' | ||
| 388 | }) | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
| ... | @@ -1567,7 +1567,7 @@ onBeforeMount(() => { | ... | @@ -1567,7 +1567,7 @@ onBeforeMount(() => { |
| 1567 | dataSource: detailInfo.value.dataSource, | 1567 | dataSource: detailInfo.value.dataSource, |
| 1568 | handleType: detailInfo.value.handleType, | 1568 | handleType: detailInfo.value.handleType, |
| 1569 | coverageArea: detailInfo.value.coverageArea || [], | 1569 | coverageArea: detailInfo.value.coverageArea || [], |
| 1570 | qualifiedIdentifier: detailInfo.value.qualifiedIdentifier, | 1570 | // qualifiedIdentifier: detailInfo.value.qualifiedIdentifier, |
| 1571 | samplingRate: detailInfo.value.samplingRate, | 1571 | samplingRate: detailInfo.value.samplingRate, |
| 1572 | dataSharingTypeCode: detailInfo.value.dataSharingTypeCode, | 1572 | dataSharingTypeCode: detailInfo.value.dataSharingTypeCode, |
| 1573 | } | 1573 | } | ... | ... |
| ... | @@ -2,8 +2,12 @@ | ... | @@ -2,8 +2,12 @@ |
| 2 | <div style="display: flex;justify-content: center;width: 100%;"> | 2 | <div style="display: flex;justify-content: center;width: 100%;"> |
| 3 | <div v-show="!isWordStyle" class="analysis-result-main"> | 3 | <div v-show="!isWordStyle" class="analysis-result-main"> |
| 4 | <div class="reject" v-show="analysisResultInfo.rating <= 2"> | 4 | <div class="reject" v-show="analysisResultInfo.rating <= 2"> |
| 5 | <div class="header_title"> | 5 | <div v-if="analysisResultInfo.rating == 2" class="header_title"> |
| 6 | <span class="title_text">{{ analysisResultInfo.rating == 2 ? `匿名化评测结果不符合评测要求,等级为${analysisResultInfo.rating}级,重标识符风险大于风险阈值0.05,请重新进行匿名化处理` : `匿名化评测结果不符合评测要求,等级为${analysisResultInfo.rating}级,包含直接标识符,请重新进行匿名化处理` }}</span> | 6 | <span class="title_text">{{ `匿名化评测结果不符合评测要求,等级为${analysisResultInfo.rating}级,重标识符风险大于风险阈值0.05,请对如性别、年龄、地区等准标识符加大泛化以降低重标识风险。` }}</span> |
| 7 | </div> | ||
| 8 | <div v-else class="header_title"> | ||
| 9 | <span class="title_text">{{ `匿名化评测结果不符合评测要求,等级为${analysisResultInfo.rating}级,数据中仍含可直接识别个人身份的信息,请对该信息进行脱敏处理。点击下载`}}</span> | ||
| 10 | <span class="title_text link" @click="downErrorFile">《需修正文件明细表》</span> | ||
| 7 | </div> | 11 | </div> |
| 8 | </div> | 12 | </div> |
| 9 | <div v-if="showTitle" class="result-title">匿名结果分析</div> | 13 | <div v-if="showTitle" class="result-title">匿名结果分析</div> |
| ... | @@ -349,6 +353,11 @@ | ... | @@ -349,6 +353,11 @@ |
| 349 | import { TableColumnWidth } from '@/utils/enum'; | 353 | import { TableColumnWidth } from '@/utils/enum'; |
| 350 | import { QuestionFilled, CircleCloseFilled } from "@element-plus/icons-vue"; | 354 | import { QuestionFilled, CircleCloseFilled } from "@element-plus/icons-vue"; |
| 351 | import Moment from 'moment'; | 355 | import Moment from 'moment'; |
| 356 | import { | ||
| 357 | downDicomPath, | ||
| 358 | } from '@/api/modules/dataAnonymization'; | ||
| 359 | import { download } from '@/utils/common'; | ||
| 360 | import { ElMessage } from 'element-plus'; | ||
| 352 | 361 | ||
| 353 | const props = defineProps({ | 362 | const props = defineProps({ |
| 354 | isWordStyle: { //显示的是否是word报告的样式 | 363 | isWordStyle: { //显示的是否是word报告的样式 |
| ... | @@ -575,6 +584,22 @@ const pageChange = (info) => { | ... | @@ -575,6 +584,22 @@ const pageChange = (info) => { |
| 575 | emits('pageChange', info); | 584 | emits('pageChange', info); |
| 576 | } | 585 | } |
| 577 | 586 | ||
| 587 | const downPromise: any = ref(null) | ||
| 588 | const downErrorFile = () => { | ||
| 589 | if (downPromise.value) { | ||
| 590 | return; | ||
| 591 | } | ||
| 592 | downDicomPath(props.analysisResultInfo.guid).then((res: any) => { | ||
| 593 | downPromise.value = null | ||
| 594 | if (res && !res.msg) { | ||
| 595 | debugger | ||
| 596 | download(res, (props.oldAnonTaskValueInfo.taskName) + '_需修正文件明细表.xlsx', 'excel') | ||
| 597 | } else { | ||
| 598 | res?.msg && ElMessage.error(res?.msg); | ||
| 599 | } | ||
| 600 | }) | ||
| 601 | } | ||
| 602 | |||
| 578 | defineExpose({ | 603 | defineExpose({ |
| 579 | report, | 604 | report, |
| 580 | }) | 605 | }) |
| ... | @@ -756,6 +781,11 @@ defineExpose({ | ... | @@ -756,6 +781,11 @@ defineExpose({ |
| 756 | transform: rotate(90deg); | 781 | transform: rotate(90deg); |
| 757 | } | 782 | } |
| 758 | } | 783 | } |
| 784 | |||
| 785 | &.link { | ||
| 786 | cursor: pointer; | ||
| 787 | color: var(--el-color-primary); | ||
| 788 | } | ||
| 759 | } | 789 | } |
| 760 | } | 790 | } |
| 761 | </style> | 791 | </style> |
| ... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
-
Please register or sign in to post a comment