feat:分析计算问题
This commit is contained in:
@@ -62,7 +62,7 @@ export function calcAnalysisValue(group) {
|
|||||||
|
|
||||||
// 根据样品和配置列计算分析值
|
// 根据样品和配置列计算分析值
|
||||||
export function calcRowAnalysisValue(row, columnObj, dynamicsColumns) {
|
export function calcRowAnalysisValue(row, columnObj, dynamicsColumns) {
|
||||||
if (!columnObj.paramNo) return
|
if (!columnObj.paramNo || !row[columnObj.fieldIndex]) return
|
||||||
for (let i = 0; i < dynamicsColumns.length; i++) {
|
for (let i = 0; i < dynamicsColumns.length; i++) {
|
||||||
let curItem = dynamicsColumns[i]
|
let curItem = dynamicsColumns[i]
|
||||||
if (curItem.fieldIndex === columnObj.fieldIndex) continue
|
if (curItem.fieldIndex === columnObj.fieldIndex) continue
|
||||||
|
|||||||
@@ -718,14 +718,16 @@ const saveDetail = async () => {
|
|||||||
item.value = handleRoundFiveNumber(row[sourceKey].value, row.decimalPosition)
|
item.value = handleRoundFiveNumber(row[sourceKey].value, row.decimalPosition)
|
||||||
}
|
}
|
||||||
// 如果处理后的值不为空,重新赋值该字段到其他样品类型下的样品上,并触发每一个样品的计算
|
// 如果处理后的值不为空,重新赋值该字段到其他样品类型下的样品上,并触发每一个样品的计算
|
||||||
if (item.value !== null) {
|
for (const col of currentAssayType.value.columns) {
|
||||||
for (const col of currentAssayType.value.columns) {
|
if (col.fieldIndex === sourceKey) {
|
||||||
if (col.fieldIndex === sourceKey&&item.value) {
|
if (item.value) {
|
||||||
dynamicFormData[item.target] = item.value
|
dynamicFormData[item.target] = item.value
|
||||||
|
} else {
|
||||||
|
dynamicFormData[item.target] = row[sourceKey].value
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
updateTableDataByConfigFields()
|
|
||||||
}
|
}
|
||||||
|
updateTableDataByConfigFields()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
params.formValue = JSON.stringify(dynamicFormData)
|
params.formValue = JSON.stringify(dynamicFormData)
|
||||||
@@ -768,8 +770,10 @@ function updateTableDataByConfigFields() {
|
|||||||
if (!columnObj) continue
|
if (!columnObj) continue
|
||||||
tab.tableData.forEach(row => {
|
tab.tableData.forEach(row => {
|
||||||
// 赋值配置列参与计算
|
// 赋值配置列参与计算
|
||||||
|
if(row[columnObj.fieldIndex]){
|
||||||
row[columnObj.fieldIndex].value = dynamicFormData[key]
|
row[columnObj.fieldIndex].value = dynamicFormData[key]
|
||||||
calcRowAnalysisValue(row, columnObj, tab.columns)
|
calcRowAnalysisValue(row, columnObj, tab.columns)
|
||||||
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -198,8 +198,10 @@ async function updateTableDataByConfigFields() {
|
|||||||
if (!columnObj) continue
|
if (!columnObj) continue
|
||||||
tab.tableData.forEach(row => {
|
tab.tableData.forEach(row => {
|
||||||
// 赋值配置列参与计算
|
// 赋值配置列参与计算
|
||||||
|
if(row[columnObj.fieldIndex]){
|
||||||
row[columnObj.fieldIndex].value = formData[key]
|
row[columnObj.fieldIndex].value = formData[key]
|
||||||
calcRowAnalysisValue(row, columnObj, tab.columns)
|
calcRowAnalysisValue(row, columnObj, tab.columns)
|
||||||
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -302,7 +304,6 @@ function checkPropertyEquality() {
|
|||||||
const target = formula.split(':')[1]
|
const target = formula.split(':')[1]
|
||||||
const originalValue = dynamicFormData.value[target]
|
const originalValue = dynamicFormData.value[target]
|
||||||
const currentValue = realFormData.value[target]
|
const currentValue = realFormData.value[target]
|
||||||
console.log('checkPropertyEquality', originalValue, currentValue)
|
|
||||||
if (!looseEqual(originalValue, currentValue)) {
|
if (!looseEqual(originalValue, currentValue)) {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user