
    qh                         d dl mZmZ d dlmZ d dlmZ d dlmZm	Z	m
Z
mZmZmZmZ d dlmZ d dlmZ d dlmZ d dlmZ  ed	d
g      Zej/                  d       ee       ee      fde
dedefd       Zej/                  d       ee       ee      fdededefd       Zej/                  d       ee       ee      fdededefd       Zej/                  d       ee      fdedefd       Zej/                  d       ee      fdedefd       Zej/                  d       ee      fde	defd       Zej/                  d       ee      fdedefd       Zej?                  d        ee      fd!e defd"       Z!ej?                  d#       ee      fd!e defd$       Z"ej?                  d%       ee      fd!e defd&       Z#ej?                  d'       ee      fd!e defd(       Z$ej?                  d)       ee      fd!e defd*       Z%ej?                  d+       ee      fd!e defd,       Z&ej/                  d-       ee      fdedefd.       Z'ej?                  d/       ee      fdefd0       Z(y1)2    )	APIRouterDepends)get_db)Session)GenerateCustomerBillGeneratedCustomerBillListCustomerBillListGenerateCustomerCreditNoteBillCustomerBillSearchToBeAcceptedCustomerBillChangeStatusInCustomerBill)CustomerBillClass)CustomerClass)get_current_active_user)	UserLoginz/customer_billsCustomerBills)prefixtags/customer_bill_inputssession_userdbc                     t        |      j                  |j                  |j                  d| j                        }d|iS )N   message)r   get_allrol_idrutpage)r   r   r   datas       N/var/www/intrajisbackend.com/public_html/app/backend/routers/customer_bills.pyindexr"      s<    R (()<)<l>N>NPQSgSlSlmDt    z/searchcustomer_billsc           
          t        |      j                  |j                  |j                  | j                  | j                  | j
                  | j                  | j                  | j                        }d|iS Nr   )	r   searchr   r   branch_office_idcustomer	status_idsupervisor_idr   )r$   r   r   r    s       r!   r'   r'      s    R ''(;(;\=M=M~OnOnp~  qC  qC  ES  E\  E\  ^l  ^v  ^v  xF  xT  xT  Vd  Vi  Vi  jDtr#   z/storecustomer_ticket_inputsc                 D   t        |      j                  | j                        }| j                  dk(  rE|dk(  rt        |      j	                  |        n%t        |      j                  | j                  |        t        |      j	                  | |j                        }d|iS Nr   zCustomer does not existr   )r   check_existencer   	will_savestoreupdater   r   )r,   r   r   existence_datar    s        r!   r1   r1      s    "2&667M7Q7QRN''1,66"##$:;"$$%;%?%?AWXR &&'=|?R?RSDtr#   z/generate_billc                 .   t        |      j                  | j                        }| j                  dk(  rE|dk(  rt        |      j	                  |        n%t        |      j                  | j                  |        t        |      j                  |       }d|iS r.   )r   r/   r   r0   r1   r2   r   generater   r   r3   r    s       r!   generate_billr7   )   s    "2&667K7O7OPN%%*66"##$89"$$%9%=%=?STR ))*>?Dtr#   z/to_be_acceptedc                 .   t        |      j                  | j                        }| j                  dk(  rE|dk(  rt        |      j	                  |        n%t        |      j                  | j                  |        t        |      j                  |       }d|iS r.   )r   r/   r   r0   r1   r2   r   r6   s       r!   to_be_acceptedr9   7   s    "2&667K7O7OPN%%*66"##$89"$$%9%=%=?STR ''(<=Dtr#   z/generated_billsc                 T    t        |      j                  d| j                        }d|iS )N   r   )r   r   r   r   r   r    s      r!   generated_ticketsr=   E   s+    R ((,@,E,EFDtr#   z/generate_credit_note customer_credit_note_bill_inputsc                 >    t        |      j                  |       }d|iS r&   )r   store_credit_note)r>   r   r    s      r!   generate_credit_noterA   K   s#    R 223STDtr#   z/download/{id}idc                 >    t        |      j                  |       }d|iS r&   )r   downloadrB   r   r    s      r!   rD   rD   Q   s"    R ))"-Dtr#   z/verify/{id}c                 >    t        |      j                  |       }d|iS r&   )r   verifyrE   s      r!   rG   rG   W   "    R ''+Dtr#   z
/edit/{id}c                 >    t        |      j                  |       }d|iS r&   )r   getrE   s      r!   editrK   ]   s"    R $$R(Dtr#   z/delete/{id}c                 >    t        |      j                  |       }d|iS r&   )r   deleterE   s      r!   rM   rM   c   rH   r#   z/pre_accept/{id}c                 >    t        |      j                  |       }d|iS r&   )r   
pre_acceptrE   s      r!   rO   rO   i   s"    R ++B/Dtr#   z/reject/{id}c                 >    t        |      j                  |       }d|iS r&   )r   rejectrE   s      r!   rQ   rQ   o   rH   r#   z/change_statusc                 >    t        |      j                  |       }d|iS r&   )r   change_statusr<   s      r!   rS   rS   u   s#    R ../CDDtr#   z/check_paymentsc                 <    t        |       j                         }d|iS r&   )r   check_payments)r   r    s     r!   rU   rU   {   s     R //1Dtr#   N))fastapir   r   app.backend.db.databaser   sqlalchemy.ormr   app.backend.schemasr   r   r	   r
   r   r   r   'app.backend.classes.customer_bill_classr   "app.backend.classes.customer_classr   app.backend.auth.auth_userr   r   r$   postr"   r'   r1   r7   r9   r=   rA   rJ   intrD   rG   rK   rM   rO   rQ   rS   rU    r#   r!   <module>r`      s   & * " L  L  L E < > )
	
 SKRSjKk  |C  DJ  |K / y qx  
 YHOPgHhx  AG  yH , I nu   
 XQXYpQq  BI  JP  BQ !5 Y w~   %&KRSY? ';   ' &'PWX^P_ (@ g  ( '(T[\bTc +D '  )
 ,-hopvhw :X ^e  .
 $%#*6?    &
 N#!( c w  $
 L!&v C W  "
 N#!( c w  $
 &'%,V_ # 7  (
 N#!( c w  $
 %&QXY_Q` 'A w  '
 %&!( w  'r#   