
    PIiY                     X    d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 	  G d de      Z
y)	    )AbstractObject)AbstractCrudObject)ObjectParser)FacebookRequest)TypeCheckerc                   :    e Zd Zd fd	Z G d dej
                        Z G d d      Z G d d      Z G d d	      Zd d
Z	d dZ
d dZd dZd dZd dZd dZd dZd dZd dZd dZd dZd dZd dZd dZd dZddddddddddddddddZed        Z xZS )!CommerceOrderc                 >    d| _         t        t        |   |||       y )NT)_isCommerceOrdersuperr	   __init__)selffbid	parent_idapi	__class__s       w/var/www/webhook.estador.de/web/meta/bot/venv/lib/python3.12/site-packages/facebook_business/adobjects/commerceorder.pyr   zCommerceOrder.__init__   s     $mT+D)SA    c                   H    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y)CommerceOrder.Fieldbuyer_detailschannelcontains_bopis_itemscreatedestimated_payment_detailsidis_group_buyis_test_orderlast_updatedmerchant_order_idorder_statuspre_order_detailsselected_shipping_optionship_by_dateshipping_addressN)__name__
__module____qualname__r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%    r   r   Fieldr      sS    '5$?!%'%/%/#= %-r   r*   c                   $    e Zd ZdZdZdZdZdZdZy)CommerceOrder.FiltersHAS_CANCELLATIONSHAS_FULFILLMENTSHAS_REFUNDSNO_CANCELLATIONS
NO_REFUNDSNO_SHIPMENTSN)	r&   r'   r(   has_cancellationshas_fulfillmentshas_refundsno_cancellations
no_refundsno_shipmentsr)   r   r   Filtersr,   .   s#    /-#-!
%r   r9   c                       e Zd ZdZdZdZdZy)CommerceOrder.State	COMPLETEDCREATEDFB_PROCESSINGIN_PROGRESSN)r&   r'   r(   	completedr   fb_processingin_progressr)   r   r   Stater;   6   s    	'#r   rC   c                   8    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y)CommerceOrder.ReasonCodeBUYERS_REMORSEDAMAGED_GOODSFACEBOOK_INITIATEDNOT_AS_DESCRIBEDQUALITY_ISSUEREFUND_COMPROMISEDREFUND_FOR_RETURNREFUND_REASON_OTHERREFUND_SFI_FAKEREFUND_SFI_REAL
WRONG_ITEMN)r&   r'   r(   buyers_remorsedamaged_goodsfacebook_initiatednot_as_describedquality_issuerefund_compromisedrefund_for_returnrefund_reason_otherrefund_sfi_fakerefund_sfi_real
wrong_itemr)   r   r   
ReasonCoderE   <   s>    )'1-'1/3++!
r   r\   c                 p   ddl m} ||||j                  d       i }i }	t        | d   dd| j                  t        ||	      t        dt        |       	      }
|
j                  |       |
j                  |       ||
j                  |||
       |
S |r|
S | j                          |
j                         S )Nr   	api_utils:`success` and `failure` callback only work for batch call.r   GET/NODE)reuse_objectnode_idmethodendpointr   param_checkertarget_classapi_typeresponse_parsersuccessfailurefacebook_business.utilsr_   warningr   _apir   r	   r   
add_params
add_fieldsadd_to_batchassure_callexecuter   fieldsparamsbatchrn   ro   pendingr_   param_typesenumsrequests              r   api_getzCommerceOrder.api_getI   s    5=g1W5H


X
Y

!J		%k59&(d;	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddd}i }	t        | d   dd| j                  t        ||	      t        d	t        t        | j                  
            }
|
j                  |       |
j                  |       ||
j                  |||       |
S |r|
S | j                          |
j                         S )Nr   r^   r`   string)idempotency_keymerchant_order_referencer   POSTz/acknowledge_orderEDGErj   r   re   rm   rp   ry   s              r   create_acknowledge_orderz&CommerceOrder.create_acknowledge_orderg   s    5=g1W5H


X
Y'(0

!J)		%k59&(mS	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       i }i }	t        | d   dd| j                  t        ||	      t        dt        t        | j                        	      }
|
j                  |       |
j                  |       ||
j                  |||
       |
S |r|
S | j                          |
j                         S )Nr   r^   r`   r   ra   /cancellationsr   r   re   rm   rq   r_   rr   r   rs   r   r   r   rt   ru   rv   rw   rx   ry   s              r   get_cancellationszCommerceOrder.get_cancellations   s    5=g1W5H


