Lugano标准添加重置功能
parent
af586a1187
commit
65b9cff361
|
@ -1021,6 +1021,10 @@ export default {
|
|||
if (!this.petctWindow) return
|
||||
this.petctWindow.postMessage({ type: 'readingPageUpdate', data: data }, window.location)
|
||||
})
|
||||
DicomEvent.$on('resetPage', () => {
|
||||
if (!this.petctWindow) return
|
||||
this.petctWindow.postMessage({ type: 'resetPage' }, window.location)
|
||||
})
|
||||
DicomEvent.$on('setReadingState', (data) => {
|
||||
if (!this.petctWindow) return
|
||||
this.petctWindow.postMessage({ type: 'setReadingState', data: data }, window.location)
|
||||
|
|
|
@ -798,17 +798,17 @@ export default {
|
|||
var imageIds = []
|
||||
var instanceList = []
|
||||
series.InstanceInfoList.forEach(instance => {
|
||||
if (instance.NumberOfFrames && instance.NumberOfFrames > 1) {
|
||||
for (let i = 0; i < instance.NumberOfFrames; i++) {
|
||||
const imageId = `wadouri:${localStorage.getItem('location') !== 'USA' ? this.OSSclientConfig.basePath : this.OSSclientConfig.basePath}${instance.Path}?frame=${i}`
|
||||
imageIds.push(imageId)
|
||||
}
|
||||
} else {
|
||||
const imageId = `wadouri:${localStorage.getItem('location') !== 'USA' ? this.OSSclientConfig.basePath : this.OSSclientConfig.basePath}${instance.Path}`
|
||||
if (instance.NumberOfFrames && instance.NumberOfFrames > 1) {
|
||||
for (let i = 0; i < instance.NumberOfFrames; i++) {
|
||||
const imageId = `wadouri:${localStorage.getItem('location') !== 'USA' ? this.OSSclientConfig.basePath : this.OSSclientConfig.basePath}${instance.Path}?frame=${i}`
|
||||
imageIds.push(imageId)
|
||||
}
|
||||
instanceList.push(instance.Id)
|
||||
})
|
||||
} else {
|
||||
const imageId = `wadouri:${localStorage.getItem('location') !== 'USA' ? this.OSSclientConfig.basePath : this.OSSclientConfig.basePath}${instance.Path}`
|
||||
imageIds.push(imageId)
|
||||
}
|
||||
instanceList.push(instance.Id)
|
||||
})
|
||||
resolve({
|
||||
imageIds: imageIds,
|
||||
instanceList: instanceList,
|
||||
|
@ -2149,7 +2149,49 @@ export default {
|
|||
this.screenshotWindow.close()
|
||||
}
|
||||
},
|
||||
async clearAnnotations() {
|
||||
const viewportIds = ['PT_AXIAL', 'CT_AXIAL', 'FUSION_AXIAL']
|
||||
viewportIds.map(v => {
|
||||
const viewport = renderingEngine.getViewport(v)
|
||||
if (viewport) {
|
||||
var annotations = annotation.state.getAnnotations('CircleROI', viewport.element)
|
||||
|
||||
if (annotations && annotations.length > 0) {
|
||||
annotations.map(i => {
|
||||
if (i.metadata.toolName === 'CircleROI') {
|
||||
annotation.state.removeAnnotation(i.annotationUID)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
viewport.render()
|
||||
})
|
||||
try {
|
||||
const visitTaskId = this.$route.query.visitTaskId
|
||||
const res = await getTableAnswerRowInfoList(visitTaskId)
|
||||
if (res.IsSuccess) {
|
||||
var arr = []
|
||||
res.Result.forEach(el => {
|
||||
if (el.OtherMeasureData) {
|
||||
el.OtherMeasureData = JSON.parse(el.OtherMeasureData)
|
||||
el.OtherMeasureData.invalidated = false
|
||||
if (this.readingTaskState === 2) {
|
||||
el.OtherMeasureData.isLocked = true
|
||||
}
|
||||
el.OtherMeasureData.data.remark = el.OrderMarkName
|
||||
const viewport = renderingEngine.getViewport('PT_AXIAL')
|
||||
annotation.state.addAnnotation(el.OtherMeasureData, viewport.element)
|
||||
}
|
||||
arr.push(el)
|
||||
})
|
||||
this.measureDatas = arr
|
||||
}
|
||||
} catch (e) {
|
||||
|
||||
}
|
||||
},
|
||||
async receiveMsg(event) {
|
||||
console.log(event.data.type)
|
||||
if (event.data.type === 'readingPageUpdate') {
|
||||
// this.$refs['questions'].initList()
|
||||
this.$refs['tableQuestions'].initList(true)
|
||||
|
@ -2171,6 +2213,14 @@ export default {
|
|||
FusionEvent.$emit('closeHistoryScreenshot')
|
||||
window.close()
|
||||
}
|
||||
} else if (event.data.type === 'resetPage') {
|
||||
if (this.screenshotWindow) {
|
||||
this.screenshotWindow.close()
|
||||
}
|
||||
this.$refs['tableQuestions'].initList(true)
|
||||
this.$refs['questions'].initList(true)
|
||||
this.isLocate = true
|
||||
this.clearAnnotations()
|
||||
}
|
||||
},
|
||||
startTimer() {
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
:question-form="questionForm"
|
||||
:reading-task-state="readingTaskState"
|
||||
:visit-task-id="visitTaskId"
|
||||
:pet5PS="questionForm[pet5PSId]"
|
||||
:pet5p-s="questionForm[pet5PSId]"
|
||||
:lung-is-inside-volume="lungIsInsideVolume"
|
||||
:liver-is-inside-volume="liverIsInsideVolume"
|
||||
@setFormItemData="setFormItemData"
|
||||
|
@ -163,42 +163,48 @@ export default {
|
|||
}
|
||||
this.initList(true)
|
||||
},
|
||||
initList(isInit) {
|
||||
async initList(isInit) {
|
||||
this.loading = true
|
||||
var params = {
|
||||
trialId: this.trialId,
|
||||
visitTaskId: this.visitTaskId,
|
||||
questionClassify: 0
|
||||
}
|
||||
getDicomReadingQuestionAnswer(params).then(res => {
|
||||
var questions = res.Result
|
||||
try {
|
||||
const params = {
|
||||
trialId: this.trialId,
|
||||
visitTaskId: this.visitTaskId,
|
||||
questionClassify: 0
|
||||
}
|
||||
const res = await getDicomReadingQuestionAnswer(params)
|
||||
if (res.IsSuccess) {
|
||||
const questions = res.Result
|
||||
|
||||
questions.map((v) => {
|
||||
v.IsBaseLineTask = this.isBaseLineTask
|
||||
if (v.Type === 'group' && v.Childrens.length === 0) return
|
||||
if (!v.IsPage && v.Type !== 'group' && v.Type !== 'summary') {
|
||||
this.$set(this.questionForm, v.Id, v.Answer ? v.Answer : null)
|
||||
}
|
||||
if (v.Childrens.length > 0) {
|
||||
this.setChild(v.Childrens)
|
||||
}
|
||||
})
|
||||
this.questions = questions
|
||||
this.setPet5PSCommentDisplay()
|
||||
this.measurements = []
|
||||
res.OtherInfo.QuestionMarkInfoList.forEach(i => {
|
||||
if (i.OtherMeasureData) {
|
||||
i.OtherMeasureData = JSON.parse(i.OtherMeasureData)
|
||||
if (i.QuestionType === 51 && isInit) {
|
||||
this.liverRender = false
|
||||
} else if (i.QuestionType === 52 && isInit) {
|
||||
this.lungRender = false
|
||||
questions.map((v) => {
|
||||
v.IsBaseLineTask = this.isBaseLineTask
|
||||
if (v.Type === 'group' && v.Childrens.length === 0) return
|
||||
if (!v.IsPage && v.Type !== 'group' && v.Type !== 'summary') {
|
||||
this.$set(this.questionForm, v.Id, v.Answer ? v.Answer : null)
|
||||
}
|
||||
}
|
||||
this.measurements.push(i)
|
||||
})
|
||||
if (v.Childrens.length > 0) {
|
||||
this.setChild(v.Childrens)
|
||||
}
|
||||
})
|
||||
this.questions = questions
|
||||
this.setPet5PSCommentDisplay()
|
||||
this.measurements = []
|
||||
res.OtherInfo.QuestionMarkInfoList.forEach(i => {
|
||||
if (i.OtherMeasureData) {
|
||||
i.OtherMeasureData = JSON.parse(i.OtherMeasureData)
|
||||
if (i.QuestionType === 51 && isInit) {
|
||||
this.liverRender = false
|
||||
} else if (i.QuestionType === 52 && isInit) {
|
||||
this.lungRender = false
|
||||
}
|
||||
}
|
||||
this.measurements.push(i)
|
||||
})
|
||||
}
|
||||
this.loading = false
|
||||
}).catch(() => { this.loading = false })
|
||||
} catch (e) {
|
||||
console.log(e)
|
||||
this.loading = false
|
||||
}
|
||||
},
|
||||
setChild(obj) {
|
||||
obj.forEach(i => {
|
||||
|
@ -263,37 +269,28 @@ export default {
|
|||
// }
|
||||
})
|
||||
},
|
||||
saveQuestionsForm() {
|
||||
async saveQuestionsForm() {
|
||||
this.loading = true
|
||||
var answers = []
|
||||
for (const k in this.questionForm) {
|
||||
answers.push({ id: k, answer: this.questionForm[k] })
|
||||
}
|
||||
// var questionMarkInfoList = []
|
||||
// this.measurements.forEach(item => {
|
||||
// var i = Object.assign({}, item)
|
||||
// if (i.OtherMeasureData) {
|
||||
// for (const k in i.OtherMeasureData.data.cachedStats) {
|
||||
// i.OtherMeasureData.data.cachedStats[k].pointsInShape = []
|
||||
// }
|
||||
// i.OtherMeasureData = JSON.stringify(i.OtherMeasureData)
|
||||
// }
|
||||
|
||||
// questionMarkInfoList.push(i)
|
||||
// })
|
||||
var params = {
|
||||
visitTaskId: this.visitTaskId,
|
||||
answers: answers
|
||||
// questionMarkInfoList
|
||||
}
|
||||
saveTaskQuestion(1, params).then(async res => {
|
||||
window.opener.postMessage({ type: 'petctLesionUpdate' }, window.location)
|
||||
try {
|
||||
var answers = []
|
||||
for (const k in this.questionForm) {
|
||||
answers.push({ id: k, answer: this.questionForm[k] })
|
||||
}
|
||||
var params = {
|
||||
visitTaskId: this.visitTaskId,
|
||||
answers: answers
|
||||
}
|
||||
const res = await saveTaskQuestion(1, params)
|
||||
if (res.IsSuccess) {
|
||||
window.opener.postMessage({ type: 'petctLesionUpdate' }, window.location)
|
||||
this.loading = false
|
||||
this.questionFormChangeState = false
|
||||
this.$message({ message: this.$t('common:message:savedSuccessfully'), type: 'success', duration: 2000 })
|
||||
}
|
||||
} catch (e) {
|
||||
console.log(e)
|
||||
this.loading = false
|
||||
this.questionFormChangeState = false
|
||||
this.$message({ message: this.$t('common:message:savedSuccessfully'), type: 'success', duration: 2000 })
|
||||
}).catch(() => {
|
||||
this.loading = false
|
||||
})
|
||||
}
|
||||
},
|
||||
checkAnnotationStatus(obj) {
|
||||
for (let i = 0; i < obj.length; i++) {
|
||||
|
@ -422,21 +419,27 @@ export default {
|
|||
break
|
||||
}
|
||||
}
|
||||
var params = {
|
||||
visitTaskId: this.visitTaskId,
|
||||
answers,
|
||||
questionMarkInfoList
|
||||
try {
|
||||
var params = {
|
||||
visitTaskId: this.visitTaskId,
|
||||
answers,
|
||||
questionMarkInfoList
|
||||
}
|
||||
const qsType = question.QuestionType === 51 ? 2 : question.QuestionType === 52 ? 3 : null
|
||||
|
||||
const res = await saveTaskQuestion(qsType, params)
|
||||
if (res.IsSuccess) {
|
||||
this.$set(question, 'SaveEnum', 0)
|
||||
window.opener.postMessage({ type: 'petctLesionUpdate' }, window.location)
|
||||
loading.close()
|
||||
this.$message({ message: this.$t('common:message:savedSuccessfully'), type: 'success', duration: 2000 })
|
||||
this.resetSuvQuestions(1)
|
||||
}
|
||||
loading.close()
|
||||
} catch (e) {
|
||||
console.log(e)
|
||||
loading.close()
|
||||
}
|
||||
const qsType = question.QuestionType === 51 ? 2 : question.QuestionType === 52 ? 3 : null
|
||||
saveTaskQuestion(qsType, params).then(async res => {
|
||||
this.$set(question, 'SaveEnum', 0)
|
||||
window.opener.postMessage({ type: 'petctLesionUpdate' }, window.location)
|
||||
loading.close()
|
||||
this.$message({ message: this.$t('common:message:savedSuccessfully'), type: 'success', duration: 2000 })
|
||||
this.resetSuvQuestions(1)
|
||||
}).catch(() => {
|
||||
loading.close()
|
||||
})
|
||||
})
|
||||
},
|
||||
viewAnnotations(question) {
|
||||
|
@ -622,7 +625,7 @@ export default {
|
|||
console.log('setfocalFDG')
|
||||
if (this.questionForm[this.pet5PSId] !== '-1' && this.questionForm[this.focalFDGId] === '1') {
|
||||
this.questionForm[this.focalFDGId] = ''
|
||||
}
|
||||
}
|
||||
},
|
||||
setpet5PS() {
|
||||
console.log('setpet5PS')
|
||||
|
@ -654,40 +657,38 @@ export default {
|
|||
return ''
|
||||
}
|
||||
},
|
||||
resetSuvQuestions(type = 0) {
|
||||
async resetSuvQuestions(type = 0) {
|
||||
this.loading = true
|
||||
var params = {
|
||||
trialId: this.trialId,
|
||||
visitTaskId: this.visitTaskId,
|
||||
questionClassify: 0
|
||||
}
|
||||
getDicomReadingQuestionAnswer(params).then(res => {
|
||||
var questions = res.Result
|
||||
questions.map((v) => {
|
||||
if (v.Type === 'group' && v.Childrens.length === 0) return
|
||||
// if (!v.IsPage && v.Type !== 'group' && v.Type !== 'summary') {
|
||||
// this.$set(this.questionForm, v.Id, v.Answer ? v.Answer : null)
|
||||
// }
|
||||
if (v.Childrens.length > 0) {
|
||||
this.setSuvChild(v.Childrens, type)
|
||||
}
|
||||
// var pet5PS = this.setpet5PS()
|
||||
// this.questionForm[this.pet5PSId] = pet5PS
|
||||
// this.calculatePet5PS = pet5PS
|
||||
// this.setPet5PSCommentDisplay()
|
||||
// this.setUptakeFormBaseline()
|
||||
})
|
||||
for (let i = 0; i < this.questions[0].Childrens[0].Childrens.length; i++) {
|
||||
if (this.questions[0].Childrens[0].Childrens[i].QuestionType === 59) {
|
||||
this.questions[0].Childrens[0].Childrens[i].ShowQuestion = 2
|
||||
this.questions[0].Childrens[0].Childrens[i].IsRequired = 3
|
||||
this.questionForm[this.pet5PSCommentsId] = ''
|
||||
break
|
||||
}
|
||||
try {
|
||||
const params = {
|
||||
trialId: this.trialId,
|
||||
visitTaskId: this.visitTaskId,
|
||||
questionClassify: 0
|
||||
}
|
||||
const res = await getDicomReadingQuestionAnswer(params)
|
||||
if (res.IsSuccess) {
|
||||
const questions = res.Result
|
||||
questions.map((v) => {
|
||||
if (v.Type === 'group' && v.Childrens.length === 0) return
|
||||
if (v.Childrens.length > 0) {
|
||||
this.setSuvChild(v.Childrens, type)
|
||||
}
|
||||
})
|
||||
for (let i = 0; i < this.questions[0].Childrens[0].Childrens.length; i++) {
|
||||
if (this.questions[0].Childrens[0].Childrens[i].QuestionType === 59) {
|
||||
this.questions[0].Childrens[0].Childrens[i].ShowQuestion = 2
|
||||
this.questions[0].Childrens[0].Childrens[i].IsRequired = 3
|
||||
this.questionForm[this.pet5PSCommentsId] = ''
|
||||
break
|
||||
}
|
||||
}
|
||||
this.questionFormChangeState = true
|
||||
}
|
||||
this.questionFormChangeState = true
|
||||
this.loading = false
|
||||
}).catch(() => { this.loading = false })
|
||||
} catch (e) {
|
||||
console.log(e)
|
||||
this.loading = false
|
||||
}
|
||||
},
|
||||
setSuvChild(obj, type) {
|
||||
obj.forEach(i => {
|
||||
|
|
|
@ -316,7 +316,7 @@ export default {
|
|||
this.$set(this.questionForm, 'OrganInfoId', this.answers.OrganInfoId ? this.answers.OrganInfoId : '')
|
||||
|
||||
// saveTypeEnum 0:未保存过(新建病灶);1:已保存,信息不完整(随访初始化病灶/分裂病灶,通过状态判断);2:已保存,信息完整
|
||||
var lesionState = this.getQuestionVal(7)
|
||||
// var lesionState = this.getQuestionVal(7)
|
||||
if (!isRerender) {
|
||||
if (this.questionForm.RowId) {
|
||||
this.$set(this.questionForm, 'saveTypeEnum', 2)
|
||||
|
@ -625,7 +625,7 @@ export default {
|
|||
}
|
||||
}
|
||||
}
|
||||
var lesionState = this.getQuestionVal(7)
|
||||
// var lesionState = this.getQuestionVal(7)
|
||||
if (this.firstRenderAnnotation) {
|
||||
this.$set(this.questionForm, 'saveTypeEnum', 2)
|
||||
} else {
|
||||
|
@ -871,75 +871,79 @@ export default {
|
|||
this.deleteInfo = null
|
||||
params.rowId = ''
|
||||
}
|
||||
submitTableQuestion(params).then(async res => {
|
||||
this.currentMarkTool = otherMeasureData ? otherMeasureData.type : ''
|
||||
// saveTypeEnum 0:未保存过(新建病灶);1:已保存,信息不完整(随访初始化病灶/分裂病灶,通过状态判断);2:已保存,信息完整
|
||||
try {
|
||||
const res = await submitTableQuestion(params)
|
||||
if (res.IsSuccess) {
|
||||
this.currentMarkTool = otherMeasureData ? otherMeasureData.type : ''
|
||||
this.$set(this.questionForm, 'saveTypeEnum', 2)
|
||||
this.originalQuestionForm = { ...this.questionForm }
|
||||
var isLymphLesion = this.getQuestionVal(2)
|
||||
isLymphLesion = isLymphLesion ? parseInt(isLymphLesion) : null
|
||||
var lesionOrgan = this.getQuestionVal(6)
|
||||
this.$set(this.questionForm, 'RowId', res.Result.RowId)
|
||||
const lesionPart = this.getQuestionVal(8)
|
||||
const suvMax = this.getQuestionVal(20)
|
||||
this.$emit('resetQuestions', { isLymphLesion, lesionPart, lesionOrgan, suvMax, saveTypeEnum: this.questionForm.saveTypeEnum, rowIndex: this.rowIndex, questionId: this.parentQsId, anwsers: this.questionForm })
|
||||
|
||||
this.$set(this.questionForm, 'saveTypeEnum', 2)
|
||||
this.originalQuestionForm = { ...this.questionForm }
|
||||
loading.close()
|
||||
var isLymphLesion = this.getQuestionVal(2)
|
||||
isLymphLesion = isLymphLesion ? parseInt(isLymphLesion) : null
|
||||
var lesionOrgan = this.getQuestionVal(6)
|
||||
this.$set(this.questionForm, 'RowId', res.Result.RowId)
|
||||
const lesionPart = this.getQuestionVal(8)
|
||||
const suvMax = this.getQuestionVal(20)
|
||||
this.$emit('resetQuestions', { isLymphLesion, lesionPart, lesionOrgan, suvMax, saveTypeEnum: this.questionForm.saveTypeEnum, rowIndex: this.rowIndex, questionId: this.parentQsId, anwsers: this.questionForm })
|
||||
FusionEvent.$emit('resetSuvQuestions')
|
||||
window.opener.postMessage({ type: 'petctLesionUpdate' }, window.location)
|
||||
this.$emit('close')
|
||||
|
||||
// FusionEvent.$emit('getAnnotations')
|
||||
FusionEvent.$emit('resetSuvQuestions')
|
||||
window.opener.postMessage({ type: 'petctLesionUpdate' }, window.location)
|
||||
this.$emit('close')
|
||||
this.$message({ message: this.$t('common:message:savedSuccessfully'), type: 'success', duration: 2000 })
|
||||
}
|
||||
loading.close()
|
||||
this.$message({ message: this.$t('common:message:savedSuccessfully'), type: 'success', duration: 2000 })
|
||||
}).catch(() => { loading.close() })
|
||||
} catch (e) {
|
||||
console.log(e)
|
||||
loading.close()
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
handleDeleteMeasureData() {
|
||||
async handleDeleteMeasureData() {
|
||||
// 是否确认清除标记?
|
||||
this.$confirm(this.$t('trials:reading:warnning:msg47'), {
|
||||
type: 'warning',
|
||||
distinguishCancelAndClose: true
|
||||
})
|
||||
.then(async() => {
|
||||
this.organList = []
|
||||
await this.getOrganInfoList()
|
||||
// 重置SUV
|
||||
var suvId = this.getQuestionId(20)
|
||||
this.$set(this.questionForm, suvId, '')
|
||||
// saveTypeEnum 0:未保存过(新建病灶);1:已保存,信息不完整(随访初始化病灶/分裂病灶,通过状态判断)
|
||||
if (this.questionForm.RowId) {
|
||||
this.$set(this.questionForm, 'saveTypeEnum', 1)
|
||||
} else {
|
||||
this.$set(this.questionForm, 'saveTypeEnum', 0)
|
||||
}
|
||||
FusionEvent.$emit('removeAnnotation', { otherMeasureData: this.questionForm.OtherMeasureData, type: 'clear' })
|
||||
// await store.dispatch('reading/removeMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.questionForm.MeasureData, questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex })
|
||||
const confirm = await this.$confirm(
|
||||
this.$t('trials:reading:warnning:msg47'),
|
||||
{
|
||||
type: 'warning',
|
||||
distinguishCancelAndClose: true
|
||||
}
|
||||
)
|
||||
if (confirm !== 'confirm') return
|
||||
this.organList = []
|
||||
await this.getOrganInfoList()
|
||||
// 重置SUV
|
||||
var suvId = this.getQuestionId(20)
|
||||
this.$set(this.questionForm, suvId, '')
|
||||
// saveTypeEnum 0:未保存过(新建病灶);1:已保存,信息不完整(随访初始化病灶/分裂病灶,通过状态判断)
|
||||
if (this.questionForm.RowId) {
|
||||
this.$set(this.questionForm, 'saveTypeEnum', 1)
|
||||
} else {
|
||||
this.$set(this.questionForm, 'saveTypeEnum', 0)
|
||||
}
|
||||
FusionEvent.$emit('removeAnnotation', { otherMeasureData: this.questionForm.OtherMeasureData, type: 'clear' })
|
||||
// await store.dispatch('reading/removeMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.questionForm.MeasureData, questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex })
|
||||
|
||||
// Store.$emit('updateImage', this.questionForm.MeasureData.instanceId)
|
||||
var isLymphLesion = this.getQuestionVal(2)
|
||||
isLymphLesion = !isNaN(parseInt(isLymphLesion)) ? parseInt(isLymphLesion) : null
|
||||
const lesionPart = this.getQuestionVal(8)
|
||||
const lesionOrgan = this.getQuestionVal(6)
|
||||
// Store.$emit('updateImage', this.questionForm.MeasureData.instanceId)
|
||||
var isLymphLesion = this.getQuestionVal(2)
|
||||
isLymphLesion = !isNaN(parseInt(isLymphLesion)) ? parseInt(isLymphLesion) : null
|
||||
const lesionPart = this.getQuestionVal(8)
|
||||
const lesionOrgan = this.getQuestionVal(6)
|
||||
|
||||
if (!this.questionForm.IsDicomReading) {
|
||||
if (!this.questionForm.IsDicomReading) {
|
||||
|
||||
}
|
||||
this.$set(this.questionForm, 'IsDicomReading', true)
|
||||
}
|
||||
this.$set(this.questionForm, 'IsDicomReading', true)
|
||||
|
||||
this.$set(this.questionForm, 'OtherMeasureData', '')
|
||||
let anwsers = null
|
||||
if (this.answers.measureObj) {
|
||||
anwsers = Object.assign({ measureObj: '' }, this.questionForm)
|
||||
} else {
|
||||
anwsers = Object.assign({}, this.questionForm)
|
||||
}
|
||||
var suvMax = this.getQuestionVal(20)
|
||||
this.$emit('resetQuestions', { isLymphLesion, lesionPart, lesionOrgan, suvMax, saveTypeEnum: this.questionForm.saveTypeEnum, rowIndex: this.rowIndex, questionId: this.parentQsId, anwsers: anwsers })
|
||||
this.isInsideVolume = true
|
||||
})
|
||||
.catch(() => {})
|
||||
this.$set(this.questionForm, 'OtherMeasureData', '')
|
||||
let anwsers = null
|
||||
if (this.answers.measureObj) {
|
||||
anwsers = Object.assign({ measureObj: '' }, this.questionForm)
|
||||
} else {
|
||||
anwsers = Object.assign({}, this.questionForm)
|
||||
}
|
||||
var suvMax = this.getQuestionVal(20)
|
||||
this.$emit('resetQuestions', { isLymphLesion, lesionPart, lesionOrgan, suvMax, saveTypeEnum: this.questionForm.saveTypeEnum, rowIndex: this.rowIndex, questionId: this.parentQsId, anwsers: anwsers })
|
||||
this.isInsideVolume = true
|
||||
},
|
||||
async clearMeasurement() {
|
||||
this.organList = []
|
||||
|
@ -975,65 +979,63 @@ export default {
|
|||
this.$emit('resetQuestions', { isLymphLesion, lesionPart, lesionOrgan, suvMax, saveTypeEnum: this.questionForm.saveTypeEnum, rowIndex: this.rowIndex, questionId: this.parentQsId, anwsers: anwsers })
|
||||
this.isInsideVolume = true
|
||||
},
|
||||
handleDelete() {
|
||||
// 是否确认删除?
|
||||
this.$confirm(this.$t('trials:reading:warnning:msg48'), {
|
||||
type: 'warning',
|
||||
distinguishCancelAndClose: true
|
||||
})
|
||||
.then(async() => {
|
||||
if (this.questionForm.RowId) {
|
||||
const loading = this.$loading({ fullscreen: true })
|
||||
var param = {
|
||||
visitTaskId: this.visitTaskId,
|
||||
questionId: this.parentQsId,
|
||||
rowId: this.questionForm.RowId
|
||||
}
|
||||
deleteReadingRowAnswer(param)
|
||||
.then(async res => {
|
||||
loading.close()
|
||||
if (res.IsSuccess) {
|
||||
// this.$emit('getReadingQuestionAndAnswer')
|
||||
if (this.questionForm.IsDicomReading && this.questionForm.OtherMeasureData) {
|
||||
// await store.dispatch('reading/removeMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.questionForm.MeasureData, questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex })
|
||||
FusionEvent.$emit('removeAnnotation', { otherMeasureData: this.questionForm.OtherMeasureData, type: 'delete' })
|
||||
}
|
||||
this.$emit('close', { lesionType: this.lesionType, rowIndex: this.rowIndex, visitTaskId: this.visitTaskId })
|
||||
|
||||
// '删除成功!'
|
||||
this.$message.success(this.$t('common:message:deletedSuccessfully'))
|
||||
loading.close()
|
||||
window.opener.postMessage({ type: 'petctLesionUpdate' }, window.location)
|
||||
}
|
||||
}).catch(() => { loading.close() })
|
||||
} else {
|
||||
// const loading = this.$loading({ fullscreen: true })
|
||||
// 移除新建病灶并关闭窗口
|
||||
if (this.questionForm.OtherMeasureData && this.questionForm.IsDicomReading) {
|
||||
// await store.dispatch('reading/removeMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.questionForm.MeasureData, questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex })
|
||||
FusionEvent.$emit('removeAnnotation', { otherMeasureData: this.questionForm.OtherMeasureData })
|
||||
}
|
||||
this.$emit('close', { lesionType: this.lesionType, rowIndex: this.rowIndex, visitTaskId: this.visitTaskId })
|
||||
// loading.close()
|
||||
}
|
||||
})
|
||||
},
|
||||
handleClose() {
|
||||
if (!this.questionForm.RowId) {
|
||||
// '当前病灶为新建病灶,未保存。如果关闭窗口,将会删除病灶信息,是否继续?'
|
||||
this.$confirm(this.$t('trials:reading:warnning:msg49'), {
|
||||
async handleDelete() {
|
||||
const confirm = await this.$confirm(
|
||||
this.$t('trials:reading:warnning:msg48'),
|
||||
{
|
||||
type: 'warning',
|
||||
distinguishCancelAndClose: true
|
||||
})
|
||||
.then(async() => {
|
||||
// 移除新建病灶并关闭窗口
|
||||
if (this.questionForm.OtherMeasureData) {
|
||||
FusionEvent.$emit('removeAnnotation', { otherMeasureData: this.questionForm.OtherMeasureData })
|
||||
// await store.dispatch('reading/removeMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.questionForm.MeasureData, questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex })
|
||||
}
|
||||
)
|
||||
if (confirm !== 'confirm') return
|
||||
if (this.questionForm.RowId) {
|
||||
const loading = this.$loading({ fullscreen: true })
|
||||
try {
|
||||
var param = {
|
||||
visitTaskId: this.visitTaskId,
|
||||
questionId: this.parentQsId,
|
||||
rowId: this.questionForm.RowId
|
||||
}
|
||||
const res = await deleteReadingRowAnswer(param)
|
||||
if (res.IsSuccess) {
|
||||
if (this.questionForm.IsDicomReading && this.questionForm.OtherMeasureData) {
|
||||
FusionEvent.$emit('removeAnnotation', { otherMeasureData: this.questionForm.OtherMeasureData, type: 'delete' })
|
||||
}
|
||||
this.$emit('close', { lesionType: this.lesionType, rowIndex: this.rowIndex, visitTaskId: this.visitTaskId })
|
||||
})
|
||||
.catch(() => {})
|
||||
// '删除成功!'
|
||||
this.$message.success(this.$t('common:message:deletedSuccessfully'))
|
||||
loading.close()
|
||||
window.opener.postMessage({ type: 'petctLesionUpdate' }, window.location)
|
||||
}
|
||||
loading.close()
|
||||
} catch (e) {
|
||||
console.log(e)
|
||||
loading.close()
|
||||
}
|
||||
} else {
|
||||
// 移除新建病灶并关闭窗口
|
||||
if (this.questionForm.OtherMeasureData && this.questionForm.IsDicomReading) {
|
||||
FusionEvent.$emit('removeAnnotation', { otherMeasureData: this.questionForm.OtherMeasureData })
|
||||
}
|
||||
this.$emit('close', { lesionType: this.lesionType, rowIndex: this.rowIndex, visitTaskId: this.visitTaskId })
|
||||
}
|
||||
},
|
||||
async handleClose() {
|
||||
if (!this.questionForm.RowId) {
|
||||
// '当前病灶为新建病灶,未保存。如果关闭窗口,将会删除病灶信息,是否继续?'
|
||||
const confirm = await this.$confirm(
|
||||
this.$t('trials:reading:warnning:msg49'),
|
||||
{
|
||||
type: 'warning',
|
||||
distinguishCancelAndClose: true
|
||||
}
|
||||
)
|
||||
if (confirm !== 'confirm') return
|
||||
// 移除新建病灶并关闭窗口
|
||||
if (this.questionForm.OtherMeasureData) {
|
||||
FusionEvent.$emit('removeAnnotation', { otherMeasureData: this.questionForm.OtherMeasureData })
|
||||
}
|
||||
this.$emit('close', { lesionType: this.lesionType, rowIndex: this.rowIndex, visitTaskId: this.visitTaskId })
|
||||
} else {
|
||||
if (this.questionForm.saveTypeEnum === 1) {
|
||||
this.$emit('close')
|
||||
|
|
|
@ -1080,17 +1080,17 @@ export default {
|
|||
this.$refs['ecrf'].getQuestions(obj.visitTaskId)
|
||||
},
|
||||
async resetMeasuredData() {
|
||||
const confirm = await this.$confirm(
|
||||
this.$t('trials:dicomReading:message:confirmReset1'),
|
||||
this.$t('trials:dicomReading:message:confirmReset2'),
|
||||
{
|
||||
type: 'warning',
|
||||
distinguishCancelAndClose: true
|
||||
}
|
||||
)
|
||||
if (confirm !== 'confirm') return
|
||||
const loading = this.$loading({ fullscreen: true })
|
||||
try {
|
||||
const confirm = await this.$confirm(
|
||||
this.$t('trials:dicomReading:message:confirmReset1'),
|
||||
this.$t('trials:dicomReading:message:confirmReset2'),
|
||||
{
|
||||
type: 'warning',
|
||||
distinguishCancelAndClose: true
|
||||
}
|
||||
)
|
||||
if (confirm !== 'confirm') return
|
||||
this.loading = true
|
||||
const res = await resetReadingTask({ visitTaskId: this.visitTaskId })
|
||||
this.loading = false
|
||||
if (res.IsSuccess) {
|
||||
|
@ -1099,13 +1099,16 @@ export default {
|
|||
this.activeItem.activeRowIndex = null
|
||||
this.activeItem.activeCollapseId = null
|
||||
await this.getReadingQuestionAndAnswer(this.visitTaskId)
|
||||
this.$refs['ecrf'].resetQSForm()
|
||||
const triald = this.$router.currentRoute.query.trialId
|
||||
await store.dispatch('reading/refreshDicomReadingQuestionAnswer', { trialId: triald, visitTaskId: this.visitTaskId })
|
||||
this.$refs['ecrf'].getQuestions(this.visitTaskId, true)
|
||||
DicomEvent.$emit('getMeasureData')
|
||||
DicomEvent.$emit('getReportInfo', true)
|
||||
DicomEvent.$emit('refreshStudyListMeasureData')
|
||||
}
|
||||
loading.close()
|
||||
} catch (e) {
|
||||
this.loading = false
|
||||
loading.close()
|
||||
console.log(e)
|
||||
}
|
||||
},
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -2,10 +2,20 @@
|
|||
<div class="measurement-wrapper" :style="{'height':height+10+'px'}">
|
||||
|
||||
<div class="container" :style="{'height':height+'px'}">
|
||||
<h3 v-if="isReadingShowSubjectInfo" style="color: #ddd;padding: 5px 0px;margin: 0;">
|
||||
<span v-if="subjectCode">{{ subjectCode }} </span>
|
||||
<span style="margin-left:5px;">{{ taskBlindName }}</span>
|
||||
</h3>
|
||||
<div class="basic-info">
|
||||
<h3 v-if="isReadingShowSubjectInfo">
|
||||
<span v-if="subjectCode">{{ subjectCode }} </span>
|
||||
<span style="margin-left:5px;">{{ taskBlindName }}</span>
|
||||
</h3>
|
||||
<div v-if="readingTaskState < 2">
|
||||
<el-tooltip class="item" effect="dark" :content="$t('trials:dicomReading:message:confirmReset')" placement="bottom">
|
||||
<i
|
||||
class="el-icon-refresh-left"
|
||||
@click="resetMeasuredData"
|
||||
/>
|
||||
</el-tooltip>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 非测量问题 -->
|
||||
<div class="lesions">
|
||||
<!-- 影像质量问题 -->
|
||||
|
@ -216,6 +226,7 @@
|
|||
</template>
|
||||
<script>
|
||||
import { splitLesion, getSplitPPdSum, getCanMergeLesion, mergeLesion } from '@/api/trials'
|
||||
import { resetReadingTask } from '@/api/reading'
|
||||
import DicomEvent from './../DicomEvent'
|
||||
import store from '@/store'
|
||||
import { mapGetters } from 'vuex'
|
||||
|
@ -333,7 +344,8 @@ export default {
|
|||
})
|
||||
})
|
||||
DicomEvent.$on('refreshSplitTargetLesionPDD', async(callback) => {
|
||||
this.splitTargetLesions = await this.getSplitTargetLesionPDD()
|
||||
const res = await getSplitPPdSum({ visitTaskId: this.visitTaskId })
|
||||
this.splitTargetLesions = res.Result
|
||||
if (this.splitTargetLesions && this.splitTargetLesions.length > 0) {
|
||||
this.splitTargetLesions.map(i => {
|
||||
var refName = `${this.lesionTypeQuestionId}_${i.RowIndex}`
|
||||
|
@ -388,7 +400,8 @@ export default {
|
|||
loading.close()
|
||||
}
|
||||
if (!this.isBaseLineTask) {
|
||||
this.splitTargetLesions = await this.getSplitTargetLesionPDD()
|
||||
const res = await getSplitPPdSum({ visitTaskId: this.visitTaskId })
|
||||
this.splitTargetLesions = res.Result
|
||||
}
|
||||
this.questions = this.visitTaskList[i].ReadingQuestions
|
||||
this.$nextTick(() => {
|
||||
|
@ -530,7 +543,8 @@ export default {
|
|||
this.isCurrentTask = this.visitTaskList[idx].IsCurrentTask
|
||||
}
|
||||
if (!this.isBaseLineTask) {
|
||||
this.splitTargetLesions = await this.getSplitTargetLesionPDD()
|
||||
const res = await getSplitPPdSum({ visitTaskId: this.visitTaskId })
|
||||
this.splitTargetLesions = res.Result
|
||||
}
|
||||
this.getTableQuestions()
|
||||
this.$nextTick(() => {
|
||||
|
@ -559,13 +573,6 @@ export default {
|
|||
} catch (e) { console.log(e) }
|
||||
})
|
||||
},
|
||||
getSplitTargetLesionPDD() {
|
||||
return new Promise(resolve => {
|
||||
getSplitPPdSum({ visitTaskId: this.visitTaskId }).then(res => {
|
||||
resolve(res.Result)
|
||||
}).catch(() => { resolve() })
|
||||
})
|
||||
},
|
||||
setHeight() {
|
||||
this.height = window.innerHeight - 140
|
||||
},
|
||||
|
@ -688,7 +695,7 @@ export default {
|
|||
})
|
||||
},
|
||||
// 融合
|
||||
handleMerge(answers, questionId, orderMark) {
|
||||
async handleMerge(answers, questionId, orderMark) {
|
||||
this.lesionData = []
|
||||
this.mergeList = []
|
||||
this.merge.visible = true
|
||||
|
@ -697,10 +704,16 @@ export default {
|
|||
this.mergeInfo.lesionName = this.getLesionName(orderMark, answers.RowIndex)
|
||||
this.mergeInfo.lesionPart = answers.lesionPart
|
||||
this.merge.loading = true
|
||||
getCanMergeLesion({ rowId: answers.RowId }).then(res => {
|
||||
this.lesionData = res.Result
|
||||
try {
|
||||
const res = await getCanMergeLesion({ rowId: answers.RowId })
|
||||
if (res.IsSuccess) {
|
||||
this.lesionData = res.Result
|
||||
}
|
||||
this.merge.loading = false
|
||||
}).catch(() => { this.merge.loading = false })
|
||||
} catch (e) {
|
||||
console.log(e)
|
||||
this.merge.loading = false
|
||||
}
|
||||
},
|
||||
handleSelectionChange(val) {
|
||||
this.mergeList = []
|
||||
|
@ -718,23 +731,28 @@ export default {
|
|||
|
||||
})
|
||||
},
|
||||
lesionMerge() {
|
||||
async lesionMerge() {
|
||||
this.merge.loading = true
|
||||
var params = {
|
||||
visitTaskId: this.visitTaskId,
|
||||
questionId: this.mergeInfo.questionId,
|
||||
mergeMainRowId: this.mergeInfo.mergeRowId,
|
||||
mergeRowIdList: this.mergeList
|
||||
}
|
||||
mergeLesion(params).then(res => {
|
||||
try {
|
||||
var params = {
|
||||
visitTaskId: this.visitTaskId,
|
||||
questionId: this.mergeInfo.questionId,
|
||||
mergeMainRowId: this.mergeInfo.mergeRowId,
|
||||
mergeRowIdList: this.mergeList
|
||||
}
|
||||
const res = await mergeLesion(params)
|
||||
if (res.IsSuccess) {
|
||||
this.merge.visible = false
|
||||
DicomEvent.$emit('readingPageUpdate', {})
|
||||
DicomEvent.$emit('getReportInfo', true)
|
||||
DicomEvent.$emit('setMeasuredToolsPassive')
|
||||
this.getReadingQuestionAndAnswer()
|
||||
}
|
||||
this.merge.loading = false
|
||||
this.merge.visible = false
|
||||
DicomEvent.$emit('readingPageUpdate', {})
|
||||
DicomEvent.$emit('getReportInfo', true)
|
||||
DicomEvent.$emit('setMeasuredToolsPassive')
|
||||
this.getReadingQuestionAndAnswer()
|
||||
// 刷新病灶列表及标记
|
||||
}).catch(() => { this.merge.loading = false })
|
||||
} catch (e) {
|
||||
this.merge.loading = false
|
||||
console.log(e)
|
||||
}
|
||||
},
|
||||
isCanActiveTool(toolName) {
|
||||
this.isNonTargetMeasurement = false
|
||||
|
@ -1284,6 +1302,41 @@ export default {
|
|||
})
|
||||
DicomEvent.$emit('getReportInfo', true)
|
||||
loading.close()
|
||||
},
|
||||
async resetMeasuredData() {
|
||||
const confirm = await this.$confirm(
|
||||
this.$t('trials:dicomReading:message:confirmReset1'),
|
||||
this.$t('trials:dicomReading:message:confirmReset2'),
|
||||
{
|
||||
type: 'warning',
|
||||
distinguishCancelAndClose: true
|
||||
}
|
||||
)
|
||||
if (confirm !== 'confirm') return
|
||||
const loading = this.$loading({ fullscreen: true })
|
||||
try {
|
||||
const res = await resetReadingTask({ visitTaskId: this.visitTaskId })
|
||||
if (res.IsSuccess) {
|
||||
// 刷新标注、表单、报告页信息、融合页表单及标注
|
||||
this.activeName = ''
|
||||
this.activeItem.activeRowIndex = null
|
||||
this.activeItem.activeCollapseId = null
|
||||
await this.getReadingQuestionAndAnswer(this.visitTaskId)
|
||||
const triald = this.$router.currentRoute.query.trialId
|
||||
await store.dispatch('reading/refreshDicomReadingQuestionAnswer', { trialId: triald, visitTaskId: this.visitTaskId })
|
||||
this.$refs['ecrf'].getQuestions(this.visitTaskId, true)
|
||||
this.$refs['ecrf2'].getQuestions(this.visitTaskId, true)
|
||||
this.$refs['ecrf3'].getQuestions(this.visitTaskId, true)
|
||||
DicomEvent.$emit('getMeasureData')
|
||||
DicomEvent.$emit('getReportInfo', true)
|
||||
DicomEvent.$emit('refreshStudyListMeasureData')
|
||||
DicomEvent.$emit('resetPage', {})
|
||||
}
|
||||
loading.close()
|
||||
} catch (e) {
|
||||
loading.close()
|
||||
console.log(e)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -1296,6 +1349,22 @@ export default {
|
|||
|
||||
.container{
|
||||
padding: 10px;
|
||||
.basic-info{
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
h3{
|
||||
color: #ddd;
|
||||
padding: 5px 0px;
|
||||
margin: 0;
|
||||
}
|
||||
i{
|
||||
color: #fff;
|
||||
font-size: 22px;
|
||||
font-weight: bold;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
}
|
||||
.title{
|
||||
padding: 5px;
|
||||
|
|
|
@ -704,17 +704,17 @@ export default {
|
|||
this.$refs['ecrf'].getQuestions(obj.visitTaskId)
|
||||
},
|
||||
async resetMeasuredData() {
|
||||
const confirm = await this.$confirm(
|
||||
this.$t('trials:dicomReading:message:confirmReset1'),
|
||||
this.$t('trials:dicomReading:message:confirmReset2'),
|
||||
{
|
||||
type: 'warning',
|
||||
distinguishCancelAndClose: true
|
||||
}
|
||||
)
|
||||
if (confirm !== 'confirm') return
|
||||
const loading = this.$loading({ fullscreen: true })
|
||||
try {
|
||||
const confirm = await this.$confirm(
|
||||
this.$t('trials:dicomReading:message:confirmReset1'),
|
||||
this.$t('trials:dicomReading:message:confirmReset2'),
|
||||
{
|
||||
type: 'warning',
|
||||
distinguishCancelAndClose: true
|
||||
}
|
||||
)
|
||||
if (confirm !== 'confirm') return
|
||||
this.loading = true
|
||||
const res = await resetReadingTask({ visitTaskId: this.visitTaskId })
|
||||
this.loading = false
|
||||
if (res.IsSuccess) {
|
||||
|
@ -723,13 +723,16 @@ export default {
|
|||
this.activeItem.activeRowIndex = null
|
||||
this.activeItem.activeCollapseId = null
|
||||
await this.getReadingQuestionAndAnswer(this.visitTaskId)
|
||||
this.$refs['ecrf'].resetQSForm()
|
||||
const triald = this.$router.currentRoute.query.trialId
|
||||
await store.dispatch('reading/refreshDicomReadingQuestionAnswer', { trialId: triald, visitTaskId: this.visitTaskId })
|
||||
this.$refs['ecrf'].getQuestions(this.visitTaskId, true)
|
||||
DicomEvent.$emit('getMeasureData')
|
||||
DicomEvent.$emit('getReportInfo', true)
|
||||
DicomEvent.$emit('refreshStudyListMeasureData')
|
||||
}
|
||||
loading.close()
|
||||
} catch (e) {
|
||||
this.loading = false
|
||||
loading.close()
|
||||
console.log(e)
|
||||
}
|
||||
},
|
||||
|
|
|
@ -390,18 +390,6 @@ export default {
|
|||
this.loading = false
|
||||
})
|
||||
},
|
||||
async resetQSForm() {
|
||||
try {
|
||||
this.loading = true
|
||||
var trialId = this.$route.query.trialId
|
||||
await store.dispatch('reading/refreshDicomReadingQuestionAnswer', { trialId: trialId, visitTaskId: this.visitTaskId })
|
||||
this.getQuestions(this.visitTaskId, true)
|
||||
this.loading = false
|
||||
} catch(e) {
|
||||
this.loading = false
|
||||
}
|
||||
|
||||
},
|
||||
checkAnnotationStatus(obj) {
|
||||
for (let i = 0; i < obj.length; i++) {
|
||||
if (obj[i].SaveEnum === 1) {
|
||||
|
|
|
@ -956,17 +956,17 @@ export default {
|
|||
this.$refs['ecrf'].getQuestions(obj.visitTaskId)
|
||||
},
|
||||
async resetMeasuredData() {
|
||||
const confirm = await this.$confirm(
|
||||
this.$t('trials:dicomReading:message:confirmReset1'),
|
||||
this.$t('trials:dicomReading:message:confirmReset2'),
|
||||
{
|
||||
type: 'warning',
|
||||
distinguishCancelAndClose: true
|
||||
}
|
||||
)
|
||||
if (confirm !== 'confirm') return
|
||||
const loading = this.$loading({ fullscreen: true })
|
||||
try {
|
||||
const confirm = await this.$confirm(
|
||||
this.$t('trials:dicomReading:message:confirmReset1'),
|
||||
this.$t('trials:dicomReading:message:confirmReset2'),
|
||||
{
|
||||
type: 'warning',
|
||||
distinguishCancelAndClose: true
|
||||
}
|
||||
)
|
||||
if (confirm !== 'confirm') return
|
||||
this.loading = true
|
||||
const res = await resetReadingTask({ visitTaskId: this.visitTaskId })
|
||||
this.loading = false
|
||||
if (res.IsSuccess) {
|
||||
|
@ -975,13 +975,16 @@ export default {
|
|||
this.activeItem.activeRowIndex = null
|
||||
this.activeItem.activeCollapseId = null
|
||||
await this.getReadingQuestionAndAnswer(this.visitTaskId)
|
||||
this.$refs['ecrf'].resetQSForm()
|
||||
const triald = this.$router.currentRoute.query.trialId
|
||||
await store.dispatch('reading/refreshDicomReadingQuestionAnswer', { trialId: triald, visitTaskId: this.visitTaskId })
|
||||
this.$refs['ecrf'].getQuestions(this.visitTaskId, true)
|
||||
DicomEvent.$emit('getMeasureData')
|
||||
DicomEvent.$emit('getReportInfo', true)
|
||||
DicomEvent.$emit('refreshStudyListMeasureData')
|
||||
}
|
||||
loading.close()
|
||||
} catch (e) {
|
||||
this.loading = false
|
||||
loading.close()
|
||||
console.log(e)
|
||||
}
|
||||
},
|
||||
|
|
|
@ -509,25 +509,31 @@ export default {
|
|||
}
|
||||
}
|
||||
},
|
||||
split(rowId, questionId) {
|
||||
async split(rowId, questionId) {
|
||||
const loading = this.$loading({ fullscreen: true })
|
||||
var params = {
|
||||
visitTaskId: this.visitTaskId,
|
||||
questionId: questionId,
|
||||
rowId: rowId
|
||||
}
|
||||
splitLesion(params).then(async res => {
|
||||
loading.close()
|
||||
await this.getReadingQuestionAndAnswer()
|
||||
this.$nextTick(() => {
|
||||
this.tableQuestions.forEach(item => {
|
||||
item.TableQuestions.Answers.forEach(i => {
|
||||
var refName = `${item.Id}_${i.RowIndex}`
|
||||
this.$refs[refName] && this.$refs[refName][0].initForm()
|
||||
try {
|
||||
var params = {
|
||||
visitTaskId: this.visitTaskId,
|
||||
questionId: questionId,
|
||||
rowId: rowId
|
||||
}
|
||||
const res = await splitLesion(params)
|
||||
if (res.IsSuccess) {
|
||||
await this.getReadingQuestionAndAnswer()
|
||||
this.$nextTick(() => {
|
||||
this.tableQuestions.forEach(item => {
|
||||
item.TableQuestions.Answers.forEach(i => {
|
||||
var refName = `${item.Id}_${i.RowIndex}`
|
||||
this.$refs[refName] && this.$refs[refName][0].initForm()
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
||||
}
|
||||
loading.close()
|
||||
} catch (e) {
|
||||
loading.close()
|
||||
console.log(e)
|
||||
}
|
||||
},
|
||||
isCanActiveTool(toolName) {
|
||||
this.getUnSaveTarget()
|
||||
|
@ -892,17 +898,17 @@ export default {
|
|||
this.$refs['ecrf'].getQuestions(obj.visitTaskId)
|
||||
},
|
||||
async resetMeasuredData() {
|
||||
const confirm = await this.$confirm(
|
||||
this.$t('trials:dicomReading:message:confirmReset1'),
|
||||
this.$t('trials:dicomReading:message:confirmReset2'),
|
||||
{
|
||||
type: 'warning',
|
||||
distinguishCancelAndClose: true
|
||||
}
|
||||
)
|
||||
if (confirm !== 'confirm') return
|
||||
const loading = this.$loading({ fullscreen: true })
|
||||
try {
|
||||
const confirm = await this.$confirm(
|
||||
this.$t('trials:dicomReading:message:confirmReset1'),
|
||||
this.$t('trials:dicomReading:message:confirmReset2'),
|
||||
{
|
||||
type: 'warning',
|
||||
distinguishCancelAndClose: true
|
||||
}
|
||||
)
|
||||
if (confirm !== 'confirm') return
|
||||
this.loading = true
|
||||
const res = await resetReadingTask({ visitTaskId: this.visitTaskId })
|
||||
this.loading = false
|
||||
if (res.IsSuccess) {
|
||||
|
@ -911,13 +917,16 @@ export default {
|
|||
this.activeItem.activeRowIndex = null
|
||||
this.activeItem.activeCollapseId = null
|
||||
await this.getReadingQuestionAndAnswer(this.visitTaskId)
|
||||
this.$refs['ecrf'].resetQSForm()
|
||||
const triald = this.$router.currentRoute.query.trialId
|
||||
await store.dispatch('reading/refreshDicomReadingQuestionAnswer', { trialId: triald, visitTaskId: this.visitTaskId })
|
||||
this.$refs['ecrf'].getQuestions(this.visitTaskId, true)
|
||||
DicomEvent.$emit('getMeasureData')
|
||||
DicomEvent.$emit('getReportInfo', true)
|
||||
DicomEvent.$emit('refreshStudyListMeasureData')
|
||||
}
|
||||
loading.close()
|
||||
} catch (e) {
|
||||
this.loading = false
|
||||
loading.close()
|
||||
console.log(e)
|
||||
}
|
||||
},
|
||||
|
|
Loading…
Reference in New Issue