U
    7êÆjT,  ã                   @   s   d dl mZ d dlmZ d dlZd dlmZ G dd„ dejƒZd dl mZ d dlmZ G dd„ dejƒZ	G d	d
„ d
ejƒZ
G dd„ dejƒZG dd„ dejƒZG dd„ dejƒZG dd„ dejƒZG dd„ dejƒZG dd„ dejƒZG dd„ dejƒZG dd„ dejƒZG dd„ dejƒZdS )é    )Úmodels)ÚUserN)ÚDecimalc                   @   sx  e Zd Zejeejdddd�Zejddd�Z	ejddd�Z
ejddd�Zejddd�Zejddd�Zejddd�Zejddddd�Zejddd�Zejddd�Zejddd�Zejd	ddd
�Zejddddd�Zejdd�Zejdddd�Zejdddd�Zejddd�Zejddd�Zejddd�Zejdddd�Zejdd�Zejdd�Z ej!dd�Z"ej!dd�Z#G dd„ dƒZ$dS )ÚProfilesTZuser_profiles)Ú	on_deleteÚnullÚblankÚrelated_nameéÿ   ©Ú
max_lengthr   zuploads/z../static/dummy.png)Ú	upload_tor   r   Údefaultéd   ©r   r   r   é2   ZMorning)r   r   r   r   )r   ©r   r   r   r   ©r   é   ©Úauto_now_add©Úauto_nowc                   @   s   e Zd ZdZdS )zProfiles.MetaÚprofileN©Ú__name__Ú
__module__Ú__qualname__Údb_table© r   r   ú//var/www/html/CISBACKEND/school/myapp/models.pyÚMeta1   s   r!   N)%r   r   r   r   Ú
ForeignKeyr   ÚCASCADEÚuserÚ	CharFieldÚnameÚphoneÚemailÚaddressZservicenameZgenderÚ	FileFieldÚprofilesÚpasswordZ	gstnumberZpincodeÚcourseÚbatchÚ	DateFieldZdojZgstZcompanylogoZ
alteremailZalteremail1Zalteremail2ZpanÚSmallIntegerFieldÚroleÚstatusÚDateTimeFieldÚ
created_atÚ
updated_atr!   r   r   r   r    r      s2   r   c                   @   s„   e Zd ZdddgZejeejdd�Zej	dd�Z
ej	dd�Ze ¡ Zej	d	d�Zej	d
edd�Zejdd�Zejdd�Zdd„ ZdS )ÚExam)Ú	Scheduledr7   )Ú	Completedr8   )Ú	Cancelledr9   Zexams©r   r	   r
   ©r   r   é
   é   r7   ©r   Úchoicesr   Tr   r   c                 C   s   | j S ©N)Útitle©Úselfr   r   r    Ú__str__U   s    zExam.__str__N)r   r   r   ÚSTATUS_CHOICESr   r"   r   ÚPROTECTZstudentr%   rA   r-   r/   ÚdateÚdurationr2   r3   r4   r5   rD   r   r   r   r    r6   E   s   ýr6   c                   @   s\   e Zd Zejdd�Ze ¡ Ze ¡ Z	ejdd�Z
e ¡ Zejdd�Zejdd�Zdd„ Zd	S )
ÚQuestionr   r;   r
   Tr   r   c                 C   s   | j › d| jd d… › �S )Nõ    â€” é(   )r-   ÚquestionrB   r   r   r    rD   b   s    zQuestion.__str__N)r   r   r   r   r%   r-   Ú	TextFieldrL   Ú	JSONFieldÚoptionsÚanswerÚPositiveIntegerFieldZmarksr3   r4   r5   rD   r   r   r   r    rI   Y   s   rI   c                   @   s¨   e Zd ZdZddgZejeejdd�Z	ej
ed�Zej
ed�Zejdd�Zejdd�Zejdd�Zejdd	d
d�Zejdedd�Zejd	d�Zejd	d	d�Zdd„ ZdS )ÚExamAttemptzÕ
    One attempt per scheduled Exam (an Exam already belongs to one student).
    The shuffled question order is fixed when the student starts, so a page
    refresh never reshuffles or changes the questions.
    )Ú
InProgressrS   )Ú	SubmittedrT   Úattemptr:   r   r   é   TÚ )r   r   r   r=   rS   r>   r   ©r   r   c                 C   s   | j j› d| j› �S )NrJ   )ÚexamrA   r2   rB   r   r   r    rD   ‰   s    zExamAttempt.__str__N)r   r   r   Ú__doc__rE   r   ÚOneToOneFieldr6   r#   rY   rN   ÚlistZquestion_idsÚdictZanswersrQ   Ztotal_questionsZcorrect_countZ
percentager%   Zgrader2   r3   Z
started_atZsubmitted_atrD   r   r   r   r    rR   q   s   þrR   c                   @   s”   e Zd Zejddd�Zejddd�Zejddd�Zejddd�Zej	ddd�Z
ejdddd�Zejdd�Zejdd	�Zejdd
�ZG dd„ dƒZdS )ÚStudentprofilesr
   Tr   rX   zstudent_resumes/r   r   r   r   r   c                   @   s   e Zd ZdZdS )zStudentprofiles.MetaZstudentprofilesNr   r   r   r   r    r!   ¢   s   r!   N)r   r   r   r   r%   r&   r'   r(   ÚlocationrM   Zskillsr*   Úresumer0   r2   r3   r4   r5   r!   r   r   r   r    r^   Œ   s   ýr^   c                   @   s¶   e Zd Zejdd�Zejddd�Zejdddd�Zej	ddd�Z