X
Y

!J%		%k59+(6HdiiX	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddddd}i }	t        | d	   d
d| j                  t        ||	      t        dt        t        | j                              }
|
j                  |       |
j                  |       ||
j                  |||       |
S |r|
S | j                          |
j                         S )Nr   r^   r`   mapr   	list<map>bool)cancel_reasonr   itemsrestock_itemsr   r   r   r   r   re   rm   rp   ry   s              r   create_cancellationz!CommerceOrder.create_cancellation   s    5=g1W5H


X
Y"' #	

!J%		%k59&(mS	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddd}i }	t        | d   dd	| j                  t        ||	      t        d
t        t        | j                              }
|
j                  |       |
j                  |       ||
j                  |||       |
S |r|
S | j                          |
j                         S )Nr   r^   r`   r   r   )r   r   r   r   z/item_updatesr   r   re   rm   rp   ry   s              r   create_item_updatez CommerceOrder.create_item_update   s    5=g1W5H


X
Y (0

!J$		%k59&(mS	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       i }i }	t        | d   dd| j                  t        ||	      t        dt        t        | j                        	      }
|
j                  |       |
j                  |       ||
j                  |||
       |
S |r|
S | j                          |
j                         S )Nr   r^   r`   r   ra   z/itemsr   r   re   rm   r   ry   s              r   	get_itemszCommerceOrder.get_items   s    5=g1W5H


X
Y

!J		%k59+(6HdiiX	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       i }i }	t        | d   dd| j                  t        ||	      t        dt        t        | j                        	      }
|
j                  |       |
j                  |       ||
j                  |||
       |
S |r|
S | j                          |
j                         S )Nr   r^   r`   r   ra   z	/paymentsr   r   re   rm   r   ry   s              r   get_paymentszCommerceOrder.get_payments  s    5=g1W5H


X
Y

!J 		%k59+(6HdiiX	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       i }i }	t        | d   dd| j                  t        ||	      t        dt        t        | j                        	      }
|
j                  |       |
j                  |       ||
j                  |||
       |
S |r|
S | j                          |
j                         S )Nr   r^   r`   r   ra   z/promotion_detailsr   r   re   rm   r   ry   s              r   get_promotion_detailsz#CommerceOrder.get_promotion_details#  s    5=g1W5H


X
Y

!J)		%k59+(6HdiiX	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       i }i }	t        | d   dd| j                  t        ||	      t        dt        t        | j                        	      }
|
j                  |       |
j                  |       ||
j                  |||
       |
S |r|
S | j                          |
j                         S )Nr   r^   r`   r   ra   z/promotionsr   r   re   rm   r   ry   s              r   get_promo_t_i_onszCommerceOrder.get_promo_t_i_onsA  s    5=g1W5H


X
Y

!J"		%k59+(6HdiiX	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       i }i }	t        | d   dd| j                  t        ||	      t        dt        t        | j                        	      }
|
j                  |       |
j                  |       ||
j                  |||
       |
S |r|
S | j                          |
j                         S )Nr   r^   r`   r   ra   /refundsr   r   re   rm   r   ry   s              r   get_refundszCommerceOrder.get_refunds_  s    5=g1W5H


X
Y

!J		%k59+(6HdiiX	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddddddddd}dt        j                  j
                  j                         i}	t        | d	   d
d| j                  t        ||	      t        dt        t        | j                              }
|
j                  |       |
j                  |       ||
j                  |||       |
S |r|
S | j                          |
j                         S )Nr   r^   r`   r   r   r   reason_code_enum)adjustment_amount
deductionsr   r   reason_codereason_text	return_idshippingr   r   r   r   r   re   rm   )rq   r_   rr   r	   r\   __dict__valuesr   rs   r   r   rt   ru   rv   rw   rx   ry   s              r   create_refundzCommerceOrder.create_refund}  s   5=g1W5H


