Spaces:
Running
Running
Update nutri_call.html
Browse files- nutri_call.html +3 -22
nutri_call.html
CHANGED
@@ -975,7 +975,6 @@ const ecConstants = {
|
|
975 |
|
976 |
document.getElementById('calculate-btn').addEventListener('click', function () {
|
977 |
console.log("=== НАЧАЛО ОБРАБОТКИ ===");
|
978 |
-
|
979 |
// 1. Получаем значение точности округления
|
980 |
const roundingInput = document.getElementById('rounding-precision');
|
981 |
const initialRounding = parseInt(roundingInput.value);
|
@@ -992,11 +991,7 @@ document.getElementById('calculate-btn').addEventListener('click', function () {
|
|
992 |
return isNaN(value) ? 0 : value;
|
993 |
};
|
994 |
|
995 |
-
// 3.
|
996 |
-
const activationCaCl = getValue('activation-cacl'); // Активация CaCl
|
997 |
-
const enhancementCaCl = getValue('enhancement-cacl'); // Усиление CaCl
|
998 |
-
|
999 |
-
// 4. Формируем данные для сервера
|
1000 |
const fertilizerConstants = {
|
1001 |
"Кальциевая селитра": {
|
1002 |
"N (NO3-)": getValue('fert_ca_no3') / 100,
|
@@ -1021,10 +1016,6 @@ document.getElementById('calculate-btn').addEventListener('click', function () {
|
|
1021 |
"Калий сернокислый": {
|
1022 |
"K": getValue('fert_k2so4_k') / 100,
|
1023 |
"S": getValue('fert_k2so4_s') / 100
|
1024 |
-
},
|
1025 |
-
"Кальций хлорид": {
|
1026 |
-
"Ca": getValue('fert_caca') / 100,
|
1027 |
-
"Cl": getValue('fert_clcl') / 100
|
1028 |
}
|
1029 |
};
|
1030 |
|
@@ -1037,9 +1028,7 @@ document.getElementById('calculate-btn').addEventListener('click', function () {
|
|
1037 |
'NO3_RAT': getValue('profile_no3'),
|
1038 |
'TOTAL_NITROG': getValue('profile_n'),
|
1039 |
'liters': parseInt(document.getElementById('liters-input').value) || 1,
|
1040 |
-
'rounding_precision': roundingPrecision
|
1041 |
-
'activation_cacl': activationCaCl, // Добавляем активацию CaCl
|
1042 |
-
'enhancement_cacl': enhancementCaCl // Добавляем усиление CaCl
|
1043 |
};
|
1044 |
|
1045 |
const requestData = {
|
@@ -1049,7 +1038,7 @@ document.getElementById('calculate-btn').addEventListener('click', function () {
|
|
1049 |
|
1050 |
console.log("=== ПОЛНЫЙ ОБЪЕКТ ДЛЯ ОТПРАВКИ ===", JSON.stringify(requestData, null, 2));
|
1051 |
|
1052 |
-
//
|
1053 |
fetch('/calculation', {
|
1054 |
method: 'POST',
|
1055 |
headers: {
|
@@ -1067,25 +1056,17 @@ document.getElementById('calculate-btn').addEventListener('click', function () {
|
|
1067 |
.then(data => {
|
1068 |
call_data = data;
|
1069 |
console.log("=== УСПЕШНЫЙ ОТВЕТ ОТ СЕРВЕРА ===", call_data);
|
1070 |
-
|
1071 |
// Обновляем только поля вывода
|
1072 |
data_out(call_data);
|
1073 |
-
|
1074 |
// Показываем статус расчёта
|
1075 |
showCalculationStatus(call_data);
|
1076 |
-
|
1077 |
// Вызываем функцию для расчета катионов и анионов
|
1078 |
calculateCationsAndAnions(data);
|
1079 |
-
|
1080 |
// Обновляем поля NH4 и NO3
|
1081 |
updateNitrogenFields(call_data);
|
1082 |
-
|
1083 |
calculateAndUpdate(call_data);
|
1084 |
-
|
1085 |
calculateMicroElements();
|
1086 |
-
|
1087 |
calculateN1Ratio(call_data);
|
1088 |
-
|
1089 |
// Рассчитываем EC
|
1090 |
const temperature = parseFloat(document.getElementById('profile_temp').value) || 25;
|
1091 |
const ecValue = calculateEC(call_data, temperature);
|
|
|
975 |
|
976 |
document.getElementById('calculate-btn').addEventListener('click', function () {
|
977 |
console.log("=== НАЧАЛО ОБРАБОТКИ ===");
|
|
|
978 |
// 1. Получаем значение точности округления
|
979 |
const roundingInput = document.getElementById('rounding-precision');
|
980 |
const initialRounding = parseInt(roundingInput.value);
|
|
|
991 |
return isNaN(value) ? 0 : value;
|
992 |
};
|
993 |
|
994 |
+
// 3. Формируем данные для сервера
|
|
|
|
|
|
|
|
|
995 |
const fertilizerConstants = {
|
996 |
"Кальциевая селитра": {
|
997 |
"N (NO3-)": getValue('fert_ca_no3') / 100,
|
|
|
1016 |
"Калий сернокислый": {
|
1017 |
"K": getValue('fert_k2so4_k') / 100,
|
1018 |
"S": getValue('fert_k2so4_s') / 100
|
|
|
|
|
|
|
|
|
1019 |
}
|
1020 |
};
|
1021 |
|
|
|
1028 |
'NO3_RAT': getValue('profile_no3'),
|
1029 |
'TOTAL_NITROG': getValue('profile_n'),
|
1030 |
'liters': parseInt(document.getElementById('liters-input').value) || 1,
|
1031 |
+
'rounding_precision': roundingPrecision
|
|
|
|
|
1032 |
};
|
1033 |
|
1034 |
const requestData = {
|
|
|
1038 |
|
1039 |
console.log("=== ПОЛНЫЙ ОБЪЕКТ ДЛЯ ОТПРАВКИ ===", JSON.stringify(requestData, null, 2));
|
1040 |
|
1041 |
+
// 4. Отправка данных на сервер
|
1042 |
fetch('/calculation', {
|
1043 |
method: 'POST',
|
1044 |
headers: {
|
|
|
1056 |
.then(data => {
|
1057 |
call_data = data;
|
1058 |
console.log("=== УСПЕШНЫЙ ОТВЕТ ОТ СЕРВЕРА ===", call_data);
|
|
|
1059 |
// Обновляем только поля вывода
|
1060 |
data_out(call_data);
|
|
|
1061 |
// Показываем статус расчёта
|
1062 |
showCalculationStatus(call_data);
|
|
|
1063 |
// Вызываем функцию для расчета катионов и анионов
|
1064 |
calculateCationsAndAnions(data);
|
|
|
1065 |
// Обновляем поля NH4 и NO3
|
1066 |
updateNitrogenFields(call_data);
|
|
|
1067 |
calculateAndUpdate(call_data);
|
|
|
1068 |
calculateMicroElements();
|
|
|
1069 |
calculateN1Ratio(call_data);
|
|
|
1070 |
// Рассчитываем EC
|
1071 |
const temperature = parseFloat(document.getElementById('profile_temp').value) || 25;
|
1072 |
const ecValue = calculateEC(call_data, temperature);
|