Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -983,47 +983,43 @@ if __name__ == "__main__":
|
|
983 |
def handle_calculation():
|
984 |
try:
|
985 |
data = request.json
|
986 |
-
print("Получены данные:", data) # Логируем входящий запрос
|
987 |
|
988 |
-
#
|
989 |
-
required_fields = ['profileSettings', 'fertilizerConstants']
|
990 |
-
for field in required_fields:
|
991 |
-
if field not in data:
|
992 |
-
return jsonify({"error": f"Missing required field: {field}"}), 400
|
993 |
-
|
994 |
-
# Создаем калькулятор
|
995 |
calculator = NutrientCalculator(
|
996 |
-
volume_liters=data['profileSettings']
|
997 |
)
|
998 |
|
999 |
-
# Устанавливаем профиль
|
1000 |
calculator.target_profile = {
|
1001 |
-
'P': data['profileSettings']
|
1002 |
-
'K': data['profileSettings']
|
1003 |
-
'Mg': data['profileSettings']
|
1004 |
-
'Ca': data['profileSettings']
|
1005 |
-
'S': data['profileSettings']
|
1006 |
-
'N (NO3-)': data['profileSettings']
|
1007 |
-
'N (NH4+)': data['profileSettings']
|
1008 |
}
|
1009 |
|
1010 |
-
# Устанавливаем удобрения
|
1011 |
calculator.fertilizers = data['fertilizerConstants']
|
1012 |
|
1013 |
# Выполняем расчет
|
1014 |
result = calculator.calculate()
|
1015 |
-
|
1016 |
-
|
1017 |
-
|
1018 |
-
|
1019 |
-
|
1020 |
-
|
|
|
|
|
|
|
1021 |
|
1022 |
except Exception as e:
|
1023 |
-
|
1024 |
-
|
1025 |
-
|
1026 |
-
|
1027 |
|
1028 |
|
1029 |
|
|
|
983 |
def handle_calculation():
|
984 |
try:
|
985 |
data = request.json
|
|
|
986 |
|
987 |
+
# Создаем калькулятор (как РАБОТАЛО РАНЬШЕ)
|
|
|
|
|
|
|
|
|
|
|
|
|
988 |
calculator = NutrientCalculator(
|
989 |
+
volume_liters=data['profileSettings']['liters']
|
990 |
)
|
991 |
|
992 |
+
# Устанавливаем профиль (старый рабочий вариант)
|
993 |
calculator.target_profile = {
|
994 |
+
'P': data['profileSettings']['P'],
|
995 |
+
'K': data['profileSettings']['K'],
|
996 |
+
'Mg': data['profileSettings']['Mg'],
|
997 |
+
'Ca': data['profileSettings']['Ca'],
|
998 |
+
'S': data['profileSettings']['S'],
|
999 |
+
'N (NO3-)': data['profileSettings']['N (NO3-)'],
|
1000 |
+
'N (NH4+)': data['profileSettings']['N (NH4+)']
|
1001 |
}
|
1002 |
|
1003 |
+
# Устанавливаем удобрения (как было)
|
1004 |
calculator.fertilizers = data['fertilizerConstants']
|
1005 |
|
1006 |
# Выполняем расчет
|
1007 |
result = calculator.calculate()
|
1008 |
+
|
1009 |
+
# Возвращаем в СТАРОМ формате (как работало)
|
1010 |
+
return jsonify({
|
1011 |
+
"deficits": result.get('deficits', {}),
|
1012 |
+
"ec": result.get('ec', 0),
|
1013 |
+
"fertilizers": result.get('fertilizers', []),
|
1014 |
+
"profile": result.get('profile', []),
|
1015 |
+
"volume": data['profileSettings']['liters']
|
1016 |
+
})
|
1017 |
|
1018 |
except Exception as e:
|
1019 |
+
return jsonify({
|
1020 |
+
"error": str(e),
|
1021 |
+
"message": "Ошибка расчета (старый обработчик)"
|
1022 |
+
}), 500
|
1023 |
|
1024 |
|
1025 |
|