Compare commits
2 Commits
1f6ee08a8b
...
6c50257972
Author | SHA1 | Date |
---|---|---|
|
6c50257972 | |
|
58b8cf1391 |
|
@ -327,6 +327,26 @@
|
||||||
/>
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item v-if="form.TableQuestionType === 3" label="默认值">
|
||||||
|
<el-select v-model="form.DefaultValue" clearable>
|
||||||
|
<el-option
|
||||||
|
v-for="item of form.DictionaryCode ? $d[form.DictionaryCode] : []"
|
||||||
|
:key="item.id"
|
||||||
|
:label="item.label"
|
||||||
|
:value="item.value.toString()"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item v-if="form.TableQuestionType === 0" label="默认值">
|
||||||
|
<el-select v-model="form.DefaultValue" clearable>
|
||||||
|
<el-option
|
||||||
|
v-for="item of form.TypeValue ? form.TypeValue.split('|') : []"
|
||||||
|
:key="item"
|
||||||
|
:label="item"
|
||||||
|
:value="item"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
<el-form-item v-if="form.Type === 'select' || form.Type === 'radio'" label="高亮标记值" prop="HighlightAnswerList">
|
<el-form-item v-if="form.Type === 'select' || form.Type === 'radio'" label="高亮标记值" prop="HighlightAnswerList">
|
||||||
<el-select v-model="form.HighlightAnswerList" clearable multiple>
|
<el-select v-model="form.HighlightAnswerList" clearable multiple>
|
||||||
<template v-if="form.TypeValue">
|
<template v-if="form.TypeValue">
|
||||||
|
@ -608,7 +628,8 @@ export default {
|
||||||
ClassifyTableQuestionId: null,
|
ClassifyTableQuestionId: null,
|
||||||
ClassifyAlgorithms: null,
|
ClassifyAlgorithms: null,
|
||||||
ExportIdentification: 0,
|
ExportIdentification: 0,
|
||||||
ExportResult: []
|
ExportResult: [],
|
||||||
|
DefaultValue:null
|
||||||
// IsEnable: true
|
// IsEnable: true
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
|
@ -912,6 +933,7 @@ export default {
|
||||||
form.ClassifyAlgorithms = null
|
form.ClassifyAlgorithms = null
|
||||||
form.ExportIdentification = 0
|
form.ExportIdentification = 0
|
||||||
form.ExportResult = []
|
form.ExportResult = []
|
||||||
|
form.DefaultValue = null
|
||||||
},
|
},
|
||||||
close() {
|
close() {
|
||||||
this.$emit('close')
|
this.$emit('close')
|
||||||
|
|
|
@ -1195,7 +1195,7 @@ export default {
|
||||||
})
|
})
|
||||||
DicomEvent.$on('addAnnotation', async obj => {
|
DicomEvent.$on('addAnnotation', async obj => {
|
||||||
this.tmpData = Object.assign({}, obj.question)
|
this.tmpData = Object.assign({}, obj.question)
|
||||||
await this.imageLocation(obj.locateInfo)
|
// await this.imageLocation(obj.locateInfo)
|
||||||
this.setToolActive('Probe', true, null, 'tableQuestion')
|
this.setToolActive('Probe', true, null, 'tableQuestion')
|
||||||
})
|
})
|
||||||
window.addEventListener('beforeunload', () => {
|
window.addEventListener('beforeunload', () => {
|
||||||
|
|
|
@ -149,7 +149,7 @@
|
||||||
<el-radio-group
|
<el-radio-group
|
||||||
v-else-if="qs.Type==='radio'"
|
v-else-if="qs.Type==='radio'"
|
||||||
v-model="questionForm[qs.Id]"
|
v-model="questionForm[qs.Id]"
|
||||||
:disabled="!isCurrentTask || readingTaskState>=2"
|
:disabled="!isCurrentTask || readingTaskState>=2 || (qs.QuestionMark === 1105 && isDisabledMeasurableRadio)"
|
||||||
@change="((val)=>{formItemChange(val, qs)})"
|
@change="((val)=>{formItemChange(val, qs)})"
|
||||||
>
|
>
|
||||||
<template v-if="qs.DictionaryCode.length > 0">
|
<template v-if="qs.DictionaryCode.length > 0">
|
||||||
|
@ -272,7 +272,8 @@ export default {
|
||||||
markList: [],
|
markList: [],
|
||||||
digitPlaces: 2,
|
digitPlaces: 2,
|
||||||
isMeasurableId: '',
|
isMeasurableId: '',
|
||||||
isExitsMarks: false
|
isExitsMarks: false,
|
||||||
|
isDisabledMeasurableRadio: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
|
@ -318,11 +319,13 @@ export default {
|
||||||
this.originalQuestionForm = { ...this.questionForm }
|
this.originalQuestionForm = { ...this.questionForm }
|
||||||
this.markList = []
|
this.markList = []
|
||||||
this.isExitsMarks = false
|
this.isExitsMarks = false
|
||||||
|
this.isDisabledMeasurableRadio = false
|
||||||
if (this.answers.TableQuestionMarkList) {
|
if (this.answers.TableQuestionMarkList) {
|
||||||
let arr = JSON.parse(this.answers.TableQuestionMarkList)
|
let arr = JSON.parse(this.answers.TableQuestionMarkList)
|
||||||
arr.map(i=>{
|
arr.map(i=>{
|
||||||
if (i.MeasureData) {
|
if (i.MeasureData) {
|
||||||
this.isExitsMarks = true
|
this.isExitsMarks = true
|
||||||
|
this.isDisabledMeasurableRadio = true
|
||||||
}
|
}
|
||||||
this.markList.push({tableQuestionId: i.TableQuestionId, measureData: i, saveEnum: 1})
|
this.markList.push({tableQuestionId: i.TableQuestionId, measureData: i, saveEnum: 1})
|
||||||
})
|
})
|
||||||
|
@ -371,38 +374,6 @@ export default {
|
||||||
return ''
|
return ''
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
getOrganInfoList(isLymphNodes = null) {
|
|
||||||
return new Promise(async resolve => {
|
|
||||||
// var param = {
|
|
||||||
// trialId: this.trialId,
|
|
||||||
// visitTaskId: this.visitTaskId,
|
|
||||||
// lesionType: this.lesionType,
|
|
||||||
// isEnable: true
|
|
||||||
// }
|
|
||||||
// if (isLymphNodes !== undefined && isLymphNodes !== null) {
|
|
||||||
// param.isLymphNodes = isLymphNodes
|
|
||||||
// }
|
|
||||||
// getTrialOrganList(param).then(res => {
|
|
||||||
// this.organList = res.Result
|
|
||||||
// resolve()
|
|
||||||
// })
|
|
||||||
if (!sessionStorage.getItem('organList')) {
|
|
||||||
await store.dispatch('reading/getOrganInfo', this.visitTaskId)
|
|
||||||
}
|
|
||||||
var organList = sessionStorage.getItem('organList') ? JSON.parse(sessionStorage.getItem('organList')) : []
|
|
||||||
var idx = organList.findIndex(i => i.LesionType === this.lesionType)
|
|
||||||
if (idx > -1) {
|
|
||||||
organList = organList[idx].OrganList
|
|
||||||
|
|
||||||
if (!isNaN(parseInt(isLymphNodes))) {
|
|
||||||
this.organList = organList.filter((item) => item.IsLymphNodes === parseInt(isLymphNodes))
|
|
||||||
} else {
|
|
||||||
this.organList = organList
|
|
||||||
}
|
|
||||||
}
|
|
||||||
resolve()
|
|
||||||
})
|
|
||||||
},
|
|
||||||
async formItemChange(v, qs) {
|
async formItemChange(v, qs) {
|
||||||
// 维护平均值、是否可测量等信息
|
// 维护平均值、是否可测量等信息
|
||||||
this.$set(this.questionForm, 'saveTypeEnum', 1)
|
this.$set(this.questionForm, 'saveTypeEnum', 1)
|
||||||
|
@ -413,6 +384,11 @@ export default {
|
||||||
let meanId = this.getQuestionId(1104)
|
let meanId = this.getQuestionId(1104)
|
||||||
this.$set(this.questionForm, meanId, newMean ? newMean : '')
|
this.$set(this.questionForm, meanId, newMean ? newMean : '')
|
||||||
}
|
}
|
||||||
|
} else if (qs.QuestionMark === 1105) {
|
||||||
|
if (!v) {
|
||||||
|
let meanId = this.getQuestionId(1104)
|
||||||
|
this.$set(this.questionForm, meanId, 'NA')
|
||||||
|
}
|
||||||
}
|
}
|
||||||
const isMeasurable = this.getQuestionVal(1105)
|
const isMeasurable = this.getQuestionVal(1105)
|
||||||
this.$emit('resetQuestions', { mean, isMeasurable, saveTypeEnum: this.questionForm.saveTypeEnum, rowIndex: this.rowIndex, questionId: this.parentQsId, anwsers: this.questionForm })
|
this.$emit('resetQuestions', { mean, isMeasurable, saveTypeEnum: this.questionForm.saveTypeEnum, rowIndex: this.rowIndex, questionId: this.parentQsId, anwsers: this.questionForm })
|
||||||
|
@ -427,7 +403,7 @@ export default {
|
||||||
mean = sum / 3
|
mean = sum / 3
|
||||||
}
|
}
|
||||||
|
|
||||||
return mean ? mean.toFixed(this.digitPlaces) : null;
|
return mean ? mean.toFixed(this.digitPlaces) : '';
|
||||||
},
|
},
|
||||||
setMeasureData(measureData, isInit = false) {
|
setMeasureData(measureData, isInit = false) {
|
||||||
return new Promise(resolve => {
|
return new Promise(resolve => {
|
||||||
|
@ -475,11 +451,17 @@ export default {
|
||||||
this.markList[i].saveEnum = 0
|
this.markList[i].saveEnum = 0
|
||||||
this.markList[i].measureData = data
|
this.markList[i].measureData = data
|
||||||
}
|
}
|
||||||
|
this.isDisabledMeasurableRadio = true
|
||||||
resolve()
|
resolve()
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
addAnnotation(qs) {
|
addAnnotation(qs) {
|
||||||
|
// 判断是否有测量数据未保存
|
||||||
|
let i = this.markList.findIndex(i=>i.saveEnum === 0)
|
||||||
|
if (i > -1 && this.markList[i].measureData && this.markList[i].measureData.MeasureData) {
|
||||||
|
this.$message.warning(this.$t('trials:MRIPDFF:message:message3'))
|
||||||
|
return
|
||||||
|
}
|
||||||
let orderMarkName = this.getLesionName(this.orderMark, qs.QuestionMark)
|
let orderMarkName = this.getLesionName(this.orderMark, qs.QuestionMark)
|
||||||
this.activeQuestionId = qs.Id
|
this.activeQuestionId = qs.Id
|
||||||
this.activeQuestionMark= qs.QuestionMark
|
this.activeQuestionMark= qs.QuestionMark
|
||||||
|
@ -501,6 +483,9 @@ export default {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
getIsExitsMarks() {
|
||||||
|
return this.markList.findIndex(i=>i.measureData && i.measureData.MeasureData) > -1 ? true : false
|
||||||
|
},
|
||||||
async removeAnnotation(qs) {
|
async removeAnnotation(qs) {
|
||||||
let i = this.markList.findIndex(i=>i.tableQuestionId === qs.Id)
|
let i = this.markList.findIndex(i=>i.tableQuestionId === qs.Id)
|
||||||
DicomEvent.$emit('imageLocation', { questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex, visitTaskId: this.visitTaskId, lesionName: this.markList[i].measureData.OrderMarkName, lesionType: null, markTool: 'Probe', readingTaskState: this.readingTaskState, isMarked: true })
|
DicomEvent.$emit('imageLocation', { questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex, visitTaskId: this.visitTaskId, lesionName: this.markList[i].measureData.OrderMarkName, lesionType: null, markTool: 'Probe', readingTaskState: this.readingTaskState, isMarked: true })
|
||||||
|
@ -524,6 +509,7 @@ export default {
|
||||||
this.$set(this.questionForm, this.markList[i].tableQuestionId, '')
|
this.$set(this.questionForm, this.markList[i].tableQuestionId, '')
|
||||||
let meanId = this.getQuestionId(1104)
|
let meanId = this.getQuestionId(1104)
|
||||||
this.$set(this.questionForm, meanId, '')
|
this.$set(this.questionForm, meanId, '')
|
||||||
|
this.isDisabledMeasurableRadio = this.getIsExitsMarks()
|
||||||
},
|
},
|
||||||
locateAnnotation(qs) {
|
locateAnnotation(qs) {
|
||||||
let i = this.markList.findIndex(i=>i.tableQuestionId === qs.Id)
|
let i = this.markList.findIndex(i=>i.tableQuestionId === qs.Id)
|
||||||
|
@ -698,7 +684,7 @@ export default {
|
||||||
let l3Id = this.getQuestionId(1103)
|
let l3Id = this.getQuestionId(1103)
|
||||||
this.$set(this.questionForm, l3Id, '')
|
this.$set(this.questionForm, l3Id, '')
|
||||||
let meanId = this.getQuestionId(1104)
|
let meanId = this.getQuestionId(1104)
|
||||||
this.$set(this.questionForm, meanId, '')
|
this.$set(this.questionForm, meanId, 'NA')
|
||||||
}
|
}
|
||||||
|
|
||||||
const loading = this.$loading({ fullscreen: true })
|
const loading = this.$loading({ fullscreen: true })
|
||||||
|
@ -744,7 +730,7 @@ export default {
|
||||||
const isMeasurable = this.getQuestionVal(1105)
|
const isMeasurable = this.getQuestionVal(1105)
|
||||||
const mean = this.getQuestionVal(1104)
|
const mean = this.getQuestionVal(1104)
|
||||||
this.$emit('resetQuestions', { isMeasurable, mean, saveTypeEnum: this.questionForm.saveTypeEnum,rowIndex: this.rowIndex, questionId: this.parentQsId, anwsers: this.questionForm })
|
this.$emit('resetQuestions', { isMeasurable, mean, saveTypeEnum: this.questionForm.saveTypeEnum,rowIndex: this.rowIndex, questionId: this.parentQsId, anwsers: this.questionForm })
|
||||||
// this.$emit('close')
|
this.$emit('close')
|
||||||
DicomEvent.$emit('getReportInfo', true)
|
DicomEvent.$emit('getReportInfo', true)
|
||||||
DicomEvent.$emit('setMeasuredToolsPassive')
|
DicomEvent.$emit('setMeasuredToolsPassive')
|
||||||
if (parseInt(this.questionForm[this.isMeasurableId]) === 0 && isResetMarks) {
|
if (parseInt(this.questionForm[this.isMeasurableId]) === 0 && isResetMarks) {
|
||||||
|
|
|
@ -548,6 +548,19 @@ export default {
|
||||||
if (item.Childrens[liverSegmentIdx].Answer.length > 0) {
|
if (item.Childrens[liverSegmentIdx].Answer.length > 0) {
|
||||||
let v = item.Childrens[liverSegmentIdx].Answer[0].Answer
|
let v = item.Childrens[liverSegmentIdx].Answer[0].Answer
|
||||||
obj.QuestionName = this.$fd(item.Childrens[liverSegmentIdx].DictionaryCode, parseInt(v))
|
obj.QuestionName = this.$fd(item.Childrens[liverSegmentIdx].DictionaryCode, parseInt(v))
|
||||||
|
let Answers = {}
|
||||||
|
let mean = item.Childrens.findIndex(i => i.QuestionMark === 1104)
|
||||||
|
if (mean > -1) {
|
||||||
|
this.visitTaskList.forEach(v => {
|
||||||
|
const o = item.Childrens[mean].Answer.find(v1 => {
|
||||||
|
return v1.VisitTaskId === v.VisitTaskId
|
||||||
|
})
|
||||||
|
if (o) {
|
||||||
|
Answers[o.VisitTaskId] = o.Answer
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
this.$set(obj, 'Answers', Answers)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue