@Override
    public void actionPerformed(ActionEvent e) {
        String comando = e.getActionCommand();
        switch (comando) {
            case "DEPOSITO MANUAL":
                depoManual = new DepoManual();
                depoManualControlador dmc = new depoManualControlador(depoManual, model, this);
                break;
            case "RETIRO MANUAL":
                retManual = new RetManual();
                retManualControlador rmc = new retManualControlador(retManual, this);
                break;
            case "OK":
                if (tablaDetalles.getRowCount() > 0) {
                    abrirBase();
                    String motivo = "";
                    int rows = tablaDetalles.getRowCount();
                    Producto pr;
                    for (int i = 0; i < rows; i++) {
                        pr = Producto.findById(tablaDetalles.getValueAt(i, 0));
                        if (pr.get("hayStock").equals(1)) {
                            pr.set("stock", pr.getInteger("stock") - (Integer) tablaDetalles.getValueAt(i, 2));
                            pr.save();
                        }
                        motivo = motivo + tablaDetalles.getValueAt(i, 1) + " x" + tablaDetalles.getValueAt(i, 2) + "; ";
                    }
                    BigDecimal monto = new BigDecimal(view.getTotalField().getText());
                    if (!view.getClienteSel().getText().trim().isEmpty()) {
                        model.altaTransaccion(motivo, "Venta", monto, 1, id_caja, id_cliente, Quiniela.id_usuario);
                        Cliente cl = Cliente.findById(id_cliente);
                        cliente.modificarCliente(id_cliente, cl.getBigDecimal("deber").add(monto), cl.getBigDecimal("haber"));
                        cliC.cargarClientes();
                        view.getClienteSel().setText("");
                    } else {
                        model.altaTransaccion(motivo, "Venta", monto, 1, id_caja, Quiniela.id_usuario);
                    }
                    if (Base.hasConnection()) {
                        Base.close();
                    }
                    Transaccion t = model.getLastTransaccion();
                    for (int j = 0; j < rows; j++) {
                        Producto p = Producto.findById(tablaDetalles.getValueAt(j, 0));
                        t.add(p);
                        ProductosTransaccions pt = model.getLastProdTrans();
                        pt.set("cantidad", tablaDetalles.getValueAt(j, 2));
                        pt.set("precio", p.get("precio"));
                        pt.set("comision", p.get("comision"));
                        pt.saveIt();
                    }
                    tablaDetalles.setRowCount(0);
                    actualizarPrecio();
                    cargarProductos();
                    proC.cargarProductos();
                    view.getVentaOk().setEnabled(false);
                }
                break;
        }
        cargarTransacciones();
    }