Untitled
unknown
plain_text
a year ago
20 kB
6
Indexable
package sistemaCocinas;
import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.DecimalFormat;
import java.text.NumberFormat;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import javax.swing.JComboBox;
import javax.swing.JButton;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.DefaultComboBoxModel;
import javax.swing.SwingConstants;
public class venderBoleta extends JFrame implements ActionListener {
private static final long serialVersionUID = 1L;
private JPanel contentPane;
private JTextField textPrecioVenta;
private JTextField textCantidad;
private static JComboBox cboModelo;
private JButton btnVender;
private JButton btnCerrarVender;
private JLabel lblVistaDescuento;
private JTextArea textBoleta;
// Datos mínimos de la primera cocina
public static String modelo0 = "Mabe EMP6120PG0";
public static double precio0 = 949.0;
public static double fondo0 = 58.6;
public static double ancho0 = 60.0;
public static double alto0 = 91.0;
public static int quemadores0 = 4;
// Datos mínimos de la segunda cocina
public static String modelo1 = "Indurama Parma";
public static double precio1 = 1089.0;
public static double ancho1 = 80.0;
public static double alto1 = 94.0;
public static double fondo1 = 67.5;
public static int quemadores1 = 6;
// Datos mínimos de la tercera cocina
public static String modelo2 = "Sole COSOL027";
public static double precio2 = 850.0;
public static double ancho2 = 60.0;
public static double alto2 = 90.0;
public static double fondo2 = 50.0;
public static int quemadores2 = 4;
// Datos mínimos de la cuarta cocina
public static String modelo3 = "Coldex CX602";
public static double precio3 = 629.0;
public static double ancho3 = 61.6;
public static double alto3 = 95.0;
public static double fondo3 = 51.5;
public static int quemadores3 = 5;
// Datos mínimos de la quinta cocina
public static String modelo4 = "Reco Dakota";
public static double precio4 = 849.0;
public static double ancho4 = 75.4;
public static double alto4 = 94.5;
public static double fondo4 = 66.0;
public static int quemadores4 = 5;
// Obsequios
public static String obsequio1 = "Cafetera";
public static String obsequio2 = "Licuadora";
public static String obsequio3 = "Extractor";
//Venta Óptima
public static int cantidadOptima = 30;
//Cuota Diaria
public static double cuotaDiaria = 75000;
//Contador ventas
public static int contadorVentas0 = 0;
public static int contadorVentas1 = 0;
public static int contadorVentas2 = 0;
public static int contadorVentas3 = 0;
public static int contadorVentas4 = 0;
//Acumulador Unidades Vendidas
public static int cantidadUnidadesVendidas0 = 0;
public static int cantidadUnidadesVendidas1 = 0;
public static int cantidadUnidadesVendidas2 = 0;
public static int cantidadUnidadesVendidas3 = 0;
public static int cantidadUnidadesVendidas4 = 0;
//Acumulador Total Vendido
public static double importeTotalVendido0 = 0;
public static double importeTotalVendido1 = 0;
public static double importeTotalVendido2 = 0;
public static double importeTotalVendido3 = 0;
public static double importeTotalVendido4 = 0;
//Aporte Cuota Diaria
public static double aporteCuota0;
public static double aporteCuota1;
public static double aporteCuota2;
public static double aporteCuota3;
public static double aporteCuota4;
//Comparación venta Óptima
public static String resultado0;
public static String resultado1;
public static String resultado2;
public static String resultado3;
public static String resultado4;
// Determinación de promedios;
public static double pPromedio;
public static double anchoPromedio;
public static double altoPromedio;
public static double fondoPromedio;
public static int quemaPromedio;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
venderBoleta frame = new venderBoleta();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public venderBoleta() {
setTitle("Vender");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 321);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JLabel lblNewLabel = new JLabel("Modelo");
lblNewLabel.setBounds(33, 22, 81, 14);
contentPane.add(lblNewLabel);
JLabel lblNewLabel_1 = new JLabel("Precio (S/)");
lblNewLabel_1.setBounds(33, 47, 81, 14);
contentPane.add(lblNewLabel_1);
JLabel lblNewLabel_2 = new JLabel("Cantidad");
lblNewLabel_2.setBounds(33, 72, 81, 14);
contentPane.add(lblNewLabel_2);
textPrecioVenta = new JTextField();
textPrecioVenta.setEditable(false);
textPrecioVenta.setHorizontalAlignment(SwingConstants.RIGHT);
textPrecioVenta.setBounds(124, 44, 149, 20);
contentPane.add(textPrecioVenta);
textPrecioVenta.setColumns(10);
textCantidad = new JTextField();
textCantidad.setHorizontalAlignment(SwingConstants.RIGHT);
textCantidad.setBounds(124, 69, 149, 20);
contentPane.add(textCantidad);
textCantidad.setColumns(10);
cboModelo = new JComboBox();
cboModelo.setModel(new DefaultComboBoxModel(new String[] {"Seleccionar Modelo", "Mabe EMP6120PG0", "Indurama Parma", "Sole COSOL027", "Coldex CX602", "Reco Dakota"}));
cboModelo.setBounds(124, 14, 149, 22);
cboModelo.addActionListener(this);
contentPane.add(cboModelo);
btnVender = new JButton("Vender");
btnVender.setBounds(321, 14, 89, 23);
btnVender.addActionListener(this);
contentPane.add(btnVender);
btnCerrarVender = new JButton("Cerrar");
btnCerrarVender.setBounds(321, 43, 89, 23);
btnCerrarVender.addActionListener(this);
contentPane.add(btnCerrarVender);
JScrollPane scrollPane = new JScrollPane();
scrollPane.setBounds(33, 108, 374, 153);
contentPane.add(scrollPane);
textBoleta = new JTextArea();
scrollPane.setViewportView(textBoleta);
lblVistaDescuento = new JLabel("");
lblVistaDescuento.setHorizontalAlignment(SwingConstants.RIGHT);
lblVistaDescuento.setBounds(297, 72, 113, 24);
contentPane.add(lblVistaDescuento);
}
@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource() == cboModelo) {
//Variables
int modelo = 0;
//Obtener datos
obtenerPrecio (modelo);
}
if (e.getSource() == btnVender) {
//Variables
double precio, descuento, importeCompra, importeDescuento, importePagar = 0;
int modelo = 0, cantidad = 0, modelos = 0, unidadModel = 0, ventaModel = 0;
int cocinas = 0, aporte = 0, model = 0;
String obsequio, modeloV;
// Ingresar Datos
try {
if (obtenerCantidad () > 0) {
precio = obtenerPrecio (modelo);
cantidad = obtenerCantidad ();
descuento = obtenerDescuento (cantidad);
mostrarDescuento (descuento);
obsequio = obtenerObsequio (cantidad);
modeloV = obtenerModelo (cocinas);
importeCompra = obtenerImporteCompra (precio, cantidad);
importeDescuento = obtenerImporteDescuento (importeCompra, descuento);
importePagar = obtenerImportePagar (importeCompra, importeDescuento);
contadoresVentasModelos(modelos);
acumuladorCantidadVendida(unidadModel, cantidad);
acumuladorTotalVendido(ventaModel, importePagar);
obtenerAporteCuotaDiaria(aporte);
obtenerMensaje ();
obtenerDatosOptimos(model);
mostrarImprimir (cantidad, precio, importeCompra, importeDescuento, importePagar, modeloV, obsequio);
}
else {JOptionPane.showMessageDialog(null, "Error de Cantidad", "Vender", JOptionPane.ERROR_MESSAGE);}
} catch (Exception ex) {
JOptionPane.showMessageDialog(null, "Error de Cantidad", "Vender", JOptionPane.ERROR_MESSAGE);
}
//Salida
// PRUEBA Y VERIFICACION DE VALORES CALCULADOS
//NumberFormat formateador = new DecimalFormat("#,###,###.00");
//textBoleta.setText("BOLETA DE VENTA \n");
//textBoleta.append ("\n");
//textBoleta.append ("Modelo : " + modeloV + "\n");
//textBoleta.append ("Precio : " + "S/ " + formateador.format(precio) + "\n");
//textBoleta.append ("Cantidad : " + cantidad + "\n");
//textBoleta.append ("Importe Compra : " + "S/ " + formateador.format(importeCompra) + "\n");
//textBoleta.append ("Importe Descuento : " + "S/ " + formateador.format(importeDescuento) + "\n");
//textBoleta.append ("Importe Pagar : " + "S/ " + formateador.format(importePagar) + "\n");
//textBoleta.append ("Obsequio : " + obsequio + "\n");
//textBoleta.append ("Ventas modelo 1 : " + contadorVentas0 + "\n");
//textBoleta.append ("Ventas modelo 2 : " + contadorVentas1 + "\n");
//textBoleta.append ("Ventas modelo 3 : " + contadorVentas2 + "\n");
//textBoleta.append ("Ventas modelo 4 : " + contadorVentas3 + "\n");
//textBoleta.append ("Ventas modelo 5 : " + contadorVentas4 + "\n");
//textBoleta.append ("Acumulado Ventas modelo 1 : " + cantidadUnidadesVendidas0 + "\n");
//textBoleta.append ("Acumulado Ventas modelo 2 : " + cantidadUnidadesVendidas1 + "\n");
//textBoleta.append ("Acumulado Ventas modelo 3 : " + cantidadUnidadesVendidas2 + "\n");
//textBoleta.append ("Acumulado Ventas modelo 4 : " + cantidadUnidadesVendidas3 + "\n");
//textBoleta.append ("Acumulado Ventas modelo 5 : " + cantidadUnidadesVendidas4 + "\n");
//textBoleta.append ("Importe Total Vendido modelo 1 : " + importeTotalVendido0 + "\n");
//textBoleta.append ("Importe Total Vendido modelo 2 : " + importeTotalVendido1 + "\n");
//textBoleta.append ("Importe Total Vendido modelo 3 : " + importeTotalVendido2 + "\n");
//textBoleta.append ("Importe Total Vendido modelo 4 : " + importeTotalVendido3 + "\n");
//textBoleta.append ("Importe Total Vendido modelo 5 : " + importeTotalVendido4 + "\n");
//textBoleta.append ("Aporte Cuota Diaria modelo 1 : " + aporteCuota0 + "\n");
//textBoleta.append ("Aporte Cuota Diaria modelo 2 : " + aporteCuota1 + "\n");
//textBoleta.append ("Aporte Cuota Diaria modelo 3 : " + aporteCuota2 + "\n");
//textBoleta.append ("Aporte Cuota Diaria modelo 4 : " + aporteCuota3 + "\n");
//textBoleta.append ("Aporte Cuota Diaria modelo 5 : " + aporteCuota4 + "\n");
//textBoleta.append (resultado0 + "\n");
//textBoleta.append (resultado1 + "\n");
//textBoleta.append (resultado2 + "\n");
//textBoleta.append (resultado3 + "\n");
//textBoleta.append (resultado4 + "\n");
}
if (e.getSource() == btnCerrarVender) {
dispose();
}
}
public double obtenerPrecio (int modelo) {
//Ingresar dato
modelo = cboModelo.getSelectedIndex();
//Procesar
//Evalúa Precio
switch (modelo) {
case 1:
textPrecioVenta.setText("" + precio0);
return precio0;
case 2:
textPrecioVenta.setText("" + precio1);
return precio1;
case 3:
textPrecioVenta.setText("" + precio2);
return precio2;
case 4:
textPrecioVenta.setText("" + precio3);
return precio3;
default:
textPrecioVenta.setText("" + precio4);
return precio4;
}
}
public int obtenerCantidad () {
return Integer.parseInt(textCantidad.getText());
}
public double obtenerDescuento (int cantidad) {
//Evalúa Descuento
switch (cantidad) {
case 1:
case 2:
case 3:
case 4:
case 5: return 0.01;
case 6:
case 7:
case 8:
case 9:
case 10: return 0.02;
case 11:
case 12:
case 13:
case 14:
case 15: return 0.03;
default: return 0.04;
}
}
public void mostrarDescuento (double descuento) {
lblVistaDescuento.setText("Descuento: " + descuento * 100 + "%");
}
public String obtenerObsequio (int cantidad) {
switch (cantidad) {
case 1: return obsequio1;
case 2:
case 3:
case 4:
case 5: return obsequio2;
default: return obsequio3;
}
}
public String obtenerModelo (int cocinas) {
cocinas = cboModelo.getSelectedIndex();
switch (cocinas) {
case 1:
return modelo0;
case 2:
return modelo1;
case 3:
return modelo2;
case 4:
return modelo3;
default:
return modelo4;
}
}
public double obtenerImporteCompra (double precio, int cantidad) {
return precio * cantidad;
}
public double obtenerImporteDescuento (double importeCompra, double descuento) {
return importeCompra * descuento;
}
public double obtenerImportePagar (double importeCompra, double importeDescuento) {
return importeCompra - importeDescuento;
}
public int contadoresVentasModelos (int modelos) {
modelos = cboModelo.getSelectedIndex();
switch (modelos) {
case 1: return contadorVentas0++;
case 2: return contadorVentas1++;
case 3: return contadorVentas2++;
case 4: return contadorVentas3++;
default: return contadorVentas4++;
}
}
public int acumuladorCantidadVendida (int unidadModel, int cantidad) {
unidadModel = cboModelo.getSelectedIndex();
switch (unidadModel) {
case 1: return cantidadUnidadesVendidas0 += cantidad;
case 2: return cantidadUnidadesVendidas1 += cantidad;
case 3: return cantidadUnidadesVendidas2 += cantidad;
case 4: return cantidadUnidadesVendidas3 += cantidad;
default: return cantidadUnidadesVendidas4 += cantidad;
}
}
public double acumuladorTotalVendido (int ventaModel, double importePagar) {
ventaModel = cboModelo.getSelectedIndex();
switch (ventaModel) {
case 1: return importeTotalVendido0 += importePagar;
case 2: return importeTotalVendido1 += importePagar;
case 3: return importeTotalVendido2 += importePagar;
case 4: return importeTotalVendido3 += importePagar;
default: return importeTotalVendido4 += importePagar;
}
}
public double obtenerAporteCuotaDiaria (int aporte) {
aporte = cboModelo.getSelectedIndex();
switch (aporte) {
case 1: return aporteCuota0 = (importeTotalVendido0 / cuotaDiaria) * 100;
case 2: return aporteCuota1 = (importeTotalVendido1 / cuotaDiaria) * 100;
case 3: return aporteCuota2 = (importeTotalVendido2 / cuotaDiaria) * 100;
case 4: return aporteCuota3 = (importeTotalVendido3 / cuotaDiaria) * 100;
default: return aporteCuota4 =(importeTotalVendido4 / cuotaDiaria) * 100;
}
}
public void obtenerMensaje () {
NumberFormat formateador = new DecimalFormat("#,###,###.00");
int serie = 0, incremento = 5;
int contadorGeneral = contadorVentas0 + contadorVentas1 + contadorVentas2 + contadorVentas3 + contadorVentas4;
double importeTotalGeneralAcumulado = importeTotalVendido0 + importeTotalVendido1 + importeTotalVendido2 + importeTotalVendido3 + importeTotalVendido4;
double acumuladoAporteCuota = aporteCuota0 + aporteCuota1 + aporteCuota2 + aporteCuota3 + aporteCuota4;
while (contadorGeneral < 100) {
contadorGeneral ++;
serie += incremento;
if (contadorGeneral == serie) {
JOptionPane.showMessageDialog(null,"Venta N° " + contadorGeneral + "\n" + "Importe Total General Acumulado : S/ " + formateador.format(importeTotalGeneralAcumulado) + "\n" + "Porcentaje de la Cuota Diaria : " + formateador.format(acumuladoAporteCuota) + "%", "Avance de Ventas", JOptionPane.INFORMATION_MESSAGE);
}
}
}
public static void obtenerDatosOptimos (int model) {
model = cboModelo.getSelectedIndex();
int comparOpt0, comparOpt1, comparOpt2, comparOpt3, comparOpt4;
//Evaluación Modelo de Cocina
switch (model) {
case 1:
if (cantidadUnidadesVendidas0 < cantidadOptima) {
comparOpt0 = cantidadUnidadesVendidas0 - cantidadOptima;
comparOpt0 = comparOpt0 * -1;
String comparOptS0 = String.valueOf (comparOpt0);
resultado0 = comparOptS0 + " Menos que el promedio";
}
else if (cantidadUnidadesVendidas0 == cantidadOptima) {
comparOpt0 = cantidadUnidadesVendidas0 - cantidadOptima;
resultado0 = "Igual a la Cantidad Óptima";
}
else {
comparOpt0 = cantidadUnidadesVendidas0 - cantidadOptima;
String comparOptS0 = String.valueOf (comparOpt0);
resultado0 = comparOptS0 + " Más que el promedio";
}
break;
case 2:
if (cantidadUnidadesVendidas1 < cantidadOptima) {
comparOpt1 = cantidadUnidadesVendidas1 - cantidadOptima;
comparOpt1 = comparOpt1 * -1;
String comparOptS1 = String.valueOf (comparOpt1);
resultado1 = comparOptS1 + " Menos que el promedio";
}
else if (cantidadUnidadesVendidas1 == cantidadOptima) {
comparOpt1 = cantidadUnidadesVendidas1 - cantidadOptima;
resultado1 = "Igual a la Cantidad Óptima";
}
else {
comparOpt1 = cantidadUnidadesVendidas1 - cantidadOptima;
String comparOptS1 = String.valueOf (comparOpt1);
resultado1 = comparOptS1 + " Más que el promedio";
}
break;
case 3:
if (cantidadUnidadesVendidas2 < cantidadOptima) {
comparOpt2 = cantidadUnidadesVendidas2 - cantidadOptima;
comparOpt2 = comparOpt2 * -1;
String comparOptS2 = String.valueOf (comparOpt2);
resultado2 = comparOptS2 + " Menos que el promedio";
}
else if (cantidadUnidadesVendidas2 == cantidadOptima) {
comparOpt2 = cantidadUnidadesVendidas2 - cantidadOptima;
resultado2 = "Igual a la Cantidad Óptima";
}
else {
comparOpt2 = cantidadUnidadesVendidas2 - cantidadOptima;
String comparOptS2 = String.valueOf (comparOpt2);
resultado2 = comparOptS2 + " Más que el promedio";
}
break;
case 4:
if (cantidadUnidadesVendidas3 < cantidadOptima) {
comparOpt3 = cantidadUnidadesVendidas3 - cantidadOptima;
comparOpt3 = comparOpt3 * -1;
String comparOptS3 = String.valueOf (comparOpt3);
resultado3 = comparOptS3 + " Menos que el promedio";
}
else if (cantidadUnidadesVendidas3 == cantidadOptima) {
comparOpt3 = cantidadUnidadesVendidas3 - cantidadOptima;
resultado3 = "Igual a la Cantidad Óptima";
}
else {
comparOpt3 = cantidadUnidadesVendidas3 - cantidadOptima;
String comparOptS3 = String.valueOf (comparOpt3);
resultado3 = comparOptS3 + " Más que el promedio";
}
break;
default:
if (cantidadUnidadesVendidas4 < cantidadOptima) {
comparOpt4 = cantidadUnidadesVendidas4 - cantidadOptima;
comparOpt4 = comparOpt4 * -1;
String comparOptS4 = String.valueOf (comparOpt4);
resultado4 = comparOptS4 + " Menos que el promedio";
}
else if (cantidadUnidadesVendidas4 == cantidadOptima) {
comparOpt4 = cantidadUnidadesVendidas4 - cantidadOptima;
resultado4 = " Igual a la Cantidad Óptima";
}
else {
comparOpt4 = cantidadUnidadesVendidas4 - cantidadOptima;
String comparOptS4 = String.valueOf (comparOpt4);
resultado4 = comparOptS4 + " Más que el promedio";
}
break;
}
}
public void imprimir () {
textBoleta.setText("");
}
public void imprimir (String texto) {
textBoleta.append(texto + "\n");
}
public void mostrarImprimir (int cantidad, double precio, double importeCompra, double importeDescuento, double importePagar, String modeloV, String obsequio) {
NumberFormat formateador = new DecimalFormat("#,###,###.00");
textBoleta.setText("BOLETA DE VENTA \n");
textBoleta.append ("\n");
textBoleta.append ("Modelo : " + modeloV + "\n");
textBoleta.append ("Precio : " + "S/ " + formateador.format(precio) + "\n");
textBoleta.append ("Cantidad : " + cantidad + "\n");
textBoleta.append ("Importe Compra : " + "S/ " + formateador.format (importeCompra) + "\n");
textBoleta.append ("Importe Descuento : " + "S/ " + formateador.format (importeDescuento) + "\n");
textBoleta.append ("Importe Pagar : " + "S/ " + formateador.format (importePagar) + "\n");
textBoleta.append ("Obsequio : " + obsequio);
}
}
Editor is loading...
Leave a Comment