• Nenhum resultado encontrado

TRABALHO COMPLETO vs1

N/A
N/A
Protected

Academic year: 2021

Share "TRABALHO COMPLETO vs1"

Copied!
46
0
0

Texto

(1)

Universidade Nove de Julho

Locação de Quadra de Futsal

Participante e funções dos integrantes do grupo.

Nome RA Função

Bruno Luiz Cassiano dos Santos 2212100498 Desenvolvedor

Renan Gonçalves Rocha 2212103729 Analista de Suporte

Miguel Rocha 2212101043 Programador

Alessandro Gonçalves 2212112708 Gerente de Projeto

Jair Junior 2212100779 Analista de Sistema

Felipe Mafra 2212108424 DBA

(2)

Revisões

Revisão Data Responsável Motivo

01 19/09/2013 Bruno Luiz Cassiano dos Santos

Definição e Plano de Projeto 02 26/09/2013 Miguel Rocha Verificação do MER

03 03/10/2013 Alessandro Gonçalves Correção e alteração da Estrutura de dados 04 10/10/2013 Manoel Henrique Finalização do Trabalho

(3)

Sumario

Revisões...2 1. Introdução...4 1.1. Propósito:...4 1.2. Público Alvo:...4 1.3. Escopo:...4 1.4. Metodologia...5

2. Visão Geral do Produto...6

3. Parâmetro...7

3.1. Parâmetros alteráveis...7

3.2. Parâmetros não alteráveis...7

3.3. Processos Envolvidos...7

4. Premissas e restrições:...8

4.1. Premissas:...8

4.1.1. <PREM001> Cadastro de Usuário:...8

4.1.2. <PREM002>Cadastro de quadra:...8 4.1.3. <PREM003>Locação:...8 4.1.4. <PREM004>Devolução:...8 4.1.5. <PREM005>Pagamento:...8 4.1.6. <PREM007>Cadastro de Funcionário:...8 4.2. Restrições...8 4.2.1. <REST001>Restrições no CPF:...8

5. Requisitos funcionais com matriz de rastreabilidade...9

5.1. <REF001><Cadastro de Cliente>...9

5.2. <REF002><Verificação de disponibilidade das quadras>...9

5.3. <REF003><Agendamento de horários para locação>...9

5.4. <REF004><Inclusão de tempo a ser usado pelos usuários das quadras>...9

5.5. <REF005><Cadastro de Funcionários>...10

5.6. <REF006><Cadastro de Manutenção>...10

5.7. <REF007><Acesso a LANHOUSE nas dependências da SoccerMania>...10

6. Requisitos não funcionais...11

6.1. <RNF001>Usabilidade...11

(4)

6.3. <RNF003>Hardware...11 6.4. <RNF004>Padrões...13 7. MER...14

(5)

1. Introdução

A proposta deste documento e apresentar de forma prática e rápida as funcionalidades e necessidades do sistema para gerir uma administração de aluguel de quadras e escolinha para futebol.

1.1. Propósito:

Nosso grupo tem como objetivo desenvolver um sistema com integração ao banco de dados, para gerenciar locação de quadras poliesportivos, locações mensais e avulsos, além do controle de aulas de futebol infantil para crianças até 15 anos.

1.2. Público Alvo:

Pessoas interessadas na prática de esporte para melhor qualidade de vida, ou para momentos de lazer e descontração, também para quem deseja aprender jogar um futebol dinâmico e alegre.

1.3. Escopo:

O sistema a ser desenvolvido será para o gerenciamento das locações de quadras poliesportivas, sendo locações para mensalistas quanto para aluguel avulso, o sistema também a opção de consultas para acompanhamento e gerar relatórios podendo ser por períodos específicos(dia/mês/ano). Também para controle do pagamento das locações mensais/avulsas, bem como da utilização de nossa LANHOUSE – SoccerMania, o sistema também terá a opção de consultas para gerar relatórios no qual poderão ser i de relatórios por períodos

diário/mensal, ou período especifico.

Cada etapa dessas tem um objetivo e também uma segurança para nosso sistema como:

 Cadastrar funcionários (Inclusão, Exclusão e consulta): O objetivo desse cadastro é para nossos funcionários ter a utilização do sistema gerando o login e senha.

 Cadastrar quadra (Inclusão, Exclusão e consulta): O objetivo desse cadastro e para que nossos funcionários possam registrar novas quadras ou fazer qualquer tipo de alteração, alem de verificar disponibilidade de locação de quadras.

 Cadastro de Cliente (Inclusão, Exclusão e consulta): O objetivo dessa etapa é cadastrar os dados do cliente no sistema, para a liberação de quadras e outros ambientes da SoccerMania.

 Cadastro de LANHOUSE (Inclusão, Exclusão e consulta): Cadastrar os cliente que farão uso da LANHOUSE, caso o cliente já tenha realizado o cadastro para a utilização da quadra será utilizado o mesmo registro.

 Agendamento de horário para locação (Inclusão, Exclusão e consulta):Tem por objetivo depois da verificação de disponibilidade agendar o horário para utilização do cliente.

(6)

Para poder alugar a quadra o cliente poderá vir diretamente até nosso centro esportivo ou realizar o cadastro e agendamento pela internet em nossa, home Page.

1.4. Metodologia

Neste projeto determinamos que a metodologia tomada no desenvolvimento deste projeto será a metodologia “CASCATA”.

Este modelo de desenvolvimento facilitara por que ele e sequencial no qual o desenvolvimento é visto como fluir constate.

(7)

2. Visão Geral do Produto

