Browse Source

SRS22量表总分计算

newMaster
1747191978@qq.com 3 months ago
parent
commit
6e4f06f1bf
  1. 59
      acupuncture-前台/src/views/medicalFile/components/posture/SRS22.vue

59
acupuncture-前台/src/views/medicalFile/components/posture/SRS22.vue

@ -308,17 +308,60 @@ export default {
// SRS-22
submitForm() {
let score = 0;
// , topic${i}
for (let i = 1; i <= 9; i++) {
if (this.form[`topic${i}`] !== undefined) {
score += this.form[`topic${i}`];
}
}
// / 59121518
// 1281117
// / 46101419
// 37131620
// 2122
// 2.
//
//
const calculateDimensionScore = (questionIndices) => {
let sum = 0;
let count = 0;
questionIndices.forEach((index) => {
if (this.form[`topic${index}`] !== undefined) {
sum += this.form[`topic${index}`];
count++;
}
});
return count > 0 ? sum / count : 0;
};
//
const dimensions = {
function: [5, 9, 12, 15, 18], // /
pain: [1, 2, 8, 11, 17], //
appearance: [4, 6, 10, 14, 19], // /
mentalHealth: [3, 7, 13, 16, 20], //
satisfaction: [21, 22], //
};
//
const dimensionScores = {
function: calculateDimensionScore(dimensions.function),
pain: calculateDimensionScore(dimensions.pain),
appearance: calculateDimensionScore(dimensions.appearance),
mentalHealth: calculateDimensionScore(dimensions.mentalHealth),
satisfaction: calculateDimensionScore(dimensions.satisfaction),
};
// 3.
// SRS-22
//
const totalScore =
(dimensionScores.function +
dimensionScores.pain +
dimensionScores.appearance +
dimensionScores.mentalHealth +
dimensionScores.satisfaction) /
5;
console.log("totalScore", totalScore);
//
this.scaleData[this.treatmentId][this.scaleCode] = this.form;
localStorage.setItem("scaleData", JSON.stringify(this.scaleData));
//
this.$emit("getScaleResult", score, this.scaleCode);
// //
this.$emit("getScaleResult", totalScore, this.scaleCode);
},
},
};

Loading…
Cancel
Save