コード例 #1
0
ファイル: app.py プロジェクト: angelopez10/LaTiendaBackEnd
def checkout(id):
    if not request.is_json:
        return jsonify({"msg": "Missing JSON in request"}), 400

    ItemCompradoId = request.json.get('ItemProductoCompradoId', None)
    CantidaProductoComprado = request.json.get('CantidaProductoComprado', None)
    precioProductoSeleccionado = request.json.get('precioProductoSeleccionado',
                                                  None)
    usuario_id = request.json.get('usuario_id', None)
    totalFactura = request.json.get('totalFactura', None)
    totalProductosComprados = request.json.get('totalProductosComprados', None)
    usuarioActual = request.json.get('usuarioActual', None)
    emailTiendaSeleccionada = request.json.get('emailTiendaSeleccionada', None)

    email = Usuario.query.filter_by(id=usuario_id).first().email
    productos = Productos.query.filter(Productos.id.in_(ItemCompradoId)).all()

    usua = Factura()
    usua.usuario_factura_id = usuario_id
    usua.total = totalFactura
    db.session.add(usua)
    db.session.commit()

    factura_id = Factura.query.order_by(Factura.id.desc()).first().id
    print(factura_id)
    i = 0
    for prod in productos:
        usua = Detallefactura()
        usua.productos_comprados = int(CantidaProductoComprado[i])
        usua.factura_id = factura_id
        usua.producto_id = int(ItemCompradoId[i])
        usua.precio = int(precioProductoSeleccionado[i])
        db.session.add(usua)
        db.session.commit()
        i = i + 1

    i = 0
    for prod in productos:

        prod.stock = int(prod.stock) - int(CantidaProductoComprado[i])
        i = i + 1
        db.session.commit()

    html = render_template('email-compraProductos.html',
                           users=totalProductosComprados)
    send_mail("Compra", "*****@*****.**", email, html)
    html = render_template('email-ProductosComprados.html',
                           usuarioactual=usuarioActual,
                           users=totalProductosComprados)
    send_mail("Productos comprados", "*****@*****.**",
              emailTiendaSeleccionada, html)

    datosProductos = Productos.query.filter_by(tienda_id=id).all()
    datosProductos = list(
        map(lambda datosProductos: datosProductos.serialize(), datosProductos))

    return jsonify(datosProductos), 200
コード例 #2
0
def checkout():
    if not request.is_json:
        return jsonify({"msg": "Missing JSON in request"}), 400

    ItemCompradoId = request.json.get('ItemProductoCompradoId', None)
    CantidaProductoComprado = request.json.get('CantidaProductoComprado', None)
    precioProductoSeleccionado = request.json.get('precioProductoSeleccionado',
                                                  None)
    usuario_id = request.json.get('usuario_id', None)
    totalFactura = request.json.get('totalFactura', None)
    usuarioActual = request.json.get('usuarioActual', None)
    email = User.query.filter_by(id=usuario_id).first().email
    usuario = User.query.filter_by(id=usuario_id).first()

    usua = Factura()
    usua.total = totalFactura
    usua.comprador = usuario
    db.session.add(usua)
    db.session.commit()

    #factura_id =Factura.query.filter_by(id = usuario_id).first()
    factura_id = Factura.query.order_by(Factura.id.desc()).first()
    productos = Productos.query.filter(Productos.id.in_(ItemCompradoId)).all()
    i = 0
    for prod in productos:
        usua = Detallefactura()
        usua.productos_comprados = prod
        usua.productos_facturados = factura_id
        usua.cantidad_producto_comprado = int(CantidaProductoComprado[i])
        db.session.add(usua)
        db.session.commit()
        i = i + 1

    listaDetalleFactura = Detallefactura.query.filter_by(
        facturaf_id=factura_id.id).all()
    listaDetalleFactura = list(
        map(lambda listaDetalleFactura: listaDetalleFactura.serialize(),
            listaDetalleFactura))

    html = render_template('email-compraProductos.html',
                           users=listaDetalleFactura)
    send_mail("Compra", "*****@*****.**", email, html)
    html = render_template('email-ProductosComprados.html',
                           usuarioactual=usuarioActual,
                           users=listaDetalleFactura)
    send_mail("Productos comprados", "*****@*****.**",
              "*****@*****.**", html)

    return jsonify({
        'msg':
        'Producto encargados exitamente en breve recibira un email con el detalle'
    }), 200