自定义标准阅片bug修复

uat_us
caiyiling 2024-07-02 14:27:47 +08:00
parent a9def7e6ae
commit 5ccaf1acc1
6 changed files with 130 additions and 48 deletions

View File

@ -493,29 +493,32 @@ const actions = {
}) })
}, },
removeCustomizeMeasuredData({ state }, obj) { removeCustomizeMeasuredData({ state }, obj) {
return new Promise(async resolve => { return new Promise(async resolve => {
var index = state.visitTaskList.findIndex(i => i.VisitTaskId === obj.visitTaskId) var index = state.visitTaskList.findIndex(i => i.VisitTaskId === obj.visitTaskId)
var measureData = state.visitTaskList[index].MeasureData var measureData = state.visitTaskList[index].MeasureData
console.log('removeCustomizeMeasuredData',obj, state.visitTaskList[index].MeasureData)
// var uuid = obj.measureData.data.uuid // var uuid = obj.measureData.data.uuid
// var idx = measureData.findIndex(item => item.MeasureData && item.MeasureData.data && item.MeasureData.data.uuid === uuid) // var idx = measureData.findIndex(item => item.MeasureData && item.MeasureData.data && item.MeasureData.data.uuid === uuid)
// console.log(obj, measureData) // console.log(obj, measureData)
var idx = measureData.findIndex(item => item.Id === obj.questionInfo.Id) if (obj.questionInfo.Id) {
console.log('idx', idx) var idx = measureData.findIndex(item => item.Id === obj.questionInfo.Id)
if (idx > -1) { console.log('idx', idx)
if (measureData[idx].FristAddTaskId) { if (idx > -1) {
measureData[idx].MeasureData = '' if (measureData[idx].FristAddTaskId) {
console.log('清除标记成功', idx) measureData[idx].MeasureData = ''
} else { console.log('清除标记成功', idx)
measureData.splice(idx, 1) } else {
console.log('移除标记成功', idx) measureData.splice(idx, 1)
console.log('移除标记成功', idx)
}
if (obj.questionInfo.Id && state.currentReadingTaskState < 2) {
await deleteCustomTag(obj.questionInfo.Id)
}
state.visitTaskList[index].MeasureData = measureData
} }
if (obj.questionInfo.Id) {
await deleteCustomTag(obj.questionInfo.Id)
}
state.visitTaskList[index].MeasureData = measureData
} else if (obj.orderMarkName) { } else if (obj.orderMarkName) {
const i = measureData.findIndex(item => item.QuestionId === obj.questionId && item.OrderMarkName === obj.orderMarkName) const i = measureData.findIndex(item => item.MeasureData.data.remark === obj.orderMarkName)
if (i > -1) { if (i > -1) {
if (measureData[i].FristAddTaskId) { if (measureData[i].FristAddTaskId) {
measureData[i].MeasureData = '' measureData[i].MeasureData = ''
@ -525,7 +528,7 @@ const actions = {
console.log('移除标记成功', i) console.log('移除标记成功', i)
} }
} }
if (obj.questionInfo.Id) { if (obj.questionInfo.Id && state.currentReadingTaskState < 2) {
await deleteCustomTag(obj.questionInfo.Id) await deleteCustomTag(obj.questionInfo.Id)
} }
state.visitTaskList[index].MeasureData = measureData state.visitTaskList[index].MeasureData = measureData
@ -609,6 +612,7 @@ const actions = {
var index = state.visitTaskList.findIndex(i => i.VisitTaskId === obj.visitTaskId) var index = state.visitTaskList.findIndex(i => i.VisitTaskId === obj.visitTaskId)
var measureData = state.visitTaskList[index].MeasureData var measureData = state.visitTaskList[index].MeasureData
console.log('addOrUpdateNonTargetMeasuredData') console.log('addOrUpdateNonTargetMeasuredData')
// item.MeasureData.data.remark === obj.orderMarkName
var idx = measureData.findIndex(item => item.QuestionId === obj.data.QuestionId && item.OrderMarkName === obj.data.OrderMarkName) var idx = measureData.findIndex(item => item.QuestionId === obj.data.QuestionId && item.OrderMarkName === obj.data.OrderMarkName)
if (idx > -1) { if (idx > -1) {
for (const k in state.visitTaskList[index].MeasureData[idx]) { for (const k in state.visitTaskList[index].MeasureData[idx]) {
@ -651,29 +655,39 @@ const actions = {
var measureData = state.visitTaskList[index].MeasureData var measureData = state.visitTaskList[index].MeasureData
console.log(measureData, obj) console.log(measureData, obj)
// var idx = measureData.findIndex(item => item.MeasureData.uuid === obj.data.MeasureData.data.uuid) // var idx = measureData.findIndex(item => item.MeasureData.uuid === obj.data.MeasureData.data.uuid)
if (!obj.questionInfo) { // if (!obj.questionInfo) {
state.visitTaskList[index].MeasureData.push({ // state.visitTaskList[index].MeasureData.push({
MeasureData: obj, // MeasureData: obj,
SeriesId: obj.seriesId, // SeriesId: obj.seriesId,
StudyId: obj.studyId, // StudyId: obj.studyId,
InstanceId: obj.instanceId, // InstanceId: obj.instanceId,
Id: obj.Id // Id: obj.Id
}) // })
console.log('新增标记成功') // console.log('新增标记成功')
// sessionStorage.setItem('visitTaskList', state.visitTaskList.length > 0 ? JSON.stringify(state.visitTaskList) : '') // resolve()
resolve() // }
} var idx = measureData.findIndex(item => item.MeasureData.data.remark === obj.measureData.data.remark)
var idx = measureData.findIndex(item => item.Id === obj.questionInfo.Id)
if (idx > -1) { if (idx > -1) {
for (const k in state.visitTaskList[index].MeasureData[idx]) { // state.visitTaskList[index].MeasureData[idx].InstanceId = obj.instanceId
if (k !== 'Id' && obj.MeasureData.data[k]) { state.visitTaskList[index].MeasureData[idx].MeasureData = obj.measureData
state.visitTaskList[index].MeasureData[idx][k] = obj.MeasureData.data[k] // state.visitTaskList[index].MeasureData[idx].SeriesId = obj.seriesId
} // state.visitTaskList[index].MeasureData[idx].StudyId = obj.studyId
} // for (const k in state.visitTaskList[index].MeasureData[idx]) {
// if (k !== 'Id' && obj.MeasureData.data[k]) {
// state.visitTaskList[index].MeasureData[idx][k] = obj.MeasureData.data[k]
// }
// }
// state.visitTaskList[index].MeasureData[idx].MeasureData = obj.data.MeasureData // state.visitTaskList[index].MeasureData[idx].MeasureData = obj.data.MeasureData
console.log('更新标记成功', idx) console.log('更新标记成功', idx)
} else { } else {
state.visitTaskList[index].MeasureData.push(obj.MeasureData.data) // state.visitTaskList[index].MeasureData.push(obj.MeasureData.data)
state.visitTaskList[index].MeasureData.push({
MeasureData: obj.measureData ,
SeriesId: obj.measureData.seriesId,
StudyId: obj.measureData.studyId,
InstanceId: obj.measureData.instanceId,
Id: obj.id
})
console.log('新增标记成功') console.log('新增标记成功')
} }
// sessionStorage.setItem('visitTaskList', state.visitTaskList.length > 0 ? JSON.stringify(state.visitTaskList) : '') // sessionStorage.setItem('visitTaskList', state.visitTaskList.length > 0 ? JSON.stringify(state.visitTaskList) : '')

View File

@ -219,7 +219,8 @@ export default {
srInfo: {}, srInfo: {},
digitPlaces: 2, digitPlaces: 2,
visitTaskIdx: -1, visitTaskIdx: -1,
currentLoadIns: [] currentLoadIns: [],
keySeriesLoad: []
} }
}, },
@ -911,6 +912,31 @@ export default {
const studyIndex = parseInt(params.idx.split('|')[0]) const studyIndex = parseInt(params.idx.split('|')[0])
const seriesIndex = parseInt(params.idx.split('|')[1]) const seriesIndex = parseInt(params.idx.split('|')[1])
//
const seriesId = this.studyList[studyIndex].SeriesList[seriesIndex].seriesId
const i = this.keySeriesLoad.findIndex(i => i.seriesId === seriesId)
if (this.studyList[studyIndex].IsCriticalSequence && percentComplete >= 100) {
//
if (i === -1) {
this.keySeriesLoad.push({ seriesId: seriesId, loadCount: 1, imageIds: [imageId] })
} else {
++this.keySeriesLoad[i].loadCount
this.keySeriesLoad[i].imageIds.push(imageId)
}
} else if (this.studyList[studyIndex].SeriesList[seriesIndex].IsBeMark && percentComplete >= 100) {
//
if (i === -1) {
this.keySeriesLoad.push({ seriesId: seriesId, loadCount: 1, imageIds: [imageId] })
} else {
++this.keySeriesLoad[i].loadCount
this.keySeriesLoad[i].imageIds.push(imageId)
}
}
if (!this.studyList[studyIndex].IsCriticalSequence && i > -1) {
this.studyList[studyIndex].SeriesList[seriesIndex].prefetchInstanceCount = this.studyList[studyIndex].SeriesList[seriesIndex].prefetchInstanceCount + 100 * this.keySeriesLoad[i].loadCount
this.studyList[studyIndex].SeriesList[seriesIndex].imageloadedArr = [this.studyList[studyIndex].SeriesList[seriesIndex].imageloadedArr, this.keySeriesLoad[i].imageIds]
this.keySeriesLoad.splice(i, 1)
}
var prefetchInstanceCount = this.studyList[studyIndex].SeriesList[seriesIndex].prefetchInstanceCount var prefetchInstanceCount = this.studyList[studyIndex].SeriesList[seriesIndex].prefetchInstanceCount
var instanceCount = this.studyList[studyIndex].SeriesList[seriesIndex].instanceCount var instanceCount = this.studyList[studyIndex].SeriesList[seriesIndex].instanceCount
if (this.studyList[studyIndex].SeriesList[seriesIndex].imageloadedArr.indexOf(imageId) < 0) { if (this.studyList[studyIndex].SeriesList[seriesIndex].imageloadedArr.indexOf(imageId) < 0) {

View File

@ -559,7 +559,11 @@ export default {
mouseDown(e) { mouseDown(e) {
this.image = e.detail.image this.image = e.detail.image
var pointNearTool = this.pointNearTool(e) var pointNearTool = this.pointNearTool(e)
if (this.activeToolName === 'Length' || this.activeToolName === 'Bidirectional') { if (pointNearTool) {
e.stopImmediatePropagation()
e.stopPropagation()
e.preventDefault()
} else if (this.activeToolName === 'Length' || this.activeToolName === 'Bidirectional') {
if (!e.detail.image.columnPixelSpacing || !e.detail.image.rowPixelSpacing) { if (!e.detail.image.columnPixelSpacing || !e.detail.image.rowPixelSpacing) {
// '' // ''
this.$confirm(this.$t('trials:reading:warnning:msg56'), '', { this.$confirm(this.$t('trials:reading:warnning:msg56'), '', {
@ -572,10 +576,6 @@ export default {
e.stopPropagation() e.stopPropagation()
e.preventDefault() e.preventDefault()
} }
} else if (pointNearTool) {
e.stopImmediatePropagation()
e.stopPropagation()
e.preventDefault()
} }
}, },
pointNearTool(e) { pointNearTool(e) {
@ -606,6 +606,7 @@ export default {
arr.push(i.MeasureData.data.remark) arr.push(i.MeasureData.data.remark)
} }
}) })
console.log(arr)
return arr return arr
}, },
getRGBPixels(element, x, y, width, height) { getRGBPixels(element, x, y, width, height) {
@ -994,7 +995,8 @@ export default {
var markName = this.measureData[idx].MeasureData.data.remark var markName = this.measureData[idx].MeasureData.data.remark
if (this.activeToolName === 'Eraser' && this.disabledMarks.indexOf(markName) === -1) { if (this.activeToolName === 'Eraser' && this.disabledMarks.indexOf(markName) === -1) {
const questionInfo = this.measureData[idx] const questionInfo = this.measureData[idx]
this.$emit('moveMeasureData', { measureData, questionInfo }) measureData.orderMarkName = markName
this.$emit('moveMeasureData', { measureData, questionInfo, orderMarkName: markName})
} }
if ((this.disabledMarks.indexOf(markName) === -1 || !this.disabledMarks) && this.activeToolName !== 'Eraser') { if ((this.disabledMarks.indexOf(markName) === -1 || !this.disabledMarks) && this.activeToolName !== 'Eraser') {
const questionInfo = this.measureData[idx] const questionInfo = this.measureData[idx]

View File

@ -1363,7 +1363,8 @@ export default {
this.fps = 15 this.fps = 15
this.canvasObj[this.currentDicomCanvasIndex] = dicomSeries this.canvasObj[this.currentDicomCanvasIndex] = dicomSeries
if (this.activeTool) { if (this.activeTool) {
if (dicomSeries.isCurrentTask && dicomSeries.readingTaskState < 2) { // dicomSeries.isCurrentTask && dicomSeries.readingTaskState < 2
if (dicomSeries.isCurrentTask) {
this.$nextTick(() => { this.$nextTick(() => {
this.$refs[ this.$refs[
`dicomCanvas${this.currentDicomCanvasIndex}` `dicomCanvas${this.currentDicomCanvasIndex}`

View File

@ -221,7 +221,7 @@ export default {
measureData.measureData.pictureBaseStr = '' measureData.measureData.pictureBaseStr = ''
if (this.readingTaskState >=2) { if (this.readingTaskState >=2) {
this.measuredDataVisible = false this.measuredDataVisible = false
store.dispatch('reading/addCustomizeMeasuredData', { visitTaskId: this.visitTaskId, ...this.measureData }) store.dispatch('reading/addCustomizeMeasuredData', { visitTaskId: this.visitTaskId, measureData: measureData.measureData })
}else{ }else{
let params = JSON.parse(JSON.stringify(measureData)) let params = JSON.parse(JSON.stringify(measureData))
params.measureData = JSON.stringify(measureData.measureData) params.measureData = JSON.stringify(measureData.measureData)
@ -244,16 +244,24 @@ export default {
}, },
handleMeasuredDataCancel() { handleMeasuredDataCancel() {
this.measuredDataVisible = false this.measuredDataVisible = false
DicomEvent.$emit('updateImage')
}, },
handleMeasuredDataSave() { handleMeasuredDataSave() {
this.$refs.measuredDataForm.validate(valid => { this.$refs.measuredDataForm.validate(valid => {
if (!valid) return if (!valid) return
//
let isValid = this.validateRemarkName(this.form.measuredDataName)
if (!isValid) {
// ''
this.$message.error(this.$t('trials:customReading:error:validMarkName'))
return
}
this.measureData.data.remark = this.form.measuredDataName this.measureData.data.remark = this.form.measuredDataName
this.measureData.pictureBaseStr = '' this.measureData.pictureBaseStr = ''
if (this.readingTaskState >=2) { if (this.readingTaskState >=2) {
this.measuredDataVisible = false this.measuredDataVisible = false
this.form.measuredDataName = '' this.form.measuredDataName = ''
store.dispatch('reading/addCustomizeMeasuredData', { visitTaskId: this.visitTaskId, ...this.measureData }) store.dispatch('reading/addCustomizeMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.measureData })
DicomEvent.$emit('updateImage') DicomEvent.$emit('updateImage')
this.$message.success(this.$t('common:message:savedSuccessfully')) this.$message.success(this.$t('common:message:savedSuccessfully'))
} else { } else {
@ -262,8 +270,7 @@ export default {
submitCustomTag(params).then(async (res) => { submitCustomTag(params).then(async (res) => {
this.measuredDataVisible = false this.measuredDataVisible = false
this.form.measuredDataName = '' this.form.measuredDataName = ''
this.measureData.Id = res.Result await store.dispatch('reading/addCustomizeMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.measureData, id: res.Result })
await store.dispatch('reading/addCustomizeMeasuredData', { visitTaskId: this.visitTaskId, ...this.measureData })
await store.dispatch('reading/getCustomizeMeasuredData', this.visitTaskId) await store.dispatch('reading/getCustomizeMeasuredData', this.visitTaskId)
DicomEvent.$emit('updateImage') DicomEvent.$emit('updateImage')
this.$message.success(this.$t('common:message:savedSuccessfully')) this.$message.success(this.$t('common:message:savedSuccessfully'))
@ -271,6 +278,12 @@ export default {
} }
}) })
}, },
validateRemarkName(remark) {
var idx = this.visitTaskList.findIndex(i => i.VisitTaskId === this.visitTaskId)
var measureData = this.visitTaskList[idx].MeasureData
let i = measureData.findIndex(i=>i.MeasureData.data.remark === remark)
return i === -1
},
// //
closeSignDialog(isSign, signInfo) { closeSignDialog(isSign, signInfo) {
if (isSign) { if (isSign) {

View File

@ -218,7 +218,8 @@ export default {
srInfo: {}, srInfo: {},
digitPlaces: 2, digitPlaces: 2,
visitTaskIdx: -1, visitTaskIdx: -1,
currentLoadIns: [] currentLoadIns: [],
keySeriesLoad: []
} }
}, },
@ -884,6 +885,31 @@ export default {
if (this.visitTaskId === params.visitTaskId) { if (this.visitTaskId === params.visitTaskId) {
const studyIndex = params.idx.split('|')[0] const studyIndex = params.idx.split('|')[0]
const seriesIndex = params.idx.split('|')[1] const seriesIndex = params.idx.split('|')[1]
const seriesId = this.studyList[studyIndex].SeriesList[seriesIndex].seriesId
const i = this.keySeriesLoad.findIndex(i => i.seriesId === seriesId)
if (this.studyList[studyIndex].IsCriticalSequence && percentComplete >= 100) {
//
if (i === -1) {
this.keySeriesLoad.push({ seriesId: seriesId, loadCount: 1, imageIds: [imageId] })
} else {
++this.keySeriesLoad[i].loadCount
this.keySeriesLoad[i].imageIds.push(imageId)
}
} else if (this.studyList[studyIndex].SeriesList[seriesIndex].IsBeMark && percentComplete >= 100) {
//
if (i === -1) {
this.keySeriesLoad.push({ seriesId: seriesId, loadCount: 1, imageIds: [imageId] })
} else {
++this.keySeriesLoad[i].loadCount
this.keySeriesLoad[i].imageIds.push(imageId)
}
}
if (!this.studyList[studyIndex].IsCriticalSequence && i > -1) {
this.studyList[studyIndex].SeriesList[seriesIndex].prefetchInstanceCount = this.studyList[studyIndex].SeriesList[seriesIndex].prefetchInstanceCount + 100 * this.keySeriesLoad[i].loadCount
this.studyList[studyIndex].SeriesList[seriesIndex].imageloadedArr = [this.studyList[studyIndex].SeriesList[seriesIndex].imageloadedArr, this.keySeriesLoad[i].imageIds]
this.keySeriesLoad.splice(i, 1)
}
var prefetchInstanceCount = this.studyList[studyIndex].SeriesList[seriesIndex].prefetchInstanceCount var prefetchInstanceCount = this.studyList[studyIndex].SeriesList[seriesIndex].prefetchInstanceCount
var instanceCount = this.studyList[studyIndex].SeriesList[seriesIndex].instanceCount var instanceCount = this.studyList[studyIndex].SeriesList[seriesIndex].instanceCount
if (this.studyList[studyIndex].SeriesList[seriesIndex].imageloadedArr.indexOf(imageId) < 0) { if (this.studyList[studyIndex].SeriesList[seriesIndex].imageloadedArr.indexOf(imageId) < 0) {