
    mRiH                     L    d dl mZmZ d dlmZmZmZmZ d dlm	Z	  G d d      Z
y)    )FValue)ConcatCoalesceUpperSubstr)UserCompanyRolec                       e Zd Zedd       Zy)CompanyUserRepositoryNc                    d }t         j                  j                  | ddd      j                  ddd      j	                  t        d      t        t         |t        d	            t        d
       |t        d                   |t        d                  t        d            j                  ddd      }|r|j                  |      }|S )Nc           	      V    t        t        t        | dd            t        | d            S )N      )r   r   r   )fields    R/var/www/html/dp2/backend_v2.1/server/apps/companies/repositories/company_users.pycapz9CompanyUserRepository.company_users_queryset.<locals>.cap	   s*    fUAq)*ua      TF)company	is_activeuser__is_activerole__isnulluseruser__profileroleuser__iduser__profile__first_name user__profile__last_nameuser__username
role__name)user_pk	full_name	role_namer!   r"   r#   )role__name__in)
r	   objectsfilterselect_relatedannotater   r   r   r   values)r   
role_namesr   qss       r   company_users_querysetz,CompanyUserRepository.company_users_queryset   s    	 ##V $"	   ^FOV<X*"A9:;c
A89:
 *+, L/   V+ 	8 *5B	r   )N)__name__
__module____qualname__staticmethodr,    r   r   r   r      s    & &r   r   N)django.db.modelsr   r   django.db.models.functionsr   r   r   r   apps.permissions.modelsr	   r   r1   r   r   <module>r5      s    % F F 3( (r   