B
    Ef                 @   s.   d dl T d dlZdZG dd dejjjZdS )    )*N)openclosedZ	in_reviewZin_progressZpausedZcancelc                   s.   e Zd Zdd fdd
Z fddZ  ZS )CmfStatusCodeF)TEXKOM_db_deletec               sF   x.t jj| ||dD ]}|j|d|i| qW t j|d|i|S )N)status_codeZinclude_deletedZinclude_systemr   )models	CmfStatuslistdeletesuper)selfr   argskwargsstatus)	__class__ "./common/models/cmf_status_code.pyr   	   s    zCmfStatusCode.deletec                s   | j s| jjrd| jtks$| jjtkr0tddd td x*tjj| dD ]}| j|_|j	dd qHW | j
jrtd x*tjj| dD ]}| j
|_
|j	dd qW t j	||S )Nud   Запрещено редактировать глобальные системные статусыT)abortu   Опасная операция, проконтролируйте уникальность статуса в БП вручную)r   )Z	only_dataub   Тип статуса у уже созданных объектов изменен не будет)Zis_newcodeZ
is_changedSYSTEM_CODESoldZ	cmf_alertr   r	   r
   saveZstatus_typer   )r   r   r   r   )r   r   r   r      s    zCmfStatusCode.save)__name__
__module____qualname__r   r   __classcell__r   r   )r   r   r      s   r   )Zcmf.includeZcommon.fields.cmf_status_codecommonr   ZfieldsZcmf_status_coder   r   r   r   r   <module>   s   