Compare commits

...

2 Commits

Author SHA1 Message Date
caiyiling 6c50257972 Merge branch 'main' of https://gitea.frp.extimaging.com/XCKJ/irc_web into main
continuous-integration/drone/push Build is passing Details
2024-12-30 15:58:55 +08:00
caiyiling 58b8cf1391 系统标准配置及MRI-PDFF交互更改 2024-12-30 15:58:23 +08:00
4 changed files with 61 additions and 40 deletions

View File

@ -327,6 +327,26 @@
/>
</el-select>
</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-select v-model="form.HighlightAnswerList" clearable multiple>
<template v-if="form.TypeValue">
@ -608,7 +628,8 @@ export default {
ClassifyTableQuestionId: null,
ClassifyAlgorithms: null,
ExportIdentification: 0,
ExportResult: []
ExportResult: [],
DefaultValue:null
// IsEnable: true
},
rules: {
@ -912,6 +933,7 @@ export default {
form.ClassifyAlgorithms = null
form.ExportIdentification = 0
form.ExportResult = []
form.DefaultValue = null
},
close() {
this.$emit('close')

View File

@ -1195,7 +1195,7 @@ export default {
})
DicomEvent.$on('addAnnotation', async obj => {
this.tmpData = Object.assign({}, obj.question)
await this.imageLocation(obj.locateInfo)
// await this.imageLocation(obj.locateInfo)
this.setToolActive('Probe', true, null, 'tableQuestion')
})
window.addEventListener('beforeunload', () => {

View File

@ -149,7 +149,7 @@
<el-radio-group
v-else-if="qs.Type==='radio'"
v-model="questionForm[qs.Id]"
:disabled="!isCurrentTask || readingTaskState>=2"
:disabled="!isCurrentTask || readingTaskState>=2 || (qs.QuestionMark === 1105 && isDisabledMeasurableRadio)"
@change="((val)=>{formItemChange(val, qs)})"
>
<template v-if="qs.DictionaryCode.length > 0">
@ -272,7 +272,8 @@ export default {
markList: [],
digitPlaces: 2,
isMeasurableId: '',
isExitsMarks: false
isExitsMarks: false,
isDisabledMeasurableRadio: false
}
},
mounted() {
@ -318,11 +319,13 @@ export default {
this.originalQuestionForm = { ...this.questionForm }
this.markList = []
this.isExitsMarks = false
this.isDisabledMeasurableRadio = false
if (this.answers.TableQuestionMarkList) {
let arr = JSON.parse(this.answers.TableQuestionMarkList)
arr.map(i=>{
if (i.MeasureData) {
this.isExitsMarks = true
this.isDisabledMeasurableRadio = true
}
this.markList.push({tableQuestionId: i.TableQuestionId, measureData: i, saveEnum: 1})
})
@ -371,38 +374,6 @@ export default {
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) {
//
this.$set(this.questionForm, 'saveTypeEnum', 1)
@ -413,6 +384,11 @@ export default {
let meanId = this.getQuestionId(1104)
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)
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
}
return mean ? mean.toFixed(this.digitPlaces) : null;
return mean ? mean.toFixed(this.digitPlaces) : '';
},
setMeasureData(measureData, isInit = false) {
return new Promise(resolve => {
@ -475,11 +451,17 @@ export default {
this.markList[i].saveEnum = 0
this.markList[i].measureData = data
}
this.isDisabledMeasurableRadio = true
resolve()
})
},
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)
this.activeQuestionId = qs.Id
this.activeQuestionMark= qs.QuestionMark
@ -501,6 +483,9 @@ export default {
return false
}
},
getIsExitsMarks() {
return this.markList.findIndex(i=>i.measureData && i.measureData.MeasureData) > -1 ? true : false
},
async removeAnnotation(qs) {
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 })
@ -524,6 +509,7 @@ export default {
this.$set(this.questionForm, this.markList[i].tableQuestionId, '')
let meanId = this.getQuestionId(1104)
this.$set(this.questionForm, meanId, '')
this.isDisabledMeasurableRadio = this.getIsExitsMarks()
},
locateAnnotation(qs) {
let i = this.markList.findIndex(i=>i.tableQuestionId === qs.Id)
@ -698,7 +684,7 @@ export default {
let l3Id = this.getQuestionId(1103)
this.$set(this.questionForm, l3Id, '')
let meanId = this.getQuestionId(1104)
this.$set(this.questionForm, meanId, '')
this.$set(this.questionForm, meanId, 'NA')
}
const loading = this.$loading({ fullscreen: true })
@ -744,7 +730,7 @@ export default {
const isMeasurable = this.getQuestionVal(1105)
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('close')
this.$emit('close')
DicomEvent.$emit('getReportInfo', true)
DicomEvent.$emit('setMeasuredToolsPassive')
if (parseInt(this.questionForm[this.isMeasurableId]) === 0 && isResetMarks) {

View File

@ -548,6 +548,19 @@ export default {
if (item.Childrens[liverSegmentIdx].Answer.length > 0) {
let v = item.Childrens[liverSegmentIdx].Answer[0].Answer
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)
}
}
}