Paste
Copy
Cut
Options

¡Tu solución está lista!

Nuestra ayuda de expertos desglosó tu problema en una solución confiable y fácil de entender.

Mira la respuesta
  • Pregunta: Al momento de realizar la parte de registrar compra debe agregar a la parte visual un boton de buscar el cliente simplemente con poner la cedula, y si no se encuentra entonces el usuario debe rellenar los otros campos adiccionales como nombre, telefono y direccion, de lo contrario si se encuentra registrado el cliente debe autorellanarse con la informacion

    Al momento de realizar la parte de registrar compra debe agregar a la parte visual un boton de buscar el cliente simplemente con poner la cedula, y si no se encuentra entonces el usuario debe rellenar los otros campos adiccionales como nombre, telefono y direccion, de lo contrario si se encuentra registrado el cliente debe autorellanarse con la informacion del mismo. En la parte de compra mas debajo como tal, hay dos paneles y el medio dos botones o iconos, el panel de la izquierda debe contener la lista de los quesos registrados, y a la derecha el carrito de compras del cliente. en el medio de estos paneles deben estar los botones de agregar la carrito o quitar. si se agrega al carrito debe reflejarse en el panel de carrito de compras y se selecciona el boton de remover del carrito debe removerse del carrito.

    package visual; import java.awt.BorderLayout; import java.awt.FlowLayout; import javax.swing.JButton; import javax.swing.JDialog; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import java.awt.Font; import java.awt.Color; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import java.awt.Toolkit; import javax.swing.border.TitledBorder; import javax.swing.UIManager; import javax.swing.JLabel; import javax.swing.JTextField; import javax.swing.ImageIcon; import javax.swing.JScrollBar; import javax.swing.JList; import javax.swing.border.BevelBorder; public class HacerCompra extends JDialog { private final JPanel contentPanel = new JPanel(); private JTextField textField; private JTextField textField_1; private JTextField textField_2; private JTextField txtDireccion; private JPanel panelListaQuesos; private JList list; /** * Launch the application. */ public static void main(String[] args) { try { HacerCompra dialog = new HacerCompra(); dialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE); dialog.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } /** * Create the dialog. */ public HacerCompra() { setIconImage(Toolkit.getDefaultToolkit().getImage(HacerCompra.class.getResource("/imagenes/logoCompra.jpg"))); setTitle("Compra"); setResizable(false); setBounds(100, 100, 558, 546); getContentPane().setLayout(new BorderLayout()); contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5)); getContentPane().add(contentPanel, BorderLayout.CENTER); contentPanel.setLayout(new BorderLayout(0, 0)); { JPanel panelGeFondoCompra = new JPanel(); panelGeFondoCompra.setBackground(new Color(255, 250, 250)); contentPanel.add(panelGeFondoCompra, BorderLayout.CENTER); panelGeFondoCompra.setLayout(null); JPanel panel = new JPanel(); panel.setFont(new Font("Times New Roman", Font.BOLD | Font.ITALIC, 13)); panel.setBackground(new Color(248, 248, 255)); panel.setForeground(new Color(255, 127, 80)); panel.setBorder(new TitledBorder(UIManager.getBorder("TitledBorder.border"), "Cliente", TitledBorder.LEADING, TitledBorder.TOP, null, new Color(205, 133, 63))); panel.setBounds(12, 13, 518, 147); panelGeFondoCompra.add(panel); panel.setLayout(null); { JLabel NewLabelNombre = new JLabel("Nombre:"); NewLabelNombre.setForeground(new Color(205, 133, 63)); NewLabelNombre.setFont(new Font("Times New Roman", Font.BOLD | Font.ITALIC, 13)); NewLabelNombre.setToolTipText(""); NewLabelNombre.setBounds(12, 56, 56, 16); panel.add(NewLabelNombre); } textField = new JTextField(); textField.setBackground(new Color(255, 255, 240)); textField.setBounds(80, 19, 147, 22); panel.add(textField); textField.setColumns(10); JLabel lblCedla = new JLabel("Ced\u00FAla:"); lblCedla.setToolTipText(""); lblCedla.setForeground(new Color(205, 133, 63)); lblCedla.setFont(new Font("Times New Roman", Font.BOLD | Font.ITALIC, 13)); lblCedla.setBounds(12, 23, 56, 16); panel.add(lblCedla); textField_1 = new JTextField(); textField_1.setColumns(10); textField_1.setBackground(new Color(255, 255, 240)); textField_1.setBounds(78, 52, 147, 22); panel.add(textField_1); JLabel lblTelfono = new JLabel(" Tel\u00E9fono:"); lblTelfono.setToolTipText(""); lblTelfono.setForeground(new Color(205, 133, 63)); lblTelfono.setFont(new Font("Times New Roman", Font.BOLD | Font.ITALIC, 13)); lblTelfono.setBounds(12, 94, 56, 10); panel.add(lblTelfono); textField_2 = new JTextField(); textField_2.setColumns(10); textField_2.setBackground(new Color(255, 255, 240)); textField_2.setBounds(78, 87, 147, 22); panel.add(textField_2); txtDireccion = new JTextField(); txtDireccion.setColumns(10); txtDireccion.setBackground(new Color(255, 255, 240)); txtDireccion.setBounds(302, 87, 169, 22); panel.add(txtDireccion); JLabel lblDireccin = new JLabel("Direcci\u00F3n:"); lblDireccin.setToolTipText(""); lblDireccin.setForeground(new Color(205, 133, 63)); lblDireccin.setFont(new Font("Times New Roman", Font.BOLD | Font.ITALIC, 13)); lblDireccin.setBounds(234, 94, 78, 10); panel.add(lblDireccin); JLabel NewLabeliconoBuscar = new JLabel(""); NewLabeliconoBuscar.setIcon(new ImageIcon(HacerCompra.class.getResource("/imagenes/img5.jpg"))); NewLabeliconoBuscar.setBounds(394, 19, 39, 49); panel.add(NewLabeliconoBuscar); JLabel lblNewLabel = new JLabel("BUSCAR"); lblNewLabel.setBackground(new Color(255, 127, 80)); lblNewLabel.setFont(new Font("Tahoma", Font.BOLD | Font.ITALIC, 14)); lblNewLabel.setBounds(323, 40, 80, 16); panel.add(lblNewLabel); panelListaQuesos = new JPanel(); panelListaQuesos.setBorder(new BevelBorder(BevelBorder.LOWERED, null, null, null, null)); panelListaQuesos.setBackground(new Color(248, 248, 255)); panelListaQuesos.setBounds(12, 193, 217, 264); panelGeFondoCompra.add(panelListaQuesos); panelListaQuesos.setLayout(null); JList listaQuesos = new JList(); listaQuesos.setBackground(new Color(255, 255, 255)); listaQuesos.setBounds(108, 5, 0, 0); panelListaQuesos.add(listaQuesos); JLabel lblNewLabel_1 = new JLabel("Quesos disponibles:"); lblNewLabel_1.setFont(new Font("Times New Roman", Font.BOLD | Font.ITALIC, 13)); lblNewLabel_1.setBounds(12, 164, 114, 16); panelGeFondoCompra.add(lblNewLabel_1); JPanel panelFacturaComprar = new JPanel(); panelFacturaComprar.setBorder(new BevelBorder(BevelBorder.LOWERED, null, null, null, null)); panelFacturaComprar.setLayout(null); panelFacturaComprar.setBackground(new Color(248, 248, 255)); panelFacturaComprar.setBounds(313, 193, 217, 264); panelGeFondoCompra.add(panelFacturaComprar); list = new JList(); list.setBackground(Color.WHITE); list.setBounds(108, 5, 0, 0); panelFacturaComprar.add(list); JLabel lblCarrito = new JLabel("Carrito:"); lblCarrito.setFont(new Font("Times New Roman", Font.BOLD | Font.ITALIC, 13)); lblCarrito.setBounds(300, 164, 114, 16); panelGeFondoCompra.add(lblCarrito); JLabel JlabelComprar = new JLabel(""); JlabelComprar.setIcon(new ImageIcon(HacerCompra.class.getResource("/imagenes/COMPRAR.jpg"))); JlabelComprar.setBounds(241, 256, 56, 38); panelGeFondoCompra.add(JlabelComprar); JLabel JlabelSacarCompra = new JLabel(""); JlabelSacarCompra.setIcon(new ImageIcon(HacerCompra.class.getResource("/imagenes/iconoComprar.jpg"))); JlabelSacarCompra.setBounds(245, 328, 56, 50); panelGeFondoCompra.add(JlabelSacarCompra); } { JPanel buttonPane = new JPanel(); buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT)); getContentPane().add(buttonPane, BorderLayout.SOUTH); { JButton okButton = new JButton("Comprar"); okButton.setBackground(new Color(255, 255, 255)); okButton.setForeground(new Color(255, 127, 80)); okButton.setFont(new Font("Times New Roman", Font.BOLD | Font.ITALIC, 13)); okButton.setActionCommand("OK"); buttonPane.add(okButton); getRootPane().setDefaultButton(okButton); } { JButton cancelButton = new JButton("Cancelar"); cancelButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { dispose(); } }); cancelButton.setBackground(new Color(255, 255, 255)); cancelButton.setForeground(new Color(165, 42, 42)); cancelButton.setFont(new Font("Times New Roman", Font.BOLD | Font.ITALIC, 13)); cancelButton.setActionCommand("Cancel"); buttonPane.add(cancelButton); } } } } package logica; import java.util.ArrayList; public class Fabrica { private ArrayList<Cliente>misClientes; private ArrayList<Queso>misQuesos; private ArrayList<Factura>misFacturas; private static Fabrica quesito= null; public static int codQuesos=1; public static int codFactura=1; public Fabrica () { super(); this.misClientes=new ArrayList<Cliente>(); this.misQuesos=new ArrayList<Queso>(); this.misFacturas=new ArrayList<Factura>(); } public static Fabrica getInstance() { if (quesito==null) { quesito=new Fabrica(); } return quesito; } public ArrayList<Cliente> getMisClientes() { return misClientes; } public void setMisClientes(ArrayList<Cliente> misClientes) { this.misClientes = misClientes; } public ArrayList<Queso> getMisQuesos() { return misQuesos; } public void setMisQuesos(ArrayList<Queso> misQuesos) { this.misQuesos = misQuesos; } public ArrayList<Factura> getMisFacturas() { return misFacturas; } public void setMisFacturas(ArrayList<Factura> misFacturas) { this.misFacturas = misFacturas; } public static Fabrica getQuesito() { return quesito; } public static void setQuesito(Fabrica quesito) { Fabrica.quesito = quesito; } public static int getCodQuesos() { return codQuesos; } public static void setCodQuesos(int codQuesos) { Fabrica.codQuesos = codQuesos; } public static void insertarQueso(Queso quesos) { misQuesos.add(quesos); //System.out.println(misQuesos); codQuesos++; } public void insertarFactura(Factura factura) { misFacturas.add(factura); codFactura++; } public void insertarCliente(Cliente cliente) { misClientes.add(cliente); System.out.println(misClientes); } public static int getGeneradorCodigoQueso() { return codFactura++; } public int [] CantidadTiposQueso() { int [] aux = new int [3]; for (Queso quesos: misQuesos) { if(quesos instanceof QuesoClindrico) { aux[0]++; } if (quesos instanceof QuesoCilindricoHueco) { aux[1]++; } if (quesos instanceof Esfera) { aux[2]++; } } return aux; } public float crearFactura(ArrayList<Queso> losQuesos, Cliente cliente ) { float precio= 0; Factura nuevaFactura = new Factura(cliente,String.valueOf(Fabrica.codFactura)); for (Queso queso: losQuesos) { precio+=queso.CalcularPrecio(); nuevaFactura.insertarQuesoFactura(queso); } return precio; } public float getPeciofactura(String cod) { float precio =0; Factura factura = getFacturaByCode(cod); Queso queso = null; float radio=0; float maxVolumen= 0; if (factura != null) { precio = factura.PrecioTotalFactura(); } return precio; } public Factura getFacturaByCode(String cod) { Factura factura = null; boolean encontrado= false; int i=0; while (i < misFacturas.size()&& !encontrado) { if(misFacturas.get(i).getCodFactura().equalsIgnoreCase(cod)) { factura= misFacturas.get(i); encontrado =true; } i++; } return factura; } public Cliente getCliente(String cedula) { Cliente cliente= null; boolean encontrado= false; int i=0; while (i < misClientes.size()&& !encontrado) { if(misClientes.get(i).getCedula().equalsIgnoreCase(cedula)) { cliente= misClientes.get(i); encontrado =true; } i++; } return cliente; } public Queso obtenerQueso(String codigo) { Queso quesito= null; boolean encontrado = false; int i=0; while (i < misQuesos.size()&& !encontrado) { if (misQuesos.get(i).getCodigo().equalsIgnoreCase(codigo)) { quesito = misQuesos.get(i); encontrado= true; } i++; } return quesito; } public float getPrecioQuesoEsfericoByFactura(String codeFact) { float precio =0; float volumen=0; Factura laFactura =getFacturaByCode(codeFact); if(laFactura !=null) { for (Queso queso: laFactura.getQuesos()) { if (queso instanceof Esfera && queso.volumen()> volumen) { volumen=queso.volumen(); precio= queso.CalcularPrecio(); } } } return precio; } public static int getCodFactura() { return codFactura; } public static void setCodFactura(int codFactura) { Fabrica.codFactura = codFactura; } }
  • Chegg Logo
    Hay 3 pasos para resolver este problema.
    Solución
    Paso 1

    To implement the functionality you described:

    Explanation:

    Customer Search and Purchase Flow:

    1. Search Functionality ...

    Mira la respuesta completa
    answer image blur
    Paso 2
    Desbloquea
    Paso 3
    Desbloquea
    Respuesta
    Desbloquea