DmitrMakeev commited on
Commit
7527dc3
·
verified ·
1 Parent(s): efef438

Update nutri_call.html

Browse files
Files changed (1) hide show
  1. nutri_call.html +15 -23
nutri_call.html CHANGED
@@ -1097,9 +1097,8 @@ function updateNitrogenFields(data) {
1097
 
1098
 
1099
 
1100
-
1101
- function updateNPK(data) {
1102
- console.log("=== РАСЧЕТ СООТНОШЕНИЯ NPK В ОКСИДНОЙ ФОРМЕ ===");
1103
 
1104
  // Извлекаем значения из actual_profile
1105
  const nValue = (data.actual_profile["N (NH4+)"] || 0) + (data.actual_profile["N (NO3-)"] || 0);
@@ -1117,27 +1116,25 @@ function updateNPK(data) {
1117
 
1118
  console.log(`Оксидная форма: N=${nOxide.toFixed(2)}, P2O5=${pOxide.toFixed(2)}, K2O=${kOxide.toFixed(2)}`);
1119
 
1120
- // Сумма активных питательных веществ
1121
- const sumNPK = nOxide + pOxide + kOxide;
1122
 
1123
- // Процентное содержание относительно суммы NPK
1124
- const nPercent = (nOxide / sumNPK) * 100;
1125
- const pPercent = (pOxide / sumNPK) * 100;
1126
- const kPercent = (kOxide / sumNPK) * 100;
1127
 
1128
- console.log(`Проценты: N=${nPercent.toFixed(2)}%, P2O5=${pPercent.toFixed(2)}%, K2O=${kPercent.toFixed(2)}%`);
1129
 
1130
- // Применяем коэффициент нормировки (÷2)
1131
- const nNormalized = nPercent / 2;
1132
- const pNormalized = pPercent / 2;
1133
- const kNormalized = kPercent / 2;
1134
 
1135
- console.log(`Нормированные значения: N=${nNormalized.toFixed(1)}, P2O5=${pNormalized.toFixed(1)}, K2O=${kNormalized.toFixed(1)}`);
1136
 
1137
  // Обновляем поля на странице
1138
- document.getElementById("npk-n-value").textContent = nNormalized.toFixed(1);
1139
- document.getElementById("npk-p-value").textContent = pNormalized.toFixed(1);
1140
- document.getElementById("npk-k-value").textContent = kNormalized.toFixed(1);
1141
  } else {
1142
  console.error("Ошибка: Значения NPK не найдены в ответе сервера или равны нулю.");
1143
  }
@@ -1146,11 +1143,6 @@ function updateNPK(data) {
1146
 
1147
 
1148
 
1149
-
1150
-
1151
-
1152
-
1153
-
1154
 
1155
 
1156
 
 
1097
 
1098
 
1099
 
1100
+ function calculateNPKRatio(data) {
1101
+ console.log("=== РАСЧЕТ СООТНОШЕНИЯ NPK ===");
 
1102
 
1103
  // Извлекаем значения из actual_profile
1104
  const nValue = (data.actual_profile["N (NH4+)"] || 0) + (data.actual_profile["N (NO3-)"] || 0);
 
1116
 
1117
  console.log(`Оксидная форма: N=${nOxide.toFixed(2)}, P2O5=${pOxide.toFixed(2)}, K2O=${kOxide.toFixed(2)}`);
1118
 
1119
+ // Находим минимальное значение для нормировки
1120
+ const minValue = Math.min(nOxide, pOxide, kOxide);
1121
 
1122
+ // Нормируем значения
1123
+ const nNormalized = (nOxide / minValue).toFixed(2);
1124
+ const pNormalized = (pOxide / minValue).toFixed(2);
1125
+ const kNormalized = (kOxide / minValue).toFixed(2);
1126
 
1127
+ console.log(`Нормированные значения: N=${nNormalized}, P2O5=${pNormalized}, K2O=${kNormalized}`);
1128
 
1129
+ // Округляем до целых чисел (умножаем на 10)
1130
+ const nFinal = Math.round(nNormalized * 10);
1131
+ const pFinal = Math.round(pNormalized * 10);
1132
+ const kFinal = Math.round(kNormalized * 10);
1133
 
1134
+ console.log(`Итоговое соотношение NPK: ${nFinal}-${pFinal}-${kFinal}`);
1135
 
1136
  // Обновляем поля на странице
1137
+ document.getElementById("npk-ratio").textContent = `${nFinal}-${pFinal}-${kFinal}`;
 
 
1138
  } else {
1139
  console.error("Ошибка: Значения NPK не найдены в ответе сервера или равны нулю.");
1140
  }
 
1143
 
1144
 
1145
 
 
 
 
 
 
1146
 
1147
 
1148