@@ -379,6 +214,7 @@ import { getStudyUploadMonitor_Export } from '@/api/export'
import Pagination from '@/components/Pagination'
import BaseContainer from '@/components/BaseContainer'
import BaseModel from '@/components/BaseModel'
+import { changeURLStatic } from '@/utils/history.js'
import axios from 'axios'
const searchDataDefault = () => {
return {
@@ -421,10 +257,26 @@ export default {
if (this.$route.query.studyCode) {
this.searchData.StudyCode = this.$route.query.studyCode
}
+ if (this.$route.query.siteId) {
+ this.searchData.TrialSiteId = this.$route.query.siteId
+ }
+ if (this.$route.query.subjectCode) {
+ this.searchData.SubjectInfo = this.$route.query.subjectCode
+ }
+ if (this.$route.query.visitNum || this.$route.query.visitNum === 0) {
+ this.searchData.VisitPlanArray = [Number(this.$route.query.visitNum)]
+ }
this.getList()
this.getVisitPlanOptions()
+ this.clearnUrl()
},
methods: {
+ clearnUrl() {
+ changeURLStatic('siteId', '')
+ changeURLStatic('subjectCode', '')
+ changeURLStatic('visitNum', '')
+
+ },
async handleLook(row) {
this.lookVisible = true
var htmlUrl = this.OSSclientConfig.basePath + row.RecordPath
@@ -482,8 +334,8 @@ export default {
},
handleExport() {
getStudyUploadMonitor_Export(this.searchData)
- .then((res) => {})
- .catch(() => {})
+ .then((res) => { })
+ .catch(() => { })
},
handleDatetimeChange(val) {
if (val) {
From 3489d34628f2923c24bd23ad8e6d3cffeb3066cc Mon Sep 17 00:00:00 2001
From: wangxiaoshuang <825034831@qq.com>
Date: Wed, 11 Jun 2025 16:34:46 +0800
Subject: [PATCH 7/9] =?UTF-8?q?=E5=BD=B1=E5=83=8F=E6=B1=87=E6=80=BB?=
=?UTF-8?q?=E5=AF=BC=E5=87=BA=E5=BD=B1=E5=83=8F=E3=80=81=E5=85=B3=E9=94=AE?=
=?UTF-8?q?=E5=9B=BE?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../trial-summary/image-summary/index.vue | 76 ++++++++++++++++++-
.../trial-summary/upload-monitor/index.vue | 2 +-
2 files changed, 73 insertions(+), 5 deletions(-)
diff --git a/src/views/trials/trials-panel/trial-summary/image-summary/index.vue b/src/views/trials/trials-panel/trial-summary/image-summary/index.vue
index f65e1c41..36b2d5f9 100644
--- a/src/views/trials/trials-panel/trial-summary/image-summary/index.vue
+++ b/src/views/trials/trials-panel/trial-summary/image-summary/index.vue
@@ -61,8 +61,17 @@
-
+
+
+ {{
+ $fd('IsDicom', true)
+ }}
+ {{
+ $fd('IsDicom', false)
+ }}
+
+
@@ -158,6 +167,7 @@ export default {
console.log(err)
}
},
+ // 导出表格
handleExport() { },
// 导出影像或关键图
async handleExportImage(IsKeyImage = false) {
@@ -173,7 +183,7 @@ export default {
}
let res = await getExportSubjectVisitImageList(data)
if (res.IsSuccess) {
-
+ this.downLoad(IsKeyImage, res.Result)
}
} catch (err) {
console.log(err)
@@ -193,6 +203,64 @@ export default {
formatDownloadFile(IsKeyImage = false, row) {
let files = [],
name = `${this.$route.query.researchProgramNo}.zip`;
+ if (!IsKeyImage) {
+ //中心ID/受试者ID/访视名/Study ID_Study Date_Modality/文件
+ row.VisitList.forEach(visit => {
+ if (visit.StudyList && visit.StudyList.length > 0) {
+ visit.StudyList.forEach(study => {
+ if (study.SeriesList && study.SeriesList.length > 0) {
+ study.SeriesList.forEach(serie => {
+ if (serie.InstancePathList && serie.InstancePathList.length > 0) {
+ serie.InstancePathList.forEach(instance => {
+ let instanceArr = instance.Path.split("/")
+ let fileName = instanceArr[instanceArr.length - 1]
+ let obj = {
+ name: `${visit.TrialSiteCode}/${visit.SubjectCode}/${visit.VisitName}/${study.StudyCode}_${study.StudyTime}_${serie.Modality}/${fileName}`,
+ url: this.OSSclientConfig.basePath + instance.Path,
+ }
+ files.push(obj)
+ })
+ }
+ })
+ }
+ })
+ }
+ if (visit.NoneDicomStudyList && visit.NoneDicomStudyList.length > 0) {
+ visit.NoneDicomStudyList.forEach(noneDicomStudy => {
+ if (noneDicomStudy.FileList && noneDicomStudy.FileList.length > 0) {
+ noneDicomStudy.FileList.forEach(file => {
+ let obj = {
+ name: `${visit.TrialSiteCode}/${visit.SubjectCode}/${visit.VisitName}/${noneDicomStudy.StudyCode}_${noneDicomStudy.ImageDate}_${noneDicomStudy.Modality}/${file.FileName}`,
+ url: this.OSSclientConfig.basePath + file.Path,
+ }
+ files.push(obj)
+ })
+ }
+ })
+ }
+ })
+ } else {
+ //项目研究方案号(评估标准)/中心ID/受试者ID/访视名/阅片人角色-裁判选择标记/文件名
+ row.forEach(item => {
+ ['QuestionMarkPictureList', 'TableQuestionRowPictureList'].forEach(key => {
+ if (item[key] && item[key].length > 0) {
+ item[key].forEach(data => {
+ ['PicturePath', 'otherPicturePath'].forEach(imgKey => {
+ if (data[imgKey]) {
+ let arr = data[imgKey].split("/")
+ let fileName = arr[arr.length - 1]
+ let obj = {
+ name: `${item.CriterionName}/${item.TrialSiteCode}/${item.SubjectCode}/${item.VisitName}/${this.$fd('ArmEnum', item.ArmEnum)}_${this.$fd('YesOrNo', item.IsJudgeSelect)}/${fileName}`,
+ url: this.OSSclientConfig.basePath + data[imgKey],
+ }
+ files.push(obj)
+ }
+ })
+ })
+ }
+ })
+ })
+ }
return { files, name }
},
@@ -282,7 +350,7 @@ export default {
.size {
display: inline-block;
- min-width: 50px;
+ min-width: 100px;
}
}
}
diff --git a/src/views/trials/trials-panel/trial-summary/upload-monitor/index.vue b/src/views/trials/trials-panel/trial-summary/upload-monitor/index.vue
index e551c524..661c65a4 100644
--- a/src/views/trials/trials-panel/trial-summary/upload-monitor/index.vue
+++ b/src/views/trials/trials-panel/trial-summary/upload-monitor/index.vue
@@ -85,7 +85,7 @@
- {{ $fd('IsDicom', scope.row.IsDicom) }}
+ {{ $fd('IsDicom', scope.row.IsDicom) }}
From 2b891634198d13e285757ddf949a9dce77a89b33 Mon Sep 17 00:00:00 2001
From: wangxiaoshuang <825034831@qq.com>
Date: Wed, 11 Jun 2025 16:53:22 +0800
Subject: [PATCH 8/9] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E6=96=87=E6=A1=A3?=
=?UTF-8?q?=E5=8E=86=E5=8F=B2=E8=AE=B0=E5=BD=95=E6=96=87=E4=BB=B6=E5=90=8D?=
=?UTF-8?q?=E7=A7=B0=E4=BF=AE=E6=94=B9=E6=96=B9=E5=BC=8F=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../components/historyFileList.vue | 107 +++++++++++-------
1 file changed, 67 insertions(+), 40 deletions(-)
diff --git a/src/views/trials/trials-panel/trial-summary/trial-document/components/historyFileList.vue b/src/views/trials/trials-panel/trial-summary/trial-document/components/historyFileList.vue
index dd315365..27cf342a 100644
--- a/src/views/trials/trials-panel/trial-summary/trial-document/components/historyFileList.vue
+++ b/src/views/trials/trials-panel/trial-summary/trial-document/components/historyFileList.vue
@@ -13,10 +13,22 @@
{{ $t('trials:trialDocument:historyFileList:button:addFile') }}
+ @sort-change="handleSortByColumn" @cell-mouse-enter="handleCellMouseEnter">
+ sortable="custom" width="200px">
+
+
+ {{ scope.row.FileName }}
+
+
+
+
+
+
+
{{ $t('common:button:preview') }}
-
- {{ $t('common:button:edit') }}
-
{{ $t('common:button:delete') }}
@@ -55,25 +64,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-