Atualmente o ramo de entretenimento esportivo, mais especificamente, locação de quadras, não oferecem uma interação maior com o seu cliente, limitando suas atividades apenas a locação de quadras.

Nosso projeto visa a maior participação de nossos clientes por meio do nosso site e instalações físicas que proporcionam um leque de atividades que vão além de apenas uma locação semanal de nossas quadras. Será possível por meio de um sistema integrado, o cadastro de clientes, a participação em promoções tanto dos planos mensais como das atividades de escolhinha de futebol. Será possível também alugar as áreas de lazer como churrasqueira e espaço Kids agendar horários em nossa LANHOUSE e local e obter benefícios do cliente fidelidade.

Nossos clientes se enquadram em sua maioria em homens, crianças e adolescentes que praticam esportes semanalmente. O grupo de clientes pode se originar de pessoas que trabalham na mesma empresa, colégios/faculdade ou mesmo amigos/conhecidos.

(8)

3. Parâmetro

3.1. Parâmetros alteráveis

Os parâmetros alteráveis do aplicativo serão intuitivos ao usuário. São eles dia da locação, horário, qualidade de horas, formas de pagamento cartão ou dinheiro.

3.2. Parâmetros não alteráveis

O sistema não poderá ser alterado após a instalação, local da pasta raiz tem que ser definida na hora da instalação, após instalação a pasta fica imutável.

3.3. Processos Envolvidos

Para aulas de futebol infantil terá um instrutor, um funcionário para gerenciamento de tempo da locação de quadra e utilização da LANHOUSE um funcionário para higienização da estrutura.

(9)

4. Premissas e restrições:

4.1. Premissas:

4.1.1. <PREM001> Cadastro de Usuário:

Dados pessoas como Nome Completo, RG, CPF, Endereço residencial e telefone pra contato serão necessários, para contato caso aja algum dano a SoccerMania e com isso vai gerar um código de cliente automaticamente.

4.1.2. <PREM002>Cadastro de quadra:

Local, tamanho, grama ou sintética, especificações como quantidade de banheiro serão necessários.

4.1.3. <PREM003>Locação:

Locação representa o conjunto de informações, regras, direitos e deveres entre locadora e locatário, no que diz respeito aos serviços a serem contratados. O contrato de locação será apresentado ao cliente no dia da utilização da quadra.

4.1.4. <PREM004>Devolução:

Tem que ser feita no prazo estipulado no contrato, tem que devolver sem danos na quadra. Acontecera uma verificação com contratante e contratado para verificar se a danos na quadra.

4.1.5. <PREM005>Pagamento:

Apresentar cartão de credito valido com limite disponível para caução. O valor caução exigido pela locadora será bloqueado no cartão de crédito do locatário (não debitado) e desbloqueado até 72horas após a devolução da quadra.

4.1.6. <PREM007>Cadastro de Funcionário:

O funcionário terá cadastrado o nome, completo, endereço, telefone, identidade (RG), cargo, departamento, tabelas de horários, código.

4.2. Restrições

4.2.1. <REST001>Restrições no CPF:

Locadora poderá realizar a consulta cadastral do CPF do locatário nos órgãos de proteção ao crédito. Na existência de pendências financeiras a locadora poderá negar a abertura do contrato de locação, impossibilitando o agendamento da quadra.

(10)

5.

Requisitos funcionais com matriz de rastreabilidade

5.1. <REF001><Cadastro de Cliente>

REF001 Cadastro de Cliente (Inclusão, Exclusão, Alteração e Consulta).

Descrição O cliente deve ser cadastrado no sistema corretamente, para a liberação da locação de veículos, caso o CPF tenha restrição o cadastro não pode ser concluído com sucesso.

Premissas PREM001

Restrição REST001

Telas TEL003

Observação CPF tem que ser validado

Tabelas CAD_CLIENTE

5.2. <REF002><Verificação de disponibilidade das quadras>

REF002 Cadastro de disponibilidade da quadras (Inclusão, Exclusão, Alteração e Consulta). Descrição Todas as quadras disponíveis para locação

devem estar cadastrados no sistema

Premissas PREM002

Restrição

Telas TEL005

Observação

Tabelas CAD_QUADRA

5.3. <REF003><Agendamento de horários para locação>

REF003 Agendamento de horários para locação (Inclusão, Exclusão, Alteração e Consulta). Descrição O pedido dever obter os dados dos clientes e

dados das quadras juntos em uma tabela para facilitação do relatório Premissas PREM003 Restrição Telas TEL002 Observação Tabelas PED_LOCACAO

5.4. <REF004><Inclusão de tempo a ser usado pelos usuários

das quadras>

REF004 Inclusão de tempo a ser usado pelos usuários das quadras (Inclusão, Exclusão, Alteração e Consulta).

Descrição Todas as quadras alugadas devem ter em seu relatórios de locação o tempo e a data em que serão usadas, relacionadas ao cadastro do cliente.

(11)

Restrição Telas Observação

Tabelas CAD_TEMPO

5.5. <REF005><Cadastro de Funcionários>

REF005 Cadastro de Funcionários (Inclusão, Exclusão, Alteração e Consulta).

Descrição Todos os funcionários que trabalham dentro da empresa deve ser cadastrado no sistema, independente do cargo. Premissas PREM007 Restrições Telas TEL004 Observação Tabelas CAD_FUNCIONARIOS

5.6. <REF006><Cadastro de Manutenção>

REF006 Cadastro de Manutenção (Inclusão, Exclusão, Alteração e Consulta).

Descrição Toda manutenção realizada nas quadras e ambientes sócios, tais como LANHOUSE, churrasqueiras e estacionamento, devem ser registrada em relacionamento com a unidade a qual foi realizado

