| Line 78... |
Line 78... |
| 78 |
from shop2020.thriftpy.warehouse.ttypes import ScanType, \
|
78 |
from shop2020.thriftpy.warehouse.ttypes import ScanType, \
|
| 79 |
WarehouseServiceException
|
79 |
WarehouseServiceException
|
| 80 |
from shop2020.utils.EmailAttachmentSender import mail, get_attachment_part, \
|
80 |
from shop2020.utils.EmailAttachmentSender import mail, get_attachment_part, \
|
| 81 |
mail_html
|
81 |
mail_html
|
| 82 |
from shop2020.utils.Utils import to_py_date, to_java_date, \
|
82 |
from shop2020.utils.Utils import to_py_date, to_java_date, \
|
| 83 |
getAsyncOperatorsForRecharge
|
83 |
getSyncOperatorsForRecharge
|
| 84 |
from sqlalchemy.orm.exc import NoResultFound, MultipleResultsFound
|
84 |
from sqlalchemy.orm.exc import NoResultFound, MultipleResultsFound
|
| 85 |
from sqlalchemy.sql import func
|
85 |
from sqlalchemy.sql import func
|
| 86 |
from sqlalchemy.sql.expression import and_, or_, desc, not_, distinct, cast, \
|
86 |
from sqlalchemy.sql.expression import and_, or_, desc, not_, distinct, cast, \
|
| 87 |
between
|
87 |
between
|
| 88 |
from string import Template
|
88 |
from string import Template
|
| Line 4936... |
Line 4936... |
| 4936 |
session.commit()
|
4936 |
session.commit()
|
| 4937 |
return True
|
4937 |
return True
|
| 4938 |
|
4938 |
|
| 4939 |
if rechargeOrderStatus == RechargeOrderStatus.RECHARGE_FAILED:
|
4939 |
if rechargeOrderStatus == RechargeOrderStatus.RECHARGE_FAILED:
|
| 4940 |
if recharge_order.status == RechargeOrderStatus.RECHARGE_FAILED:
|
4940 |
if recharge_order.status == RechargeOrderStatus.RECHARGE_FAILED:
|
| 4941 |
print "Same updation for status RECHARGE_FAILED"
|
- |
|
| 4942 |
return True
|
4941 |
return True
|
| 4943 |
recharge_order.status = RechargeOrderStatus.RECHARGE_FAILED
|
4942 |
recharge_order.status = RechargeOrderStatus.RECHARGE_FAILED
|
| 4944 |
recharge_order.responseTimestamp = datetime.datetime.now()
|
4943 |
recharge_order.responseTimestamp = datetime.datetime.now()
|
| 4945 |
session.commit()
|
4944 |
session.commit()
|
| 4946 |
update_amount_in_wallet(recharge_order.userId, recharge_order.walletAmount, recharge_order.id, 1)
|
4945 |
update_amount_in_wallet(recharge_order.userId, recharge_order.walletAmount, recharge_order.id, 1)
|
| Line 4948... |
Line 4947... |
| 4948 |
enqueue_recharge_info_email(recharge_order)
|
4947 |
enqueue_recharge_info_email(recharge_order)
|
| 4949 |
return True
|
4948 |
return True
|
| 4950 |
|
4949 |
|
| 4951 |
if rechargeOrderStatus == RechargeOrderStatus.RECHARGE_SUCCESSFUL:
|
4950 |
if rechargeOrderStatus == RechargeOrderStatus.RECHARGE_SUCCESSFUL:
|
| 4952 |
if recharge_order.status == RechargeOrderStatus.RECHARGE_SUCCESSFUL:
|
4951 |
if recharge_order.status == RechargeOrderStatus.RECHARGE_SUCCESSFUL:
|
| 4953 |
print "Same updation for status RECHARGE_SUCCESSFUL"
|
- |
|
| 4954 |
return True
|
4952 |
return True
|
| 4955 |
recharge_order.status = RechargeOrderStatus.RECHARGE_SUCCESSFUL
|
4953 |
recharge_order.status = RechargeOrderStatus.RECHARGE_SUCCESSFUL
|
| 4956 |
recharge_order.responseTimestamp = datetime.datetime.now()
|
4954 |
recharge_order.responseTimestamp = datetime.datetime.now()
|
| 4957 |
recharge_order.invoiceNumber = get_next_invoice_number(OrderType.RECHARGE)
|
4955 |
recharge_order.invoiceNumber = get_next_invoice_number(OrderType.RECHARGE)
|
| 4958 |
session.commit()
|
4956 |
session.commit()
|
| Line 4960... |
Line 4958... |
| 4960 |
enqueue_recharge_info_email(recharge_order, gvs)
|
4958 |
enqueue_recharge_info_email(recharge_order, gvs)
|
| 4961 |
return True
|
4959 |
return True
|
| 4962 |
|
4960 |
|
| 4963 |
if rechargeOrderStatus == RechargeOrderStatus.RECHARGE_FAILED_REFUNDED:
|
4961 |
if rechargeOrderStatus == RechargeOrderStatus.RECHARGE_FAILED_REFUNDED:
|
| 4964 |
if recharge_order.status == RechargeOrderStatus.RECHARGE_FAILED_REFUNDED:
|
4962 |
if recharge_order.status == RechargeOrderStatus.RECHARGE_FAILED_REFUNDED:
|
| 4965 |
print "Same updation for status RECHARGE_FAILED_REFUNDED"
|
- |
|
| 4966 |
return True
|
4963 |
return True
|
| 4967 |
recharge_order.status = RechargeOrderStatus.RECHARGE_FAILED_REFUNDED
|
4964 |
recharge_order.status = RechargeOrderStatus.RECHARGE_FAILED_REFUNDED
|
| 4968 |
recharge_order.responseTimestamp = datetime.datetime.now()
|
4965 |
recharge_order.responseTimestamp = datetime.datetime.now()
|
| 4969 |
session.commit()
|
4966 |
session.commit()
|
| 4970 |
update_amount_in_wallet(recharge_order.userId, recharge_order.walletAmount, recharge_order.id, 1)
|
4967 |
update_amount_in_wallet(recharge_order.userId, recharge_order.walletAmount, recharge_order.id, 1)
|
| Line 4999... |
Line 4996... |
| 4999 |
update_amount_in_wallet(recharge_order.userId, recharge_order.totalAmount - recharge_order.walletAmount - recharge_order.couponAmount, recharge_order.id, 0)
|
4996 |
update_amount_in_wallet(recharge_order.userId, recharge_order.totalAmount - recharge_order.walletAmount - recharge_order.couponAmount, recharge_order.id, 0)
|
| 5000 |
session.commit()
|
4997 |
session.commit()
|
| 5001 |
return False
|
4998 |
return False
|
| 5002 |
except:
|
4999 |
except:
|
| 5003 |
if isinstance(recharge_order, MobileRechargeOrder):
|
5000 |
if isinstance(recharge_order, MobileRechargeOrder):
|
| 5004 |
if recharge_order.mobileOperatorId in (getAsyncOperatorsForRecharge()):
|
5001 |
if recharge_order.mobileOperatorId not in (getSyncOperatorsForRecharge()):
|
| 5005 |
return False
|
5002 |
return True
|
| 5006 |
if isinstance(recharge_order, DTHRechargeOrder):
|
5003 |
if isinstance(recharge_order, DTHRechargeOrder):
|
| 5007 |
if recharge_order.dthOperatorId in (getAsyncOperatorsForRecharge()):
|
5004 |
if recharge_order.dthOperatorId not in (getSyncOperatorsForRecharge()):
|
| 5008 |
return False
|
5005 |
return True
|
| 5009 |
transaction_requiring_extra_processing = TransactionRequiringExtraProcessing()
|
5006 |
transaction_requiring_extra_processing = TransactionRequiringExtraProcessing()
|
| 5010 |
transaction_requiring_extra_processing.category = 'RECHARGE_UNKNOWN'
|
5007 |
transaction_requiring_extra_processing.category = 'RECHARGE_UNKNOWN'
|
| 5011 |
transaction_requiring_extra_processing.transaction_id = recharge_order.transaction_id
|
5008 |
transaction_requiring_extra_processing.transaction_id = recharge_order.transaction_id
|
| 5012 |
session.commit()
|
5009 |
session.commit()
|
| 5013 |
return False
|
5010 |
return False
|
| Line 5037... |
Line 5034... |
| 5037 |
if isinstance(recharge_order, MobileRechargeOrder):
|
5034 |
if isinstance(recharge_order, MobileRechargeOrder):
|
| 5038 |
rechargeType = 'MTP'
|
5035 |
rechargeType = 'MTP'
|
| 5039 |
deviceNumber = recharge_order.mobileNumber
|
5036 |
deviceNumber = recharge_order.mobileNumber
|
| 5040 |
strProviderCode = get_provider_code(recharge_order.mobileOperatorId)
|
5037 |
strProviderCode = get_provider_code(recharge_order.mobileOperatorId)
|
| 5041 |
plan = recharge_order.rechargePlan
|
5038 |
plan = recharge_order.rechargePlan
|
| 5042 |
if recharge_order.mobileOperatorId in (getAsyncOperatorsForRecharge()):
|
5039 |
if recharge_order.mobileOperatorId not in (getSyncOperatorsForRecharge()):
|
| 5043 |
__activate_recharge_txn_asynchronously(recharge_order,rechargeType,deviceNumber,strProviderCode,plan)
|
5040 |
__activate_recharge_txn_asynchronously(recharge_order,rechargeType,deviceNumber,strProviderCode,plan)
|
| 5044 |
if isinstance(recharge_order, DTHRechargeOrder):
|
5041 |
if isinstance(recharge_order, DTHRechargeOrder):
|
| 5045 |
rechargeType = 'RCH'
|
5042 |
rechargeType = 'RCH'
|
| 5046 |
deviceNumber = recharge_order.dthAccountNumber
|
5043 |
deviceNumber = recharge_order.dthAccountNumber
|
| 5047 |
strProviderCode = get_provider_code(recharge_order.dthOperatorId)
|
5044 |
strProviderCode = get_provider_code(recharge_order.dthOperatorId)
|
| 5048 |
plan = ''
|
5045 |
plan = ''
|
| 5049 |
if recharge_order.dthOperatorId in (getAsyncOperatorsForRecharge()):
|
5046 |
if recharge_order.dthOperatorId not in (getSyncOperatorsForRecharge()):
|
| 5050 |
__activate_recharge_txn_asynchronously(recharge_order,rechargeType,deviceNumber,strProviderCode,plan)
|
5047 |
__activate_recharge_txn_asynchronously(recharge_order,rechargeType,deviceNumber,strProviderCode,plan)
|
| 5051 |
retStatus, retCode, spiceTID, description, aggTID, providerTID = RechargeService.rechargeDevice(recharge_order.id, rechargeType, strProviderCode, deviceNumber, recharge_order.totalAmount, plan, '' ,RechargeMode._NAMES_TO_VALUES.get('SYNC'))
|
5048 |
retStatus, retCode, spiceTID, description, aggTID, providerTID = RechargeService.rechargeDevice(recharge_order.id, rechargeType, strProviderCode, deviceNumber, recharge_order.totalAmount, plan, '' ,RechargeMode._NAMES_TO_VALUES.get('SYNC'))
|
| 5052 |
recharge_order.spiceTID = spiceTID
|
5049 |
recharge_order.spiceTID = spiceTID
|
| 5053 |
recharge_order.responseTimestamp = datetime.datetime.now()
|
5050 |
recharge_order.responseTimestamp = datetime.datetime.now()
|
| 5054 |
recharge_order.description = description
|
5051 |
recharge_order.description = description
|
| Line 6088... |
Line 6085... |
| 6088 |
strProviderCode = get_provider_code(rechargeTransaction.operatorId)
|
6085 |
strProviderCode = get_provider_code(rechargeTransaction.operatorId)
|
| 6089 |
if rechargeTransaction.deviceType == 1:
|
6086 |
if rechargeTransaction.deviceType == 1:
|
| 6090 |
rtype = 'MTP'
|
6087 |
rtype = 'MTP'
|
| 6091 |
else:
|
6088 |
else:
|
| 6092 |
rtype = 'RCH'
|
6089 |
rtype = 'RCH'
|
| 6093 |
if rechargeTransaction.operatorId in (getAsyncOperatorsForRecharge()):
|
6090 |
if rechargeTransaction.operatorId not in (getSyncOperatorsForRecharge()):
|
| 6094 |
rechargeMode = RechargeMode._NAMES_TO_VALUES.get('ASYNC')
|
6091 |
rechargeMode = RechargeMode._NAMES_TO_VALUES.get('ASYNC')
|
| 6095 |
else:
|
6092 |
else:
|
| 6096 |
rechargeMode = RechargeMode._NAMES_TO_VALUES.get('SYNC')
|
6093 |
rechargeMode = RechargeMode._NAMES_TO_VALUES.get('SYNC')
|
| 6097 |
retStatus, retCode, spiceTID, description, aggTID, providerTID = RechargeService.rechargeDevice(rechargeTransaction.id, rtype, strProviderCode, rechargeTransaction.deviceNum, rechargeTransaction.amount, rechargeTransaction.plan, store.hotspotId, rechargeMode)
|
6094 |
retStatus, retCode, spiceTID, description, aggTID, providerTID = RechargeService.rechargeDevice(rechargeTransaction.id, rtype, strProviderCode, rechargeTransaction.deviceNum, rechargeTransaction.amount, rechargeTransaction.plan, store.hotspotId, rechargeMode)
|
| 6098 |
rechargeTransaction.spiceTID = spiceTID
|
6095 |
rechargeTransaction.spiceTID = spiceTID
|