Subversion Repositories SmartDukaan

Rev

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

Rev 6305 Rev 6307
Line 53... Line 53...
53
import os
53
import os
54
import sys
54
import sys
55
import time
55
import time
56
import traceback
56
import traceback
57
import urllib
57
import urllib
-
 
58
 
-
 
59
 
-
 
60
import time
-
 
61
 
-
 
62
 
58
from shop2020.config.client.ConfigClient import ConfigClient
63
from shop2020.config.client.ConfigClient import ConfigClient
59
from shop2020.model.v1.order.impl.model.RechargePlan import RechargePlan
64
from shop2020.model.v1.order.impl.model.RechargePlan import RechargePlan
60
from shop2020.model.v1.order.impl.model.RechargeOrder import RechargeOrder
65
from shop2020.model.v1.order.impl.model.RechargeOrder import RechargeOrder
61
from shop2020.model.v1.order.impl.model.UserWallet import UserWallet
66
from shop2020.model.v1.order.impl.model.UserWallet import UserWallet
62
from shop2020.model.v1.order.impl.model.UserWalletHistory import UserWalletHistory
67
from shop2020.model.v1.order.impl.model.UserWalletHistory import UserWalletHistory
63
from shop2020.model.v1.order.impl.model.ServiceProvider import ServiceProvider
68
from shop2020.model.v1.order.impl.model.ServiceProvider import ServiceProvider
64
from shop2020.model.v1.order.impl.model.DTHRechargeOrder import DTHRechargeOrder
69
from shop2020.model.v1.order.impl.model.DTHRechargeOrder import DTHRechargeOrder
65
from shop2020.model.v1.order.impl.model.TelecomCircle import TelecomCircle
70
from shop2020.model.v1.order.impl.model.TelecomCircle import TelecomCircle
-
 
71
from shop2020.model.v1.order.impl.model.ServiceAvailability import ServiceAvailability
66
from shop2020.model.v1.order.impl.model.RechargeDenomination import RechargeDenomination
72
from shop2020.model.v1.order.impl.model.RechargeDenomination import RechargeDenomination
67
from shop2020.clients.PromotionClient import PromotionClient
73
from shop2020.clients.PromotionClient import PromotionClient
68
from decimal import Decimal
74
from decimal import Decimal
69
 
75
 
70
logging.basicConfig(level=logging.DEBUG)
76
logging.basicConfig(level=logging.DEBUG)
Line 3528... Line 3534...
3528
    deviceNumberInfo = DeviceNumberInfo()
3534
    deviceNumberInfo = DeviceNumberInfo()
3529
    deviceNumberInfo.circleName = operatorCircle
3535
    deviceNumberInfo.circleName = operatorCircle
3530
    deviceNumberInfo.operatorId = providerId
3536
    deviceNumberInfo.operatorId = providerId
3531
    return deviceNumberInfo
3537
    return deviceNumberInfo
3532
 
3538
 
3533
def validate_recharge(rechargeType, deviceNumber):
3539
def validate_recharge(rechargeType, deviceNumber, circleCode, userSelectedProviderId):
3534
    if get_service_provider_for_device(rechargeType, deviceNumber) == -1:
3540
    deviceNumberInfo = get_service_provider_for_device(rechargeType, deviceNumber)
-
 
3541
    if deviceNumberInfo.operatorId == -1:
3535
        return "Oops! There seems to be a problem. Please try after some time"
3542
        return "Oops! There seems to be a problem. Please try after some time."
-
 
3543
    circle_id = TelecomCircle.query.filter_by(code = circleCode).first().id
-
 
3544
    if not ServiceAvailability.query.filter_by(circleId = circle_id).filter_by(operatorId = userSelectedProviderId).first().isServiceAvailable :
-
 
3545
        return "This operator is not available at this time. Please try later." 
3536
    allcounts, successcounts  = get_previous_transactions(rechargeType, deviceNumber)
3546
    allcounts, successcounts  = get_previous_transactions(rechargeType, deviceNumber)
3537
    if allcounts >= 15 or successcounts >= 5:
3547
    if allcounts >= 15 or successcounts >= 5:
3538
        return "You have exceeded daily limit for this mobile number."
3548
        return "You have exceeded daily limit for this mobile number."
3539
    return "SUCCESS"
3549
    return "SUCCESS"
3540
    
3550
    
Line 3726... Line 3736...
3726
        return True
3736
        return True
3727
    except Exception as e:
3737
    except Exception as e:
3728
        print e
3738
        print e
3729
        return False
3739
        return False
3730
 
3740
 
3731
def get_recharge_denominations(operator_id, circleName, denomination_type):
3741
def get_recharge_denominations(operator_id, circleCode, denomination_type):
3732
    circle_id = TelecomCircle.query.filter_by(code = circleName).first().id
3742
    circle_id = TelecomCircle.query.filter_by(code = circleCode).first().id
3733
    return RechargeDenomination.query.filter_by(operatorId = operator_id).filter_by(circleId = circle_id).filter_by(denominationType = denomination_type).all()
3743
    return RechargeDenomination.query.filter_by(operatorId = operator_id).filter_by(circleId = circle_id).filter_by(denominationType = denomination_type).all()
3734
        
3744
        
3735
def close_session():
3745
def close_session():
3736
    if session.is_active:
3746
    if session.is_active:
3737
        print "session is active. closing it."
3747
        print "session is active. closing it."