Subversion Repositories SmartDukaan

Rev

Rev 6482 | Rev 6515 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 6482 Rev 6507
Line 74... Line 74...
74
from shop2020.model.v1.order.impl.model.ServiceAvailability import ServiceAvailability
74
from shop2020.model.v1.order.impl.model.ServiceAvailability import ServiceAvailability
75
from shop2020.model.v1.order.impl.model.RechargeDenomination import RechargeDenomination
75
from shop2020.model.v1.order.impl.model.RechargeDenomination import RechargeDenomination
76
from shop2020.clients.PromotionClient import PromotionClient
76
from shop2020.clients.PromotionClient import PromotionClient
77
from decimal import Decimal
77
from decimal import Decimal
78
from shop2020.model.v1.order.impl.Convertors import to_t_emi_scheme
78
from shop2020.model.v1.order.impl.Convertors import to_t_emi_scheme
-
 
79
from shop2020.model.v1.order.impl.model.BaseOrder import BaseOrder
79
 
80
 
80
logging.basicConfig(level=logging.DEBUG)
81
logging.basicConfig(level=logging.DEBUG)
81
 
82
 
82
sourceId = int(ConfigClient().get_property("sourceid"))
83
sourceId = int(ConfigClient().get_property("sourceid"))
83
mail_user = 'cnc.center@shop2020.in'
84
mail_user = 'cnc.center@shop2020.in'
Line 3822... Line 3823...
3822
    emi_schemes = EmiScheme.query.all()
3823
    emi_schemes = EmiScheme.query.all()
3823
    if emi_schemes:
3824
    if emi_schemes:
3824
        t_emi_schemes = [to_t_emi_scheme(emi_scheme) for emi_scheme in emi_schemes]
3825
        t_emi_schemes = [to_t_emi_scheme(emi_scheme) for emi_scheme in emi_schemes]
3825
    return t_emi_schemes
3826
    return t_emi_schemes
3826
 
3827
 
-
 
3828
def refund_recharge_order(rechargeOrderId):
-
 
3829
    try :
-
 
3830
        rechargeOrder = RechargeOrder.query.filter_by(id = rechargeOrderId).first()
-
 
3831
        wallet = UserWallet.query.filter_by(userId = rechargeOrder.userId).first()
-
 
3832
    except:
-
 
3833
        return False
-
 
3834
    
-
 
3835
    paidAmount = rechargeOrder.totalAmount - rechargeOrder.walletAmount - rechargeOrder.couponAmount
-
 
3836
    amountToRefund = 0
-
 
3837
    status = None
-
 
3838
    if (paidAmount <= wallet.amount) :
-
 
3839
        amountToRefund = paidAmount
-
 
3840
        status = RechargeOrderStatus.REFUNDED
-
 
3841
    else :
-
 
3842
        amountToRefund = wallet.amount
-
 
3843
        status = RechargeOrderStatus.PARTIALLY_REFUNDED
-
 
3844
        
-
 
3845
    update_amount_in_wallet(rechargeOrder.userId, -amountToRefund, rechargeOrderId)
-
 
3846
    
-
 
3847
    try:    
-
 
3848
        pc = PaymentClient().get_client()
-
 
3849
        if pc.refundPayment(rechargeOrder.transaction_id, amountToRefund, True) :
-
 
3850
            rechargeOrder.status = status
-
 
3851
            session.commit()
-
 
3852
            return True
-
 
3853
        else :
-
 
3854
            update_amount_in_wallet(rechargeOrder.userId, amountToRefund, rechargeOrderId)
-
 
3855
            
-
 
3856
    except:
-
 
3857
        update_amount_in_wallet(rechargeOrder.userId, amountToRefund, rechargeOrderId)
-
 
3858
        
-
 
3859
    return False 
-
 
3860
    
-
 
3861
 
3827
def close_session():
3862
def close_session():
3828
    if session.is_active:
3863
    if session.is_active:
3829
        print "session is active. closing it."
3864
        print "session is active. closing it."
3830
        session.close()
3865
        session.close()
3831
 
3866