ejdddd�Zejddd�Zejdddd	�Zejd
dddd�Zejddddd�Zejdd�Zejdd�Zdd„ ZdS )ÚCompanyéÈ   r;   T©r   r   r=   r   r   zcompany/)r   r   r   r
   z0Shown on the invoice header, e.g. 'Iron & Steel')r   r   r   Ú	help_textzáInterest @ 30% pa will be charged if payment not made within 20 days.
Goods once sold cannot be taken back or exchanged.
Our responsibility ceases once goods leave our godown.
All disputes are subject to Chennai jurisdiction.z3Printed as footer notes/terms on every invoice PDF.)r   r   r   rd   r   r   c                 C   s   | j S r@   )Úcompany_namerB   r   r   r    rD   Ã   s    zCompany.__str__N)r   r   r   r   r%   re   rM   r)   ÚmobileÚ
EmailFieldr(   Ú
gst_numberZbank_detailsÚ
ImageFieldZlogoZ
dealers_inZinvoice_termsr3   r4   r5   rD   r   r   r   r    ra   §   s,     þ øra   c                   @   sf   e Zd Zejdd�Zejddd�Zejdddd�Zejdddd�Z	ej
dd�Zej
dd	�Zd
d„ ZdS )ÚCustomerrb   r;   Trc   r   r   r=   r   r   c                 C   s   | j S r@   ©r&   rB   r   r   r    rD   Ï   s    zCustomer.__str__N)r   r   r   r   r%   r&   rM   r)   rh   rf   r3   r4   r5   rD   r   r   r   r    rj   Ç   s   rj   c                   @   s<   e Zd Zejddd�Zejdd�ZG dd„ dƒZdd„ Z	d	S )
ÚCourser   T©r   Úuniquer   c                   @   s   e Zd ZdgZdS )zCourse.Metar&   N)r   r   r   Úorderingr   r   r   r    r!   Ö   s   r!   c                 C   s   | j S r@   rk   rB   r   r   r    rD   Ù   s    zCourse.__str__N)
r   r   r   r   r%   r&   r3   r4   r!   rD   r   r   r   r    rl   Ò   s   rl   c                   @   sj   e Zd Zejddd�Zejdd�Ze ¡ Zejddd�Z	ej
dd�Zej
dd�ZG d	d
„ d
ƒZdd„ ZdS )ÚSeoSettingsr   Trm   r
   r;   rc   r   r   c                   @   s   e Zd ZdZdgZdS )zSeoSettings.MetaZseo_settingsÚ	page_slugN)r   r   r   r   ro   r   r   r   r    r!   ä   s   r!   c                 C   s   | j S r@   )rq   rB   r   r   r    rD   è   s    zSeoSettings.__str__N)r   r   r   r   r%   rq   Z
meta_titlerM   Zmeta_descriptionZmeta_keywordsr3   r4   r5   r!   rD   r   r   r   r    rp   Ü   s   rp   c                   @   sj   e Zd Zejdd�Zejdddd�Zejddedƒd	�Z	ejdd
d�Z
ejdd�Zejdd�Zdd„ ZdS )ÚProductrb   r;   r   Tr   é   é   ú0.00©Ú
max_digitsÚdecimal_placesr   ZKg)r   r   r   r   c                 C   s   | j S r@   rk   rB   r   r   r    rD   ô   s    zProduct.__str__N)r   r   r   r   r%   r&   Zhsn_codeÚDecimalFieldr   Zdefault_rateZunitr3   r4   r5   rD   r   r   r   r    rr   ì   s   rr   c                   @   sú   e Zd Zejddd�Ze ¡ Zeje	ej
dd�Zejdddd�Zejddd�Zejdddd�Zejdd	ed
ƒd�Zejdd	ed
ƒd�Zejdd	ed
ƒd�Zejdd	ed
ƒd�Zejdd	ed
ƒd�Zejdd	ed
ƒd�Zejdd�Zejdd�Zdd„ ZdS )ÚInvoicer   Trm   Zinvoicesr:   r   rc   rs   rt   ru   rv   r   r   c                 C   s   | j S r@   )Úinvoice_numberrB   r   r   r    rD     s    zInvoice.__str__N)r   r   r   r   r%   r{   r/   Zinvoice_dater"   rj   rF   ZcustomerZeway_bill_noZeway_bill_dateZ
vehicle_nory   r   ZsubtotalZcgstZsgstZigstZ	round_offZgrand_totalr3   r4   r5   rD   r   r   r   r    rz   ø   s   rz   c                   @   sh   e Zd Zejeejdd�Zejeej	dd�Z
ejddd�Zejddd�Zejddedƒd�Zd	d
„ ZdS )ÚInvoiceItemÚitemsr:   Zinvoice_itemsrs   rt   )rw   rx   ru   rv   c                 C   s   | j j› d| jj› �S )Nz - )Úinvoicer{   Úproductr&   rB   r   r   r    rD     s    zInvoiceItem.__str__N)r   r   r   r   r"   rz   r#   r~   rr   rF   r   ry   ZquantityZrater   ÚamountrD   r   r   r   r    r|     s   r|   )Ú	django.dbr   Údjango.contrib.auth.modelsr   ÚuuidÚdecimalr   ÚModelr   r6   rI   rR   r^   ra   rj   rl   rp   rr   rz   r|   r   r   r   r    Ú<module>   s"   6 
