自定义阅片更改
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
9c156ec1e6
commit
70fcd15ab7
|
@ -1091,11 +1091,7 @@ export default {
|
||||||
if (val !== 'select' && val !== 'radio') {
|
if (val !== 'select' && val !== 'radio') {
|
||||||
data.IsJudgeQuestion = false
|
data.IsJudgeQuestion = false
|
||||||
}
|
}
|
||||||
if (val === 'table' || val === 'basicTable') {
|
|
||||||
data.IsRequired = 2
|
|
||||||
} else {
|
|
||||||
data.LesionType = null
|
|
||||||
}
|
|
||||||
if (val === 'number' || val === 'calculation') {
|
if (val === 'number' || val === 'calculation') {
|
||||||
data.Unit = 0
|
data.Unit = 0
|
||||||
} else {
|
} else {
|
||||||
|
@ -1106,6 +1102,8 @@ export default {
|
||||||
} else {
|
} else {
|
||||||
data.MaxAnswerLength = null
|
data.MaxAnswerLength = null
|
||||||
}
|
}
|
||||||
|
data.IsRequired = 2
|
||||||
|
data.LesionType = null
|
||||||
data.QuestionGenre = null
|
data.QuestionGenre = null
|
||||||
data.DictionaryCode = ''
|
data.DictionaryCode = ''
|
||||||
data.TypeValue = ''
|
data.TypeValue = ''
|
||||||
|
|
|
@ -583,7 +583,7 @@ export default {
|
||||||
ParentTriggerValue: '',
|
ParentTriggerValue: '',
|
||||||
ShowOrder: 0,
|
ShowOrder: 0,
|
||||||
ShowQuestion: 0,
|
ShowQuestion: 0,
|
||||||
IsRequired: true,
|
IsRequired: 2,
|
||||||
Remark: '',
|
Remark: '',
|
||||||
RelevanceId: '',
|
RelevanceId: '',
|
||||||
RelevanceValue: '',
|
RelevanceValue: '',
|
||||||
|
@ -875,7 +875,7 @@ export default {
|
||||||
}
|
}
|
||||||
form.TypeValue = ''
|
form.TypeValue = ''
|
||||||
form.ValueType = ''
|
form.ValueType = ''
|
||||||
|
form.IsRequired = 2
|
||||||
form.TableQuestionType = null
|
form.TableQuestionType = null
|
||||||
form.DependParentId = ''
|
form.DependParentId = ''
|
||||||
form.DataTableColumn = ''
|
form.DataTableColumn = ''
|
||||||
|
|
|
@ -120,9 +120,9 @@
|
||||||
<template v-else>
|
<template v-else>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="val in question.TypeValue.split('|')"
|
v-for="val in question.TypeValue.split('|')"
|
||||||
:key="val"
|
:key="val.trim()"
|
||||||
:label="val"
|
:label="val.trim()"
|
||||||
:value="val"
|
:value="val.trim()"
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
@ -135,10 +135,10 @@
|
||||||
>
|
>
|
||||||
<el-radio
|
<el-radio
|
||||||
v-for="val in question.TypeValue.split('|')"
|
v-for="val in question.TypeValue.split('|')"
|
||||||
:key="val"
|
:key="val.trim()"
|
||||||
:label="val"
|
:label="val.trim()"
|
||||||
>
|
>
|
||||||
{{ val }}
|
{{ val.trim() }}
|
||||||
</el-radio>
|
</el-radio>
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
<!-- 复选框 -->
|
<!-- 复选框 -->
|
||||||
|
@ -149,17 +149,30 @@
|
||||||
<el-checkbox
|
<el-checkbox
|
||||||
v-for="val in question.TypeValue.split('|')"
|
v-for="val in question.TypeValue.split('|')"
|
||||||
:key="val"
|
:key="val"
|
||||||
:label="val"
|
:label="val.trim()"
|
||||||
>
|
>
|
||||||
{{ val }}
|
{{ val.trim() }}
|
||||||
</el-checkbox>
|
</el-checkbox>
|
||||||
</el-checkbox-group>
|
</el-checkbox-group>
|
||||||
<!-- 自动分类 -->
|
<!-- 自动分类 -->
|
||||||
<el-input
|
<el-input
|
||||||
v-if="question.Type === 'class'"
|
v-if="question.Type === 'class' && !question.TypeValue"
|
||||||
v-model="questionForm[question.Id]"
|
v-model="questionForm[question.Id]"
|
||||||
disabled
|
disabled
|
||||||
/>
|
/>
|
||||||
|
<el-radio-group
|
||||||
|
v-if="question.Type === 'class' && question.TypeValue"
|
||||||
|
v-model="questionForm[question.Id]"
|
||||||
|
disabled
|
||||||
|
>
|
||||||
|
<el-radio
|
||||||
|
v-for="item of question.TypeValue.split('|')"
|
||||||
|
:key="item.trim()"
|
||||||
|
:label="item.trim()"
|
||||||
|
>
|
||||||
|
{{ item.trim() }}
|
||||||
|
</el-radio>
|
||||||
|
</el-radio-group>
|
||||||
<!-- 自动计算 -->
|
<!-- 自动计算 -->
|
||||||
<!-- :precision="2" :step="0.1" :max="10" -->
|
<!-- :precision="2" :step="0.1" :max="10" -->
|
||||||
<el-input
|
<el-input
|
||||||
|
@ -308,9 +321,8 @@
|
||||||
:type="addOrEdit.type"
|
:type="addOrEdit.type"
|
||||||
:CalculationList="CalculationTabelList"
|
:CalculationList="CalculationTabelList"
|
||||||
@formItemTableNumberChange="formItemTableNumberChange"
|
@formItemTableNumberChange="formItemTableNumberChange"
|
||||||
@setFormItemData="setFormItemData"
|
@resetFormItemData="resetTableFormItemData"
|
||||||
@resetFormItemData="resetFormItemData"
|
@setFormItemData="setFormTableItemData"
|
||||||
@setFormTableItemData="setFormTableItemData"
|
|
||||||
/>
|
/>
|
||||||
</el-form>
|
</el-form>
|
||||||
</template>
|
</template>
|
||||||
|
@ -387,7 +399,8 @@ export default {
|
||||||
RowIndex: 0,
|
RowIndex: 0,
|
||||||
RowId: null,
|
RowId: null,
|
||||||
digitPlaces: 0,
|
digitPlaces: 0,
|
||||||
CalculationTabelList: []
|
CalculationTabelList: [],
|
||||||
|
classArr: []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
|
@ -395,31 +408,31 @@ export default {
|
||||||
deep: true,
|
deep: true,
|
||||||
immediate: true,
|
immediate: true,
|
||||||
handler(v, oldv) {
|
handler(v, oldv) {
|
||||||
try {
|
// try {
|
||||||
if (!v[this.question.Id] || !oldv[this.question.Id]) return
|
// if (!v[this.question.Id] || !oldv[this.question.Id]) return
|
||||||
} catch (e) {
|
// } catch (e) {
|
||||||
}
|
// }
|
||||||
this.formItemNumberChange(this.question.Id, false)
|
// this.formItemNumberChange(this.question.Id, false)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.digitPlaces = localStorage.getItem('digitPlaces') ? parseInt(localStorage.getItem('digitPlaces')) : 0
|
this.digitPlaces = localStorage.getItem('digitPlaces') ? parseInt(localStorage.getItem('digitPlaces')) : 0
|
||||||
if (this.question.Type === 'class') {
|
// if (this.question.Type === 'class') {
|
||||||
this.ClassifyAlgorithmsList = JSON.parse(this.question.ClassifyAlgorithms)
|
// this.ClassifyAlgorithmsList = JSON.parse(this.question.ClassifyAlgorithms)
|
||||||
}
|
// }
|
||||||
setInterval(()=> {
|
// setInterval(()=> {
|
||||||
if (this.question.Type === 'class') {
|
// if (this.question.Type === 'class') {
|
||||||
let o = this.ClassifyAlgorithmsList.find(v => {
|
// let o = this.ClassifyAlgorithmsList.find(v => {
|
||||||
return this.questionForm[this.question.ClassifyQuestionId] >= v.gt && this.questionForm[this.question.ClassifyQuestionId] < v.lt
|
// return this.questionForm[this.question.ClassifyQuestionId] >= v.gt && this.questionForm[this.question.ClassifyQuestionId] < v.lt
|
||||||
})
|
// })
|
||||||
if (this.questionForm[this.question.ClassifyQuestionId]) {
|
// if (this.questionForm[this.question.ClassifyQuestionId]) {
|
||||||
this.questionForm[this.question.Id] = o ? o.label : null
|
// this.questionForm[this.question.Id] = o ? o.label : null
|
||||||
} else {
|
// } else {
|
||||||
this.questionForm[this.question.Id] = null
|
// this.questionForm[this.question.Id] = null
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
}, 300)
|
// }, 300)
|
||||||
if (this.question.Type === 'upload') {
|
if (this.question.Type === 'upload') {
|
||||||
if (this.questionForm[this.question.Id]) {
|
if (this.questionForm[this.question.Id]) {
|
||||||
this.urls = this.questionForm[this.question.Id].split('|')
|
this.urls = this.questionForm[this.question.Id].split('|')
|
||||||
|
@ -474,8 +487,32 @@ export default {
|
||||||
})
|
})
|
||||||
|
|
||||||
},
|
},
|
||||||
setFormTableItemData(id, url) {
|
setFormTableItemData(obj) {
|
||||||
this.$set(this.QuestionsForm, id, url)
|
this.$set(this.QuestionsForm, obj.key, obj.val)
|
||||||
|
if (this.classArr.length > 0) {
|
||||||
|
let qs = this.classArr.find(i=>i.triggerId === obj.key)
|
||||||
|
if (!qs) return
|
||||||
|
let answer = null
|
||||||
|
let list = JSON.parse(qs.classifyAlgorithms)
|
||||||
|
if (qs.classifyType === 0) {
|
||||||
|
let o = list.find(v => {
|
||||||
|
return (
|
||||||
|
parseFloat(obj.val) >= parseFloat(v.gt) &&
|
||||||
|
parseFloat(obj.val) < parseFloat(v.lt)
|
||||||
|
)
|
||||||
|
})
|
||||||
|
answer = o ? o.label : null
|
||||||
|
} else if (qs.classifyType === 1) {
|
||||||
|
let o = list.find(v => {
|
||||||
|
return v.val.includes(obj.val)
|
||||||
|
})
|
||||||
|
answer = o ? o.label : null
|
||||||
|
}
|
||||||
|
this.$set(this.QuestionsForm, qs.classId, answer)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
resetTableFormItemData(obj) {
|
||||||
|
this.$set(this.QuestionsForm, obj.key, null)
|
||||||
},
|
},
|
||||||
handleSave() {
|
handleSave() {
|
||||||
console.log(this.QuestionsForm)
|
console.log(this.QuestionsForm)
|
||||||
|
@ -556,9 +593,10 @@ export default {
|
||||||
if (rules.CalculateQuestionList.length === 0) {
|
if (rules.CalculateQuestionList.length === 0) {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
let dataArr = []
|
||||||
rules.CalculateQuestionList.forEach((o, i) => {
|
rules.CalculateQuestionList.forEach((o, i) => {
|
||||||
if (i === 0) {
|
if (i === 0) {
|
||||||
if (rules.CustomCalculateMark > 4) {
|
if (rules.CustomCalculateMark > 4 && rules.CustomCalculateMark < 10) {
|
||||||
switch (rules.CustomCalculateMark) {
|
switch (rules.CustomCalculateMark) {
|
||||||
case 5:
|
case 5:
|
||||||
this.questionForm[o.QuestionId].forEach((q, qi) => {
|
this.questionForm[o.QuestionId].forEach((q, qi) => {
|
||||||
|
@ -605,6 +643,7 @@ export default {
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
num = parseFloat(this.questionForm[o.TableQuestionId])
|
num = parseFloat(this.questionForm[o.TableQuestionId])
|
||||||
|
dataArr.push(num)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
switch (rules.CustomCalculateMark) {
|
switch (rules.CustomCalculateMark) {
|
||||||
|
@ -624,6 +663,26 @@ export default {
|
||||||
num /= parseFloat(this.questionForm[o.TableQuestionId])
|
num /= parseFloat(this.questionForm[o.TableQuestionId])
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case 10:
|
||||||
|
if (!isNaN(parseFloat(this.questionForm[o.TableQuestionId]))) {
|
||||||
|
dataArr.push(parseFloat(this.questionForm[o.TableQuestionId]))
|
||||||
|
}
|
||||||
|
num = dataArr.length === 0 ? 0 : dataArr.reduce((acc, curr) => {
|
||||||
|
return acc + (typeof curr === "number" ? curr : 0);
|
||||||
|
}, 0) / dataArr.length;
|
||||||
|
break;
|
||||||
|
case 11:
|
||||||
|
if (!isNaN(parseFloat(this.questionForm[o.TableQuestionId]))) {
|
||||||
|
dataArr.push(parseFloat(this.questionForm[o.TableQuestionId]))
|
||||||
|
}
|
||||||
|
num = Math.max(...dataArr);
|
||||||
|
break;
|
||||||
|
case 12:
|
||||||
|
if (!isNaN(parseFloat(this.questionForm[o.TableQuestionId]))) {
|
||||||
|
dataArr.push(parseFloat(this.questionForm[o.TableQuestionId]))
|
||||||
|
}
|
||||||
|
num = Math.min(...dataArr);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
@ -700,6 +759,11 @@ export default {
|
||||||
this.addOrEdit.visible = true
|
this.addOrEdit.visible = true
|
||||||
this.addOrEdit.title = row.QuestionName + this.$t('trials:readingUnit:qsList:title:tableQs')
|
this.addOrEdit.title = row.QuestionName + this.$t('trials:readingUnit:qsList:title:tableQs')
|
||||||
this.QuestionsList = row.TableQuestions.Questions
|
this.QuestionsList = row.TableQuestions.Questions
|
||||||
|
row.TableQuestions.Questions.map(v=>{
|
||||||
|
if (v.Type === 'class') {
|
||||||
|
this.classArr.push({triggerId: v.ClassifyTableQuestionId, classId: v.Id, classifyAlgorithms: v.ClassifyAlgorithms, classifyType: v.ClassifyType})
|
||||||
|
}
|
||||||
|
})
|
||||||
this.AnswersList = row.TableQuestions.Answers
|
this.AnswersList = row.TableQuestions.Answers
|
||||||
if (!index && index !== 0) {
|
if (!index && index !== 0) {
|
||||||
this.addOrEdit.type = 'add'
|
this.addOrEdit.type = 'add'
|
||||||
|
@ -739,6 +803,8 @@ export default {
|
||||||
// }
|
// }
|
||||||
this.$emit('setFormItemData', { key: qs.Id, val: val })
|
this.$emit('setFormItemData', { key: qs.Id, val: val })
|
||||||
})
|
})
|
||||||
|
} else {
|
||||||
|
this.$emit('setFormItemData', { key: question.Id, val: v })
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
resetChild(obj) {
|
resetChild(obj) {
|
||||||
|
@ -754,6 +820,7 @@ export default {
|
||||||
},
|
},
|
||||||
setFormItemData(obj) {
|
setFormItemData(obj) {
|
||||||
this.$emit('setFormItemData', obj)
|
this.$emit('setFormItemData', obj)
|
||||||
|
|
||||||
},
|
},
|
||||||
async uploadScreenshot(param) {
|
async uploadScreenshot(param) {
|
||||||
console.log('uploadScreenshot')
|
console.log('uploadScreenshot')
|
||||||
|
|
|
@ -95,7 +95,25 @@
|
||||||
{{ val }}
|
{{ val }}
|
||||||
</el-checkbox>
|
</el-checkbox>
|
||||||
</el-checkbox-group>
|
</el-checkbox-group>
|
||||||
|
<!-- 自动分类 -->
|
||||||
|
<el-input
|
||||||
|
v-if="question.Type === 'class' && !question.TypeValue"
|
||||||
|
v-model="questionForm[question.Id]"
|
||||||
|
disabled
|
||||||
|
/>
|
||||||
|
<el-radio-group
|
||||||
|
v-if="question.Type === 'class' && question.TypeValue"
|
||||||
|
v-model="questionForm[question.Id]"
|
||||||
|
disabled
|
||||||
|
>
|
||||||
|
<el-radio
|
||||||
|
v-for="item of question.TypeValue.split('|')"
|
||||||
|
:key="item.trim()"
|
||||||
|
:label="item.trim()"
|
||||||
|
>
|
||||||
|
{{ item.trim() }}
|
||||||
|
</el-radio>
|
||||||
|
</el-radio-group>
|
||||||
<!-- 自动计算 -->
|
<!-- 自动计算 -->
|
||||||
<!-- :precision="2" :step="0.1" :max="10" -->
|
<!-- :precision="2" :step="0.1" :max="10" -->
|
||||||
<el-input
|
<el-input
|
||||||
|
@ -282,11 +300,11 @@ export default {
|
||||||
deep: true,
|
deep: true,
|
||||||
immediate: true,
|
immediate: true,
|
||||||
handler(v, oldv) {
|
handler(v, oldv) {
|
||||||
try {
|
// try {
|
||||||
if (!v[this.question.Id] || !oldv[this.question.Id]) return
|
// if (!v[this.question.Id] || !oldv[this.question.Id]) return
|
||||||
} catch (e) {
|
// } catch (e) {
|
||||||
}
|
// }
|
||||||
this.formItemNumberChange(this.question.Id, false)
|
// this.formItemNumberChange(this.question.Id, false)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -302,12 +320,12 @@ export default {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (this.type === 'edit') return
|
if (this.type === 'edit') return
|
||||||
if (this.question.Type === 'number') {
|
// if (this.question.Type === 'number') {
|
||||||
console.log(this.questionForm)
|
// console.log(this.questionForm)
|
||||||
this.$set(this.questionForm, this.question.Id, null)
|
// this.$set(this.questionForm, this.question.Id, null)
|
||||||
} else {
|
// } else {
|
||||||
this.$set(this.questionForm, this.question.Id, '')
|
// this.$set(this.questionForm, this.question.Id, '')
|
||||||
}
|
// }
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
save() {
|
save() {
|
||||||
|
@ -345,6 +363,8 @@ export default {
|
||||||
// }
|
// }
|
||||||
this.$emit('setFormItemData', { key: qs.Id, val: val })
|
this.$emit('setFormItemData', { key: qs.Id, val: val })
|
||||||
})
|
})
|
||||||
|
} else {
|
||||||
|
this.$emit('setFormItemData', { key: question.Id, val: v })
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
limitInput(value, q) {
|
limitInput(value, q) {
|
||||||
|
@ -361,10 +381,11 @@ export default {
|
||||||
if (rules.CalculateQuestionList.length === 0) {
|
if (rules.CalculateQuestionList.length === 0) {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
let dataArr = []
|
||||||
var count = 0
|
var count = 0
|
||||||
var maxList = [], minList = []
|
var maxList = [], minList = []
|
||||||
rules.CalculateQuestionList.forEach((o, i) => {
|
rules.CalculateQuestionList.forEach((o, i) => {
|
||||||
if (rules.CustomCalculateMark > 4) {
|
if (rules.CustomCalculateMark > 4 && rules.CustomCalculateMark < 10) {
|
||||||
if (i !== 0) {
|
if (i !== 0) {
|
||||||
switch (rules.CustomCalculateMark) {
|
switch (rules.CustomCalculateMark) {
|
||||||
case 7:
|
case 7:
|
||||||
|
@ -391,6 +412,7 @@ export default {
|
||||||
minList.push(this.questionForm[o.TableQuestionId])
|
minList.push(this.questionForm[o.TableQuestionId])
|
||||||
count = parseFloat(this.questionForm[o.TableQuestionId])
|
count = parseFloat(this.questionForm[o.TableQuestionId])
|
||||||
num = parseFloat(this.questionForm[o.TableQuestionId])
|
num = parseFloat(this.questionForm[o.TableQuestionId])
|
||||||
|
dataArr.push(num)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (i !== 0) {
|
if (i !== 0) {
|
||||||
|
@ -411,6 +433,26 @@ export default {
|
||||||
num /= parseFloat(this.questionForm[o.TableQuestionId])
|
num /= parseFloat(this.questionForm[o.TableQuestionId])
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case 10:
|
||||||
|
if (!isNaN(parseFloat(this.questionForm[o.TableQuestionId]))) {
|
||||||
|
dataArr.push(parseFloat(this.questionForm[o.TableQuestionId]))
|
||||||
|
}
|
||||||
|
num = dataArr.length === 0 ? 0 : dataArr.reduce((acc, curr) => {
|
||||||
|
return acc + (typeof curr === "number" ? curr : 0);
|
||||||
|
}, 0) / dataArr.length;
|
||||||
|
break;
|
||||||
|
case 11:
|
||||||
|
if (!isNaN(parseFloat(this.questionForm[o.TableQuestionId]))) {
|
||||||
|
dataArr.push(parseFloat(this.questionForm[o.TableQuestionId]))
|
||||||
|
}
|
||||||
|
num = Math.max(...dataArr);
|
||||||
|
break;
|
||||||
|
case 12:
|
||||||
|
if (!isNaN(parseFloat(this.questionForm[o.TableQuestionId]))) {
|
||||||
|
dataArr.push(parseFloat(this.questionForm[o.TableQuestionId]))
|
||||||
|
}
|
||||||
|
num = Math.min(...dataArr);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
num = parseFloat(this.questionForm[o.TableQuestionId])
|
num = parseFloat(this.questionForm[o.TableQuestionId])
|
||||||
|
@ -427,7 +469,6 @@ export default {
|
||||||
return num.toFixed(digitPlaces)
|
return num.toFixed(digitPlaces)
|
||||||
},
|
},
|
||||||
formItemNumberChange(v, question) {
|
formItemNumberChange(v, question) {
|
||||||
console.log(this.CalculationList)
|
|
||||||
this.CalculationList.forEach((v, i) => {
|
this.CalculationList.forEach((v, i) => {
|
||||||
console.log('v', v)
|
console.log('v', v)
|
||||||
var find = v.CalculateQuestionList.filter(o => {
|
var find = v.CalculateQuestionList.filter(o => {
|
||||||
|
@ -476,7 +517,7 @@ export default {
|
||||||
console.log(res)
|
console.log(res)
|
||||||
this.fileList.push({ name: param.file.name, path: this.$getObjectName(res.url), url: this.$getObjectName(res.url)})
|
this.fileList.push({ name: param.file.name, path: this.$getObjectName(res.url), url: this.$getObjectName(res.url)})
|
||||||
this.urls.push(this.$getObjectName(res.url))
|
this.urls.push(this.$getObjectName(res.url))
|
||||||
this.$emit('setFormTableItemData', this.question.Id, this.urls.length > 0 ? this.urls.join('|') : '')
|
this.$emit('setFormItemData', { key:this.question.Id, val: this.urls.length > 0 ? this.urls.join('|') : '' })
|
||||||
loading.close()
|
loading.close()
|
||||||
},
|
},
|
||||||
handleBeforeUpload(file) {
|
handleBeforeUpload(file) {
|
||||||
|
@ -516,7 +557,7 @@ export default {
|
||||||
this.imageUrl = ''
|
this.imageUrl = ''
|
||||||
this.fileList.splice(this.fileList.findIndex(f => f.url === file.url), 1)
|
this.fileList.splice(this.fileList.findIndex(f => f.url === file.url), 1)
|
||||||
this.urls.splice(this.fileList.findIndex(f => f === file.url), 1)
|
this.urls.splice(this.fileList.findIndex(f => f === file.url), 1)
|
||||||
this.$emit('setFormTableItemData', this.question.Id, this.urls.length > 0 ? this.urls.join('|') : '')
|
this.$emit('setFormItemData', { key:this.question.Id, val: this.urls.length > 0 ? this.urls.join('|') : '' })
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -57,7 +57,8 @@ export default {
|
||||||
readingTaskState: 0,
|
readingTaskState: 0,
|
||||||
activeName: 0,
|
activeName: 0,
|
||||||
CalculationList: [],
|
CalculationList: [],
|
||||||
IsBaseline: true
|
IsBaseline: true,
|
||||||
|
classArr: []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
|
@ -128,6 +129,9 @@ export default {
|
||||||
if (v.Type === 'table' || v.Type === 'basicTable') {
|
if (v.Type === 'table' || v.Type === 'basicTable') {
|
||||||
this.$set(this.questionForm, v.Id, v.TableQuestions.Answers)
|
this.$set(this.questionForm, v.Id, v.TableQuestions.Answers)
|
||||||
}
|
}
|
||||||
|
if (v.Type === 'class') {
|
||||||
|
this.classArr.push({triggerId: v.ClassifyQuestionId, classId: v.Id, classifyAlgorithms: v.ClassifyAlgorithms, classifyType: v.ClassifyType})
|
||||||
|
}
|
||||||
if (v.Type === 'number') {
|
if (v.Type === 'number') {
|
||||||
this.$set(this.questionForm, v.Id, v.Answer === '' ? '' : parseFloat(v.Answer).toFixed(localStorage.getItem('digitPlaces')))
|
this.$set(this.questionForm, v.Id, v.Answer === '' ? '' : parseFloat(v.Answer).toFixed(localStorage.getItem('digitPlaces')))
|
||||||
}
|
}
|
||||||
|
@ -136,7 +140,6 @@ export default {
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
this.questions = res.Result.SinglePage
|
this.questions = res.Result.SinglePage
|
||||||
console.log(this.questions)
|
|
||||||
this.isRender = true
|
this.isRender = true
|
||||||
this.loading = false
|
this.loading = false
|
||||||
})
|
})
|
||||||
|
@ -211,6 +214,9 @@ export default {
|
||||||
})
|
})
|
||||||
this.$set(this.questionForm, i.Id, i.TableQuestions.Answers)
|
this.$set(this.questionForm, i.Id, i.TableQuestions.Answers)
|
||||||
}
|
}
|
||||||
|
if (i.Type === 'class') {
|
||||||
|
this.classArr.push({triggerId: i.ClassifyQuestionId, classId: i.Id, classifyAlgorithms: i.ClassifyAlgorithms, classifyType: i.ClassifyType})
|
||||||
|
}
|
||||||
if (i.Type === 'number') {
|
if (i.Type === 'number') {
|
||||||
this.$set(this.questionForm, i.Id, i.Answer === '' ? '' : parseFloat(i.Answer).toFixed(localStorage.getItem('digitPlaces')))
|
this.$set(this.questionForm, i.Id, i.Answer === '' ? '' : parseFloat(i.Answer).toFixed(localStorage.getItem('digitPlaces')))
|
||||||
}
|
}
|
||||||
|
@ -224,6 +230,28 @@ export default {
|
||||||
},
|
},
|
||||||
setFormItemData(obj) {
|
setFormItemData(obj) {
|
||||||
this.$set(this.questionForm, obj.key, JSON.parse(JSON.stringify(obj.val)))
|
this.$set(this.questionForm, obj.key, JSON.parse(JSON.stringify(obj.val)))
|
||||||
|
if (this.classArr.length > 0) {
|
||||||
|
let qs = this.classArr.find(i=>i.triggerId === obj.key)
|
||||||
|
if (!qs) return
|
||||||
|
let answer = null
|
||||||
|
let list = JSON.parse(qs.classifyAlgorithms)
|
||||||
|
if (qs.classifyType === 0) {
|
||||||
|
let o = list.find(v => {
|
||||||
|
return (
|
||||||
|
parseFloat(obj.val) >= parseFloat(v.gt) &&
|
||||||
|
parseFloat(obj.val) < parseFloat(v.lt)
|
||||||
|
)
|
||||||
|
})
|
||||||
|
answer = o ? o.label : null
|
||||||
|
} else if (qs.classifyType === 1) {
|
||||||
|
let o = list.find(v => {
|
||||||
|
return v.val.includes(obj.val)
|
||||||
|
})
|
||||||
|
answer = o ? o.label.trim() : null
|
||||||
|
}
|
||||||
|
console.log(this.questionForm, qs.classId, answer)
|
||||||
|
this.$set(this.questionForm, qs.classId, answer)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -80,7 +80,7 @@
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<template v-if="readingTaskState<2 && task.VisitTaskId === visitTaskId && (scope.row.Type==='input' || scope.row.Type==='number' || scope.row.Type==='select' || scope.row.Type==='textarea' || scope.row.Type==='radio')">
|
<template v-if="readingTaskState<2 && task.VisitTaskId === visitTaskId && (scope.row.Type==='input' || scope.row.Type==='number' || scope.row.Type==='select' || scope.row.Type==='textarea' || scope.row.Type==='radio' || scope.row.Type === 'class')">
|
||||||
<template>
|
<template>
|
||||||
<!-- 输入框 -->
|
<!-- 输入框 -->
|
||||||
<div>
|
<div>
|
||||||
|
@ -117,7 +117,7 @@
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
</el-select>
|
</el-select>
|
||||||
<span v-else-if="questionForm[scope.row.QuestionId] instanceof Array && scope.row.Type==='select'">
|
<span v-else-if="questionForm[scope.row.QuestionId] instanceof Array && scope.row.Type==='select' || scope.row.Type==='radio'">
|
||||||
{{questionForm[scope.row.QuestionId][scope.row.xfIndex][scope.row.TableQuestionId]}}
|
{{questionForm[scope.row.QuestionId][scope.row.xfIndex][scope.row.TableQuestionId]}}
|
||||||
</span>
|
</span>
|
||||||
<el-select
|
<el-select
|
||||||
|
@ -138,6 +138,12 @@
|
||||||
<span v-else-if="scope.row.Type==='select' || scope.row.Type==='radio'">
|
<span v-else-if="scope.row.Type==='select' || scope.row.Type==='radio'">
|
||||||
{{questionForm[scope.row.QuestionId]}}
|
{{questionForm[scope.row.QuestionId]}}
|
||||||
</span>
|
</span>
|
||||||
|
<span v-else-if="questionForm[scope.row.QuestionId] instanceof Array && scope.row.Type==='class'">
|
||||||
|
{{questionForm[scope.row.QuestionId][scope.row.xfIndex][scope.row.TableQuestionId]}}
|
||||||
|
</span>
|
||||||
|
<span v-else-if="scope.row.Type==='class'">
|
||||||
|
{{questionForm[scope.row.QuestionId]}}
|
||||||
|
</span>
|
||||||
<el-input
|
<el-input
|
||||||
v-else-if="scope.row.DataSource !== 1 && questionForm[scope.row.QuestionId] instanceof Array && scope.row.Type==='number' && (scope.row.xfIndex || scope.row.xfIndex === 0) && !scope.row.IsShowInDicom && ((task.IsBaseLine && scope.row.LimitEdit === 1) || (!task.IsBaseLine && scope.row.LimitEdit === 2) || scope.row.LimitEdit === 0)"
|
v-else-if="scope.row.DataSource !== 1 && questionForm[scope.row.QuestionId] instanceof Array && scope.row.Type==='number' && (scope.row.xfIndex || scope.row.xfIndex === 0) && !scope.row.IsShowInDicom && ((task.IsBaseLine && scope.row.LimitEdit === 1) || (!task.IsBaseLine && scope.row.LimitEdit === 2) || scope.row.LimitEdit === 0)"
|
||||||
v-model="questionForm[scope.row.QuestionId][scope.row.xfIndex][scope.row.TableQuestionId]"
|
v-model="questionForm[scope.row.QuestionId][scope.row.xfIndex][scope.row.TableQuestionId]"
|
||||||
|
|
|
@ -991,7 +991,7 @@ export default {
|
||||||
ParentTriggerValueList: [],
|
ParentTriggerValueList: [],
|
||||||
ShowOrder: 0,
|
ShowOrder: 0,
|
||||||
ShowQuestion: 0,
|
ShowQuestion: 0,
|
||||||
IsRequired: 0,
|
IsRequired: 2,
|
||||||
IsJudgeQuestion: false,
|
IsJudgeQuestion: false,
|
||||||
GroupName: '',
|
GroupName: '',
|
||||||
GroupEnName: '',
|
GroupEnName: '',
|
||||||
|
@ -1469,11 +1469,6 @@ export default {
|
||||||
form.IsJudgeQuestion = false
|
form.IsJudgeQuestion = false
|
||||||
form.TypeValue = ''
|
form.TypeValue = ''
|
||||||
}
|
}
|
||||||
if (val === 'table') {
|
|
||||||
form.IsRequired = 2
|
|
||||||
} else {
|
|
||||||
form.LesionType = null
|
|
||||||
}
|
|
||||||
if (val === 'number') {
|
if (val === 'number') {
|
||||||
form.Unit = 0
|
form.Unit = 0
|
||||||
} else {
|
} else {
|
||||||
|
@ -1484,6 +1479,8 @@ export default {
|
||||||
} else {
|
} else {
|
||||||
form.MaxAnswerLength = null
|
form.MaxAnswerLength = null
|
||||||
}
|
}
|
||||||
|
form.IsRequired = 2
|
||||||
|
form.LesionType = null
|
||||||
form.ImageCount = 0
|
form.ImageCount = 0
|
||||||
form.QuestionGenre = null
|
form.QuestionGenre = null
|
||||||
form.CalculateQuestions = []
|
form.CalculateQuestions = []
|
||||||
|
|
|
@ -819,7 +819,7 @@ export default {
|
||||||
ParentTriggerValueList: [],
|
ParentTriggerValueList: [],
|
||||||
ShowOrder: 0,
|
ShowOrder: 0,
|
||||||
ShowQuestion: 0,
|
ShowQuestion: 0,
|
||||||
IsRequired: 0,
|
IsRequired: 2,
|
||||||
Remark: '',
|
Remark: '',
|
||||||
RelevanceId: '',
|
RelevanceId: '',
|
||||||
RelevanceValueList: [],
|
RelevanceValueList: [],
|
||||||
|
@ -1238,6 +1238,7 @@ export default {
|
||||||
} else {
|
} else {
|
||||||
form.MaxAnswerLength = null
|
form.MaxAnswerLength = null
|
||||||
}
|
}
|
||||||
|
form.IsRequired = 2
|
||||||
form.TypeValue = ''
|
form.TypeValue = ''
|
||||||
form.TableQuestionType = null
|
form.TableQuestionType = null
|
||||||
form.DependParentId = ''
|
form.DependParentId = ''
|
||||||
|
|
Loading…
Reference in New Issue