Esempio n. 1
0
    def pay(id):
        order = OrderBiz.get_order_by_id(id)
        if not order:
            return u"订单不存在"
        elif order.status != Order.STATUS.CREATED:
            return u"该订单已付款"

        cuser = UserBiz.get_user_by_id(order.user_id)
        if order.expect_order_price is None:
            return "DatabaseError:Price Format Error"

        if order.expect_order_price > cuser.account:
            return u"账户余额不足"
        else:
            try:
                # 从账户扣钱
                amount = order.expect_order_price
                print amount
                if UserBiz.pay(order.user_id, amount, Transaction.TYPE.PAY, u"用户对订单付款") == REFUND_SUCCESS:
                    order.status = Order.STATUS.PAID
                db_session.add(order)
                db_session.commit()
            except DaixieError as e:
                raise e.get_msg()
        return PAY_ORDER_SUCCESS
Esempio n. 2
0
def check_is_activated(id, flash_msg=False):
    try:
        user = UserBiz.get_user_by_id(id)
        ret = UserBiz.check_is_activated(user)
    except DaixieError as e:
        fail(e)
        UserBiz.user_logout()
        return redirect(url_for('.send_activate_email', id=user.id, email=user.email))
    if flash_msg:
        success(ret)
    return redirect(url_for('user.home'))
Esempio n. 3
0
def activate():
    '''
    激活账号
    '''

    email = request.args.get('email')
    timestamp = request.args.get('timestamp')
    token = request.args.get('token')
    id = request.args.get('id')

    try:
        UserBiz.check_link(email, timestamp, token)
    except DaixieError as e:
        return render_template('error.html', message=e.message)

    #以下需要根据id从数据库中取出相应的user,并更新activate字段
    user = UserBiz.get_user_by_id(id)
    ret = UserBiz.activate_user(user)

    url = url_for("user.home")
    success(ret)
    return render_template("general/activate_ok.html", url=url)
Esempio n. 4
0
def load_user(user_id):
    return UserBiz.get_user_by_id(user_id)