|  | @@ -1,4 +1,32 @@
 | 
	
		
			
				|  |  |  from src.models.abstract_reference import abstract_reference
 | 
	
		
			
				|  |  | +from src.errors.argument_exception import argument_exception
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  class measurement_unit_model (abstract_reference):
 | 
	
		
			
				|  |  | -    pass
 | 
	
		
			
				|  |  | +    __base_measurement_unit = None
 | 
	
		
			
				|  |  | +    __base_coefficient = None
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    def __init__(self, base_measurement, base_coefficient):
 | 
	
		
			
				|  |  | +        if base_measurement is not measurement_unit_model:
 | 
	
		
			
				|  |  | +            raise argument_exception(
 | 
	
		
			
				|  |  | +                "Базовая единица измерения должна быть типа measurement_unit_model")
 | 
	
		
			
				|  |  | +        self.__base_measurement_unit
 | 
	
		
			
				|  |  | +        try:
 | 
	
		
			
				|  |  | +            self.__base_coefficient = float(base_coefficient)
 | 
	
		
			
				|  |  | +        except TypeError as e:
 | 
	
		
			
				|  |  | +            raise argument_exception("Несоответствие типа базового коэффициента")
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    @property
 | 
	
		
			
				|  |  | +    def base_measurement_unit(self):
 | 
	
		
			
				|  |  | +        """
 | 
	
		
			
				|  |  | +            Базовая единица измерения
 | 
	
		
			
				|  |  | +        """
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        return self.__base_measurement_unit
 | 
	
		
			
				|  |  | +    
 | 
	
		
			
				|  |  | +    @property
 | 
	
		
			
				|  |  | +    def base_coefficient(self):
 | 
	
		
			
				|  |  | +        """
 | 
	
		
			
				|  |  | +            Коэффициент относительно базовой единицы измерения
 | 
	
		
			
				|  |  | +        """
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        return self.__base_coefficient
 |