Exemple #1
0
def updateProduct(id):
    productData = Product.query.get(id)
    productForm = ProductForm(request.form,
                              obj=productData,
                              provider=productData.provider_id)
    providerForm = ProviderForm()
    choices = [(p.id, p.trading_name)
               for p in Provider.query.order_by('trading_name')]
    choices.insert(0, ('0', 'Selecione'))
    productForm.provider.choices = choices
    providers = Provider.query.all()

    if "POST" == request.method:
        if productForm.validate_on_submit():
            productData.product_name = productForm.product_name.data
            productData.serial_number = productForm.serial_number.data
            productData.branch = productForm.branch.data
            productData.model = productForm.model.data
            productData.category = productForm.category.data
            productData.description = productForm.description.data
            productData.coast = productForm.coast.data
            productData.status = productForm.status.data
            productData.provider_id = productForm.provider.data
            db.session.commit()

            flash('Produto atualizado com sucesso!', 'success')
            return redirect(url_for('indexProduct'))

    return render_template('product/form.html',
                           productForm=productForm,
                           providerForm=providerForm,
                           providers=providers)
Exemple #2
0
def createProduct():
    productForm = ProductForm()
    providerForm = ProviderForm()
    choices = [(p.id, p.trading_name)
               for p in Provider.query.order_by('trading_name')]
    choices.insert(0, ('0', 'Selecione'))
    productForm.provider.choices = choices
    providers = Provider.query.all()

    if productForm.validate_on_submit():

        provider_id = None
        if "0" != productForm.provider.data:
            provider_id = productForm.provider.data

        product = Product(productForm.product_name.data,
                          productForm.serial_number.data,
                          productForm.branch.data, productForm.model.data,
                          productForm.quantity.data, productForm.category.data,
                          productForm.description.data, productForm.coast.data,
                          productForm.status.data, provider_id)

        db.session.add(product)
        db.session.commit()
        flash('Produto criado com sucesso!', 'success')

        return redirect(url_for('indexProduct'))

    return render_template('product/form.html',
                           productForm=productForm,
                           providerForm=providerForm,
                           providers=providers)
Exemple #3
0
def product_upload():
    #
    print current_user.is_authenticated()
    # if not current_user.is_authenticated():
    #     return redirect(url_for('user.signin'))
    product_code = request.args.get('domain_code')
    product = ProcutInfo.query.filter(ProcutInfo.product_code == product_code).first()
    if product:
        product_form = ProductForm(product_code=product.product_code, product_name=product.product_name,
                                   detail_info=product.detail_info, guide_price=product.guide_price,
                                   introduce=product.introduce, pack_list=product.pack_list,
                                   phone_num=product.phone_num,
                                   csrf_enabled=False)
        form = product_form
        images= product.images
    else:
        form = ProductForm(request.values, csrf_enabled=False)
        images =None
    if form.validate_on_submit():
        product = ProcutInfo()
        form.populate_obj(product)
        file = request.files['product_image']
        filename = str(uuid.uuid4()) + '.jpg'
        photos.save(file, name=filename)
        url = photos.url(filename)
        image = ImageInfo()
        image.name = filename
        image.url = url
        product.images = [image]
        p = ProcutInfo.query.filter(ProcutInfo.product_code == product.product_code).first()
        if p is None:
            db.session.add(product)
        else:
            db.session.merge(product)
        fpath = photos.path(filename)
        f = open(fpath, 'rb')
        fdata = base64.b64encode(f.read())
        rsp = upload_product_info(product, filename, fdata)
        print rsp
        if rsp[0] == 1:
            flash(u'资料上传成功', 'success')
            return redirect(url_for('site.index'))
        else:
            pass
    else:
        return  render_template('/product/info_upload.html', form=form,images=images)
Exemple #4
0
def product_form():
    if request.method == "POST":
        p_Name = request.form.get("name")
        p_Price = request.form.get("price")
        p_Description = request.form.get("description")
        p_Category = request.form.get("category")
        p_Quantitiy = request.form.get("quantity")
        p_Tag = request.form.get("unique_tag")

        create(p_Name, p_Price, p_Description, p_Category, p_Quantitiy, p_Tag)

    form = ProductForm()

    #rerender form on successful submission
    if form.validate_on_submit():
        return redirect(url_for('product_form'))

    return render_template("form_example.html", form=form)
def product_form():
    if request.method == "POST":
        name = request.form.get("name")
        description = request.form.get("description")
        category = request.form.get("category")
        price = request.form.get("price")

        create(name, price, category, description)

    form = ProductForm()
    return render_template("form_example.html", form=form)
Exemple #6
0
def update_product(pid):
    #product_data = request.jason
    if request.method == "PUT":
        update(pid, request.form)
        return {"ok": True, "message": "Updated"}
    out = read(int(pid))
    update_form = ProductForm()
    if out["body"]:
        return render_template("single_product.html",
                               product=out["body"][0],
                               form=update_form)
    else:
        return render_template("404.html"), 404