药物服用记录整理
const medicationData = { '2021-11-01': [{ medicationDate: '2021-11-01 09:01:01', medicationInfo: '氯唑西林', medicineType: '抗生素1', medicineName: '氯唑西林', dosage: 1 }], '2021-01-01': [{ medicationDate: '2021-01-01 06:01:01', medicationInfo: '甲氧西林', medicineType: '抗生素1', medicineName: '甲氧西林', dosage: 2 }, { medicationDate: '2021-01-01 10:01:01', medicationInfo: '氯唑西林\r\n', medicineType: '抗生素1', medicineName: '氯唑西林\r\n', dosage: 3 }, { medicationDate: '2021-01-01 20:01:01', medicationInfo: '氯唑西林\r\n', medicineType: '抗生素1', medicineName: '氯唑西林\r\n', dosage: 2 }, { medicationDate: '2021-01-01 14:01:01', medicationInfo: '氯唑西林', medicineType: '抗生素1', medicineName: '氯唑西林', dosage: 6 }], '2023-06-21': [{ medicationDate: '2023-06-21 20:00:00', medicationInfo: '青霉素V', medicineType: '抗生素1', medicineName: '青霉素V', dosage: 1 }, { medicationDate: '2023-06-21 08:00:00', medicationInfo: '青霉素V', medicineType: '抗生素1', medicineName: '青霉素V', dosage: 3 }, { medicationDate: '2023-06-21 17:00:00', medicationInfo: '青霉素V', medicineType: '抗生素1', medicineName: '青霉素V', dosage: 2 }, { medicationDate: '2023-06-21 20:00:00', medicationInfo: '甲氧西林', medicineType: '抗生素1', medicineName: '甲氧西林', dosage: 4 }, { medicationDate: '2023-06-21 09:00:00', medicationInfo: '甲氧西林', medicineType: '抗生素1', medicineName: '甲氧西林', dosage: 3 }, { medicationDate: '2023-06-21 15:00:00', medicationInfo: '甲氧西林', medicineType: '抗生素1', medicineName: '甲氧西林', dosage: 3 }, { medicationDate: '2023-06-21 10:00:00', medicationInfo: '氯唑西林', medicineType: '抗生素1', medicineName: '氯唑西林', dosage: 2 }, { medicationDate: '2023-06-21 20:00:00', medicationInfo: '氯唑西林', medicineType: '抗生素1', medicineName: '氯唑西林', dosage: 1 }] };
const medicationList = [];
// 遍历药物信息对象 for (const date in medicationData) { const medicationArr = medicationData[date];
// 遍历日期下的药物信息数组 for (const medication of medicationArr) { const { medicineName, dosage } = medication;
// 判断药物是否已存在于药物列表中
const medicationIndex = medicationList.findIndex(item => item.medicineName === medicineName);
// 如果药物不存在于药物列表中,则新增药物对象
if (medicationIndex === -1) {
const newMedication = {
medicineName,
[date]: {
medicationInfo: medication.medicationInfo,
medicineType: medication.medicineType,
morning: 0,
nooning: 0,
evening: 0
}
};
// 根据药物剂量更新药物对应日期的用药次数
if (dosage === 1) {
newMedication[date].morning++;
} else if (dosage === 2) {
newMedication[date].nooning++;
} else if (dosage === 3) {
newMedication[date].evening++;
}
medicationList.push(newMedication);
} else { // 如果药物已存在于药物列表中,则更新对应日期的用药次数
const medicationObj = medicationList[medicationIndex];
if (!medicationObj[date]) {
medicationObj[date] = {
medicationInfo: medication.medicationInfo,
medicineType: medication.medicineType,
morning: 0,
nooning: 0,
evening: 0
};
}
if (dosage === 1) {
medicationObj[date].morning++;
} else if (dosage === 2) {
medicationObj[date].nooning++;
} else if (dosage === 3) {
medicationObj[date].evening++;
}
}
} }
console.log(medicationList);
原文地址: https://www.cveoy.top/t/topic/oUNn 著作权归作者所有。请勿转载和采集!