Trabajo Final del
Curso
Java
Fundamentals
(ORACLE)
Tecnologías de la
Información
Java Fundamentals (Oracle)
TEMA: Sistema de Gestión hospitalaria para la Clínica Iberoamericana basado
en Java
OBJETIVO GENERAL
Contando con la información tecnológica y recursos adicionales, el estudiante será
capaz de elaborar un procedimiento escrito para explicar la implementación de un
proyecto que permita simular el funcionamiento de un sistema de gestión hospitalaria
para la Clínica Iberoamericana basado en Java.
DESCRIPCIÓN DE LA TAREA / OPERACIONES
Java Fundamentals (Oracle)
El presente proyecto, busca el planteamiento de propuestas de los participantes
durante el módulo a desarrollar. Estas se fundamentarán con el conocimiento de las
tareas con sus respectivas operaciones que se describen a continuación:
1. Desarrollar la Introducción a Alice 3
• Introducción a Alice 3
• Adición y colocación de objetos
• Procedimientos y argumentos
• Rotación y asignación aleatoria
• Declaración de procedimientos
• Sentencias de control
• Funciones
• Estructuras de control IF y WHILE
• Expresiones
• Variables
• Controles del teclado
• Desarrollo de una animación completa
• Variables Java y tipos de dato
• Clases y métodos Java
2. Desarrollar la Introducción a Greenfoot
• Introducción a Greenfoot
• Métodos, variables y parámetros
• Código fuente y documentación
• Desarrollo y prueba de una aplicación
• Asignación aleatoria y constructores
• Métodos definidos
• Control de teclado y sonido
• Animación mundial y final del juego
• Abstracción
Java Fundamentals (Oracle)
Entregable 02
Se requiere establecer los controles para el inicio de
sesión, y para el registro de los datos por cada paciente
dentro del sistema.
Establecer los métodos,
variables y parámetros para tal
fin.
Establecer los objetos y controladores
para poder realizar el registro de la
información de los pacientes. Presentar
un diagrama de la lógica interna del
sistema
Realizar unaprueba de todo el sistema
aplicando el manejo de errores.
REFERENCIAS BIBLIOGRÁFICAS
Java Fundamentals (Oracle)
import javax.swing.*;
class Paciente {
private String nombre;
private String dni;
private Prescripcion prescripcion; // Prescripcion médica del paciente
public Paciente(String nombre, String dni) {
this.nombre = nombre;
this.dni = dni;
// Getters y setters para nombre y DNI
public String getNombre() {
return nombre;
public String getDni() {
return dni;
public Prescripcion getPrescripcion() {
return prescripcion;
}
Java Fundamentals (Oracle)
public void setPrescripcion(Prescripcion prescripcion) {
this.prescripcion = prescripcion;
class Prescripcion {
private String medicamento;
private String dosis;
// Otros datos de la prescripción
public Prescripcion(String medicamento, String dosis) {
this.medicamento = medicamento;
this.dosis = dosis;
// Getters y setters para medicamento y dosis
public class Main {
public static void main(String[] args) {
// Interfaz gráfica para el inicio de sesión
JFrame loginFrame = new JFrame("LOHYB System");
loginFrame.setSize(400, 200);
loginFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
loginFrame.setLayout(null);
JLabel titleLabel = new JLabel("LOHYB System");
titleLabel.setBounds(150, 10, 100, 25);
loginFrame.add(titleLabel);
Java Fundamentals (Oracle)
JLabel userLabel = new JLabel("Usuario:");
userLabel.setBounds(50, 50, 100, 25);
loginFrame.add(userLabel);
JTextField userField = new JTextField();
userField.setBounds(150, 50, 200, 25);
loginFrame.add(userField);
JLabel passLabel = new JLabel("Contraseña:");
passLabel.setBounds(50, 80, 100, 25);
loginFrame.add(passLabel);
JPasswordField passField = new JPasswordField();
passField.setBounds(150, 80, 200, 25);
loginFrame.add(passField);
JButton loginButton = new JButton("Login");
loginButton.setBounds(50, 120, 100, 30);
loginFrame.add(loginButton);
JButton cancelButton = new JButton("Cancelar");
cancelButton.setBounds(160, 120, 100, 30);
loginFrame.add(cancelButton);
JButton exitButton = new JButton("Salir");
exitButton.setBounds(270, 120, 100, 30);
loginFrame.add(exitButton);
loginButton.addActionListener(e -> {
// Aquí puedes agregar la lógica para verificar el usuario y la contraseña
Java Fundamentals (Oracle)
// Por ahora simplemente cerramos la ventana de inicio de sesión y mostramos la siguiente ventana
loginFrame.dispose();
mostrarVentanaRegistro();
});
cancelButton.addActionListener(e -> {
// Cierra la aplicación si se cancela el inicio de sesión
System.exit(0);
});
exitButton.addActionListener(e -> {
// Cierra la aplicación si se presiona el botón de salida
System.exit(0);
});
loginFrame.setVisible(true);
public static void mostrarVentanaRegistro() {
// Interfaz gráfica para registrar datos del paciente
JFrame registroFrame = new JFrame("Registro de Paciente");
registroFrame.setSize(400, 400);
registroFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
registroFrame.setLayout(null);
// Definir componentes para la interfaz gráfica de registro
JTextField nombreField = new JTextField();
nombreField.setBounds(150, 30, 200, 25);
registroFrame.add(nombreField);
Java Fundamentals (Oracle)
JTextField dniField = new JTextField();
dniField.setBounds(150, 70, 200, 25);
registroFrame.add(dniField);
JLabel nombreLabel = new JLabel("Nombre:");
nombreLabel.setBounds(50, 30, 100, 25);
registroFrame.add(nombreLabel);
JLabel dniLabel = new JLabel("DNI:");
dniLabel.setBounds(50, 70, 100, 25);
registroFrame.add(dniLabel);
JButton siguienteButton = new JButton("Siguiente");
siguienteButton.setBounds(150, 110, 150, 30);
registroFrame.add(siguienteButton);
// Acción del botón Siguiente
siguienteButton.addActionListener(e -> {
String nombre = nombreField.getText();
String dni = dniField.getText();
// Crear un nuevo paciente
Paciente paciente = new Paciente(nombre, dni);
// Cerrar la ventana de registro
registroFrame.dispose();
// Mostrar la siguiente ventana para ingresar datos de prescripción médica
mostrarVentanaPrescripcion(paciente);
});
Java Fundamentals (Oracle)
// Hacer visible la ventana de registro
registroFrame.setVisible(true);
public static void mostrarVentanaPrescripcion(Paciente paciente) {
// Interfaz gráfica para ingresar datos de la prescripción médica
JFrame prescripcionFrame = new JFrame("Prescripción Médica");
prescripcionFrame.setSize(400, 400);
prescripcionFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
prescripcionFrame.setLayout(null);
// Definir componentes para la interfaz gráfica de prescripción médica
JTextField medicamentoField = new JTextField();
medicamentoField.setBounds(150, 30, 200, 25);
prescripcionFrame.add(medicamentoField);
JTextField dosisField = new JTextField();
dosisField.setBounds(150, 70, 200, 25);
prescripcionFrame.add(dosisField);
JLabel medicamentoLabel = new JLabel("Medicamento:");
medicamentoLabel.setBounds(50, 30, 100, 25);
prescripcionFrame.add(medicamentoLabel);
JLabel dosisLabel = new JLabel("Dosis:");
dosisLabel.setBounds(50, 70, 100, 25);
prescripcionFrame.add(dosisLabel);
JButton registrarButton = new JButton("Registrar");
Java Fundamentals (Oracle)
registrarButton.setBounds(150, 110, 150, 30);
prescripcionFrame.add(registrarButton);
// Acción del botón Registrar
registrarButton.addActionListener(e -> {
String medicamento = medicamentoField.getText();
String dosis = dosisField.getText();
// Crear y asignar prescripción médica al paciente
Prescripcion prescripcion = new Prescripcion(medicamento, dosis);
paciente.setPrescripcion(prescripcion);
// Mostrar mensaje de registro exitoso
JOptionPane.showMessageDialog(prescripcionFrame, "Prescripción médica registrada para " +
paciente.getNombre() + " con DNI " + paciente.getDni() + ".\nMedicamento: " + medicamento + "\nDosis: " +
dosis);
// Cerrar la ventana de prescripción médica
prescripcionFrame.dispose();
});
// Hacer visible la ventana de prescripción médica
prescripcionFrame.setVisible(true);