X
Y!&%' -#!	
  8 8 A A H H J
 "J		%k59&(mS	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddd}dg di}	t        | d	   d
d| j                  t        ||	      t        dt        t        | j                              }
|
j                  |       |
j                  |       ||
j                  |||       |
S |r|
S | j                          |
j                         S )Nr   r^   r`   r   zlist<statuses_enum>)merchant_return_idstatusesstatuses_enum)APPROVEDDISAPPROVEDMERCHANT_MARKED_COMPLETEDREFUNDED	REQUESTEDr   ra   /returnsr   r   re   rm   r   ry   s              r   get_returnszCommerceOrder.get_returns  s    5=g1W5H


X
Y"*-

  
 "J		%k59+(6HdiiX	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddddd}i }	t        | d   d	d
| j                  t        ||	      t        dt        t        | j                              }
|
j                  |       |
j                  |       ||
j                  |||       |
S |r|
S | j                          |
j                         S )Nr   r^   r`   r   r   r   )r   r   return_messageupdater   r   r   r   r   re   rm   rp   ry   s              r   create_returnzCommerceOrder.create_return  s    5=g1W5H


X
Y "*&	

!J		%k59&(mS	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       i }i }	t        | d   dd| j                  t        ||	      t        dt        t        | j                        	      }
|
j                  |       |
j                  |       ||
j                  |||
       |
S |r|
S | j                          |
j                         S )Nr   r^   r`   r   ra   
/shipmentsr   r   re   rm   r   ry   s              r   get_shipmentszCommerceOrder.get_shipments  s    5=g1W5H


X
Y

!J!		%k59+(6HdiiX	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddddddddddd
}i }	t        | d	   d
d| j                  t        ||	      t        dt        t        | j                              }
|
j                  |       |
j                  |       ||
j                  |||       |
S |r|
S | j                          |
j                         S )Nr   r^   r`   r   r   r   r   )
external_redemption_linkexternal_shipment_idfulfillmentr   r   r   shipment_origin_postal_codeshipping_tax_details'should_use_default_fulfillment_locationtracking_infor   r   r   r   r   re   rm   rp   ry   s              r   create_shipmentzCommerceOrder.create_shipment  s    5=g1W5H


X
Y(0$, ' (0+3$)7="

!J!		%k59&(mS	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       dddddd}i }	t        | d   dd	| j                  t        ||	      t        d
t        t        | j                              }
|
j                  |       |
j                  |       ||
j                  |||       |
S |r|
S | j                          |
j                         S )Nr   r^   r`   r   r   )r   fulfillment_idr   shipment_idr   r   r   z/update_shipmentr   r   re   rm   rp   ry   s              r   create_update_shipmentz$CommerceOrder.create_update_shipment3  s    5=g1W5H


X
Y$,&'#"

!J'		%k59&(mS	
 	6"6"   INN??$$r   Objectr   r   )r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   c                    i }t         j                  j                  j                         |d<   t         j                  j                  j                         |d<   t         j
                  j                  j                         |d<   |S )Nr9   rC   r\   )r	   r9   r   r   rC   r\   )clsfield_enum_infos     r   _get_field_enum_infoz"CommerceOrder._get_field_enum_infog  sj    %2%:%:%C%C%J%J%L	"#0#6#6#?#?#F#F#H (5(@(@(I(I(P(P(R%r   )NNN)NNNNNF)r&   r'   r(   r   r   r*   r9   rC   r\   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   _field_typesclassmethodr   __classcell__)r   s   @r   r	   r	      s    B.$$ ."& &$ $" "%<%@%< %D%@%<%<%<%<%<%%N%%N %D%<&%P!%H " &%- % %$, $L"  r   r	   N)*facebook_business.adobjects.abstractobjectr   .facebook_business.adobjects.abstractcrudobjectr   (facebook_business.adobjects.objectparserr   facebook_business.apir   facebook_business.typecheckerr   r	   r)   r   r   <module>r      s+    F M A 1 5X	X	r   