Добавленна поддержка отображения, сохранинения, и загрузки растворителя во вкладке факторнго эксперимента. Убрана галочка рАндомизировать по умолчанию

This commit is contained in:
2026-05-27 15:41:09 +05:00
parent a2bc606336
commit acf3ad0dd5
5 changed files with 110 additions and 26 deletions
Binary file not shown.
+17 -2
View File
@@ -7,7 +7,13 @@ from dataclasses import dataclass, asdict
from datetime import datetime
import json
VERSION="alpha_0.3"
"""
Условно
0.1 - Разработка калькулятора сред
0.2 - Разработка факторов эксперимента
0.3 - разработка матрицы планирования
"""
@dataclass
class ReagentData:
"""Данные реагента"""
@@ -111,7 +117,7 @@ class ProjectData:
project_name: str
created_at: str
modified_at: str
version: str = "1.0"
version: str = VERSION
# Данные калькулятора сред
medium_total_volume: float = 1000.0
@@ -120,6 +126,9 @@ class ProjectData:
medium_reagents: List[ReagentData] = None
# Данные эксперимента
experiment_total_volume: float = 1000.0
experiment_volume_unit: str = "мл"
experiment_solvent: str = "Вода"
experiment_factors: List[FactorData] = None
experiment_responses: List[ResponseData] = None
experiment_center_points: int = 3
@@ -150,6 +159,9 @@ class ProjectData:
'reagents': [r.to_dict() for r in self.medium_reagents]
},
'experiment': {
'total_volume': self.medium_total_volume,
'volume_unit': self.medium_volume_unit,
'solvent': self.medium_solvent,
'factors': [f.to_dict() for f in self.experiment_factors],
'responses': [r.to_dict() for r in self.experiment_responses],
'center_points': self.experiment_center_points,
@@ -175,6 +187,9 @@ class ProjectData:
medium_volume_unit=medium.get('volume_unit', 'мл'),
medium_solvent=medium.get('solvent', 'Вода'),
medium_reagents=[ReagentData.from_dict(r) for r in medium.get('reagents', [])],
experiment_total_volume=experiment.get('total_volume', 1000.0),
experiment_volume_unit=experiment.get('volume_unit', 'мл'),
experiment_solvent=experiment.get('solvent', 'Вода'),
experiment_factors=[FactorData.from_dict(f) for f in experiment.get('factors', [])],
experiment_responses=[ResponseData.from_dict(r) for r in experiment.get('responses', [])],
experiment_center_points=experiment.get('center_points', 3),