pt临床数据弹窗取消点击modal关闭Dialog
continuous-integration/drone/push Build is passing Details

main
caiyiling 2026-05-07 13:52:28 +08:00
parent af97e2b4ed
commit 09e9c62f3c
8 changed files with 45 additions and 12 deletions

View File

@ -1223,7 +1223,7 @@ export default {
} else if (toolName === 'Probe' && (parseInt(localStorage.getItem('CriterionType')) === 21)) { } else if (toolName === 'Probe' && (parseInt(localStorage.getItem('CriterionType')) === 21)) {
cornerstoneTools.addToolForElement(element, ProbeTool, { configuration: { fixedRadius: 5, handleRadius: true, drawHandlesOnHover: true, hideHandlesIfMoving: true, digits: this.digitPlaces } }) cornerstoneTools.addToolForElement(element, ProbeTool, { configuration: { fixedRadius: 5, handleRadius: true, drawHandlesOnHover: true, hideHandlesIfMoving: true, digits: this.digitPlaces } })
} else if (toolName === 'Probe' && parseInt(localStorage.getItem('CriterionType')) === 22) { } else if (toolName === 'Probe' && parseInt(localStorage.getItem('CriterionType')) === 22) {
cornerstoneTools.addToolForElement(element, ProbeTool, { configuration: { radius: 5, unit: 'mm', handleRadius: true, drawHandlesOnHover: true, hideHandlesIfMoving: true, digits: this.digitPlaces } }) cornerstoneTools.addToolForElement(element, ProbeTool, { configuration: { fixedRadius: 5, unit: 'mm', handleRadius: true, drawHandlesOnHover: true, hideHandlesIfMoving: true, digits: this.digitPlaces } })
} else { } else {
cornerstoneTools.addToolForElement(element, apiTool) cornerstoneTools.addToolForElement(element, apiTool)
} }

View File

