访视列表查看当前检查影像

main
caiyiling 2024-04-16 10:29:28 +08:00
parent 6edca604b2
commit 23f2ea7a3f
5 changed files with 60 additions and 10 deletions

View File

@ -3540,4 +3540,12 @@ export function addOrUpdateSubjectHir(data) {
method: 'post',
data
})
}
// 获取患者序列信息
export function getPatientSeriesList(scpStudyId) {
return request({
url: `/Patient/getPatientSeriesList?scpStudyId=${scpStudyId}`,
method: 'get'
})
}

View File

@ -393,7 +393,7 @@ export default {
this.customWwc = { visible: false, title: this.$t('DicomViewer:data:customWwc') }
this.rotateList[0] = '1'
this.colorList[0] = ''
this.wwwcList[0] = '1'
this.wwwcList[0] = '-1'
this.colormapsList = cornerstone.colors.getColormapsList()
this.currentDicomCanvas = this.$refs['dicomCanvas0']
},

View File

@ -110,8 +110,7 @@ import * as cornerstone from 'cornerstone-core'
import * as cornerstoneWADOImageLoader from 'cornerstone-wado-image-loader'
import dicomViewer from '@/components/Dicom/DicomViewer'
import { getStudyInfo, getSeriesList } from '@/api/reading'
import { getInstanceList, setSeriesStatus } from '@/api/trials'
import { getInstanceList, setSeriesStatus, getPatientSeriesList } from '@/api/trials'
import requestPoolManager from '@/utils/request-pool'
import store from '@/store'
import { changeURLStatic } from '@/utils/history.js'
@ -175,7 +174,9 @@ export default {
this.loadStudy()
} else if (this.type === 'Share') {
this.loadStudy()
}
} else if (this.type === 'Patient') {
this.loadPatientStudy()
}
},
beforeDestroy() {
requestPoolManager.stopTaskTimer()
@ -245,6 +246,47 @@ export default {
}
})
},
async loadPatientStudy() {
try {
let res = await getPatientSeriesList(this.studyId);
if (res.IsSuccess && res.Result.length > 0) {
console.log(res.Result)
this.modality = res.Result[0].Modality
this.seriesCount = res.Result.length
this.description = res.Result[0].Description
this.seriesList = []
res.Result.map(item=>{
var imageIds = []
item.InstancePathList.forEach(instance => {
imageIds.push(`wadouri:${localStorage.getItem('location') !== 'USA' ? this.OSSclientConfig.basePath : this.OSSclientConfig.basePath}${instance}`)
})
this.seriesList.push({
imageIds: imageIds,
seriesId: item.SeriesInstanceUid,
seriesUid: item.SeriesInstanceUid,
seriesNumber:item.SeriesNumber,
sliceThickness: item.SliceThickness,
modality: this.modality,
description: this.description,
previewImageUrl: item.ImageResizePath ? this.OSSclientConfig.basePath + item.ImageResizePath : item.ImageResizePath,
instanceCount: item.InstanceCount,
prefetchInstanceCount: 0,
loadStatus: false,
imageloadedArr: []
})
})
if (this.seriesList.length > 0) {
this.$nextTick(() => {
this.loadAllImages()
this.$refs.dicomViewer.loadImageStack(this.seriesList[0])
this.firstInstanceId = this.seriesList[0].imageIds[0]
})
}
}
} catch (err) {
console.log(err);
}
},
initSeries() {
var scope = this
this.studyCode = this.$router.currentRoute.query.studyCode
@ -259,7 +301,7 @@ export default {
getInstanceList(seriesId).then(res => {
if (!res.Result || (res.Result && res.Result.length === 0)) return
var seriesInstanceUid = res.Result[0].SeriesInstanceUid
var sliceLocation = res.Result[0].SliceLocation
var sliceThickness = res.Result[0].SliceThickness
var isReading = res.Result[0].IsReading
var isDeleted = res.Result[0].IsDeleted
var seriesList = []
@ -275,7 +317,7 @@ export default {
seriesId: seriesId,
seriesUid: seriesInstanceUid,
seriesNumber: seriesNumber,
sliceThickness: sliceLocation,
sliceThickness: sliceThickness,
modality: this.modality,
description: this.description,
isReading,

View File

@ -2,7 +2,7 @@
<div class="currentStudy">
<div class="functions" style="text-align: right">
<!-- 预览 -->
<el-button
<!-- <el-button
type="primary"
size="small"
:disabled="list.length === 0"
@ -10,7 +10,7 @@
@click="handlePreviewAllFiles"
>
{{ $t("trials:uploadedDicoms:action:preview") }}
</el-button>
</el-button> -->
</div>
<!--当前检查--->
<div class="topTable">
@ -140,7 +140,7 @@ export default {
handleViewStudy(row) {
var token = getToken();
const routeData = this.$router.resolve({
path: `/showdicom?studyId=${row.StudyId}&TokenKey=${token}&type=Study`,
path: `/showdicom?studyId=${row.SCPStudyId}&TokenKey=${token}&type=Patient`,
});
var newWindow = window.open(routeData.href, "_blank");
this.$emit("setOpenWindow", newWindow);

View File

@ -158,7 +158,7 @@ export default {
handlePreviewAllFiles() {
var tokenKey = getToken();
const routeData = this.$router.resolve({
path: `/showvisitdicoms?trialId=${this.data.TrialId}&visitInfo=${this.data.VisitName}(${this.data.VisitNum})&subjectVisitId=${this.data.Id}&TokenKey=${tokenKey}`,
path: `/showvisitdicoms?trialId=${this.data.TrialId}&visitInfo=${this.data.VisitName}(${this.data.VisitNum})&subjectVisitId=${this.data.SubjectVisitId}&TokenKey=${tokenKey}`,
});
var newWindow = window.open(routeData.href, "_blank");
this.$emit("setOpenWindow", newWindow);