Premissas PREM008

Restrições

Telas TEL006

Observação

Tabelas CAD_MANUTENCAO

5.7. <REF007><Acesso a LANHOUSE nas dependências da

SoccerMania>

REF007 Cadastro de clientes que irão utilizar a LANHOUSE (Inclusão, Exclusão, Alteração e Consulta).

Descrição Todos os clientes que irão se utilizar dos equipamentos da LANHOUSE e sistemas web, devem ser cadastrados e os seus horários de utilização registrados. Premissas Restrições Telas Observação Tabelas CAD_LANHOUSE

(12)

6. Requisitos não funcionais

6.1. <RNF001>Usabilidade

O sistema não pode falhar e nem travar, tem que ser um sistema simples de criar relatórios, onde fique fácil a verificação de lucros da empresa.

6.2. <RNF002>Desempenho – Confiabilidade

O sistema deve ser seguro pós nele terá informações de pagamento de clientes que não podem ser violados de maneira alguma, ágil e fácil para a utilização do usuário.

6.3. <RNF003>Hardware

Computador

Necessidade

Para a utilização do sistema e necessário o computador

com a configuração abaixo e/ou similares.

Componente

Requisito Mínimo

Processador 64 bit, quatro núcleos, mínimo de 2,5 GHz por núcleo

RAM 8 GB para o melhor desempenho

Disco rígido

80 GB para armazenamento de dados

Para um bom desempenho, você precisa de mais espaço em disco livre para as operações diárias. Adicione dez vezes a quantidade que você possui em RAM para um bom desempenho.

Monitor

Necessidade

O sistema necessita de um monitor para serem

realizadas suas funções com as configurações abaixo, ou

similar.

Componente

Requisito Mínimo

Tipo de Monitor LED

Tamanho da Tela 21,5

(13)

Tempo de Resposta 5 ms

Cor do Produto Black Piano

Servidor

Necessidade

O sistema necessita de servidores com as configurações

abaixo, ou similar.

Componente

Requisito Mínimo

Velocidade do Clock 2,90GHz~3,80Ghz Memória 12 X 8GB (Total: 96GB) SSD (Capacidade de Gravação) 250MB/s Disco Rígido (HD) 24 X 2TB Rede 2 X LAN 1000

Impressora

Necessidade

O sistema necessita de impressora para a impressão de

notas fiscais com as configurações abaixo e/ou similares.

Componente

Requisito Mínimo

Velocidade Preta 16ppm

Velocidade Colorido 4ppm

(14)

Monitor LCD 2 Linhas

6.4. <RNF004>Padrões

Para a criação desse trabalho nossa empresa decidiu trabalhar com a metodologia “Cascata” utilizando a ferramenta ITIL como complemento as necessidades de ter um bom trabalho e ótima qualidade e desempenho deste sistema.

(15)
(16)
(17)
(18)

);

CREATE TABLE tbl_cliente( nr_cliente NUMBER(10), ds_nome VARCHAR2(255), tp_cliente VARCHAR2(255), nr_cep VARCHAR2(255), ds_cliente VARCHAR2(255), nr_numero VARCHAR2(255), ds_bairro VARCHAR2(255), ds_cidade VARCHAR2(255), ds_complemento VARCHAR2(255), nr_telefoneResidencial VARCHAR2(255), nr_telefoneComercial VARCHAR2(255), nr_telefoneCelular VARCHAR2(255), dt_inicial_cadatro DATE, dt_final_cadastro DATE );

CREATE TABLE tbl_atividade( nr_atividade NUMBER(10), ds_atividade VARCHAR2(255) );

CREATE TABLE tbl_itemLocacao( nr_itemLocacao NUMBER(10), nr_cliente NUMBER(10),

(19)

nr_campo NUMBER(10), nr_horario NUMBER(10), nr_atividade NUMBER(10), nr_tipoPagamento NUMBER(10), dt_inicial_Locacao VARCHAR2(255), dt_final_Locacao VARCHAR2(255), vl_valor VARCHAR2(255) );

CREATE TABLE tbl_promocao( nr_promocao NUMBER(10), nr_diaSemana NUMBER(10), nr_horario NUMBER(10), vl_valorPromocao NUMBER(10), ds_cartaoCredito VARCHAR(255) );

CREATE TABLE tbl_locacao( nr_locacao NUMBER(10), nr_itemLocacao NUMBER(10), nr_promocao NUMBER(10), nr_pagamento NUMBER(10) );

CREATE TABLE tbl_campo( nr_campo NUMBER(10), ds_campo VARCHAR2(255),

(20)

vl_valor NUMBER(10), nr_promocao NUMBER(10) );

CREATE TABLE tbl_horario( nr_horario NUMBER(10), nr_diaSemana NUMBER(10), ds_hora_inicial VARCHAR2(255), ds_hora_final VARCHAR2(255) );

CREATE TABLE tbl_tipoPagamento( nr_tipoPagamento NUMBER(10), ds_tipoPagamento VARCHAR2(255) );

CREATE TABLE tbl_Pagamento( nr_pagamento NUMBER(10), dt_pagamento DATE,

vl_valor VARCHAR2(255), nr_tipoPagamento NUMBER(10) );

--- CRIANDO CHAVE PRIMARIAS

(21)

ADD CONSTRAINTS pessoaFisica_PK PRIMARY KEY (nr_cliente);

ALTER TABLE tbl_pessoaJuridica

ADD CONSTRAINTS pessoaJuridica_PK PRIMARY KEY (nr_cliente);

