Ejemplo n.º 1
0
def addProductType():
    # form : product_id, bar_code
    form = request.form.to_dict()
    print('form', form)
    # 上传图片
    file = request.files['file']
    if file is not None:
        # 储存图片获取数据
        data = Img.save_one(file, form)
        print('upload data', data)
        if data['src'] is not None and base_url not in data['src']:
            data['src'] = base_url + '/' + data['src']
            form['cover'] = data['src']
        if data is not None:
            r = Res.success(data)
        else:
            r = Res.fail({}, msg='图片已存在')
    print('新图片', form)
    product = Product.add(form)
    if type(product) is str:
        r = Res.fail(msg=product)
    else:
        all = Product.all()
        print('all', all)
        r = Res.success(all)

    return make_response(jsonify(r))
Ejemplo n.º 2
0
def login():
    print('login before session', session)
    form = request.form.to_dict()
    print('form', form)
    # https://api.weixin.qq.com/sns/jscode2session?appid=wx4dea673b058fd1a8&secret=4cf491eb3dfc206fe6a7e5d8d47e8c48&js_code=0611WVUD1mB715023RWD1wOEUD11WVUl&grant_type=authorization_code
    wx_login_url = """https://api.weixin.qq.com/sns/jscode2session?appid={appid}&secret={appSecret}&js_code={code}&grant_type=authorization_code""".format(
        appid=base.appid, appSecret=base.appSecret, code=form.get('code'))
    res = requests.post(wx_login_url).json()
    u = User.login(res)
    # 判断是否为管理员
    is_admin = u.is_admin()
    print('is_admin', is_admin)
    u = u.json()
    session['id'] = u.get('id')
    if is_admin is False:
        return make_response(jsonify(Res.fail(u, msg='不是管理员账户')))
    # 设置 cookie 有效期为 永久
    session.permanent = True
    # 筛选需要返回的数据
    filter_map = ['openid', 'id', 'updated_time', 'identity']
    result = dict()
    for k in u.keys():
        if k in filter_map:
            result[k] = u[k]
    resp = make_response(jsonify(Res.success(result)))
    return resp
Ejemplo n.º 3
0
def delete_one():
    id = request.json.get('id')
    data = Img.delete_one(id=id)
    if data is None:
        r = Res.success()
    else:
        r = Res.fail()
    return make_response(jsonify(r))
Ejemplo n.º 4
0
def queryProductByBarCode():
    form = request.form.to_dict()
    q = ProductAttr.queryByBarCode(form)
    if len(q) is 0:
        r = Res.fail(q.msg)
    else:
        r = Res.success(q)

    return make_response(jsonify(r))
Ejemplo n.º 5
0
def delete():
    form = request.json
    data = Img.delete_one(id=form.get('id'))
    print('delete form', data is None)
    if data is None:
        r = Res.success()
    else:
        r = Res.fail(msg='图片删除失败')
    return make_response(jsonify(r))
Ejemplo n.º 6
0
def delete_more():
    form = request.json
    print('delete_more form', form)
    data = Img.delete_by_ids(ids=form['ids'])
    print('delete_more len', len(data))
    if len(data) is 0:
        r = Res.success()
    else:
        r = Res.fail()
    return make_response(jsonify(r))
Ejemplo n.º 7
0
def addProduct():
    form = request.form.to_dict()
    print('form', form)
    product_attr = ProductAttr.add(form)
    print('product_attr', product_attr)
    if type(product_attr) is str:
        r = Res.fail(msg=product_attr)
    else:
        r = product_attr
        r = Res.success(product_attr)
    return make_response(jsonify(r))
Ejemplo n.º 8
0
def current_user():
    log('真正的sesson', session)
    user_id = session.get('id')
    log('current session获取的id', user_id)
    if user_id is not None:
        u = User.one(id=user_id)
        log('查询结果', u)
        return u.json()
    else:
        log('没进去')
        return make_response(jsonify(Res.fail('没有权限')))
Ejemplo n.º 9
0
def upload():
    form = request.files['file']
    # 储存图片获取数据
    data = Img.save_one(form)
    print('upload data', data)
    if data['src'] is not None and base_url not in data['src']:
        data['src'] = base_url + '/' + data['src']
    if data is not None:
        r = Res.success(data)
    else:
        r = Res.fail({}, msg='图片已存在')
    return make_response(jsonify(r))
Ejemplo n.º 10
0
    def f():
        log('是否进入登录判断')
        u = current_user()
        log('判断用户', u)
        log('用户权限', u.get('identity'), '管理员权限', identity_map.get('admin'))
        if u.get('identity') == identity_map.get('admin') or u.get(
                'identity') == identity_map.get('tester'):
            log('登录用户', route_function)
            return route_function()

        else:
            log('游客用户')
            r = Res.fail(u, msg='不是管理员用户')
            return make_response(jsonify(r))
Ejemplo n.º 11
0
def login_by_account():
    form = request.form.to_dict()
    wx_login_url = """https://api.weixin.qq.com/sns/jscode2session?appid={appid}&secret={appSecret}&js_code={code}&grant_type=authorization_code""".format(
        appid=base.appid, appSecret=base.appSecret, code=form.get('code'))
    res = requests.post(wx_login_url).json()
    print('res', res)
    u = User.one(username=form.get('username'),
                 password=form.get('password')).json()
    print('帐号登录', u)
    u = User.update(id=u.get('id'), openid=res.get('openid'))
    if u is None:
        return make_response(jsonify(Res.fail(msg='帐号密码错误')))
    else:
        session['id'] = u.get('id')
        return make_response(jsonify(Res.success(u)))