Merge branch 'main' of https://gitea.frp.extimaging.com/XCKJ/irc_web
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
commit
00e03c782d
|
|
@ -140,7 +140,7 @@
|
|||
</div>
|
||||
</el-tooltip>
|
||||
<!-- 伪彩 -->
|
||||
<colorMap v-show="isFusion" ref="colorMap" :unit="fusionOverlayModality === 'NM' ? 'counts' : 'g/ml'"
|
||||
<colorMap v-show="isFusion" ref="colorMap" :unit="fusionOverlayModality === 'NM' ? '' : 'g/ml'"
|
||||
:modality="fusionOverlayModality" @setColorMap="setColorMap" @voiChange="voiChange" />
|
||||
|
||||
<!-- 截屏 -->
|
||||
|
|
|
|||
|
|
@ -81,7 +81,7 @@
|
|||
{{ markers.left }}
|
||||
</div>
|
||||
<div v-if="presetName" class="color_bar">
|
||||
<canvas id="colorBar_Canvas" />
|
||||
<canvas ref="colorBarCanvas" />
|
||||
</div>
|
||||
<div v-if="index === 4" id="rotateBar" ref="rotateBar" class="rotate_slider_box" @click.stop="clickRotate($event)">
|
||||
<div id="rotateSlider" :style="{left: rotateBarLeft + 'px'}" class="box" @click.stop.prevent="() => {return}" @mousedown.stop="rotateBarMousedown($event)" />
|
||||
|
|
@ -162,6 +162,10 @@ export default {
|
|||
default() {
|
||||
return []
|
||||
}
|
||||
},
|
||||
rgbPresetName: {
|
||||
type: String,
|
||||
default: ''
|
||||
}
|
||||
},
|
||||
data() {
|
||||
|
|
@ -203,6 +207,16 @@ export default {
|
|||
handler(v) {
|
||||
console.log('activeIndex ', v)
|
||||
}
|
||||
},
|
||||
rgbPresetName: {
|
||||
immediate: true,
|
||||
handler(v) {
|
||||
this.presetName = v || ''
|
||||
if (!this.presetName) return
|
||||
this.$nextTick(() => {
|
||||
this.renderColorBar(this.presetName)
|
||||
})
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
|
@ -574,7 +588,8 @@ export default {
|
|||
colorMap = getColormap(presetName)
|
||||
}
|
||||
const rgbPoints = colorMap.RGBPoints
|
||||
const canvas = document.getElementById('colorBar_Canvas')
|
||||
const canvas = this.$refs.colorBarCanvas
|
||||
if (!canvas) return
|
||||
const ctx = canvas.getContext('2d')
|
||||
const canvasWidth = 160
|
||||
const canvasHeight = 5
|
||||
|
|
|
|||
|
|
@ -20,49 +20,49 @@
|
|||
style="width: 135px;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;"
|
||||
>
|
||||
<div>
|
||||
<div style="text-overflow: ellipsis;overflow: hidden;" v-if="!study.StudyName">
|
||||
<div style="text-overflow: ellipsis;overflow: hidden;">
|
||||
<span :title="study.StudyCode">{{ study.StudyCode }}</span>
|
||||
<span style="margin-left: 5px;">{{ study.Modalities }} ({{ study.SeriesCount }})</span>
|
||||
</div>
|
||||
<div style="text-overflow: ellipsis;overflow: hidden;" v-else>
|
||||
<span :title="study.StudyCode">{{ study.StudyCode }}</span>
|
||||
<span v-if="taskInfo && taskInfo.IsShowStudyName" :title="study.StudyName" style="margin: 0 5px">
|
||||
<span v-if="taskInfo && taskInfo.IsShowStudyName && study.StudyName" :title="study.StudyName" style="margin-left: 5px;">
|
||||
{{study.StudyName}}
|
||||
</span>
|
||||
<div>{{ study.Modalities }} ({{ study.SeriesCount }})</div>
|
||||
</div>
|
||||
<div style="text-overflow: ellipsis;overflow: hidden;" :title="study.Description">{{ study.Description }}</div>
|
||||
<div class="patient-info" v-if="['PT、CT', 'CT、PT', 'PET-CT'].includes(study.Modalities)">
|
||||
<el-popover placement="right-start" trigger="hover" popper-class="patient-info-popper">
|
||||
<h4>{{ $t('trials:ptData:title') }}</h4>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:patientSex') }}</label>
|
||||
<span>{{ study.PatientSex }}</span>
|
||||
</div>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:patientWeight') }}</label>
|
||||
<span>{{ study.PatientWeight }}</span>
|
||||
</div>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:totalDose') }}</label>
|
||||
<span>{{ study.RadionuclideTotalDose }}</span>
|
||||
</div>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:halfLife') }}</label>
|
||||
<span>{{ study.RadionuclideHalfLife }}</span>
|
||||
</div>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:injectTime') }}</label>
|
||||
<span>{{ study.RadiopharmaceuticalStartTime }}</span>
|
||||
</div>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:acquisitionTime') }}</label>
|
||||
<span>{{ study.AcquisitionTime }}</span>
|
||||
</div>
|
||||
<i slot="reference" class="el-icon-document"
|
||||
style="font-size: 15px;cursor: pointer;color: #f5f7fa;" />
|
||||
</el-popover>
|
||||
<div style="text-overflow: ellipsis;overflow: hidden;">
|
||||
<span class="study-meta-line" :title="study.Modalities">
|
||||
<span>{{ study.Modalities }} ({{ study.SeriesCount }})</span>
|
||||
<span class="patient-info" v-if="['PT、CT', 'CT、PT', 'PET-CT'].includes(study.Modalities)">
|
||||
<el-popover placement="right-start" trigger="hover" popper-class="patient-info-popper">
|
||||
<h4>{{ $t('trials:ptData:title') }}</h4>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:patientSex') }}</label>
|
||||
<span>{{ study.PatientSex }}</span>
|
||||
</div>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:patientWeight') }}</label>
|
||||
<span>{{ study.PatientWeight }}</span>
|
||||
</div>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:totalDose') }}</label>
|
||||
<span>{{ study.RadionuclideTotalDose }}</span>
|
||||
</div>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:halfLife') }}</label>
|
||||
<span>{{ study.RadionuclideHalfLife }}</span>
|
||||
</div>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:injectTime') }}</label>
|
||||
<span>{{ study.RadiopharmaceuticalStartTime }}</span>
|
||||
</div>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:acquisitionTime') }}</label>
|
||||
<span>{{ study.AcquisitionTime }}</span>
|
||||
</div>
|
||||
<i slot="reference" class="el-icon-document"
|
||||
style="font-size: 15px;cursor: pointer;color: #f5f7fa;" />
|
||||
</el-popover>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
<div v-if="study.Description" class="study-desc-text" :title="study.Description">{{ study.Description }}</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
|
@ -974,6 +974,18 @@ export default {
|
|||
color: #d0d0d0;
|
||||
padding: 2px;
|
||||
}
|
||||
.study-meta-line {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
gap: 6px;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.study-desc-text {
|
||||
min-width: 0;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.ps {
|
||||
overflow-anchor: none;
|
||||
|
|
@ -1069,7 +1081,16 @@ export default {
|
|||
color: #ddd;
|
||||
border-bottom-color:#5a5a5a;
|
||||
padding-left: 5px;
|
||||
height: 40px;
|
||||
min-height: 40px;
|
||||
height: auto;
|
||||
line-height: 20px;
|
||||
align-items: flex-start;
|
||||
padding-top: 6px;
|
||||
padding-bottom: 6px;
|
||||
}
|
||||
.el-collapse-item__arrow{
|
||||
align-self: flex-start;
|
||||
margin-top: 2px;
|
||||
line-height: 20px;
|
||||
}
|
||||
}
|
||||
|
|
@ -1141,8 +1162,9 @@ export default {
|
|||
</style>
|
||||
<style lang="scss">
|
||||
.patient-info {
|
||||
// display: inline-block;
|
||||
text-align: right;
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
line-height: 1;
|
||||
}
|
||||
.patient-info-popper {
|
||||
font-size: 12px;
|
||||
|
|
|
|||
|
|
@ -14,54 +14,47 @@
|
|||
<el-collapse-item :key="`${study.StudyId}`" :name="`${study.StudyId}`" v-if="!study.IsCriticalSequence">
|
||||
<template slot="title">
|
||||
<div v-if="readingTool !== 3 || !study.IsCriticalSequence" class="dicom-desc">
|
||||
<template v-if="taskInfo && taskInfo.IsShowStudyName">
|
||||
<div style="text-overflow: ellipsis;overflow: hidden;">
|
||||
<span :title="study.StudyCode">{{ study.StudyCode }}</span>
|
||||
<span v-if="study.StudyName" :title="study.StudyName" style="margin-left: 5px;">{{ study.StudyName
|
||||
}}</span>
|
||||
<span v-else :title="study.Modalities" style="margin-left: 5px;">{{ `${study.Modalities}
|
||||
(${study.SeriesCount})` }}</span>
|
||||
</div>
|
||||
<div v-if="study.StudyName" style="text-overflow: ellipsis;overflow: hidden;">
|
||||
<span :title="study.Modalities">{{ `${study.Modalities} (${study.SeriesCount})` }}</span>
|
||||
</div>
|
||||
</template>
|
||||
<template v-else-if="taskInfo && !taskInfo.IsShowStudyName">
|
||||
<div style="text-overflow: ellipsis;overflow: hidden;">
|
||||
<span :title="study.StudyCode">{{ study.StudyCode }}</span>
|
||||
<span :title="study.Modalities">{{ `${study.Modalities} (${study.SeriesCount})` }}</span>
|
||||
</div>
|
||||
</template>
|
||||
<div class="patient-info" v-if="['PT、CT', 'CT、PT', 'PET-CT'].includes(study.Modalities)">
|
||||
<el-popover placement="right-start" trigger="hover" popper-class="patient-info-popper">
|
||||
<h4>{{ $t('trials:ptData:title') }}</h4>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:patientSex') }}</label>
|
||||
<span>{{ study.PatientSex }}</span>
|
||||
</div>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:patientWeight') }}</label>
|
||||
<span>{{ study.PatientWeight }}</span>
|
||||
</div>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:totalDose') }}</label>
|
||||
<span>{{ study.RadionuclideTotalDose }}</span>
|
||||
</div>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:halfLife') }}</label>
|
||||
<span>{{ study.RadionuclideHalfLife }}</span>
|
||||
</div>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:injectTime') }}</label>
|
||||
<span>{{ study.RadiopharmaceuticalStartTime }}</span>
|
||||
</div>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:acquisitionTime') }}</label>
|
||||
<span>{{ study.AcquisitionTime }}</span>
|
||||
</div>
|
||||
<i slot="reference" class="el-icon-document"
|
||||
style="font-size: 15px;cursor: pointer;color: #f5f7fa;" />
|
||||
</el-popover>
|
||||
<div style="text-overflow: ellipsis;overflow: hidden;">
|
||||
<span :title="study.StudyCode">{{ study.StudyCode }}</span>
|
||||
<span v-if="taskInfo && taskInfo.IsShowStudyName && study.StudyName" :title="study.StudyName" style="margin-left: 5px;">
|
||||
{{ study.StudyName }}
|
||||
</span>
|
||||
</div>
|
||||
<div style="text-overflow: ellipsis;overflow: hidden;">
|
||||
<span class="study-meta-line" :title="study.Modalities">
|
||||
<span>{{ `${study.Modalities} (${study.SeriesCount})` }}</span>
|
||||
<span class="patient-info" v-if="['PT、CT', 'CT、PT', 'PET-CT'].includes(study.Modalities)">
|
||||
<el-popover placement="right-start" trigger="hover" popper-class="patient-info-popper">
|
||||
<h4>{{ $t('trials:ptData:title') }}</h4>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:patientSex') }}</label>
|
||||
<span>{{ study.PatientSex }}</span>
|
||||
</div>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:patientWeight') }}</label>
|
||||
<span>{{ study.PatientWeight }}</span>
|
||||
</div>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:totalDose') }}</label>
|
||||
<span>{{ study.RadionuclideTotalDose }}</span>
|
||||
</div>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:halfLife') }}</label>
|
||||
<span>{{ study.RadionuclideHalfLife }}</span>
|
||||
</div>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:injectTime') }}</label>
|
||||
<span>{{ study.RadiopharmaceuticalStartTime }}</span>
|
||||
</div>
|
||||
<div class="patient-info-row">
|
||||
<label>{{ $t('trials:ptData:label:acquisitionTime') }}</label>
|
||||
<span>{{ study.AcquisitionTime }}</span>
|
||||
</div>
|
||||
<i slot="reference" class="el-icon-document"
|
||||
style="font-size: 15px;cursor: pointer;color: #f5f7fa;" />
|
||||
</el-popover>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
|
@ -265,10 +258,10 @@ export default {
|
|||
}
|
||||
</script>
|
||||
<style lang="scss">
|
||||
.patient-info {
|
||||
// display: inline-block;
|
||||
text-align: right;
|
||||
}
|
||||
// .patient-info {
|
||||
// // display: inline-block;
|
||||
// // text-align: right;
|
||||
// }
|
||||
|
||||
.patient-info-popper {
|
||||
font-size: 12px;
|
||||
|
|
@ -343,6 +336,17 @@ export default {
|
|||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
.study-meta-line {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
gap: 6px;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.patient-info {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
.ps {
|
||||
flex: 1;
|
||||
|
|
@ -427,8 +431,12 @@ export default {
|
|||
color: #ddd;
|
||||
border-bottom-color: #5a5a5a;
|
||||
padding-left: 5px;
|
||||
// height: 50px;
|
||||
min-height: 40px;
|
||||
height: auto;
|
||||
line-height: 20px;
|
||||
align-items: flex-start;
|
||||
padding-top: 6px;
|
||||
padding-bottom: 6px;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -138,7 +138,7 @@ export default {
|
|||
addReadModule(this.form).then(res => {
|
||||
this.btnLoading = false
|
||||
this.$emit('getList')
|
||||
this.$emit('close', {visitStageId: this.form.VisitStageId})
|
||||
this.$emit('close', {visitStageId: this.form.VisitStageId, expirationVisitNum: this.form.ExpirationVisitNum})
|
||||
this.form.Name = null
|
||||
this.form.VisitStageId = null
|
||||
this.$message.success(this.$t('common:message:savedSuccessfully'))
|
||||
|
|
|
|||
|
|
@ -540,6 +540,7 @@ export default {
|
|||
if (res === 'confirm') {
|
||||
this.param.ReadingSetType = 1
|
||||
this.param.VisitStageId = obj.visitStageId
|
||||
this.param.ExpirationVisitNum = obj.expirationVisitNum
|
||||
this.subjectPeriod = { visible: true, title: this.$t('trials:readingPeriod:dialogTitle:addSubjectTumorPR') }
|
||||
} else {
|
||||
this.subjectPeriod.visible = true
|
||||
|
|
|
|||
Loading…
Reference in New Issue