数值问题配置为可选择,数值输入框在未绑定标记时需要可手动输入保存
continuous-integration/drone/push Build is passing Details

main
wangxiaoshuang 2025-07-21 15:34:51 +08:00
parent e2e20a24fd
commit a1137c0a5b
3 changed files with 10 additions and 6 deletions

View File

@ -161,7 +161,8 @@
</el-select> </el-select>
<template v-if="question.Type === 'number' && (question.ImageMarkEnum === 1 || question.ImageMarkEnum === 2)"> <template v-if="question.Type === 'number' && (question.ImageMarkEnum === 1 || question.ImageMarkEnum === 2)">
<div style="display: flex;flex-direction: row;justify-content: flex-start;align-items: center;"> <div style="display: flex;flex-direction: row;justify-content: flex-start;align-items: center;">
<el-input type="number" @change="(val) => { formItemNumberChange(val, question) }" <el-input type="text" @change="(val) => { formItemNumberChange(val, question) }"
@input="numberInput(question.Id)"
@blur="questionsMarkStatus[question.Id] && questionsMarkStatus[question.Id].isMarked ? () => { } : handleMarkedQsBlur(questionForm[question.Id], questionForm, question.Id, question)" @blur="questionsMarkStatus[question.Id] && questionsMarkStatus[question.Id].isMarked ? () => { } : handleMarkedQsBlur(questionForm[question.Id], questionForm, question.Id, question)"
v-model="questionForm[question.Id]" v-model="questionForm[question.Id]"
:title="questionsMarkStatus[question.Id] ? questionsMarkStatus[question.Id].OrderMarkName : ''" :title="questionsMarkStatus[question.Id] ? questionsMarkStatus[question.Id].OrderMarkName : ''"
@ -509,7 +510,7 @@ export default {
} }
}, },
handleMarkedQsBlur(value, a, b, question) { handleMarkedQsBlur(value, a, b, question) {
this.$set(a, b, parseFloat(value).toFixed(this.digitPlaces)) this.$set(a, b, !isNaN(parseFloat(value)) ? parseFloat(value).toFixed(this.digitPlaces) : value)
this.$emit('operateImageMarker', { operateStateEnum: 6, question }) this.$emit('operateImageMarker', { operateStateEnum: 6, question })
}, },
async deleteTableCol(row, index) { async deleteTableCol(row, index) {

View File

@ -605,7 +605,9 @@ export default {
} }
markInfo[0].PicturePath = picturePath markInfo[0].PicturePath = picturePath
} }
markInfo[0].MarkId = annotation ? annotation.annotationUID : null if (markInfo && markInfo.length > 0) {
markInfo[0].MarkId = annotation ? annotation.annotationUID : null
}
await saveTaskQuestion(-10, { await saveTaskQuestion(-10, {
visitTaskId: this.visitTaskId, visitTaskId: this.visitTaskId,
answers, answers,
@ -614,7 +616,7 @@ export default {
this.$set(this.questionsMarkStatus, obj.question.Id, { this.$set(this.questionsMarkStatus, obj.question.Id, {
isMarked: !!this.questionMarkInfoList[index]?.MeasureData, isMarked: !!this.questionMarkInfoList[index]?.MeasureData,
isSaved: true, isSaved: true,
OrderMarkName: this.questionMarkInfoList[index].OrderMarkName OrderMarkName:index > -1 ? this.questionMarkInfoList[index].OrderMarkName : ''
}) })
if (annotation) { if (annotation) {
for (let i = 0; i < this.questionMarkInfoList.length; i++) { for (let i = 0; i < this.questionMarkInfoList.length; i++) {

View File

@ -80,7 +80,8 @@
<!-- 数值 --> <!-- 数值 -->
<template v-if="question.Type === 'number' && (question.ImageMarkEnum === 1 || question.ImageMarkEnum === 2)"> <template v-if="question.Type === 'number' && (question.ImageMarkEnum === 1 || question.ImageMarkEnum === 2)">
<div style="display: flex;flex-direction: row;justify-content: flex-start;align-items: center;"> <div style="display: flex;flex-direction: row;justify-content: flex-start;align-items: center;">
<el-input type="number" @change="(val) => { formItemNumberChange(val, question) }" <el-input type="text" @change="(val) => { formItemNumberChange(val, question) }"
@input="numberInput(question.Id)"
@blur="questionsMarkStatus[question.Id] && questionsMarkStatus[question.Id].isMarked ? () => { } : handleMarkedQsBlur(questionForm[question.Id], questionForm, question.Id, question)" @blur="questionsMarkStatus[question.Id] && questionsMarkStatus[question.Id].isMarked ? () => { } : handleMarkedQsBlur(questionForm[question.Id], questionForm, question.Id, question)"
v-model="questionForm[question.Id]" v-model="questionForm[question.Id]"
:title="questionsMarkStatus[rowId ? `${rowId}_${question.Id}` : question.Id] ? questionsMarkStatus[rowId ? `${rowId}_${question.Id}` : question.Id].OrderMarkName : ''" :title="questionsMarkStatus[rowId ? `${rowId}_${question.Id}` : question.Id] ? questionsMarkStatus[rowId ? `${rowId}_${question.Id}` : question.Id].OrderMarkName : ''"
@ -369,7 +370,7 @@ export default {
} }
}, },
handleMarkedQsBlur(value, a, b, question) { handleMarkedQsBlur(value, a, b, question) {
this.$set(a, b, parseFloat(value).toFixed(this.digitPlaces)) this.$set(a, b, !isNaN(parseFloat(value)) ? parseFloat(value).toFixed(this.digitPlaces) : value)
question.IsTableQuestion = true question.IsTableQuestion = true
// this.$emit('operateImageMarker', {operateStateEnum: 6, question}) // this.$emit('operateImageMarker', {operateStateEnum: 6, question})
}, },