Исправлен баг с подсчётом объёма разбавленного реагента

This commit is contained in:
2026-05-07 06:20:13 +05:00
parent 15193d2403
commit 0b54165e99
2 changed files with 5 additions and 13 deletions
+3 -13
View File
@@ -63,7 +63,8 @@ class Controller:
percentage_item = self.view.table.item(row, 1)
unit_widget = self.view.table.cellWidget(row, 2)
conversion_item = self.view.table.item(row, 3)
dilution_widget = self.view.table.cellWidget(row, 4)
dilution_item = self.view.table.item(row, 4)
# Пропускаем строку, если какие-то обязательные поля отсутствуют
if not all([name_item, percentage_item, conversion_item]):
@@ -74,19 +75,8 @@ class Controller:
percentage = float(percentage_item.text())
unit = unit_widget.currentText() if unit_widget else "мг"
conversion_factor = float(conversion_item.text())
dilution_factor = float(dilution_item.text())
# Получаем коэффициент разбавления (поддерживаем QDoubleSpinBox и QLineEdit)
dilution_factor = 1.0
if dilution_widget:
if isinstance(dilution_widget, QDoubleSpinBox):
dilution_factor = dilution_widget.value()
elif isinstance(dilution_widget, QLineEdit):
try:
dilution_factor = float(dilution_widget.text())
except ValueError:
dilution_factor = 1.0
# Добавляем реагент в модель
self.model.add_reagent(name, percentage, unit, conversion_factor, dilution_factor)
except ValueError as e:
raise ValueError(f"Ошибка в строке {row + 1}: {str(e)}")