ALTER TABLE tbl_cliente

ADD CONSTRAINTS nr_cliente_PK PRIMARY KEY (nr_cliente);

ALTER TABLE tbl_atividade

ADD CONSTRAINTS nr_atividade_PK PRIMARY KEY (nr_atividade);

ALTER TABLE tbl_itemLocacao

ADD CONSTRAINTS nr_itemLocacao_PK PRIMARY KEY (nr_itemLocacao);

ALTER TABLE tbl_promocao

ADD CONSTRAINTS nr_promocao_PK PRIMARY KEY (nr_promocao);

ALTER TABLE tbl_locacao

ADD CONSTRAINTS nr_locacao_PK PRIMARY KEY (nr_locacao);

(22)

ALTER TABLE tbl_campo

ADD CONSTRAINTS nr_campo_PK PRIMARY KEY (nr_campo);

ALTER TABLE tbl_horario

ADD CONSTRAINTS nr_horario_PK PRIMARY KEY (nr_horario);

ALTER TABLE tbl_tipoPagamento

ADD CONSTRAINTS nr_tipoPagamento_PK PRIMARY KEY (nr_tipoPagamento);

ALTER TABLE tbl_Pagamento

ADD CONSTRAINTS nr_pagamento_PK PRIMARY KEY (nr_pagamento);

--- FIM DA ALTERAÇÕES NAS TABELAS

--- INSERINDO DADOS NA TABLE CLIENTE ---

---INSERT INTO tbl_cliente VALUES (1, 'VALENTINA FERCONDINES', 'Pessoa Fisica', 06900000, 'Rua a onde o vento faz a curva', 69, 'Raio que o parta', 'Fejoar', NULL, '(11)4663-5263',

'(11)4665-8596', '(11)99696-5682', SYSDATE, NULL);

(23)

'Pessoa Fisica', 06785926, 'Rua Ferlipes Pinto de Moraes', 7070, 'Vamos a pescar', 'Perolopeles', NULL, '(15)5268-9568', '(15)5286-8596', '(15)95962-2548', SYSDATE, NULL);

INSERT INTO tbl_cliente VALUES (3, 'PEDRO RONALDO FERNANDES', 'Pessoa Fisica', 05268956, 'Avenida do Fundo de Quintal', 859, 'Vamos a beira do Mar', 'Santiago', NULL, '(21)2356-5859', '(21)5268-5869', '(21)96895-8596', SYSDATE, NULL);

INSERT INTO tbl_cliente VALUES (4, 'JOAO VISCONDE DE SABUL', 'Pessoa Fisica', 08526963, 'Estrada Alburqueque', 123569, 'Fernando de Noronha', 'Rasquinho', NULL, '(41)5296-6958', '(41)5294-5862', '(41)99458-5236', SYSDATE, NULL);

INSERT INTO tbl_cliente VALUES (5, 'FERREIRA MELO DE MORAS', 'Pessoa Fisica', 06952859, 'Rua Brasilio Machado', 50,

'Jardim Jacira', 'Itapecerica da Serra', NULL, '(11)4669-8223', '(11)4669-1526', '(11)98696-1682', SYSDATE, NULL);

INSERT INTO tbl_cliente VALUES (6, 'CELSO CONSALVES DA SILVA', 'Pessoa Fisica', 06869150, 'Rua Machado de Assis', 169,

'Jardim do Carmo', 'São Paulo', NULL, '(11)5263-9162', '(11)5263-8596', '(11)97296-1682', SYSDATE, NULL);

INSERT INTO tbl_cliente VALUES (7, 'MARIA FERREIRA DA CONSEICAO', 'Pessoa Fisica', 06900000, 'Avenida São Paulo', 1065,

(24)

'(11)4665-8596', '(11)99696-5682', SYSDATE, NULL);

INSERT INTO tbl_cliente VALUES (8, 'JOSE PEDRO DA SILVA', 'Pessoa Fisica', 06900000, 'Avenida do Moinho', 290, 'Cipo do Meio', 'Embu Guaçu', NULL, '(11)4663-5094', '(11)4663-1830', '(11)95268-9563', SYSDATE, NULL);

INSERT INTO tbl_cliente VALUES (9, 'MARCIA PACHECO DA SOUZA', 'Pessoa Fisica', 06900000, 'Praça da Cobra', 269,

'Campestre', 'Embu Guaçu', NULL, '(11)4663-5263', '(11)4665-8596', '(11)99696-5682', SYSDATE, NULL);

INSERT INTO tbl_cliente VALUES (10, 'TEREZINHA DE JESUS DE SÁ', 'Pessoa Fisica', 01256325, 'Avenida Paulista', 1269,

'Paulista', 'São Paulo', NULL, '(11)3223-5263',

'(11)3225-8596', '(11)96696-5682', SYSDATE, NULL);

INSERT INTO tbl_cliente VALUES (11, 'GLOBO',

'Pessoa Juridica', 01900000, 'Avenida Paulista', 3269, 'Paulista', 'São Paulo', NULL, '(11)4005-5252',

'(11)4005-4343', '(11)96696-5682', SYSDATE, NULL);

