Sistema de canal eletrônico em servlets e jsp
Visão geral
O sistema de canal eletrônico é um aplicativo baseado na Web desenvolvido usando Java Servlets e JSP, com o objetivo de facilitar o processo de reserva de consultas entre médicos e pacientes. Este sistema permite que os médicos gerenciem seus horários de canalização e pacientes para fazer consultas, visualizem seus horários e gerenciem seus perfis. O sistema garante a persistência dos dados armazenando todas as informações em um banco de dados MySQL.
Para requisitos detalhados do projeto, consulte os requisitos do sistema de canal eletrônico.pdf
Capturas de tela das principais páginas no sistema de canal eletrônico:
Página de boas -vindas

Página de login do médico

Página de registro médico

Página de programação de canalização de médico

Doutor Adicione nova página de programação

Página de programação de canalização de atualização do médico

Página de cronograma de exclusão do médico

Página de perfil de usuário médico

Página de perfil de usuário de edição médica

Página de login do paciente

Página de registro do paciente

Página de visualização da lista de compromissos do paciente

Página de visualização completa da lista de compromissos

Paciente confirmou a página de visualização da lista de compromissos

Página de perfil do usuário do paciente

Página de perfil de usuário editar paciente

Paciente Confirmar a página de compromisso

PATER CANCELA PÁGINA DE COMPRIMENTO

Usar diagrama de casos e diagrama de classe
Use o diagrama de casos

Diagrama de classe

Características
- Registro médico e gerenciamento de perfis:
- Os médicos podem se registrar com um usuário de usuário exclusivo, nome, senha, telefone e especialização.
- Após o login, os médicos podem atualizar seu número de telefone e especialização.
- Gerenciamento de cronograma médico:
- Os médicos podem adicionar, visualizar, atualizar e excluir seus horários de canalização.
- Cada cronograma inclui o ID do médico, a data de canalização, a hora e o número máximo de pacientes permitidos.
- O sistema garante que um médico possa ter apenas um cronograma de canalização por data.
- Registro de pacientes e gerenciamento de perfis:
- Os pacientes podem se registrar com NIC, nome, telefone e senha.
- Depois de fazer login, os pacientes podem visualizar e atualizar suas informações pessoais.
- Os pacientes não podem mudar sua NIC.
- Reserva de compromisso:
- Os pacientes podem visualizar os horários de canalização disponíveis e marcar consultas.
- Os pacientes só podem marcar uma consulta por cronograma de canalização para evitar conflitos.
- Os pacientes podem ver suas consultas confirmadas e cancelar, se necessário.
- Navegação e interface do usuário:
- Uma barra de navegação consistente é fornecida para facilitar o uso, permitindo acesso a várias seções, como listas de compromissos, compromissos pessoais, perfis de usuário e logout.
Estrutura do banco de dados
O banco de dados para o sistema de canal eletrônico foi projetado para gerenciar informações para médicos, pacientes, cronogramas de canalização e compromissos. Inclui as seguintes tabelas:
- Tabela de médicos: armazena informações sobre médicos, incluindo seu UserID, nome, senha, telefone e especialização.
- Tabela de pacientes: contém detalhes do paciente, como NIC, nome, senha, telefone e email.
- Tabela de cronograma de canalização: gerencia a programação de consultas médicas, incluindo detalhes como Doctor ID, Data de canalização, hora, máximo de pacientes permitidos e o número atual de pacientes.
- Tabela de compromissos: registros os compromissos feitos pelos pacientes, incluindo ID de programação de canalização, NIC do paciente, data de compromisso, horário de compromisso e status.
Estrutura do banco de dados

