o
    
>ho                     @   s4   d dl mZ ddlmZ ddlZG dd deZdS )   )Resource   )URL    Nc                       s   e Zd Zd fdd	Zi fddZi f fdd	Zi f fdd		Zi fd
dZi fddZi fddZ	i fddZ
i fddZi fddZ  ZS )OrderNc                    s"   t t| | tjtj | _d S N)superr   __init__r   V1	ORDER_URLbase_url)selfclient	__class__ x/var/www/vedio/testing/chatpythonscript.ninositsolution.com/env/lib/python3.10/site-packages/razorpay/resources/order.pyr	      s   zOrder.__init__c                 K   s   t dt | j|fi |S )Nz+Will be Deprecated in next release, use all)warningswarnDeprecationWarningallr   datakwargsr   r   r   	fetch_all   s   zOrder.fetch_allc                    s   t t| j|fi |S )za
        Fetch all Order entities

        Returns:
            Dictionary of Order data
        )r   r   r   r   r   r   r   r      s   z	Order.allc                    s   t t| j||fi |S )z
        Fetch Order for given Id

        Args:
            order_id : Id for which order object has to be retrieved

        Returns:
            Order dict for given order Id
        )r   r   fetchr   order_idr   r   r   r   r   r      s   
zOrder.fetchc                 K   s    t dt | j||fi |S )Nz0Will be Deprecated in next release, use payments)r   r   r   paymentsr   r   r   r   fetch_all_payments%   s   zOrder.fetch_all_paymentsc                 K   s"   d | j|}| j||fi |S )z
        Fetch Payment for Order Id

        Args:
            order_id : Id for which payment objects has to be retrieved

        Returns:
            Payment dict for given Order Id
        z{}/{}/payments)formatr   get_urlr   r   r   r   urlr   r   r   r   *   s   
zOrder.paymentsc                 K   s   | j }| j||fi |S )a  
        Create Order from given dict

        Args:
            data : Dictionary having keys using which order have to be created
                'amount' :  Amount of Order
                'currency' : Currency used in Order
                'receipt' : Receipt Id for the order
                'notes' : key value pair as notes
                'payment_capture': 0/1 if payment should be auto captured or not

        Returns:
            Order Dict which was created
        r   post_url)r   r   r   r#   r   r   r   create7   s   zOrder.createc                 K   s$   | j  d| }| j||fi |S )z
         Update order

        Args:
            data : Dictionary having keys using which order have to be edited
                'notes' : key value pair as notes
            
            Returns:
            Order Dict which was edited

        /)r   	patch_urlr"   r   r   r   editI   s   z
Order.editc                 K   &   | j  d| d}| j||fi |S )z]
        View rto risk reasons

        Returns:
            Dict for given Order Id
        r'   z/rto_reviewr$   r"   r   r   r   viewRtoReviewX      zOrder.viewRtoReviewc                 K   r*   )zf
        Update the Fulfillment Details

        Returns:
            Dict for given Order Id
        r'   z/fulfillmentr$   r"   r   r   r   editFulfillmentb   r,   zOrder.editFulfillmentr   )__name__
__module____qualname__r	   r   r   r   r   r   r&   r)   r+   r-   __classcell__r   r   r   r   r      s    	
r   )baser   constants.urlr   r   r   r   r   r   r   <module>   s    