Пример #1
0
def get_wechat_info(request, openid):
    if not openid:
        code = request.args.get("code")
        if not code:
            return redirect(WeixinHelper.oauth3(request.url))
        else:
            wechat_login_fun(code)
Пример #2
0
def tickets():
    """券包"""
    openid = session.get("openid")
    if not openid:
        code = request.args.get("code")
        if not code:
            print "not code"
            return redirect(WeixinHelper.oauth3(request.url))
        else:
            wechat_login_fun(code)
    type = request.args.get("type", "not_use")
    user = g.user
    nav = 2
    if user:
        user_id = user.id
    else:
        user_id = ''

    records = GetTicketRecord.query.filter(GetTicketRecord.user_id == user_id)
    if type == 'not_use':
        from sqlalchemy import or_
        records = records.filter(or_(GetTicketRecord.status == 'normal', GetTicketRecord.status == 'verify'))
        new_records = []
        for record in records:
            if record.is_expire:
                new_records.append(record)

    elif type == 'expire':
        new_records = []
        for record in records:
            if not record.is_expire:
                new_records.append(record)

    return render_template('mobile/my_tickets.html', type=type, nav=2, records=new_records)
Пример #3
0
def check_saler_info():
    """确认收银员信息"""
    brand_id = int(request.args.get("bid", 0))
    openid = session.get("openid")
    do = request.args.get("do")
    form = SalerInfoForm()
    if not openid:
        code = request.args.get("code")
        if not code:
            print "not code"
            # print "/check_saler_info"
            return redirect(WeixinHelper.oauth3(request.url))
        else:
            wechat_login_fun(code)
    if do == 'check':
        # 绑定店员
        mobile = request.args.get("mobile")
        exist_saler = Saler.query.filter(Saler.user_id == g.user.id, Saler.brand_id == brand_id).first()
        if not exist_saler:
            g.user.mobile = mobile
            saler = Saler(user_id=g.user.id, brand_id=brand_id)
            db.session.add(saler)
            db.session.commit()
            wechat = WechatBasic(appid=appid, appsecret=appsecret)
            wechat.send_text_message(openid, "您已成功绑定门店")
            return json.dumps({"message": "提交成功", "type": "success"})
        else:
            return json.dumps({"message": "您已绑定门店,不用再次绑定", "type": "error"})
    return render_template('mobile/check_saler_info.html', brand_id=brand_id, form=form)
Пример #4
0
def user_home():
    """我的个人中心"""
    type = request.args.get("type")
    tickets = GetTicketRecord.query.all()
    nav = 4
    openid = session.get("openid")
    if not openid:
        code = request.args.get("code")
        if not code:
            print "not code"
            return redirect(WeixinHelper.oauth3(request.url))
        else:
            wechat_login_fun(code)
    return render_template('mobile/user_home.html', type=type, nav=nav, tickets=tickets)
Пример #5
0
        def inner(*args, **kwargs):
            openid = session.get("openid")
            userinfo = None
            if not openid:
                code = request.args.get("code")
                if not code:
                    return redirect(WeixinHelper.oauth3(request.url))
                else:
                    data = json.loads(WeixinHelper.getAccessTokenByCode(code))
                    access_token, openid, refresh_token = data["access_token"], data["openid"], data["refresh_token"]
                    # WeixinHelper.refreshAccessToken(refresh_token)
                    userinfo = json.loads(WeixinHelper.getSnsapiUserInfo(access_token, openid))
                    print userinfo
                    print openid
            # else:
            #     if session.get('openid') != openid:
            #         return redirect("/")
            session['openid'] = openid
            if callable(callback):
                g.user = User.query.filter(User.profile.any(Profile.openid == openid)).first()

            response = func()
            return response
Пример #6
0
def favorite_brands():
    openid = session.get("openid")
    if not openid:
        code = request.args.get("code")
        if not code:
            print "not code"
            return redirect(WeixinHelper.oauth3(request.url))
        else:
            wechat_login_fun(code)
    user = g.user
    type = request.args.get('type', 'new')
    act = request.args.get('act')
    brand_id = request.args.get('bid', type=int)
    if act == "add":
        exist = MyFavoriteBrand.query.filter(MyFavoriteBrand.user_id == user.id,
                                             MyFavoriteBrand.brand_id == brand_id).all()
        if not exist:
            favorite = MyFavoriteBrand()
            favorite.user_id = user.id
            favorite.brand_id = brand_id
            db.session.add(favorite)
            db.session.commit()
    if type == 'hot':
        # TODO
        records = MyFavoriteBrand.query.filter(MyFavoriteBrand.user_id == user.id).order_by(
            MyFavoriteBrand.create_at.desc())
    else:
        records = MyFavoriteBrand.query.filter(MyFavoriteBrand.user_id == user.id).order_by(
            MyFavoriteBrand.create_at.desc())

    if records.first():
        brand = records.first().brand
    else:
        brand = {}
    nav = 1
    return render_template('mobile/my_favorite_brand.html', type=type, nav=nav, brand=brand,
                           records=records)