Feat: Assessment page completed with save method combining Assessment, Distraction, Assessment Command Modality Link, and Assessment Response save for creating new complete Assessnent.

This commit is contained in:
2025-07-28 22:41:38 +01:00
parent 1bbe6f0040
commit 574d60442a
122 changed files with 3261 additions and 1057 deletions

View File

@@ -53,49 +53,57 @@ class Unit_Measurement(SQLAlchemy_ABC, Base):
@classmethod
def from_db_unit_measurement(cls, query_row):
_m = f'{cls.__qualname__}.from_db_unit_measurement'
level = cls()
level.id_unit_measurement = query_row[0]
level.name_singular = query_row[1]
level.name_plural = query_row[2]
level.symbol = query_row[3]
level.symbol_is_suffix_not_prefix = query_row[4]
level.is_base_unit = query_row[5]
level.is_unit_of_distance = query_row[6]
level.is_unit_of_mass = query_row[7]
level.is_unit_of_time = query_row[8]
level.is_unit_of_volume = query_row[9]
level.active = True
return level
unit = cls()
unit.id_unit_measurement = query_row[0]
unit.name_singular = query_row[1]
unit.name_plural = query_row[2]
unit.symbol = query_row[3]
unit.symbol_is_suffix_not_prefix = query_row[4]
unit.is_base_unit = av.input_bool(query_row[5], 'is_base_unit', _m)
unit.is_unit_of_distance = av.input_bool(query_row[6], 'is_base_unit', _m)
unit.is_unit_of_mass = av.input_bool(query_row[7], 'is_base_unit', _m)
unit.is_unit_of_time = av.input_bool(query_row[8], 'is_base_unit', _m)
unit.is_unit_of_volume = av.input_bool(query_row[9], 'is_base_unit', _m)
unit.active = True
return unit
@classmethod
def from_db_response_quality_metric(cls, query_row):
_m = f'{cls.__qualname__}.from_db_response_quality_metric'
level = cls()
level.id_unit_measurement = query_row[1]
level.name_singular = query_row[2]
level.name_plural = query_row[3]
level.symbol = query_row[4]
level.active = True
return level
unit = cls()
unit.id_unit_measurement = query_row[1]
unit.name_singular = query_row[2]
unit.name_plural = query_row[3]
unit.symbol = query_row[4]
unit.active = True
return unit
@classmethod
def from_db_assessment_response(cls, query_row):
_m = f'{cls.__qualname__}.from_db_assessment_response'
unit = cls()
unit.id_unit_measurement = None
unit.name_singular = ''
unit.name_plural = ''
unit.symbol = ''
return unit
@classmethod
def from_json(cls, json):
_m = f'{cls.__qualname__}.from_json'
unit_measurement = cls()
if json is None: return Unit_Measurement
Helper_App.console_log(f'{_m}\njson: {json}')
unit_measurement.id_unit_measurement = json.get(Unit_Measurement.ATTR_ID_UNIT_MEASUREMENT, -1)
unit_measurement.name_singular = json[cls.FLAG_NAME_SINGULAR]
unit_measurement.name_plural = json[cls.FLAG_NAME_PLURAL]
unit_measurement.symbol = json[cls.FLAG_SYMBOL]
unit_measurement.symbol_is_suffix_not_prefix = json[cls.FLAG_SYMBOL_IS_SUFFIX_NOT_PREFIX]
unit_measurement.is_base_unit = json[cls.FLAG_IS_BASE_UNIT]
unit_measurement.is_unit_of_distance = json[cls.FLAG_IS_UNIT_OF_DISTANCE]
unit_measurement.is_unit_of_mass = json[cls.FLAG_IS_UNIT_OF_MASS]
unit_measurement.is_unit_of_time = json[cls.FLAG_IS_UNIT_OF_TIME]
unit_measurement.is_unit_of_volume = json[cls.FLAG_IS_UNIT_OF_VOLUME]
unit_measurement.active = json[cls.FLAG_ACTIVE]
Helper_App.console_log(f'Unit_Measurement: {unit_measurement}')
unit_measurement.symbol_is_suffix_not_prefix = av.input_bool(json[cls.FLAG_SYMBOL_IS_SUFFIX_NOT_PREFIX], cls.FLAG_ACTIVE, _m)
unit_measurement.is_base_unit = av.input_bool(json[cls.FLAG_IS_BASE_UNIT], cls.FLAG_ACTIVE, _m)
unit_measurement.is_unit_of_distance = av.input_bool(json[cls.FLAG_IS_UNIT_OF_DISTANCE], cls.FLAG_ACTIVE, _m)
unit_measurement.is_unit_of_mass = av.input_bool(json[cls.FLAG_IS_UNIT_OF_MASS], cls.FLAG_ACTIVE, _m)
unit_measurement.is_unit_of_time = av.input_bool(json[cls.FLAG_IS_UNIT_OF_TIME], cls.FLAG_ACTIVE, _m)
unit_measurement.is_unit_of_volume = av.input_bool(json[cls.FLAG_IS_UNIT_OF_VOLUME], cls.FLAG_ACTIVE, _m)
unit_measurement.active = av.input_bool(json[cls.FLAG_ACTIVE], cls.FLAG_ACTIVE, _m)
return unit_measurement
@@ -114,7 +122,6 @@ class Unit_Measurement(SQLAlchemy_ABC, Base):
, self.FLAG_IS_UNIT_OF_VOLUME: self.is_unit_of_volume
, self.FLAG_ACTIVE: self.active
}
Helper_App.console_log(f'as_json: {as_json}')
return as_json
def __repr__(self):