|
|
@@ -62,8 +62,9 @@
|
|
|
size="mini"
|
|
|
placeholder="请输入"
|
|
|
type="number"
|
|
|
+ @blur="normalizeRowResult(row)"
|
|
|
/>
|
|
|
- <span v-else>{{ row.jsjcdjg || '/' }}</span>
|
|
|
+ <span v-else>{{ formatResultDisplay(row.jsjcdjg) }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="新试剂测得结果" prop="xsjcdjg">
|
|
|
@@ -75,8 +76,9 @@
|
|
|
size="mini"
|
|
|
placeholder="请输入"
|
|
|
type="number"
|
|
|
+ @blur="normalizeRowResult(row)"
|
|
|
/>
|
|
|
- <span v-else>{{ row.xsjcdjg || '/' }}</span>
|
|
|
+ <span v-else>{{ formatResultDisplay(row.xsjcdjg) }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="实际偏倚" prop="sjcz" />
|
|
|
@@ -259,8 +261,8 @@ export default {
|
|
|
jyxm: item.jianCeXiangMu,
|
|
|
nd: item.nongDu,
|
|
|
ypbh: item.biaoBenHao,
|
|
|
- jsjcdjg: item.jiuJieGuo,
|
|
|
- xsjcdjg: item.xinJieGuo,
|
|
|
+ jsjcdjg: this.parseResultNumber(item.jiuJieGuo),
|
|
|
+ xsjcdjg: this.parseResultNumber(item.xinJieGuo),
|
|
|
pq: item.jieGuo,
|
|
|
fhl: item.biaoZhun,
|
|
|
sfxf: item.xiangFu,
|
|
|
@@ -424,7 +426,12 @@ export default {
|
|
|
const obj = {}
|
|
|
Object.keys(item).forEach((key) => {
|
|
|
if (keys[key]) {
|
|
|
- obj[keys[key]] = item[key]
|
|
|
+ const field = keys[key]
|
|
|
+ if (field === 'jsjcdjg' || field === 'xsjcdjg') {
|
|
|
+ obj[field] = this.parseResultNumber(item[key])
|
|
|
+ } else {
|
|
|
+ obj[field] = item[key]
|
|
|
+ }
|
|
|
}
|
|
|
})
|
|
|
list.push(obj)
|
|
|
@@ -533,13 +540,14 @@ export default {
|
|
|
},
|
|
|
// 计算结果
|
|
|
computedResult() {
|
|
|
+ this.reagentData.forEach((item) => this.normalizeRowResult(item))
|
|
|
// computedFlag:true表示里面有空数据或填写不规范数据
|
|
|
let computedFlag = false
|
|
|
this.reagentData.forEach((item) => {
|
|
|
if (
|
|
|
- !item.jsjcdjg ||
|
|
|
+ item.jsjcdjg === '' ||
|
|
|
item.jsjcdjg <= 0 ||
|
|
|
- !item.xsjcdjg ||
|
|
|
+ item.xsjcdjg === '' ||
|
|
|
item.xsjcdjg <= 0
|
|
|
) {
|
|
|
computedFlag = true
|
|
|
@@ -683,6 +691,25 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
},
|
|
|
+ // 试剂测得结果转数字,无效值返回空字符串
|
|
|
+ parseResultNumber(value) {
|
|
|
+ if (value === null || value === undefined || value === '') {
|
|
|
+ return ''
|
|
|
+ }
|
|
|
+ const num = Number(value)
|
|
|
+ return Number.isFinite(num) ? num : ''
|
|
|
+ },
|
|
|
+ normalizeRowResult(row) {
|
|
|
+ if (!row) return row
|
|
|
+ row.jsjcdjg = this.parseResultNumber(row.jsjcdjg)
|
|
|
+ row.xsjcdjg = this.parseResultNumber(row.xsjcdjg)
|
|
|
+ return row
|
|
|
+ },
|
|
|
+ formatResultDisplay(value) {
|
|
|
+ return value === '' || value === null || value === undefined
|
|
|
+ ? '/'
|
|
|
+ : value
|
|
|
+ },
|
|
|
// 去除小数*100精度方法
|
|
|
deleteAccuracy(num) {
|
|
|
// 是否带小数点
|