Beispiel #1
0
	def refund(id):
		order = OrderBiz.get_order_by_id(id)
		if not order:
			raise DaixieError(u'订单不存在')
		elif order.status != Order.STATUS.CREATED:
			raise DaixieError(u'该订单已付款')
		try:
			#订单付款失败,偿还从账户中扣除的钱
			amount = int(order.expect_order_price)
			UserBiz.recharge(order.user_id, amount, Transaction.TYPE.REFUND, u'用户付款失败,返回付款金额')
			order.status = Order.STATUS.CREATED
			db_session.add(order)
			db_session.commit()
		except DaixieError as e:
			raise e
Beispiel #2
0
def recharge():
    """
	充值
	"""
    stripe.api_key = "sk_test_xPY1IwP3MgiPkMlaV8Q76tgt"

    data_amount = session["data_amount"]
    amount = session["amount"]

    customer = stripe.Customer.create(email=current_user.email, card=request.form["stripeToken"])

    try:
        stripe.Charge.create(customer=customer.id, amount=int(data_amount), currency="usd", description=u"账户充值")
    except stripe.CardError as e:
        raise e
    else:
        try:
            ret = UserBiz.recharge(current_user.id, amount, type=Transaction.TYPE.RECHARGE, description=u"用户充值")
        except DaixieError as e:
            raise e

    success(ret)

    session.pop("data_amount", None)
    session.pop("amount", None)

    return redirect(url_for(".home"))
Beispiel #3
0
def recharge():
	'''
	Create charge using token.id and return result.
	'''
	amount = float(request.form['amount'])
	data_amount = int(amount*100)
	print data_amount

	customer = stripe.Customer.create(
		email=current_user.email,
		card=request.form['stripeToken']
	)

	try:
		stripe.Charge.create(
			customer=customer.id,
			amount= data_amount,
			currency='usd',
			description=u'账户充值'
			)
	except stripe.CardError as e:
		return render_template('user/recharge_result.html', cuser=current_user, result=e.message)
	except stripe.InvalidRequestError as e:
		print e.message
		return render_template('user/recharge_result.html', cuser=current_user, result=e.message)		
	else:
		try:
			ret = UserBiz.recharge(current_user.id, amount, type=Transaction.TYPE.RECHARGE, description=u'用户充值')
		except DaixieError as e:
			return render_template('user/recharge_result.html', cuser=current_user, result=e)

	success(ret)

	session.pop('data_amount', None)
	session.pop('amount', None)

	return render_template('user/recharge_result.html', cuser=current_user, result=ret)