INSERT INTO tbl_cliente VALUES (12, 'SBT',

'Pessoa Juridica', 01900000, 'Avenida Paulista', 6152, 'Paulista', 'São Paulo', NULL, '(11)4006-5252',

(25)

FIM DA INSERÇÃO DE DADOS NA TABELA DO CLIENTE

- SELECIONANDO DADOS DA TABELA tbl_cliente

SELECT * FROM tbl_cliente;

--- FIM DA SELECAO DA TABELA tbl_cliente

--- ALTERANDO A TABELA tbl_pessoaFisica ---

---ALTER TABLE tbl_pessoaFisica ADD CONSTRAINTS pessoaFisica_FK FOREIGN KEY (nr_cliente)

REFERENCES tbl_cliente(nr_cliente);

--- FIM DA ALTERAÇÃO NA TABELA tbl_pessoaFisica

--- INSERINDO DADOS NA TABELA ---

tbl_pessoaFisica---INSERT INTO tbl_pessoaFisica VALUES (1, 526389568, 85968542978); INSERT INTO tbl_pessoaFisica VALUES (2, 256548556, 25364587945); INSERT INTO tbl_pessoaFisica VALUES (3, 254145488, 12010545782); INSERT INTO tbl_pessoaFisica VALUES (4, 758224865, 15454812558); INSERT INTO tbl_pessoaFisica VALUES (5, 524588775, 10524574859); INSERT INTO tbl_pessoaFisica VALUES (6, 325785691, 30211548925); INSERT INTO tbl_pessoaFisica VALUES (7, 784512869, 40585221536);

(26)

INSERT INTO tbl_pessoaFisica VALUES (8, 956855232, 40120458786); INSERT INTO tbl_pessoaFisica VALUES (9, 855952648, 70550487825); INSERT INTO tbl_pessoaFisica VALUES (10, 211548856, 905878784215);

--- FIM DA TABELA PESSOA JURIDICA

---- SELECIONANDO DADOS DA TABLE tbl_pessoaFisica

SELECT * FROM tbl_pessoaFisica;

FIM DA SELECAO DE DADOS DA TABELA tbl_pessoaFisica

--- ALTERANDO A TABELA --

tbl_pessoaJuridica---ALTER TABLE tbl_pessoaJuridica ADD CONSTRAINTS pessoaJuridica_FK FOREIGN KEY (nr_cliente)

REFERENCES tbl_cliente(nr_cliente);

--- FIM DA ALTERAÇÃO NA TABELA

tbl_pessoaJuridica--- INSERINDO DADOS NA TABELA PESSOA JURIDICA tbl_pessoaJuridica---

---INSERT INTO tbl_pessoaJuridica VALUES (11, 9522365455, 'Globo'); INSERT INTO tbl_pessoaJuridica VALUES (12, 1252452365, 'SBT');

(27)

--- SELEÇÃO DE DADOS NA TABELA tbl_pessoaJuridica

SELECT * FROM tbl_pessoaJuridica;

-- FIM DA SELEÇÃO DE DADOS NA TABELA tbl_pessoaJuridica

--- INSERÇÃO DE DADOS NA TABELA tbl_atividade

---INSERT INTO tbl_atividade VALUES (1, 'JOGOS DE FINAIS DE SEMANA'); INSERT INTO tbl_atividade VALUES (2, 'CAMPEONATO DE FUTSAL JUNIOR');

INSERT INTO tbl_atividade VALUES (3, 'CAMPEONATO DE FUTSAL CATEGORIA MEDIO'); INSERT INTO tbl_atividade VALUES (4, 'CAMPEONATO DE FUTSAL CATEGORIA VETERANO'); INSERT INTO tbl_atividade VALUES (5, 'ESCOLINHA DE FUTSAL');

--- FIM DA INSEÇÃO DE DADOS NA TABELA tbl_atividade

---- SELEÇÃO DE DADOS NA TABELA tbl_atividade ---

SELECT * FROM tbl_atividade;

--- FIM DA SELEÇÃO DE DADOS NA TABELA tbl_atividade

--- INSERINDO DADOS NA TABELA tbl_horario ---

---INSERT INTO tbl_horario VALUES (1, 2, 0800, 1500); INSERT INTO tbl_horario VALUES (2, 3, 1000, 1700);

(28)

INSERT INTO tbl_horario VALUES (3, 4, 1700, 2300); INSERT INTO tbl_horario VALUES (4, 5, 0800, 2359);

--- FIM DA INSERÇÃO NA TABELA tbl_horario

--- SELEÇÃO NA TABELA tbl_horario ---

SELECT * FROM tbl_horario;

--- FIM DA SELEÇÃO NA TABELA tbl_horario

--- ALTERANDO A TABELA tbl_promocao ---

---ALTER TABLE tbl_promocao

ADD CONSTRAINTS nr_horario_FK FOREIGN KEY (nr_horario)

REFERENCES tbl_horario(nr_horario);

--- FIM DA ALTERAÇÃO NA TABELA tbl_promocao

--- INSERINDO DADOS NA TABELA tbl_promocao ---

---INSERT INTO tbl_promocao VALUES (1, 2, 1, 1500, 'American Express'); INSERT INTO tbl_promocao VALUES (2, 3, 2, 1500, 'MasterCard'); INSERT INTO tbl_promocao VALUES (3, 4, 3, 1500, 'Diners'); INSERT INTO tbl_promocao VALUES (4, 5, 4, 1500, 'Visa');

(29)

INSERT INTO tbl_promocao VALUES (6, 7, 4, 1500, 'Não temos promoção'); INSERT INTO tbl_promocao VALUES (7, 1, 4, 1500, 'Não temos promoção');

---- FIM DA INSEÇÃO DE DADOS NA TABELA tbl_promocao

--- SELEÇÃO DA TABELA tbl_promocao ---

SELECT * FROM tbl_promocao;

--- FIM DA SELEÇÃO DA tbl_promocao

-- INSERINDO DADOS NA TABELA tbl_tipoPagamento

---INSERT INTO tbl_tipoPagamento VALUES (1, 'Cartão de Credito'); INSERT INTO tbl_tipoPagamento VALUES (2, 'Cartão de Debito'); INSERT INTO tbl_tipoPagamento VALUES (3, 'Cheque');

INSERT INTO tbl_tipoPagamento VALUES (4, 'Dinheiro');

--- FIM DA INSEÇÃO DE DADOS NA TABELA tbl_tipoPagamento

--- SELECAO DE DADOS DA TABELA tbl_tipoPagamento

SELECT * FROM tbl_tipoPagamento;

(30)

--- ALTERANDO A TABELA tbl_campo ---

---ALTER TABLE tbl_campo

ADD CONSTRAINTS nr_promocao_FK FOREIGN KEY (nr_promocao)

REFERENCES tbl_promocao(nr_promocao);

--- FIM DA ALTERAÇÃO NA TABELA tbl_campo

--- INSEREINDO DADOS NA TABELA tbl_campo ---

---INSERT INTO tbl_campo VALUES (1, 'VILA SÃO JOSE', 150, 1); INSERT INTO tbl_campo VALUES (2, 'PIRAPORINHA', 299, null); INSERT INTO tbl_campo VALUES (3, 'SANTO AMARO', 99, 3); INSERT INTO tbl_campo VALUES (4, 'SANTA RITA', 139, 2);

INSERT INTO tbl_campo VALUES (5, 'FERNANDO DE NORONHA', 119, null);

-- FIM DA INSERÇÃO DE DADOS NA TABELA tbl_campo

--- SELECIONANDO DADOS NA TABELA tbl_campo ---

SELECT * FROM tbl_campo;

--- FIM DA SELEÇÃO DE DADOS NA TABELA tbl_campo

(31)

---ALTER TABLE tbl_Pagamento

ADD CONSTRAINTS nr_tipoPagamento_FK FOREIGN KEY (nr_tipoPagamento)

REFERENCES tbl_tipoPagamento(nr_tipoPagamento);

--- FIM DA ALTERAÇÃO NA TABELA tbl_Pagamento

--- INSERINDO DADOS NA TABELA tbl_Pagamento

---INSERT INTO tbl_Pagamento VALUES (1, SYSDATE, 150, 1); INSERT INTO tbl_Pagamento VALUES (2, SYSDATE, 129, 4); INSERT INTO tbl_Pagamento VALUES (3, SYSDATE, 299, 3);

---- FIM DA INSERÇÃO DE DADOS NA TABELA tbl_Pagamento

--- SELECIONANDO DADOS NA TABELA tbl_Pagamento

SELECT * FROM tbl_Pagamento;

--- FIM DA SELEÇÃO DE DADOS NA TABELA tbl_Pagamento

--- ALTERANDO A TABELA tbl_itemLocacao ---

---ALTER TABLE tbl_itemLocacao ADD CONSTRAINTS nr_cliente_FK FOREIGN KEY (nr_cliente)

(32)

REFERENCES tbl_cliente(nr_cliente);

ALTER TABLE tbl_itemLocacao ADD CONSTRAINTS nr_campo_FK FOREIGN KEY (nr_campo)

REFERENCES tbl_campo(nr_campo);

ALTER TABLE tbl_itemLocacao

ADD CONSTRAINTS nr_horarioLocacao_FK FOREIGN KEY (nr_horario)

REFERENCES tbl_horario(nr_horario);

ALTER TABLE tbl_itemLocacao ADD CONSTRAINTS nr_atividade_FK FOREIGN KEY (nr_atividade)

REFERENCES tbl_atividade(nr_atividade);

ALTER TABLE tbl_itemLocacao

ADD CONSTRAINTS nr_tipoPagamentoLocacao_FK FOREIGN KEY (nr_tipoPagamento)

REFERENCES tbl_tipoPagamento(nr_tipoPagamento);

--- FIM DA ALTERAÇÃO NA TABELA tbl_itemLocacao

--- INSERINDO DADOS NA TABELA tbl_itemLocacao ---

---INSERT INTO tbl_itemLocacao VALUES (1, 1, 3, 2, 1, 1, SYSDATE, TO_DATE('05/02/2010 09:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

(33)

INSERT INTO tbl_itemLocacao VALUES (2, 2, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 03:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (3, 2, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (4, 3, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (5, 4, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (6, 5, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (7, 5, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (8, 5, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (9, 5, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (10, 6, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (11, 7, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (12, 8, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (13, 9, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (14, 10, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (15, 10, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (16, 10, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (17, 2, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (18, 3, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

(34)

INSERT INTO tbl_itemLocacao VALUES (19, 5, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (20, 7, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (21, 2, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (22, 1, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (23, 1, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (24, 1, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (25, 10, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

INSERT INTO tbl_itemLocacao VALUES (26, 1, 3, 2, 1, 1, SYSDATE, TO_DATE('08/10/2013 23:45:00','DD/MM/YYYY HH24/MI/SS'), 12999);

--- FIM DA INSEÇÃO DE DADOS NA TABELA tbl_itemLocacao

--- SELECIONANDO DADOS NA TABELA tbl_itemLocacao ---

SELECT * FROM tbl_itemLocacao;

--- FIM DA SELEÇÃO NA TABELA tbl_itemLocacao

--- ALTERANDO A TABELA tbl_locacao ---

---ALTER TABLE tbl_locacao

ADD CONSTRAINTS nr_itemLocacao_FK FOREIGN KEY (nr_itemLocacao)

(35)

REFERENCES tbl_itemLocacao(nr_itemLocacao);

ALTER TABLE tbl_locacao

ADD CONSTRAINTS nr_promocaoLocacao_FK FOREIGN KEY (nr_promocao)

REFERENCES tbl_promocao(nr_promocao);

ALTER TABLE tbl_locacao

ADD CONSTRAINTS nr_pagamento_FK FOREIGN KEY (nr_pagamento)

REFERENCES tbl_Pagamento(nr_pagamento);

--- FIM DA ALTERAÇÃO NA TABELA tbl_locacao

--- INSERINDO DADOS NA TABELA tbl_locacao --

---INSERT INTO tbl_locacao VALUES (1, 1, 1, 1); INSERT INTO tbl_locacao VALUES (2, 2, 2, 2); INSERT INTO tbl_locacao VALUES (3, 1, 3, 2); INSERT INTO tbl_locacao VALUES (4, 2, 4, 3); INSERT INTO tbl_locacao VALUES (5, 2, 1, 2); INSERT INTO tbl_locacao VALUES (6, 4, 2, 3);

--- FIM DA INSERÇÃO DE DADOS NA TABELA tbl_locacao

(36)

SELECT * FROM tbl_locacao;

--- FIM DA SELEÇÃO DE DADOS NA TABELA tbl_locacao

--- INICIANDO O SERVICO PUT PARA EXIBIR NOSSOS RESULTADOS

SET SERVEROUTPUT ON;

(37)

---9. Script de Estrutura de Decisão

--- INICIANDO ESTRUTURA DE DECISÃO

---DECLARE ---TABELA tbl_promocao V_ds_cartaocredito tbl_promocao.ds_cartaocredito%TYPE; V_vl_valor_promocao tbl_promocao.vl_valorPromocao%TYPE; V_nr_diaSemana tbl_promocao.nr_diaSemana%TYPE; V_nr_promocao tbl_promocao.nr_promocao%TYPE; --- TABELA tbl_itemLocacao V_vl_valor tbl_itemLocacao.vl_valor%TYPE; --- NOVAS VARIAVEIS V_vl_valor_total NUMBER; BEGIN

(38)

SELECT ds_cartaocredito,/*vl_valor,vl_valorPromocao,*/ nr_diaSemana

INTO v_ds_cartaocredito, /*v_vl_valor, v_vl_valor_promocao,*/ V_nr_diaSemana FROM tbl_promocao P

/*JOIN tbl_Locacao L ON P.NR_PROMOCAO = L.NR_PROMOCAO */

/*JOIN tbl_itemLocacao i ON I.NR_ITEMLOCACAO = L.NR_ITEMLOCACAO*/ WHERE nr_diaSemana=TO_CHAR(SYSDATE, 'D');

Dbms_output.put_line('Hoje a promocao e com cartao de credito ' || V_ds_cartaocredito); Dbms_output.put_line('=====================================');

Dbms_output.put_line('=====================================');

IF (V_nr_diaSemana=5) THEN

SELECT ds_cartaocredito,vl_valor,vl_valorPromocao, nr_diaSemana

INTO v_ds_cartaocredito, v_vl_valor, v_vl_valor_promocao, V_nr_diaSemana FROM tbl_promocao P

JOIN tbl_Locacao L ON P.NR_PROMOCAO = L.NR_PROMOCAO

JOIN tbl_itemLocacao i ON I.NR_ITEMLOCACAO = L.NR_ITEMLOCACAO WHERE nr_diaSemana=TO_CHAR(SYSDATE, 'D');

(39)

Dbms_output.put_line('O Valor da quadra é: ' || v_vl_valor);

Dbms_output.put_line('====================================='); v_vl_valor_total := v_vl_valor - v_vl_valor_promocao;

Dbms_output.put_line

('O Valor da quadra pagando com cartao de credito ' || V_ds_cartaocredito || ' é: ' || v_vl_valor_total); Dbms_output.put_line('====================================='); ELSIF (V_nr_diaSemana=2)THEN SELECT vl_valor INTO v_vl_valor FROM tbl_itemLocacao WHERE nr_itemLocacao=1;

Dbms_output.put_line('Nao temos promocoes para hoje ! ');

Dbms_output.put_line('====================================='); Dbms_output.put_line('Valor da Quadra: ' || V_vl_valor);

Dbms_output.put_line('=====================================');

(40)

SELECT vl_valor INTO v_vl_valor

FROM tbl_itemLocacao WHERE nr_itemLocacao=1;

Dbms_output.put_line('Nao temos promocoes para hoje ! ');

Dbms_output.put_line('====================================='); Dbms_output.put_line('Valor da Quadra: ' || V_vl_valor);

Dbms_output.put_line('====================================='); ELSIF (V_nr_diaSemana=6)THEN SELECT vl_valor INTO v_vl_valor FROM tbl_itemLocacao WHERE nr_itemLocacao=1;

Dbms_output.put_line('Nao temos promocoes para hoje ! ');

Dbms_output.put_line('====================================='); Dbms_output.put_line('Valor da Quadra: ' || V_vl_valor);

Dbms_output.put_line('=====================================');

(41)

SELECT vl_valor INTO v_vl_valor

FROM tbl_itemLocacao WHERE nr_itemLocacao=1;

Dbms_output.put_line('Nao temos promocoes para hoje ! ');

Dbms_output.put_line('====================================='); Dbms_output.put_line('Valor da Quadra: ' || V_vl_valor);

Dbms_output.put_line('====================================='); ELSIF (V_nr_diaSemana=1)THEN SELECT vl_valor INTO v_vl_valor FROM tbl_itemLocacao WHERE nr_itemLocacao=1;

Dbms_output.put_line('Nao temos promocoes para hoje ! ');

Dbms_output.put_line('====================================='); Dbms_output.put_line('Valor da Quadra: ' || V_vl_valor);

Dbms_output.put_line('=====================================');

(42)

SELECT vl_valor INTO v_vl_valor

FROM tbl_itemLocacao WHERE nr_itemLocacao=1;

Dbms_output.put_line('Voce nao possue desconto !');

Dbms_output.put_line('====================================='); Dbms_output.put_line('Valor da Quadra: ' || V_vl_valor);

Dbms_output.put_line('=====================================');

END IF;

END;

(43)

---10.Script Contendo a Estrutura de repetição

--- INICIO --- HORA DO LOOP - DECLARE CODIGO tbl_itemLocacao.nr_itemLocacao%TYPE:=1; V_VL_VALOR tbl_itemLocacao.vl_valor%TYPE; BEGIN FOR CONTADOR IN 1..12 LOOP --- SELECT INTO SELECT vl_valor INTO V_VL_VALOR FROM tbl_itemLocacao

(44)

--- FIM DO SELECT INTO

--- ALTERAÇÃO DO VALOR ---

V_VL_VALOR := 19999;

--- FIM DA ALTERAÇÃO DO VALOR

--- REALIZANDO ALTERAÇÃO ---

UPDATE tbl_itemLocacao SET vl_valor = V_VL_VALOR

WHERE nr_itemLocacao = CONTADOR;

--- FIM DA ALTERAÇÃO

END LOOP; END;

--- FIM DO LOOP

(45)

---11.Script contendo a Estrutura do Cursor

--- INICIO DO CURSOR

---DECLARE

--- GUARDANDO INFORMAÇÕES DAS QUADRAS

---V_NR_CAMPO tbl_campo.nr_campo%TYPE; V_DS_CAMPO tbl_campo.ds_campo%TYPE; V_VL_VALOR tbl_campo.vl_valor%TYPE; V_NR_PROMOCAO tbl_campo.nr_promocao%TYPE; V_NR_CAMPO_ITEM tbl_itemLocacao.nr_campo%TYPE; V_VL_VALOR_ITEM tbl_itemLocacao.vl_valor%TYPE;

--- PARAMETRO PARA COLOCAR O REAL EM FORMATO 0.0

PARAM_PROMOCAO tbl_promocao.nr_promocao%TYPE:=3; PARAM_AJUSTE NUMBER(5,2):=0.2;

-- CURSOR CURSOR c_produto is

SELECT c.nr_campo, c.ds_campo, c.vl_valor,c.nr_promocao,i.nr_campo,i.vl_valor FROM tbl_campo c,tbl_itemLocacao i

(46)

WHERE c.nr_campo = i.nr_campo;

BEGIN

open c_produto;

Dbms_Output.put_line('Parametros da Procedure:'); Dbms_Output.put_line('Marca: '|| V_DS_CAMPO);

Dbms_Output.put_line('% de Ajuste de Precoda: '||PARAM_AJUSTE); Dbms_Output.put_line('---'); LOOP

fetch c_produto into V_NR_CAMPO, V_DS_CAMPO, V_VL_VALOR, V_NR_PROMOCAO, V_NR_CAMPO_ITEM, V_VL_VALOR_ITEM;

IF(V_NR_PROMOCAO=PARAM_PROMOCAO) THEN

Dbms_Output.put_line('Produto antes da alteracao de preco'); Dbms_Output.put_line('Codigo do campo: ' || V_NR_CAMPO); Dbms_Output.put_line('Nome do campo: '||V_DS_CAMPO); Dbms_Output.put_line('Valor do campo: '||V_VL_VALOR);

Dbms_Output.put_line('Numero da Promocao: '||V_NR_PROMOCAO);

V_VL_VALOR:=V_VL_VALOR+(V_VL_VALOR*param_ajuste);

UPDATE tbl_campo SET vl_valor=V_VL_VALOR WHERE nr_campo = PARAM_PROMOCAO; COMMIT;

Dbms_Output.put_line('---'); Dbms_Output.put_line('Produto apos a alteracao de preco'); Dbms_Output.put_line('Preco Unitario do campo: '||V_VL_VALOR); END IF;

exit when c_produto%NOTFOUND; end loop;

(47)

CURSOR

---END;

(48)

Referências

Documentos relacionados

Já está muito tarde e desse jeito não vou conseguir ficar acordado na estrada — Miguel falou, enquanto conferia o relógio mais uma vez.. — Você

Não pode ser copiado, escaneado, ou duplicado, no todo ou em parte, exceto para uso como permitido em uma licença distribuída com um certo produto ou serviço ou de outra forma em

Equipamentos de emergência imediatamente acessíveis, com instruções de utilização. Assegurar-se que os lava- olhos e os chuveiros de segurança estejam próximos ao local de

Com o objetivo de compreender como se efetivou a participação das educadoras - Maria Zuíla e Silva Moraes; Minerva Diaz de Sá Barreto - na criação dos diversos

Toxicidade para órgãos-alvo específicos – exposição repetida: Não é esperado que o produto apresente toxicidade a órgão-alvo específico por exposição

Disse que os danos materiais requeridos pelo autor, qual seja, a restituição da integralidade do valor pago pela passagem não merece prosperar pois o trecho não cumprido foi

 Para os agentes físicos: ruído, calor, radiações ionizantes, condições hiperbáricas, não ionizantes, vibração, frio, e umidade, sendo os mesmos avaliados

Os contemplados autorizam, desde já, como consequência da participação, a título gratuito e de forma definitiva e irrevogável, os direitos de uso de suas imagens e som de suas