|  | @@ -1,4 +1,48 @@
 | 
	
		
			
				|  |  |  from src.models.abstract_reference import abstract_reference
 | 
	
		
			
				|  |  | +from src.models.measurement_unit_model import measurement_unit_model
 | 
	
		
			
				|  |  | +from src.models.nomenclature_group_model import nomenclature_group_model
 | 
	
		
			
				|  |  | +from src.validation.validator import validator
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  class nomenclature_model(abstract_reference):
 | 
	
		
			
				|  |  | -    pass
 | 
	
		
			
				|  |  | +    # Полное наименование
 | 
	
		
			
				|  |  | +    __full_name = ""
 | 
	
		
			
				|  |  | +    # Единица измерения
 | 
	
		
			
				|  |  | +    __measurement_unit = None
 | 
	
		
			
				|  |  | +    # Группа номенклатуры
 | 
	
		
			
				|  |  | +    __nomenclature_group = None
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    def __init__(self, full_name, measurement_unit, nomenclature_group):
 | 
	
		
			
				|  |  | +        """
 | 
	
		
			
				|  |  | +        Args:
 | 
	
		
			
				|  |  | +            full_name (str): Полное наименование (до 256 символов)
 | 
	
		
			
				|  |  | +            measurement_unit (measurement_unit_model): Единица измерения
 | 
	
		
			
				|  |  | +            nomenclature_group (nomenclature_group_model): Группа номенклатуры
 | 
	
		
			
				|  |  | +        """
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        validator.check_type(full_name, str)
 | 
	
		
			
				|  |  | +        validator.check_length_less(full_name, 256)
 | 
	
		
			
				|  |  | +        validator.check_type(measurement_unit, measurement_unit_model)
 | 
	
		
			
				|  |  | +        validator.check_type(nomenclature_group, nomenclature_group_model)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        self.__full_name = full_name
 | 
	
		
			
				|  |  | +        self.__measurement_unit = measurement_unit
 | 
	
		
			
				|  |  | +        self.__nomenclature_group = nomenclature_group
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    @property
 | 
	
		
			
				|  |  | +    def full_name(self):
 | 
	
		
			
				|  |  | +        """Полное наименование (до 256 символов)"""
 | 
	
		
			
				|  |  | +        
 | 
	
		
			
				|  |  | +        return self.__full_name
 | 
	
		
			
				|  |  | +    
 | 
	
		
			
				|  |  | +    @property
 | 
	
		
			
				|  |  | +    def measurement_unit(self):
 | 
	
		
			
				|  |  | +        """Единица измерения"""
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        return self.__measurement_unit
 | 
	
		
			
				|  |  | +    
 | 
	
		
			
				|  |  | +    @property
 | 
	
		
			
				|  |  | +    def nomenclature_group(self):
 | 
	
		
			
				|  |  | +        """Группа номенклатуры"""
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        return self.__nomenclature_group
 |