Tabela de médicos
| Coluna | Tipo de dados | Restrições |
|---|
| ID do usuário | Varchar (10) | Chave primária |
| nome | Varchar (100) | Não nulo |
| senha | Varchar (100) | Não nulo |
| telefone | Varchar (15) | Não nulo |
| especialização | Varchar (100) | Não nulo |
Tabela de pacientes
| Coluna | Tipo de dados | Restrições |
|---|
| Nic | Varchar (12) | Chave primária |
| nome | Varchar (100) | Não nulo |
| senha | Varchar (100) | Não nulo |
| telefone | Varchar (15) | Não nulo |
| e-mail | Varchar (100) | Não nulo |
Tabela de programação de canalização
| Coluna | Tipo de dados | Restrições |
|---|
| eu ia | Int | Chave primária |
| doutor_id | Varchar (10) | Chave estrangeira |
| canaling_date | DATA | Não nulo |
| tempo | TEMPO | Não nulo |
| max_patients | Int | Não nulo |
| Current_patients | Int | Não nulo |
Tabela de compromissos
| Coluna | Tipo de dados | Restrições |
|---|
| canaling_schedule_id | Int | Chave estrangeira, chave composta |
| paciente_nic | Varchar (12) | Chave estrangeira, chave composta |
| compromisso_date | DATA | Não nulo |
| compromisso_time | TEMPO | Não nulo |
| status | Varchar (20) | Não nulo |
Configurar
Configuração inicial do projeto e conexão do servidor Tomcat com NetBeans
- Baixe e instale o NetBeans:
- Faça o download da versão mais recente do NetBeans no site oficial.
- Siga as instruções de instalação fornecidas.
- Faça o download e instale o Apache Tomcat:
- Faça o download do Apache Tomcat no site oficial.
- Extraia o arquivo zip baixado para um local preferido no seu sistema.
- Configure o Apache Tomcat no NetBeans:
- NetBeans aberto.
- Vá para ferramentas> servidores.
- Clique no "Adicionar servidor" na janela dos servidores.
- Escolha o Apache Tomcat e especifique a localização da sua instalação do Tomcat.
- Preencha a configuração seguindo as instruções na tela.
Configure o apache tomcat
Configuração do banco de dados
Para configurar o banco de dados para o sistema de canal eletrônico, siga estas etapas:
- Faça o download e instale o XAMPP:
- Faça o download do XAMPP no site oficial.
- Siga as instruções de instalação fornecidas.
- Comece MySql:
- Abra o painel de controle XAMPP.
- Inicie o serviço MySQL.
- Crie e preencha o banco de dados:
- Abra a phpmyadmin no painel de controle XAMPP.
- Crie um novo banco de dados chamado "E_CHANNELING_SYSTEM".
Execute o seguinte comando SQL para criar o banco de dados:
CREATE DATABASE e_channeling_system ;
- Execute as seguintes consultas SQL para criar e preencher as tabelas:
Mude para o banco de dados recém -criado:
Execute os seguintes comandos SQL para criar as tabelas necessárias:
Crie a tabela de médicos
CREATE TABLE doctors (
userID VARCHAR ( 10 ) PRIMARY KEY ,
name VARCHAR ( 100 ) NOT NULL ,
password VARCHAR ( 100 ) NOT NULL ,
phone VARCHAR ( 15 ) NOT NULL ,
specialization VARCHAR ( 100 ) NOT NULL
); Crie a tabela de pacientes
CREATE TABLE patients (
NIC VARCHAR ( 12 ) PRIMARY KEY ,
name VARCHAR ( 100 ) NOT NULL ,
password VARCHAR ( 100 ) NOT NULL ,
phone VARCHAR ( 15 ) NOT NULL ,
email VARCHAR ( 100 ) NOT NULL
); Crie a tabela de programação de canais
CREATE TABLE channeling_schedule (
id INT AUTO_INCREMENT PRIMARY KEY ,
doctor_id VARCHAR ( 10 ),
channeling_date DATE NOT NULL ,
time TIME NOT NULL ,
max_patients INT NOT NULL ,
current_patients INT NOT NULL ,
FOREIGN KEY (doctor_id) REFERENCES doctors(userID)
); Crie a tabela de compromissos
CREATE TABLE appointments (
channeling_schedule_id INT ,
patient_NIC VARCHAR ( 12 ),
appointment_date DATE NOT NULL ,
appointment_time TIME NOT NULL ,
status VARCHAR ( 20 ) NOT NULL ,
PRIMARY KEY (channeling_schedule_id, patient_NIC),
FOREIGN KEY (channeling_schedule_id) REFERENCES channeling_schedule(id),
FOREIGN KEY (patient_NIC) REFERENCES patients(NIC)
); Tecnologias e ferramentas
- Java Servlets
- Páginas do servidor Java (JSP)
- Banco de dados MySQL
- HTML/CSS para design de front-end
- Apache Tomcat para implantação do servidor
- Xampp
- NetBeans Apache
Contribuições
As contribuições para aprimorar a funcionalidade e os recursos do sistema de canal eletrônico são bem-vindos. Siga o fluxo de trabalho padrão do GitHub para enviar solicitações de tração.
Licença
MIT Licença
Observação
Verifique se o driver MySQL JDBC (JAR MySQL-Connector-Java -... JAR) é adicionado ao diretório "Web-Inf/Lib" do seu projeto.