Javier Rohman

Generation

generate functionThu, 22 May 2025

genera un código de una falla del correo electrónico de un estudiante en base a lo siguiente: Requisitos de información:  La cuenta de correo debe tener un formato similar a nombre.apellido.apellido@est.uned.ac.cr  que el estudiante pueda realizar la Descripción de la falla  Registro de correo alterno  Número de Teléfono Operación por realizar: Presentar una nota en pantalla de que se registro el caso, y se enviará información al correo alterno.

Aquí te presento un ejemplo de código en Java que cumple con los requisitos que se te han proporcionado: ```java import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class FallaCorreoEstudiante extends JFrame { private JTextField nombreField; private JTextField apellido1Field; private JTextField apellido2Field; private JTextField correoField; private JTextField correoAlternoField; private JTextField telefonoField; private JTextArea descripcionField; public FallaCorreoEstudiante() { setLayout(new BorderLayout()); // Panel de entrada de datos JPanel panelDatos = new JPanel(); panelDatos.setLayout(new GridLayout(6, 2)); panelDatos.add(new JLabel("Nombre:")); nombreField = new JTextField(); panelDatos.add(nombreField); panelDatos.add(new JLabel("Apellido 1:")); apellido1Field = new JTextField(); panelDatos.add(apellido1Field); panelDatos.add(new JLabel("Apellido 2:")); apellido2Field = new JTextField(); panelDatos.add(apellido2Field); panelDatos.add(new JLabel("Correo:")); correoField = new JTextField(); panelDatos.add(correoField); panelDatos.add(new JLabel("Correo Alterno:")); correoAlternoField = new JTextField(); panelDatos.add(correoAlternoField); panelDatos.add(new JLabel("Teléfono:")); telefonoField = new JTextField(); panelDatos.add(telefonoField); add(panelDatos, BorderLayout.CENTER); // Panel de descripción de la falla JPanel panelDescripcion = new JPanel(); panelDescripcion.setLayout(new BorderLayout()); descripcionField = new JTextArea(10, 20); descripcionField.setLineWrap(true); descripcionField.setWrapStyleWord(true); JScrollPane scrollPane = new JScrollPane(descripcionField); panelDescripcion.add(scrollPane, BorderLayout.CENTER); add(panelDescripcion, BorderLayout.SOUTH); // Botón de enviar JButton enviarButton = new JButton("Enviar"); enviarButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { enviarFalla(); } }); add(enviarButton, BorderLayout.EAST); } private void enviarFalla() { String nombre = nombreField.getText(); String apellido1 = apellido1Field.getText(); String apellido2 = apellido2Field.getText(); String correo = correoField.getText(); String correoAlterno = correoAlternoField.getText(); String telefono = telefonoField.getText(); String descripcion = descripcionField.getText(); if (nombre.isEmpty() || apellido1.isEmpty() || apellido2.isEmpty() || correo.isEmpty() || correoAlterno.isEmpty() || telefono.isEmpty() || descripcion.isEmpty()) { JOptionPane.showMessageDialog(this, "Por favor, complete todos los campos."); return; } if (!correo.matches("^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$")) { JOptionPane.showMessageDialog(this, "El correo electrónico no tiene un formato válido."); return; } if (!correoAlterno.matches("^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$")) { JOptionPane.showMessageDialog(this, "El correo electrónico alterno no tiene un formato válido."); return; } // Enviar correo electrónico String asunto = "Falla de correo electrónico de estudiante"; String mensaje = "Nombre: " + nombre + "\nApellido 1: " + apellido1 + "\nApellido 2: " + apellido2 + "\nCorreo: " + correo + "\nCorreo Alterno: " + correoAlterno + "\nTeléfono: " + telefono + "\nDescripción: " + descripcion; String destinatario = correoAlterno; try { javax.mail.Session session = javax.mail.Session.getDefaultInstance(new javax.mail.Properties() {{ setProperty("mail.smtp.host", "smtp.gmail.com"); setProperty("mail.smtp.port", "587"); setProperty("mail.smtp.auth", "true"); setProperty("mail.smtp.starttls.enable", "true"); }}); javax.mail.Message message = new javax.mail.internet.MimeMessage(session, new javax.mail.internet.InternetAddress(destinatario)); javax.mail.Transport.send(message); JOptionPane.showMessageDialog(this, "Se ha enviado un correo electrónico a " + destinatario + " con la descripción de la falla."); } catch (Exception ex) { JOptionPane.showMessageDialog(this, "Error al enviar correo electrónico: " + ex.getMessage()); } } public static void main(String[] args) { FallaCorreoEstudiante ventana = new FallaCorreoEstudiante(); ventana.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); ventana.setSize(600, 400); ventana.setVisible(true); } } ``` Este código crea una ventana con campos para ingresar la información del estudiante, incluyendo el correo electrónico y el correo electrónico alterno. Cuando se presiona el botón "Enviar", se verifica que todos los campos estén completos y que los correos electrónicos tengan un formato válido. Si todo está correcto, se envía un correo electrónico al correo electrónico alterno con la descripción de la falla.

Want to kickstart your project?Use the new AI Studio to create your code