@ -385,13 +385,11 @@ export default {
}, },
setMeasureData(measureData, isInit = false) { setMeasureData(measureData, isInit = false) {
return new Promise(resolve => { return new Promise(resolve => {
console.log('setMeasureData', measureData)
if (!measureData || (measureData && measureData.tableQuestionId !== this.activeQuestionId)) { if (!measureData || (measureData && measureData.tableQuestionId !== this.activeQuestionId)) {
resolve() resolve()
} }
var data = {} var data = {}
// //
console.log('setMeasureData', measureData)
if (!measureData.data.remark) { if (!measureData.data.remark) {
// //
measureData.data.remark = this.getLesionName(this.orderMark, this.activeQuestionMark) measureData.data.remark = this.getLesionName(this.orderMark, this.activeQuestionMark)

View File

@ -432,7 +432,6 @@ export default {
} }
}, },
modifyMeasuredData(measureObj) { modifyMeasuredData(measureObj) {
console.log('modifyMeasuredData')
if (measureObj.questionInfo) { if (measureObj.questionInfo) {
this.activeItem.activeCollapseId = measureObj.questionInfo.QuestionId this.activeItem.activeCollapseId = measureObj.questionInfo.QuestionId
this.activeItem.activeRowIndex = String(measureObj.questionInfo.RowIndex) this.activeItem.activeRowIndex = String(measureObj.questionInfo.RowIndex)
@ -443,7 +442,6 @@ export default {
}, },
// //
setMeasuredData(measureData) { setMeasuredData(measureData) {
console.log('setMeasuredData')
if (this.activeItem.activeCollapseId) { if (this.activeItem.activeCollapseId) {
// //
this.$nextTick(() => { this.$nextTick(() => {

View File

@ -1,4 +1,6 @@
import * as cornerstoneTools from 'cornerstone-tools' import * as cornerstoneTools from 'cornerstone-tools'
const EVENTS = cornerstoneTools.EVENTS
const triggerEvent = cornerstoneTools.import('util/triggerEvent')
const external = cornerstoneTools.external const external = cornerstoneTools.external
// State // State
const getToolState = cornerstoneTools.getToolState const getToolState = cornerstoneTools.getToolState
@ -87,7 +89,7 @@ export default class ProbeTool extends cornerstoneTools.ProbeTool {
return { return {
visible: true, visible: true,
active: true, active: false,
color: undefined, color: undefined,
invalidated: true, invalidated: true,
handles: { handles: {
@ -100,8 +102,8 @@ export default class ProbeTool extends cornerstoneTools.ProbeTool {
end: { end: {
x: eventData.currentPoints.image.x, x: eventData.currentPoints.image.x,
y: eventData.currentPoints.image.y, y: eventData.currentPoints.image.y,
highlight: true, highlight: false,
active: true, active: false,
radius: 0 radius: 0
}, },
// textBox: { // textBox: {
@ -125,6 +127,41 @@ export default class ProbeTool extends cornerstoneTools.ProbeTool {
}; };
} }
addNewMeasurement(evt, interactionType) {
const eventData = evt.detail
if (!eventData || !eventData.currentPoints || !eventData.currentPoints.image) {
return
}
const { element, image } = eventData
const measurementData = this.createNewMeasurement(eventData)
if (!measurementData) {
return
}
// Click-to-place and finish immediately; avoid default drag listeners.
measurementData.active = false
if (measurementData.handles && measurementData.handles.end) {
measurementData.handles.end.active = false
measurementData.handles.end.highlight = false
}
cornerstoneTools.addToolState(element, this.name, measurementData)
if (!measurementData.cachedStats && image) {
this.updateCachedStats(image, element, measurementData)
}
external.cornerstone.updateImage(element)
triggerEvent(element, EVENTS.MEASUREMENT_COMPLETED, {
toolName: this.name,
element,
measurementData
})
}
/** /**
* *
* *

View File

@ -150,7 +150,7 @@
</div> </div>
</el-dialog> </el-dialog>
<!--pet-ct临床数据上传--> <!--pet-ct临床数据上传-->
<el-dialog v-if="petVisible" :show-close="true" :visible.sync="petVisible" append-to-body> <el-dialog v-if="petVisible" :close-on-click-modal="false" :show-close="true" :visible.sync="petVisible" append-to-body>
<uploadPetClinicalData :subject-visit-id="data.Id" :data="data" :studyData="rowData" :allow-add-or-edit="(data.SubmitState * 1 < 2 || (data.SubmitState === 2 && data.IsQCConfirmedReupload)) && hasPermi(['trials:trials-panel:visit:crc-upload:edit'])" /> <uploadPetClinicalData :subject-visit-id="data.Id" :data="data" :studyData="rowData" :allow-add-or-edit="(data.SubmitState * 1 < 2 || (data.SubmitState === 2 && data.IsQCConfirmedReupload)) && hasPermi(['trials:trials-panel:visit:crc-upload:edit'])" />
</el-dialog> </el-dialog>
</div> </div>

View File

@ -423,7 +423,7 @@
<DicomPreview :uid="uid" :studyList="uploadQueues" /> <DicomPreview :uid="uid" :studyList="uploadQueues" />
</el-dialog> </el-dialog>
<!--pet-ct临床数据上传--> <!--pet-ct临床数据上传-->
<el-dialog v-if="petVisible" :show-close="true" :visible.sync="petVisible" append-to-body> <el-dialog v-if="petVisible" :show-close="true" :close-on-click-modal="false" :visible.sync="petVisible" append-to-body>
<uploadPetClinicalData :subject-visit-id="data.Id" :data="data" :studyData="studyData" :allow-add-or-edit="true" <uploadPetClinicalData :subject-visit-id="data.Id" :data="data" :studyData="studyData" :allow-add-or-edit="true"
@getStudyInfo="getStudyInfo" /> @getStudyInfo="getStudyInfo" />
</el-dialog> </el-dialog>

View File

@ -78,7 +78,7 @@
</el-table-column> </el-table-column>
</el-table> </el-table>
<!--pet-ct临床数据预览--> <!--pet-ct临床数据预览-->
<el-dialog v-if="petVisible" :show-close="true" :visible.sync="petVisible" append-to-body> <el-dialog v-if="petVisible" :close-on-click-modal="false" :show-close="true" :visible.sync="petVisible" append-to-body>
<uploadPetClinicalData :subject-visit-id="data.Id" :data="data" :studyData="rowData" :allow-add-or-edit="false" /> <uploadPetClinicalData :subject-visit-id="data.Id" :data="data" :studyData="rowData" :allow-add-or-edit="false" />
</el-dialog> </el-dialog>
</div> </div>

View File

@ -920,7 +920,7 @@
<!-- </el-button>--> <!-- </el-button>-->
</div> </div>
<!--petct临床数据预览--> <!--petct临床数据预览-->
<el-dialog v-if="petVisible" :show-close="true" :visible.sync="petVisible" append-to-body> <el-dialog v-if="petVisible" :close-on-click-modal="false" :show-close="true" :visible.sync="petVisible" append-to-body>
<uploadPetClinicalData :subject-visit-id="data.Id" :data="data" :studyData="rowData" :allow-add-or-edit="false" :isPatientFormAllowEdit="!isAudit || SecondReviewState > 0 || isAuditToEdit" :isAudit="isAuditToEdit" @close="petVisible = false"/> <uploadPetClinicalData :subject-visit-id="data.Id" :data="data" :studyData="rowData" :allow-add-or-edit="false" :isPatientFormAllowEdit="!isAudit || SecondReviewState > 0 || isAuditToEdit" :isAudit="isAuditToEdit" @close="petVisible = false"/>
</el-dialog> </el-dialog>
</div> </div>