脾脏评估和PET 5PS评估逻辑修改
parent
0e33b60681
commit
1825ac34e1
|
@ -159,6 +159,7 @@ export default {
|
||||||
this.loading = true
|
this.loading = true
|
||||||
var res = await getReadingCalculationData({ visitTaskId: this.visitTaskId })
|
var res = await getReadingCalculationData({ visitTaskId: this.visitTaskId })
|
||||||
this.baseLinePET5PS = res.Result.BaseLinePET5PS
|
this.baseLinePET5PS = res.Result.BaseLinePET5PS
|
||||||
|
this.calculatePet5PS = res.Result.CalculatePET5PS
|
||||||
this.loading = false
|
this.loading = false
|
||||||
}
|
}
|
||||||
this.initList(true)
|
this.initList(true)
|
||||||
|
@ -184,7 +185,6 @@ export default {
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
this.questions = questions
|
this.questions = questions
|
||||||
this.calculatePet5PS = this.setpet5PS()
|
|
||||||
this.setPet5PSCommentDisplay()
|
this.setPet5PSCommentDisplay()
|
||||||
this.measurements = []
|
this.measurements = []
|
||||||
res.OtherInfo.QuestionMarkInfoList.forEach(i => {
|
res.OtherInfo.QuestionMarkInfoList.forEach(i => {
|
||||||
|
@ -249,23 +249,7 @@ export default {
|
||||||
this.$alert(this.$t('trials:lugano:message:saveWarning1'), this.$t('trials:lugano:fusionDialog:warning'))
|
this.$alert(this.$t('trials:lugano:message:saveWarning1'), this.$t('trials:lugano:fusionDialog:warning'))
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
// 肝脏血池SUVmax
|
this.saveQuestionsForm()
|
||||||
const liverSUVmax = !isNaN(parseFloat(this.questionForm[this.liverSuvmaxId])) ? parseFloat(this.questionForm[this.liverSuvmaxId]) : 0
|
|
||||||
// 纵膈血池SUVmax
|
|
||||||
const lungSUVmax = !isNaN(parseFloat(this.questionForm[this.lungSuvmaxId])) ? parseFloat(this.questionForm[this.lungSuvmaxId]) : 0
|
|
||||||
// const pet5PS = !isNaN(parseInt(this.questionForm[this.pet5PSId])) ? parseInt(this.questionForm[this.pet5PSId]) : 0
|
|
||||||
if (liverSUVmax && lungSUVmax && (liverSUVmax <= lungSUVmax)) {
|
|
||||||
// '当前肝脏血池SUVmax≤纵隔血池血池SUVmax,请确认!'
|
|
||||||
this.$confirm(this.$t('trials:lugano:message:validLung'), this.$t('trials:lugano:fusionDialog:warning'), {
|
|
||||||
type: 'warning'
|
|
||||||
}).then(() => {
|
|
||||||
this.saveQuestionsForm()
|
|
||||||
}).catch(() => {
|
|
||||||
|
|
||||||
})
|
|
||||||
} else {
|
|
||||||
this.saveQuestionsForm()
|
|
||||||
}
|
|
||||||
// else if (pet5PS > 1 && (!liverSUVmax || !lungSUVmax)) {
|
// else if (pet5PS > 1 && (!liverSUVmax || !lungSUVmax)) {
|
||||||
// this.$alert('pet 5ps评分不为1,X或者NE,需要进行标记!', '提示', {
|
// this.$alert('pet 5ps评分不为1,X或者NE,需要进行标记!', '提示', {
|
||||||
// // confirmButtonText: '确定',
|
// // confirmButtonText: '确定',
|
||||||
|
@ -344,11 +328,11 @@ export default {
|
||||||
var idx = this.measurements.findIndex(i => i.QuestionId === Id)
|
var idx = this.measurements.findIndex(i => i.QuestionId === Id)
|
||||||
if (idx === -1) return
|
if (idx === -1) return
|
||||||
this.$set(this.questionForm, Id, '')
|
this.$set(this.questionForm, Id, '')
|
||||||
var pet5PS = this.setpet5PS()
|
// var pet5PS = this.setpet5PS()
|
||||||
this.questionForm[this.pet5PSId] = pet5PS
|
// this.questionForm[this.pet5PSId] = pet5PS
|
||||||
this.calculatePet5PS = pet5PS
|
// this.calculatePet5PS = pet5PS
|
||||||
this.setPet5PSCommentDisplay()
|
// this.setPet5PSCommentDisplay()
|
||||||
this.setUptakeFormBaseline()
|
// this.setUptakeFormBaseline()
|
||||||
FusionEvent.$emit('removeAnnotation', { otherMeasureData: this.measurements[idx].OtherMeasureData, type: 'clear' })
|
FusionEvent.$emit('removeAnnotation', { otherMeasureData: this.measurements[idx].OtherMeasureData, type: 'clear' })
|
||||||
var remark = this.measurements[idx].OtherMeasureData.data.remark
|
var remark = this.measurements[idx].OtherMeasureData.data.remark
|
||||||
remark === 'Liver' ? this.liverIsInsideVolume = true : remark === 'Mediastinum' ? this.lungIsInsideVolume = true : ''
|
remark === 'Liver' ? this.liverIsInsideVolume = true : remark === 'Mediastinum' ? this.lungIsInsideVolume = true : ''
|
||||||
|
@ -373,8 +357,26 @@ export default {
|
||||||
})
|
})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
const loading = this.$loading({ fullscreen: true })
|
// 肝脏血池SUVmax
|
||||||
|
const liverSUVmax = !isNaN(parseFloat(this.questionForm[this.liverSuvmaxId])) ? parseFloat(this.questionForm[this.liverSuvmaxId]) : 0
|
||||||
|
// 纵膈血池SUVmax
|
||||||
|
const lungSUVmax = !isNaN(parseFloat(this.questionForm[this.lungSuvmaxId])) ? parseFloat(this.questionForm[this.lungSuvmaxId]) : 0
|
||||||
|
// const pet5PS = !isNaN(parseInt(this.questionForm[this.pet5PSId])) ? parseInt(this.questionForm[this.pet5PSId]) : 0
|
||||||
|
if (liverSUVmax && lungSUVmax && (liverSUVmax <= lungSUVmax)) {
|
||||||
|
// '当前肝脏血池SUVmax≤纵隔血池血池SUVmax,请确认!'
|
||||||
|
this.$confirm(this.$t('trials:lugano:message:validLung'), this.$t('trials:lugano:fusionDialog:warning'), {
|
||||||
|
type: 'warning'
|
||||||
|
}).then(() => {
|
||||||
|
this.handleSaveAnnotation(question)
|
||||||
|
}).catch(() => {
|
||||||
|
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
this.handleSaveAnnotation(question)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
handleSaveAnnotation(question) {
|
||||||
|
const loading = this.$loading({ fullscreen: true })
|
||||||
// 获取截图
|
// 获取截图
|
||||||
var answers = []
|
var answers = []
|
||||||
var questionMarkInfoList = []
|
var questionMarkInfoList = []
|
||||||
|
@ -414,6 +416,7 @@ export default {
|
||||||
window.opener.postMessage({ type: 'petctLesionUpdate' }, window.location)
|
window.opener.postMessage({ type: 'petctLesionUpdate' }, window.location)
|
||||||
loading.close()
|
loading.close()
|
||||||
this.$message({ message: this.$t('common:message:savedSuccessfully'), type: 'success', duration: 2000 })
|
this.$message({ message: this.$t('common:message:savedSuccessfully'), type: 'success', duration: 2000 })
|
||||||
|
this.resetSuvQuestions(1)
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
loading.close()
|
loading.close()
|
||||||
})
|
})
|
||||||
|
@ -454,17 +457,20 @@ export default {
|
||||||
OrderMarkName: remark
|
OrderMarkName: remark
|
||||||
}
|
}
|
||||||
if (measurement.type === 'CircleROI') {
|
if (measurement.type === 'CircleROI') {
|
||||||
const suvMax = measurement.suvMax
|
this.$set(this.questionForm, obj.QuestionId, measurement.suvMax || null)
|
||||||
|
|
||||||
if (this.questionForm[obj.QuestionId] !== suvMax) {
|
|
||||||
this.setPet5PSCommentDisplay()
|
|
||||||
this.$set(this.questionForm, obj.QuestionId, suvMax || null)
|
|
||||||
var pet5PS = this.setpet5PS()
|
|
||||||
this.questionForm[this.pet5PSId] = pet5PS
|
|
||||||
this.calculatePet5PS = pet5PS
|
|
||||||
this.setUptakeFormBaseline()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
// if (measurement.type === 'CircleROI') {
|
||||||
|
// const suvMax = measurement.suvMax
|
||||||
|
|
||||||
|
// if (this.questionForm[obj.QuestionId] !== suvMax) {
|
||||||
|
// this.setPet5PSCommentDisplay()
|
||||||
|
// this.$set(this.questionForm, obj.QuestionId, suvMax || null)
|
||||||
|
// var pet5PS = this.setpet5PS()
|
||||||
|
// this.questionForm[this.pet5PSId] = pet5PS
|
||||||
|
// this.calculatePet5PS = pet5PS
|
||||||
|
// this.setUptakeFormBaseline()
|
||||||
|
// }
|
||||||
|
// }
|
||||||
FusionEvent.$emit('addOrUpdateAnnotations', { data })
|
FusionEvent.$emit('addOrUpdateAnnotations', { data })
|
||||||
this.questionFormChangeState = true
|
this.questionFormChangeState = true
|
||||||
if (obj.QuestionType === 51 && !this.liverRender) {
|
if (obj.QuestionType === 51 && !this.liverRender) {
|
||||||
|
@ -519,13 +525,16 @@ export default {
|
||||||
OrderMarkName: remark
|
OrderMarkName: remark
|
||||||
}
|
}
|
||||||
if (measurement.type === 'CircleROI') {
|
if (measurement.type === 'CircleROI') {
|
||||||
this.setPet5PSCommentDisplay()
|
|
||||||
this.$set(this.questionForm, obj.QuestionId, null)
|
this.$set(this.questionForm, obj.QuestionId, null)
|
||||||
var pet5PS = this.setpet5PS()
|
|
||||||
this.questionForm[this.pet5PSId] = pet5PS
|
|
||||||
this.calculatePet5PS = pet5PS
|
|
||||||
this.setUptakeFormBaseline()
|
|
||||||
}
|
}
|
||||||
|
// if (measurement.type === 'CircleROI') {
|
||||||
|
// this.setPet5PSCommentDisplay()
|
||||||
|
// this.$set(this.questionForm, obj.QuestionId, null)
|
||||||
|
// var pet5PS = this.setpet5PS()
|
||||||
|
// this.questionForm[this.pet5PSId] = pet5PS
|
||||||
|
// this.calculatePet5PS = pet5PS
|
||||||
|
// this.setUptakeFormBaseline()
|
||||||
|
// }
|
||||||
FusionEvent.$emit('addOrUpdateAnnotations', { data })
|
FusionEvent.$emit('addOrUpdateAnnotations', { data })
|
||||||
this.questionFormChangeState = true
|
this.questionFormChangeState = true
|
||||||
this.setQuestionStatus(this.questions, this.measurements[idx].QuestionType)
|
this.setQuestionStatus(this.questions, this.measurements[idx].QuestionType)
|
||||||
|
@ -534,11 +543,11 @@ export default {
|
||||||
var idx = this.measurements.findIndex(i => i.OrderMarkName === remark)
|
var idx = this.measurements.findIndex(i => i.OrderMarkName === remark)
|
||||||
if (idx === -1) return
|
if (idx === -1) return
|
||||||
this.$set(this.questionForm, this.measurements[idx].QuestionId, '')
|
this.$set(this.questionForm, this.measurements[idx].QuestionId, '')
|
||||||
var pet5PS = this.setpet5PS()
|
// var pet5PS = this.setpet5PS()
|
||||||
this.questionForm[this.pet5PSId] = pet5PS
|
// this.questionForm[this.pet5PSId] = pet5PS
|
||||||
this.calculatePet5PS = pet5PS
|
// this.calculatePet5PS = pet5PS
|
||||||
this.setPet5PSCommentDisplay()
|
// this.setPet5PSCommentDisplay()
|
||||||
this.setUptakeFormBaseline()
|
// this.setUptakeFormBaseline()
|
||||||
this.measurements[idx].OtherMeasureData = ''
|
this.measurements[idx].OtherMeasureData = ''
|
||||||
this.currentQsId = this.measurements[idx].QuestionId
|
this.currentQsId = this.measurements[idx].QuestionId
|
||||||
// const { QuestionId, QuestionType } = this.measurements[idx]
|
// const { QuestionId, QuestionType } = this.measurements[idx]
|
||||||
|
@ -575,7 +584,7 @@ export default {
|
||||||
setUptakeFormBaseline() {
|
setUptakeFormBaseline() {
|
||||||
// 自动计算与基线相比摄取值变化
|
// 自动计算与基线相比摄取值变化
|
||||||
if (!this.isBaseLineTask) {
|
if (!this.isBaseLineTask) {
|
||||||
console.log('setUptakeFormBaseline: ',this.questionForm[this.pet5PSId],this.baseLinePET5PS)
|
console.log('setUptakeFormBaseline: ', this.questionForm[this.pet5PSId], this.baseLinePET5PS)
|
||||||
if (this.questionForm[this.pet5PSId] > 0) {
|
if (this.questionForm[this.pet5PSId] > 0) {
|
||||||
// 当前访视的PET 5ps评分大于基线的PET 5ps评分 增大
|
// 当前访视的PET 5ps评分大于基线的PET 5ps评分 增大
|
||||||
// 当前访视的PET 5ps评分小于基线的PET 5ps评分 减小
|
// 当前访视的PET 5ps评分小于基线的PET 5ps评分 减小
|
||||||
|
@ -619,7 +628,7 @@ export default {
|
||||||
return ''
|
return ''
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
resetSuvQuestions() {
|
resetSuvQuestions(type = 0) {
|
||||||
this.loading = true
|
this.loading = true
|
||||||
var params = {
|
var params = {
|
||||||
trialId: this.trialId,
|
trialId: this.trialId,
|
||||||
|
@ -634,40 +643,41 @@ export default {
|
||||||
// this.$set(this.questionForm, v.Id, v.Answer ? v.Answer : null)
|
// this.$set(this.questionForm, v.Id, v.Answer ? v.Answer : null)
|
||||||
// }
|
// }
|
||||||
if (v.Childrens.length > 0) {
|
if (v.Childrens.length > 0) {
|
||||||
this.setSuvChild(v.Childrens)
|
this.setSuvChild(v.Childrens, type)
|
||||||
}
|
}
|
||||||
var pet5PS = this.setpet5PS()
|
// var pet5PS = this.setpet5PS()
|
||||||
this.questionForm[this.pet5PSId] = pet5PS
|
// this.questionForm[this.pet5PSId] = pet5PS
|
||||||
this.calculatePet5PS = pet5PS
|
// this.calculatePet5PS = pet5PS
|
||||||
this.setPet5PSCommentDisplay()
|
// this.setPet5PSCommentDisplay()
|
||||||
this.setUptakeFormBaseline()
|
// this.setUptakeFormBaseline()
|
||||||
this.questionFormChangeState = true
|
this.questionFormChangeState = true
|
||||||
})
|
})
|
||||||
|
|
||||||
this.loading = false
|
this.loading = false
|
||||||
}).catch(() => { this.loading = false })
|
}).catch(() => { this.loading = false })
|
||||||
},
|
},
|
||||||
setSuvChild(obj) {
|
setSuvChild(obj, type) {
|
||||||
obj.forEach(i => {
|
obj.forEach(i => {
|
||||||
if (i.QuestionType === 53) {
|
if (i.QuestionType === 53 && !type) {
|
||||||
// SUVmax;
|
// SUVmax;
|
||||||
this.$set(this.questionForm, i.Id, i.Answer ? i.Answer : null)
|
this.$set(this.questionForm, i.Id, i.Answer ? i.Answer : null)
|
||||||
}
|
}
|
||||||
if (i.QuestionType === 54) {
|
if (i.QuestionType === 54 && !type) {
|
||||||
// SUVmax所在病灶;
|
// SUVmax所在病灶;
|
||||||
this.$set(this.questionForm, i.Id, i.Answer ? i.Answer : null)
|
this.$set(this.questionForm, i.Id, i.Answer ? i.Answer : null)
|
||||||
}
|
}
|
||||||
// if (i.QuestionType === 55) {
|
if (i.QuestionType === 55) {
|
||||||
// // PET 5PS评分;
|
// PET 5PS评分;
|
||||||
// this.$set(this.questionForm, i.Id, i.Answer ? i.Answer : null)
|
this.$set(this.questionForm, i.Id, i.Answer ? i.Answer : null)
|
||||||
// }
|
this.calculatePet5PS = i.Answer
|
||||||
// if (i.QuestionType === 56) {
|
}
|
||||||
// // 与基线相比摄取值变化;
|
if (i.QuestionType === 56) {
|
||||||
// this.$set(this.questionForm, i.Id, i.Answer ? i.Answer : null)
|
// 与基线相比摄取值变化;
|
||||||
// }
|
this.$set(this.questionForm, i.Id, i.Answer ? i.Answer : null)
|
||||||
|
}
|
||||||
|
|
||||||
if (i.Childrens && i.Childrens.length > 0) {
|
if (i.Childrens && i.Childrens.length > 0) {
|
||||||
this.setSuvChild(i.Childrens)
|
this.setSuvChild(i.Childrens, type)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
|
@ -30,7 +30,7 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
// import { uploadPrintscreen } from '@/api/reading'
|
// import { uploadPrintscreen } from '@/api/reading'
|
||||||
import { saveTaskQuestion, getSplenicState, getSplenicVerify, getCanChooseNotMerge } from '@/api/trials'
|
import { saveTaskQuestion, getSplenicState, getSplenicVerify, getCanChooseNotMerge, getDicomReadingQuestionAnswer } from '@/api/trials'
|
||||||
import QuestionItem from './QuestionItem'
|
import QuestionItem from './QuestionItem'
|
||||||
import DicomEvent from './DicomEvent'
|
import DicomEvent from './DicomEvent'
|
||||||
import { mapGetters } from 'vuex'
|
import { mapGetters } from 'vuex'
|
||||||
|
@ -146,12 +146,12 @@ export default {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
async getQuestions(visitTaskId) {
|
async getQuestions(visitTaskId, isRefresh = false) {
|
||||||
var isChangeVisitTask = this.visitTaskId !== visitTaskId
|
var isChangeVisitTask = this.visitTaskId !== visitTaskId
|
||||||
this.visitTaskId = visitTaskId
|
this.visitTaskId = visitTaskId
|
||||||
// const loading = this.$loading({ fullscreen: true })
|
// const loading = this.$loading({ fullscreen: true })
|
||||||
var idx = this.visitTaskList.findIndex(i => i.VisitTaskId === visitTaskId)
|
var idx = this.visitTaskList.findIndex(i => i.VisitTaskId === visitTaskId)
|
||||||
this.questions = []
|
var qs = []
|
||||||
if (idx > -1) {
|
if (idx > -1) {
|
||||||
this.isBaseLineTask = this.visitTaskList[idx].IsBaseLineTask
|
this.isBaseLineTask = this.visitTaskList[idx].IsBaseLineTask
|
||||||
this.readingTaskState = this.visitTaskList[idx].ReadingTaskState
|
this.readingTaskState = this.visitTaskList[idx].ReadingTaskState
|
||||||
|
@ -164,7 +164,7 @@ export default {
|
||||||
}
|
}
|
||||||
this.measurements.push(i)
|
this.measurements.push(i)
|
||||||
})
|
})
|
||||||
if (isChangeVisitTask) {
|
if (isChangeVisitTask || isRefresh) {
|
||||||
const { Result } = await getSplenicVerify(visitTaskId)
|
const { Result } = await getSplenicVerify(visitTaskId)
|
||||||
this.spleenInfo = Result
|
this.spleenInfo = Result
|
||||||
}
|
}
|
||||||
|
@ -210,15 +210,15 @@ export default {
|
||||||
if (v.Childrens.length > 0) {
|
if (v.Childrens.length > 0) {
|
||||||
this.setChild(v.Childrens)
|
this.setChild(v.Childrens)
|
||||||
}
|
}
|
||||||
this.questions.push(v)
|
qs.push(v)
|
||||||
}
|
}
|
||||||
// this.questions = questions
|
this.questions = Object.assign([], qs)
|
||||||
}
|
}
|
||||||
if (this.imageQualityIssuesId) {
|
if (this.imageQualityIssuesId) {
|
||||||
store.dispatch('reading/setImageQualityIssues', this.questionForm[this.imageQualityIssuesId])
|
store.dispatch('reading/setImageQualityIssues', this.questionForm[this.imageQualityIssuesId])
|
||||||
}
|
}
|
||||||
if (this.spleenLengthId && this.spleenInfo && this.readingTaskState < 2) {
|
if (this.spleenLengthId && this.spleenInfo && this.readingTaskState < 2) {
|
||||||
this.calculateSpleenStatus = this.setSpleenStatus(this.questionForm[this.spleenLengthId])
|
this.calculateSpleenStatus = this.spleenInfo.SplenicStatus
|
||||||
this.setSpleenCommentDisplay()
|
this.setSpleenCommentDisplay()
|
||||||
}
|
}
|
||||||
// loading.close()
|
// loading.close()
|
||||||
|
@ -370,7 +370,7 @@ export default {
|
||||||
this.$message.success(this.$t('common:message:savedSuccessfully'))
|
this.$message.success(this.$t('common:message:savedSuccessfully'))
|
||||||
var trialId = this.$route.query.trialId
|
var trialId = this.$route.query.trialId
|
||||||
await store.dispatch('reading/refreshDicomReadingQuestionAnswer', { trialId: trialId, visitTaskId: this.visitTaskId })
|
await store.dispatch('reading/refreshDicomReadingQuestionAnswer', { trialId: trialId, visitTaskId: this.visitTaskId })
|
||||||
this.getQuestions(this.visitTaskId)
|
this.getQuestions(this.visitTaskId, true)
|
||||||
this.loading = false
|
this.loading = false
|
||||||
if (this.isQulityIssues) {
|
if (this.isQulityIssues) {
|
||||||
DicomEvent.$emit('questionFormChange', false)
|
DicomEvent.$emit('questionFormChange', false)
|
||||||
|
@ -505,15 +505,15 @@ export default {
|
||||||
var idx = this.measurements.findIndex(i => i.QuestionId === Id)
|
var idx = this.measurements.findIndex(i => i.QuestionId === Id)
|
||||||
if (idx === -1) return
|
if (idx === -1) return
|
||||||
this.$set(this.questionForm, Id, '')
|
this.$set(this.questionForm, Id, '')
|
||||||
if (obj.QuestionType === 60 || obj.QuestionType === 61) {
|
// if (obj.QuestionType === 60 || obj.QuestionType === 61) {
|
||||||
this.$set(this.questionForm, this.spleenStatusId, '')
|
// this.$set(this.questionForm, this.spleenStatusId, '')
|
||||||
this.$set(this.questionForm, this.spleenLengthId, '')
|
// this.$set(this.questionForm, this.spleenLengthId, '')
|
||||||
}
|
// }
|
||||||
await store.dispatch('reading/removeNonTargetMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.measurements[idx].MeasureData, questionId: Id })
|
await store.dispatch('reading/removeNonTargetMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.measurements[idx].MeasureData, questionId: Id })
|
||||||
this.measurements.splice(idx, 1)
|
this.measurements.splice(idx, 1)
|
||||||
DicomEvent.$emit('getMeasureData')
|
DicomEvent.$emit('getMeasureData')
|
||||||
this.calculateSpleenStatus = ''
|
// this.calculateSpleenStatus = ''
|
||||||
this.setSpleenCommentDisplay()
|
// this.setSpleenCommentDisplay()
|
||||||
this.formChanged = true
|
this.formChanged = true
|
||||||
},
|
},
|
||||||
saveAnnotation(question) {
|
saveAnnotation(question) {
|
||||||
|
@ -551,6 +551,7 @@ export default {
|
||||||
const qsType = question.QuestionType === 60 ? 4 : question.QuestionType === 61 ? 5 : null
|
const qsType = question.QuestionType === 60 ? 4 : question.QuestionType === 61 ? 5 : null
|
||||||
saveTaskQuestion(qsType, params).then(async res => {
|
saveTaskQuestion(qsType, params).then(async res => {
|
||||||
this.$message.success(this.$t('common:message:savedSuccessfully'))
|
this.$message.success(this.$t('common:message:savedSuccessfully'))
|
||||||
|
await this.setQuestions()
|
||||||
this.loading = false
|
this.loading = false
|
||||||
this.$set(question, 'SaveEnum', 0)
|
this.$set(question, 'SaveEnum', 0)
|
||||||
DicomEvent.$emit('getReportInfo', true)
|
DicomEvent.$emit('getReportInfo', true)
|
||||||
|
@ -633,13 +634,13 @@ export default {
|
||||||
if (measurement.type === 'ArrowAnnotate') {
|
if (measurement.type === 'ArrowAnnotate') {
|
||||||
const location = measurement.location ? Number(measurement.location).toFixed(this.digitPlaces) : null
|
const location = measurement.location ? Number(measurement.location).toFixed(this.digitPlaces) : null
|
||||||
this.$set(this.questionForm, this.measurements[idx].QuestionId, location || null)
|
this.$set(this.questionForm, this.measurements[idx].QuestionId, location || null)
|
||||||
if (this.measurements[idx].QuestionType === 60 || this.measurements[idx].QuestionType === 61) {
|
// if (this.measurements[idx].QuestionType === 60 || this.measurements[idx].QuestionType === 61) {
|
||||||
var length = this.getSpleenL()
|
// var length = this.getSpleenL()
|
||||||
this.$set(this.questionForm, this.spleenLengthId, length)
|
// this.$set(this.questionForm, this.spleenLengthId, length)
|
||||||
var status = this.setSpleenStatus(length)
|
// var status = this.setSpleenStatus(length)
|
||||||
this.$set(this.questionForm, this.spleenStatusId, status)
|
// this.$set(this.questionForm, this.spleenStatusId, status)
|
||||||
this.calculateSpleenStatus = status
|
// this.calculateSpleenStatus = status
|
||||||
}
|
// }
|
||||||
|
|
||||||
// if (this.measurements[idx].QuestionType === 48 && length <= 130 && this.isBaseLineTask) {
|
// if (this.measurements[idx].QuestionType === 48 && length <= 130 && this.isBaseLineTask) {
|
||||||
// // 脾脏状态设置默认值为正常
|
// // 脾脏状态设置默认值为正常
|
||||||
|
@ -744,13 +745,13 @@ export default {
|
||||||
},
|
},
|
||||||
resetFormItemData(v) {
|
resetFormItemData(v) {
|
||||||
this.questionForm[v] = null
|
this.questionForm[v] = null
|
||||||
if (v === this.spleenLengthId) {
|
// if (v === this.spleenLengthId) {
|
||||||
var spleenStatus = this.questionForm[this.spleenStatusId]
|
// var spleenStatus = this.questionForm[this.spleenStatusId]
|
||||||
spleenStatus = isNaN(parseInt(spleenStatus)) ? null : parseInt(spleenStatus)
|
// spleenStatus = isNaN(parseInt(spleenStatus)) ? null : parseInt(spleenStatus)
|
||||||
if (spleenStatus === 5) {
|
// if (spleenStatus === 5) {
|
||||||
this.removeAnnotation({ Id: this.spleenLengthId })
|
// this.removeAnnotation({ Id: this.spleenLengthId })
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
this.formChanged = true
|
this.formChanged = true
|
||||||
},
|
},
|
||||||
setFormItemData(obj) {
|
setFormItemData(obj) {
|
||||||
|
@ -760,6 +761,45 @@ export default {
|
||||||
}
|
}
|
||||||
this.formChanged = true
|
this.formChanged = true
|
||||||
},
|
},
|
||||||
|
setQuestions() {
|
||||||
|
return new Promise(resolve => {
|
||||||
|
var params = {
|
||||||
|
trialId: this.$route.query.trialId,
|
||||||
|
visitTaskId: this.visitTaskId
|
||||||
|
}
|
||||||
|
getDicomReadingQuestionAnswer(params).then(res => {
|
||||||
|
var questions = []
|
||||||
|
for (var i = 0; i < res.Result.length; i++) {
|
||||||
|
var v = res.Result[i]
|
||||||
|
if (v.Type === 'group' && v.GroupClassify !== this.groupClassify) continue
|
||||||
|
questions.push(v)
|
||||||
|
}
|
||||||
|
questions.map((v) => {
|
||||||
|
if (v.Type === 'group' && v.Childrens.length === 0) return
|
||||||
|
if (v.Childrens.length > 0) {
|
||||||
|
this.setQSChild(v.Childrens)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
resolve()
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
setQSChild(obj) {
|
||||||
|
obj.forEach(i => {
|
||||||
|
if (i.QuestionType === 49) {
|
||||||
|
// 脾脏状态;
|
||||||
|
this.$set(this.questionForm, i.Id, i.Answer ? i.Answer : null)
|
||||||
|
this.calculateSpleenStatus = i.Answer
|
||||||
|
}
|
||||||
|
if (i.QuestionType === 48) {
|
||||||
|
// 脾脏长度;
|
||||||
|
this.$set(this.questionForm, i.Id, i.Answer ? i.Answer : null)
|
||||||
|
}
|
||||||
|
if (i.Childrens && i.Childrens.length > 0) {
|
||||||
|
this.setQSChild(i.Childrens)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
isJSONString(str) {
|
isJSONString(str) {
|
||||||
try {
|
try {
|
||||||
JSON.stringify(JSON.parse(str))
|
JSON.stringify(JSON.parse(str))
|
||||||
|
|
|
@ -75,8 +75,12 @@
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- 文件类型 -->
|
<!-- 文件类型 -->
|
||||||
<el-form-item v-if="form.Type === 'upload'" :label="$t('trials:readingUnit:qsList:title:FileType')"
|
<el-form-item
|
||||||
prop="FileType">
|
v-if="form.Type === 'upload'"
|
||||||
|
:label="$t('trials:readingUnit:qsList:title:FileType')"
|
||||||
|
prop="FileType"
|
||||||
|
:rules="[{ type: 'array', required: true, message: this.$t('common:ruleMessage:specify'), trigger: ['blur', 'change'] }]"
|
||||||
|
>
|
||||||
<el-checkbox-group
|
<el-checkbox-group
|
||||||
v-model="form.FileType"
|
v-model="form.FileType"
|
||||||
@change="(v) => {
|
@change="(v) => {
|
||||||
|
@ -803,12 +807,7 @@ export default {
|
||||||
trigger: ['blur', 'change']
|
trigger: ['blur', 'change']
|
||||||
}],
|
}],
|
||||||
GroupName: [{required: true, message: this.$t('common:ruleMessage:specify'), trigger: ['blur', 'change']},
|
GroupName: [{required: true, message: this.$t('common:ruleMessage:specify'), trigger: ['blur', 'change']},
|
||||||
{max: 50, message: `${this.$t('common:ruleMessage:maxLength')} 50`}],
|
{max: 50, message: `${this.$t('common:ruleMessage:maxLength')} 50`}]
|
||||||
FileType: [{
|
|
||||||
required: true,
|
|
||||||
message: this.$t('common:ruleMessage:select'),
|
|
||||||
trigger: ['blur', 'change']
|
|
||||||
}]
|
|
||||||
},
|
},
|
||||||
loading: false,
|
loading: false,
|
||||||
dicList: [],
|
dicList: [],
|
||||||
|
|
Loading…
Reference in New Issue