示例#1
0
def index(request):

    for i in range(1,8):
        wheels=Wheel()
        wheels.name='goodsbanner-'+str(i)+'.jpg'
        wheels.img='img/'+wheels.name
        wheels.save()

        goods=Goods()
        goods.name='goodsbanner-'+str(i)+'.jpg'
        goods.img='img/'+goods.name
        goods.price=100*i
        goods.store_num=10*i
        goods.save()


    goods = Goods.objects.all()[1:5]
    wheels = Wheel.objects.all()
    tuijians = Tuijian.objects.all()
    token = request.session.get('token')

    userid = cache.get(token)

    if userid:

        user = User.objects.get(pk=userid)

        return render(request, 'index.html',
                      context={'wheels': wheels, 'tuijians': tuijians, 'user': user, 'token': token, 'goods': goods})
    else:
        return render(request, 'index.html', context={'wheels': wheels, 'tuijians': tuijians, 'goods': goods})
示例#2
0
def index():
    if request.method == 'GET':
        '''首页获取货物列表'''
        try:
            goodslist = Goods.query.all()
        except Exception as e:
            current_app.logger.debug(e)
            return jsonify(code="500", msg="获取货物列表失败")
        goodss = [goods.to_json() for goods in goodslist]
        return jsonify(code="200", msg="获取货物列表成功", goodss=goodss)

    if request.method == 'POST':
        '''新增货物'''
        title = request.values.get("title")
        price= request.values.get("price")
        stock = request.values.get("stock")
        storage_location = request.values.get("storage_location")
        if not all ([title, price, stock, storage_location]):
            return jsonify(code="403", msg="参数错误")
        goods = Goods()
        goods.title = title
        goods.price = price
        goods.stock = stock
        goods.storage_location = storage_location

        try:
            db.session.add(goods)
            db.session.commit()
        except Exception as e:
            current_app.logger.debug(e)
            db.session.rollback()
            return jsonify(code="500", msg="添加货物失败")
        
        return jsonify(code="200", msg="添加货物成功")
示例#3
0
def add_goods():
    # 获取用户输入信息
    title = request.form.get('title')
    img = request.files.get('img')
    price = request.form.get('price')
    detail = request.form.get('detail')

    if not title:
        return jsonify({'code': '601', 'msg': '商品名称不能为空!'})
    if not price:
        return jsonify({'code': '602', 'msg': '请输入商品价格!'})
    # 保存图片
    if img:
        # 获取项目根路径
        BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
        # 获取媒体文件路径
        MEDIA_DIR = os.path.join(BASE_DIR, 'static/media')
        # 随机生成图片名称
        filename = str(uuid.uuid4())
        i = img.mimetype.split('/')[-1]
        image = filename + '.' + i
        # 拼接图片地址
        path = os.path.join(MEDIA_DIR, image)
        img.save(path)
        img_url = '/static/media/' + image
    else:
        img_url = ''

    # 存储到数据库
    goods = Goods()
    goods.title = title
    goods.img_url = img_url
    goods.price = price
    goods.detail = detail
    db.session.add(goods)
    db.session.commit()

    return jsonify({'code': 200, 'msg': '添加成功'})
示例#4
0
def spiders():

    # eval(str转dict)需要的参数
    true = True
    false = False
    null = None

    qthing = request.values.get('q')
    api = r'https://s.taobao.com/api?_ksTS=1523179236254_226&callback=jsonp227&ajax=true&m=customized&stats_%27%20\%20%27click=search_radio_all:1&q={}&s=1&imgfile=&initiative_id=staobaoz_20180425&bcoffset=-1%27%20\%20%27&js=1&ie=utf8&rn=d5706a3802513dad625d594a35702a6b'.format(urllib.request.quote(qthing))
    current_app.logger.debug(api)
    rep = urllib.request.urlopen(api).read().decode('utf-8')
    result = eval(re.findall(r'jsonp227(.*?);', rep)[0][1:-1].strip().replace("\n", ""))
    for r in result['API.CustomizedApi']['itemlist']['auctions']:   
        #r = result['API.CustomizedApi']['itemlist']['auctions'][0]
        title = r["raw_title"]#re.sub(r'<[^>]+>', '', r["title"])
        price = r["view_price"]
        stock = r["comment_count"]
        if " " in r["item_loc"]:
            storage_location = r["item_loc"].split(" ")[-1]
        else:
            storage_location = r["item_loc"]

        goods = Goods()
        goods.title = title
        goods.price = price
        goods.stock = stock
        goods.storage_location = storage_location

        try:
            db.session.add(goods)
            db.session.commit()
        except Exception as e:
            current_app.logger.debug(e)
            db.session.rollback()
            return jsonify(code="500", msg="添加货物失败")
        
    return jsonify(code="200", msg="添加货物成功")
