
    Jie                        d dl Z d dlmZmZmZmZmZ d dlmZm	Z	m
Z
 d dlmZmZmZ  G d dee j                         Z G d dee j                         Z G d	 d
eee      Z G d de      Z G d dee      Zd dlmZ d dlmZ y)    N)Boolean
ForeignKeyStringTextUniqueConstraint)Mappedmapped_columnrelationship)BaseSoftDeleteMixinTimestampMixinc                   d    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdZdZdZdZy)	ModulEnum	dashboard	penjualanstock	penebusan
penerimaanexpenses
penyetoranrekonsiliasilaporan	analyticsanomaliproductstangkispbu_settings	contractsusersspbu_management	operatorsjadwalabsensihousekeepingsaprasN)__name__
__module____qualname__r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%        1/var/www/html/spbu.com/backend/app/models/role.pyr   r   	   sp    IIEIJHJ!LGIGHF#MIE'OIFG!LFr*   r   c                   $    e Zd ZdZdZdZdZdZdZy)AksiEnumviewcreateeditdeleteexportapproveN)	r&   r'   r(   r.   r/   r0   r1   r2   r3   r)   r*   r+   r-   r-   "   s     DFDFFGr*   r-   c                      e Zd ZU dZ ed      Zee   ed<    e e	dd      dd      Z
eed	z     ed
<    e ed            Zee   ed<    eed      Zeed	z     ed<    eed      Zee   ed<    eed      Zee   ed<    eed      Zee   ed<    edd      Zeed      ed<    ed      Zeed      ed<   y	)Rolemaster_roleTprimary_keyidmaster_spbu.idCASCADEondelete)nullableindexNspbu_idd   nama)r>   	deskripsiF)default	is_systemcan_be_scheduledcan_login_webrolezall, delete-orphan)back_populatescascadeRolePermissionpermissionsrI   UserSpbuAssignmentassignments)r&   r'   r(   __tablename__r	   r9   r   int__annotations__r   r@   r   rB   strr   rC   r   rE   boolrF   rG   r
   rL   listrO   r)   r*   r+   r5   r5   +   s    !M#5Bs5"/#i84t#GVC$J  &fSk2D&+2$1$$FIvcDj!F+GUCIvd|C%27E%JfTlJ"/"FM6$<F2>';3K-./  7C7K123 r*   r5   c                       e Zd ZU dZ eddd      fZ ed      Zee	   e
d<    e edd	
      d      Zee	   e
d<   ee   e
d<   ee   e
d<    ed      Zed   e
d<   y)rK   master_role_permissionrole_idmodulaksiTr7   r9   master_role.idr;   r<   r?   rL   rM   r5   rH   N)r&   r'   r(   rP   r   __table_args__r	   r9   r   rQ   rR   r   rX   r   r-   r
   rH   r)   r*   r+   rK   rK   @   sx    ,M&y'6BDN#5Bs5(#i8GVC[  )

'}ED&.Er*   rK   c                   F   e Zd ZU dZ edd      fZ ed      Zee	   e
d<    e edd	      d
      Zee	   e
d<    e edd	      d
      Zee	   e
d<    e edd	            Zee	   e
d<    ed      Zed   e
d<    ed      Zed   e
d<    ed      Zed   e
d<   y)rN   master_user_spbu_assignmentuser_idr@   Tr7   r9   zmaster_user.idr;   r<   r\   r:   r[   RESTRICTrX   rO   rM   UseruserSpbuspbur5   rH   N)r&   r'   r(   rP   r   r]   r	   r9   r   rQ   rR   r   r`   r@   rX   r
   rc   re   rH   r)   r*   r+   rN   rN   N   s    1M&y)<>N#5Bs5(#i8GVC[  )#i8GVC[  )4Dz)Z[GVC[['}ED&.E'}ED&.E'}ED&.Er*   rN   )rb   )rd   )enum
sqlalchemyr   r   r   r   r   sqlalchemy.ormr   r	   r
   app.models.baser   r   r   rS   Enumr   r-   r5   rK   rN   app.models.userrb   app.models.spburd   r)   r*   r+   <module>rm      st     J J > > A ATYY 2sDII 4 *FT FF~ F$ !  r*   