Erik Machado Lopez
Guilherme Cardoso
Felipe Martins Frudeli
João Pedro Prado
Wendell
- Instale o repositório localmente
- Entre na pasta
- Instale o php caso não tenha instalado, leia https://dev.to/marcelochia/instalando-o-php-8-no-windows-237m
ou se estiver instalado WAMP ou XAMPP, pesquise por "Add path php WAMP" - Inicie um servidor PHP
git clone https://github.com/FelipeMartinsFrudeli/Projeto-Financeiro
cd Projeto-Financeiro/src/public
php -S localhost:8080
- Crie um novo arquivo de mysql e execute o código abaixo:
DROP DATABASE IF EXISTS Projeto_Financeiro;
CREATE DATABASE Projeto_Financeiro;
USE Projeto_Financeiro;
CREATE TABLE registred_user
(
user_id INT PRIMARY KEY AUTO_INCREMENT,
first_name VARCHAR(60) NOT NULL,
login VARCHAR(100) NOT NULL,
pass_word VARCHAR(100) NOT NULL,
create_date DATETIME DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE bank_account
(
account_id INT PRIMARY KEY AUTO_INCREMENT,
user_id INT NOT NULL,
amount DECIMAL(22,2) NOT NULL DEFAULT 0,
create_date DATETIME DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (user_id) REFERENCES registred_user(user_id)
);
CREATE TABLE transactions
(
transaction_id INT PRIMARY KEY AUTO_INCREMENT,
account_id INT NOT NULL,
amount DECIMAL(12,2) NOT NULL,
t_type VARCHAR(60) NOT NULL,
title VARCHAR(100),
t_description TEXT,
t_date DATETIME DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (account_id) REFERENCES bank_account(account_id) ON DELETE CASCADE
);
DELIMITER $
CREATE TRIGGER tgr_transaction
AFTER INSERT ON transactions
FOR EACH ROW
BEGIN
IF NEW.t_type = "Deposit" THEN
UPDATE bank_account SET amount = amount + NEW.amount
WHERE account_id = NEW.account_id;
END IF;
IF NEW.t_type = "Withdraw" THEN
UPDATE bank_account SET amount = amount - NEW.amount
WHERE account_id = NEW.account_id;
END IF;
END$
CREATE TRIGGER trg_delete_transaction
AFTER DELETE ON transactions
FOR EACH ROW
BEGIN
IF OLD.t_type = "Deposit" THEN
UPDATE bank_account SET amount = amount - OLD.amount
WHERE account_id = OLD.account_id;
END IF;
IF OLD.t_type = "Withdraw" THEN
UPDATE bank_account SET amount = amount + OLD.amount
WHERE account_id = OLD.account_id;
END IF;
END$
CREATE TRIGGER new_user
AFTER INSERT ON registred_user
FOR EACH ROW
BEGIN
INSERT INTO bank_account (user_id, amount) VALUES (NEW.user_id, 0);
END$
DELIMITER ;