DmitrMakeev commited on
Commit
0adc22f
·
verified ·
1 Parent(s): 71ff296

Update nutri_call.html

Browse files
Files changed (1) hide show
  1. nutri_call.html +42 -25
nutri_call.html CHANGED
@@ -1094,51 +1094,68 @@ function updateNitrogenFields(data) {
1094
 
1095
 
1096
 
1097
- // Функция для расчета соотношения NPK
 
 
 
1098
  function updateNPK(data) {
1099
- console.log("=== РАСЧЕТ СООТНОШЕНИЯ NPK ===");
1100
 
1101
  // Извлекаем значения из actual_profile
1102
  const nValue = (data.actual_profile["N (NH4+)"] || 0) + (data.actual_profile["N (NO3-)"] || 0);
1103
  const pValue = data.actual_profile["P"] || 0;
1104
  const kValue = data.actual_profile["K"] || 0;
1105
 
1106
- // Переводим в оксидную форму
1107
- const nOxide = nValue; // N остается без изменений
1108
- const pOxide = pValue * 2.29; // P → P2O5
1109
- const kOxide = kValue * 1.2; // K → K2O
1110
 
1111
- console.log(`Оксидная форма: N=${nOxide.toFixed(2)}, P2O5=${pOxide.toFixed(2)}, K2O=${kOxide.toFixed(2)}`);
 
 
 
1112
 
1113
- // Сумма активных питательных веществ
1114
- const sumNPK = nOxide + pOxide + kOxide;
1115
 
1116
- // Процентное содержание относительно суммы NPK
1117
- const nPercent = (nOxide / sumNPK) * 100;
1118
- const pPercent = (pOxide / sumNPK) * 100;
1119
- const kPercent = (kOxide / sumNPK) * 100;
1120
 
1121
- console.log(`Проценты: N=${nPercent.toFixed(2)}%, P2O5=${pPercent.toFixed(2)}%, K2O=${kPercent.toFixed(2)}%`);
 
 
 
1122
 
1123
- // Применяем коэффициент нормировки (÷2)
1124
- const nNormalized = nPercent / 2;
1125
- const pNormalized = pPercent / 2;
1126
- const kNormalized = kPercent / 2;
1127
 
1128
- console.log(`Нормированные значения: N=${nNormalized.toFixed(1)}, P2O5=${pNormalized.toFixed(1)}, K2O=${kNormalized.toFixed(1)}`);
 
 
 
1129
 
1130
- // Выводим результат
1131
- return {
1132
- N: nNormalized.toFixed(1),
1133
- P2O5: pNormalized.toFixed(1),
1134
- K2O: kNormalized.toFixed(1)
1135
- };
 
 
 
1136
  }
1137
 
1138
 
1139
 
1140
 
1141
 
 
 
 
 
 
 
 
 
 
1142
  function calculateOxidePercentages(data) {
1143
  console.log("=== РАСЧЕТ ПРОЦЕНТОВ ОКСИДОВ ===");
1144
 
 
1094
 
1095
 
1096
 
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);
1106
  const pValue = data.actual_profile["P"] || 0;
1107
  const kValue = data.actual_profile["K"] || 0;
1108
 
1109
+ // Проверяем, что значения существуют
1110
+ if (nValue > 0 && pValue > 0 && kValue > 0) {
1111
+ console.log(`Значения NPK: N=${nValue}, P=${pValue}, K=${kValue}`);
 
1112
 
1113
+ // Переводим в оксидную форму
1114
+ const nOxide = nValue; // N остается без изменений
1115
+ const pOxide = pValue * 2.29; // P → P2O5
1116
+ const kOxide = kValue * 1.2; // K → K2O
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
+ }
1144
  }
1145
 
1146
 
1147
 
1148
 
1149
 
1150
+
1151
+
1152
+
1153
+
1154
+
1155
+
1156
+
1157
+
1158
+
1159
  function calculateOxidePercentages(data) {
1160
  console.log("=== РАСЧЕТ ПРОЦЕНТОВ ОКСИДОВ ===");
1161