示例#5
0
文件: views.py 项目: 15779896112/mml
def goodsup(request):
    token = request.session.get('token')
    userid = cache.get(token)
    if userid:
        user = User.objects.get(pk=userid)

        if request.method == 'GET':
            return render(request, 'mine/goodsup.html')
        elif request.method == 'POST':
            goods = Goods()
            goodsname = request.POST.get('goodsname')
            price = request.POST.get('price')
            title = request.POST.get('title')
            num = request.POST.get('num')
            type = request.POST.get('type')
            file = request.FILES['file']
            file.name = str(time.time()) + str(file.name)
            filepath = os.path.join(settings.GOODSIMG_ROOT, file.name)
            with open(filepath, 'wb') as fp:
                for info in file.chunks():
                    fp.write(info)
            goods.img = 'img/' + file.name
            goods.bigimg = 'img/' + file.name
            goods.name = goodsname
            goods.price = "¥" + price
            goods.num = num
            goods.title = title
            goods.fatherid = type
            goods.save()
            publish = Publish()
            publish.goods = goods
            publish.user = user
            publish.save()
            return redirect('app:index')
    else:
        return redirect('app:login')
示例#6
0
def goods_update():
    try:
        res = request.get_json()
        goods_id = res.get('goods_id')
        name = res.get('name')
        price = res.get('price')
        ku_num = res.get('ku_num')
        detail = res.get('detail')
        # {'image_data':[{'img_url':'http:xxx','is_min':1},{'img_url':'http:xxx','is_min':0}]}
        image_data = res.get('image_data')
        # img_url = res.get('img_url')
        postage = res.get('postage')
        admin_id = g.user_id

        Logging.logger.info('request_args:{0}'.format(res))
        if not all([name, price, ku_num, image_data, postage]):
            return jsonify(errno=-1, errmsg='参数不完整')

        try:
            price = int(price)
            ku_num = int(ku_num)
            postage = int(postage)
        except Exception as e:
            Logging.logger.error('errmsg:{0}'.format(e))
            return jsonify(errno=-1, errmsg='参数错误')

        if goods_id:
            # 修改
            try:
                goods_id = int(goods_id)
            except Exception as e:
                Logging.logger.error('errmsg:{0}'.format(e))
                return jsonify(errno=-1, errmsg='参数错误')

            goods_obj = Goods.query.get(goods_id)
            if not goods_obj:
                return jsonify(errno=-1, errmsg='当前商品不存在')

            goods_obj.name = name
            goods_obj.price = price
            now_available_num = ku_num - (goods_obj.ku_num -
                                          goods_obj.available_num)

            if now_available_num < 0:
                return jsonify(errno=-1, errmsg='商品库存数量不能小于原已兑换数量')

            goods_obj.available_num = now_available_num
            goods_obj.ku_num = ku_num
            goods_obj.detail = detail
            goods_obj.postage = postage
            goods_obj.admin_id = admin_id
            # goods_obj.img_url = img_url

            if image_data:
                # 删除原有的商品轮播图片
                goods_img = GoodsImage.query.filter(
                    GoodsImage.goods_id == goods_id).all()
                for img in goods_img:
                    db.session.delete(img)

                # 添加新的图片
                for image in image_data:
                    image_obj = GoodsImage()
                    image_obj.goods_id = goods_id
                    image_obj.img_url = image.get('img_url')
                    image_obj.is_min = image.get('is_min')
                    db.session.add(image_obj)

            db.session.add(goods_obj)

        else:
            # 新增
            goods = Goods.query.filter(Goods.name == name).first()
            if goods:
                return jsonify(errno=-1, errmsg='该商品名称已经存在')

            goods_obj = Goods()
            goods_obj.name = name
            goods_obj.price = price
            goods_obj.ku_num = ku_num
            goods_obj.available_num = ku_num
            goods_obj.detail = detail
            goods_obj.postage = postage
            goods_obj.admin_id = admin_id
            # goods_obj.img_url = img_url

            db.session.add(goods_obj)
            db.session.commit()

            for image in image_data:
                image_obj = GoodsImage()
                image_obj.goods_id = goods_obj.id
                image_obj.img_url = image.get('img_url')
                image_obj.is_min = image.get('is_min')
                db.session.add(image_obj)

        db.session.commit()
        return jsonify(errno=0, errmsg="OK")
    except Exception as e:
        Logging.logger.error('errmsg:{0}'.format(e))
        db.session.rollback()
        return jsonify(errno=-1, errmsg='更新商品失败')