-
Conectar com o Banco de Dados (feito para testes, mas terá que ser feito de outro jeito, pois não dá pra levar o pc)
-
Criação e Destruição do Banco de Dados(podemos utilizar o docker para levantar e derrubar)
-
Criação das Tabelas (feito, falta apenas testar)
-
Inserção de Dados Iniciais*
-
Settar os Triggers(falta testar, mas já implementados)
-
Criar Users & Roles(users feitos)
-
Criar Views & Procedimentos(um dos views feito)
-
Criar Funções(funções feitas)
-
Back-end em Go ---CRUD e linkar com as funções
Contém o ponto de entrada da aplicação. O arquivo main.go é responsável por inicializar o servidor e configurar as rotas.
Contém a lógica interna do aplicativo, incluindo a definição de modelos, interação com o banco de dados, regras de negócios e manipulação de requisições HTTP.
model/: Define os modelos de dados que representam as entidades do sistema, como usuários.- Ex: User: Campos como ID, Name, Email, Password.
- NewUser(): Construtor para criar uma nova instância de User.
schemas/: Define esquemas e validações para garantir que os dados estejam corretos antes de serem processados.repository/: Responsável pela interação com a base de dados, implementando as operações CRUD.service/: Contém a lógica de negócios, incluindo validações e regras específicas para a manipulação de dados.handler/: Manipula as requisições HTTP e encaminha os dados para os serviços apropriados.routes/: Define as rotas da API, ligando os endpoints aos manipuladores.
Contém pacotes que podem ser reutilizados em diferentes partes do projeto ou em outros projetos.
utils/: Funções utilitárias que podem ser utilizadas em todo o projeto para evitar duplicação de código.- Ex: HashPassword(): para hashar senhas antes de armazenar no banco.
Contém scripts SQL para migrações de banco de dados, permitindo a criação e modificação de tabelas conforme necessário.
Contém testes unitários para verificar a funcionalidade dos componentes do sistema.