
    ii?                         d dl mZ d dlmZmZ d dlmZ d dlmZ  G d de      Z	 G d de	      Z
 G d	 d
e	      Z G d de	      Zy)    )Optional)Field
ConfigDict)
BaseSchema)Sessionc                   `   e Zd ZU  ed      Z edd      Zee   e	d<    edd      Z
ee   e	d	<    edd
      Zee   e	d<    edd      Zee   e	d<    edd      Zee   e	d<    edd      Zee   e	d<    edd      Zee   e	d<    edd      Zee   e	d<    edd      Zee   e	d<    edd      Zee   e	d<    edd      Zee   e	d<    edd      Zee   e	d<    edd      Zee   e	d<    edd       Zee   e	d!<    edd"      Zee   e	d#<    edd$      Zee   e	d%<   y)&InvoiceAdjustmentsBaseTfrom_attributesFzPayment is surcharged or notdefaultdescriptionis_surchargedNz$Adjustment description for surchargeadjustment_descriptionz#Adjustment disclaimer for surcharge
disclaimerzIs the payment discountable?is_discountedzIs the discount is manualis_manual_discountzManual discount amountdiscount_amountz&manual discount type percentage/amountdiscount_typezDiscount coupon namediscount_namezHas any late fee of the payemnthas_late_feezLate fee amount
fee_amountz$Late fee type e.g. Percentage/Amountlate_fee_typezLate fee frequencyfee_frequencyzCharge late fee after the delaylate_fee_delayzLate fee delay frequencylate_fee_delay_frequencyzLate cap fee amountcap_fee_amountzSetting discount unique iddiscount_id)__name__
__module____qualname__r   model_configr   r   r   bool__annotations__r   strr   r   r   r   floatr   r   r   r   r   r   r   intr   r   r        j/var/www/html/hwPaymentPortal-be-dev/hw-payment-portal-api/src/apps/invoices/schemas/invoice_adjustment.pyr	   r	      s   d3L$)#A%M8D>  -2:-HSM  !&d@e fJf$)#A%M8D>  */#>*  (-TG_'`OXe_`#(<$M8C=  $)CY#ZM8C=Z#(#D$L(4.  #(BS"TJT#(:$M8C=  $)CW#XM8C=X$)$De$fNHSMf.3./hsm  ',DF[&\NHUO\!&tA]!^K#^r)   r	   c                       e Zd ZU  ed      Z edd      Zee   e	d<    edd      Z
ee   e	d<    edd      Zee   e	d	<   y)
InvoiceAdjustmentsSchemaTr
   Nz&Id of Payment Request Product resourcer   idzSetting discount percentdiscount_percenttotal_discount_amount)r   r    r!   r   r"   r   r-   r   r'   r$   r.   r%   r/   r(   r)   r*   r,   r,   1   s\    d3Ld8`aBa&+.'hsm  ,1.,8C= r)   r,   c                       e Zd Z ed      Zy)InvoiceAdjustmentsCreateTr
   Nr   r    r!   r   r"   r(   r)   r*   r1   r1   C       d3Lr)   r1   c                       e Zd Z ed      Zy)InvoiceAdjustmentsUpdateTr
   Nr2   r(   r)   r*   r5   r5   G   r3   r)   r5   N)typingr   pydanticr   r   src.apps.base.schemas.commonr   sqlalchemy.ormr   r	   r,   r1   r5   r(   r)   r*   <module>r:      sG     & 3 "&_Z &_R5 $45 445 4r)   