Buscar

Portifolio Individual 5º Semestre - UNOPAR - Casa das Marmitas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 52 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 52 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 52 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

�PAGE �
É imprescindível que antes de elaborar seu trabalho, seja verificada as orientações que constam em seu ambiente virtual, em vista que em alguns semestres são feitas algumas alterações, de forma que previna que seja feito uma trabalho incoerente com o que realmente deve ser feito. Para tanto, leia as orientações acima, na qual este trabalho foi elabora e compare com a do seu ambiente virtual. 
O presente trabalho esta disponível de forma gratuita para fins de referencia, não sendo recomendado a reutilização integral do mesmo para apresentação, em vista que o tutor que pode considerar plagio.
Os arquivos referentes ao conteúdo apresentado neste trabalho podem ser baixados também de forma gratuita no meu repositório do github no link https://github.com/tonhus/Casa-das-Marmitas, podendo ser modificado da forma que melhor lhe convier.
DEMO DO SISTEMA: https://casadasmarmitas.herokuapp.com/index.php
SUMÁRIO
31	INTRODUÇÃO	�
42	OBJETIVO	�
53	DESENVOLVIMENTO	�
53.1	LINGUAGENS E TECNOLOGIAS UTILIZADAS NA IMPLEMENTAÇÃO	�
53.2	EQUIPAMENTO NECESSARIOS PARA IMPLANTAÇÃO DO SISTEMA	�
63.3	ESTRUTURA DO PROJETO	�
73.4	APRESETAÇÃO VISUAL DO SISTEMA EM DESKTOP	�
93.4.1	Layout do sistema	�
113.5	APRESETAÇÃO VISUAL DO SISTEMA EM DISPOSITIVOS MOBILE	�
133.6	Código fonte e integração com o slim framework	�
133.6.1	Implementação de rotas amigáveis com o Slim Framework	�
163.6.2	Classes auxiliares	�
183.6.3	Códigos das seções do sistema	�
203.6.4	Controle de Pedidos	�
223.6.4.1	Autocompletar de Clientes da seção Pedidos	�
233.6.4.2	Lista de pedidos com Ajax	�
253.6.5	Controle de Entregadores	�
273.6.5.1	Relatório de entregas	�
303.6.6	Controle de Clientes	�
313.6.7	Controle de Empresas	�
333.6.8	Controle de Produtos	�
343.7	Modelagem de banco de dados	�
343.7.1	Modelo Lógico	�
353.7.2	Script SQL das tabelas do banco de dados	�
373.8	MANUAL DO USUÁRIO	�
373.8.1	TELA PRINCIPAL DO SISTEMA	�
373.8.2	HOME	�
383.8.3	CLIENTES	�
393.8.4	PEDIDOS	�
413.8.5	PRODUTOS	�
423.8.6	EMPRESAS	�
433.8.7	ENTREGADORES	�
443.8.7.1	Relatórios	�
463.8.8	Requisitos do Sistema	�
474	CONCLUSÃO	�
48REFERÊNCIAS	�
��
INTRODUÇÃO
Este trabalho abrange assuntos e temas estudados no decorrer do curso de ADS até do 5º semestre. Para o desenvolvimento deste projeto, os principais conhecimentos necessários derivam de grande parte das disciplinas estudadas anteriormente e também do aprofundamento das mesmas através de cursos extras, livros, e artigos relacionados principalmente ao que diz respeito ao desenvolvimento web com PHP e outras linguagens e tecnologias que podem ser agregadas ao PHP, como o HTML, CSS, JavaScrip, Slim Framework, jQuery e demais recursos que proporcionem o planejamento e a implementação de um sistema elaborado a partir das informações observados no caso da “CASA DAS MARMITAS”, através dos requisitos levantados pela empresa fictícia Software House&MM.
objetivo
Objetivando mostrar em um projeto pratico com base no cenário proposto pelos requisitos apresentados pela Software House&MM para atender as necessidades requeridas pela CASA DAS MARMITAS.
Os controles requeridos serão desenvolvidos essencialmente em PHP juntamente com as tecnologias mencionadas na introdução e que serão apresentadas de forma pratica no decorrer do trabalho. Levando em consideração os critérios básicos de elaboração de interfaces e com o objetivo de desenvolver um projeto com um bom nível de usabilidade, usando recursos do framework Bootstrap, outro objetivo é desenvolver uma interface não apenas agradável, mas também padronizada, intuitiva e funcional.
Para melhor aprofundamento nos conceitos aprendidos sobre programação, esses conhecimentos adquiridos proporcionarão projetar não apenas um sistema funcional, mas com bom nível de manutenibilidade. E ainda, será aplicado técnicas para otimização da estrutura do bando de dados, e par tal, será identificado quais as entidades e relacionamentos presentes no caso proposto, buscando elaborar um modelo de banco de dados que atenda de forma eficiente aos requisitos observados.
Por ultimo, criar um manual do usuário descrevendo a correta utilização dos recursos do sistema.
DESENVOLVIMENTO
LINGUAGENS E TECNOLOGIAS UTILIZADAS NA IMPLEMENTAÇÃO
Para a implementação do sistema, visando a sua compatibilidade multiplataforma no que se refere tanto ao contexto de sistemas operacionais como de dispositivos para visualização, em seu total e correto funcionamento, foram utilizadas as seguintes tecnologias:
	LINGUAGEM BACK-END
	PHP 7.1.4
	LINGUAGENS FRON-END
	HTML 5, CSS, JavaScript
	FRAMEWORKS
	Slim FrameWork 3.8.1, BootsTrap 3.3, FontAwesome
	BANCO DE DADOS
	MySQL
	GERENCIADOR DE BANCO DE DADOS
	MySQL Workbench 6.3 e PhpMyAdmin 4.7
	BIBLIOTECAS
	jQuery, jQuery UI
	IDE DE DESENVOLVIMENTO
	PhpStorm 2017.2 com licença estudantil
	SERVIDOR WEB
	XAMPP
EQUIPAMENTO NECESSARIOS PARA IMPLANTAÇÃO DO SISTEMA
	QUANTIDADES
	DESCRIÇÃO
	VALOR
	1
	Plano de Hospedagem anual Kinghost
	R$ 312,00
	1
	Roteador Gigabit Wireless N Ultimate Tp-link Tl-wr 1043 Nd
	R$ 219,00
	1
	Servidor Storage Cloud D-link Dns-320l Sharecenter
	R$ 589,00
	1
	IMPRESSORA HP LASERJET PRO M102W
	R$ 503,10
	1
	PC com Monitor LED 19.5 EasyPC Intel Core i3 4GB HD 1TB
	R$ 1.439,00
	VÁRIOS
	Cabos e conectores e material extra
	R$ 600,00
	 TOTAL ESTIMADO DOS CUSTOS
	R$ 3.662,10
ESTRUTURA DO PROJETO
Figura 1 – ÁRVORE DE ARQUIVOS E DIRETORIOS
APRESETAÇÃO VISUAL DO SISTEMA EM DESKTOP
Figura 2 – Tela inicial
Figura 3 – Tela inicial com amostra do submenu de cada modulo
Figura 4 – Tela de cadastro de clientes
Figura 5 – Tela de listagem de clientes
Figura 6 – Tela de cadastro de pedidos
Layout do sistema
Visando uma implementação que torne a utilização do sistema por parte do usuário mais intuitiva e agradável, o mesmo segue um padrão tanto de layout como de navegação, sendo, quase todas as seções divididas em duas subseções, uma referente a cadastro e outra a listagem de cada entidade do sistema, com exceção da subseção de “Entregadores”, a qual, alem da duas subseções padrão, tem a subseção de “Relatórios de entrega” (Figura 8), que será descrita em detalhes no tópico 3.6.4, onde será apresentado o código fonte e seu funcionamento.
Basicamente, a navegação das seções também seguem um fluxo padrão. A subseção de cadastro é destinada especificamente a este fim (Figura 4), e a subseção de listagem (Figura 5), apresenta uma pagina com campo de busca para filtragem dos dados referente a entidade e em cada dado apresentado na tabela, tem um botão de detalhes, onde este, direciona o usuário a uma pagina com os detalhes de um registro especifico(Figura 6), na qual é visualizar, editar ou deletar o registro selecionado. Cada ação, em cada seção, é antecedida de um modal de confirmação (Figura 7), melhorando a prevenção de inserção de dados inconsistentes ou exclusões indevidas.
Os relatórios podem ser feitos de duas formas, individual, clicando no botão “relatório” na listagem de entregadores, onde o usuário será direcionado a um gerados de relatório individual do entregar selecionado, dando opções de filtros por data especifica ou intervalo de datas, ou pode optar pela subseção “Relatório de entregas”, onde pode ser gerado um relatório geral, com opções de data especifica ou intervalo de datas, mostrando apenas os entregadores que realizaram entregas nas datas especificadas nos filtros. Esta listagem, oferece também a opção “detalhes”, onde o usuário é novamente direcionado a pagina de relatório individual.
Figura 7 – Modal de confirmação
Figura 8 – Tela de relatório de entregas
Figura 9 – Relatório para impressão
APRESETAÇÃO VISUAL DO SISTEMA EM DISPOSITIVOS MOBILE
Figura 10 – Telainicial e menu principal
 
Figura 11 – Tela de cadastro de clientes e listagem de clientes
 
Figura 12 – Relatório de entregas geral e individual
 
O Framework Bootstrap, além dos recursos que auxiliam no ganho de produtividade e identidade visual, cumpre sua promessa em proporcionar o desenvolvimento de layouts padronizado e responsivos de grande qualidade e compatibilidade com uma grande variedade de dispositivos moveis.
Código fonte e integração com o slim framework
Implementação de rotas amigáveis com o Slim Framework
O Slim é um micro framework para PHP que permite criar com facilidade aplicações e APIs de pequeno e médio porte de maneira organizada, aplicações seguras e poderosas utilizando conceitos semelhantes a outros frameworks, porém de maneira mais simples, diminuindo assim a complexidade do código. Possibilita ainda criar URLs amigáveis (também chamadas de rotas), dentre outros recursos como o Gerenciamento de requisições HTTP, Gerenciamento de sessões, Cache, Criptografia, entre outras possibilidades.
As rotas nomeadas, proporcionadas pelo Slim Framework, facilitam a criação de links e navegação do sistema, tornando os links das requisições mais simples, evitando a utilização de links extensos e complexos. Todas as rotas são declaradas no arquivo index.php(Figura 10), tornando este, o fluxo inicial da navegação entre as seções e subseções do sistema.
Figura 10 – index.php das rotas
A utilização das rotas proporciona uma padronização do código facilitando as operações de cada seção e sendo necessário pouca modificação, que por sua vez, torna simples a sua implementação e manutenção, facilitando ainda a passagem de parâmetros quando necessários. Na figura 10, estão a codificação das rotas para a seção de clientes, nele é feito um require da classe responsável pelo acesso ao banco de dados, o config_db.php (Figura 11), tornando-a visível a todas as pagina chamadas e classes instanciadas a partir do arquivo de rotas. Como exemplo, tempos a classe Clientes.php(Figura 12), onde em seu construtor é iniciada uma instancia da Classe Sql, que abre a conexão com o banco de dados possibilitando as operações com a entidade em questão e também encapsulando os métodos de inserção, alteração e exclusão na classe, deixando as responsabilidades das mesmas, centralizadas e adequadas as especificidades de cada uma. Destas forma, todas as rotas, de todas as seções, seguem este mesmo padrão, diferenciando se entre si, apenas pelos nomes das suas rotas que são referentes a cada entidade especifica.
No código das rotas(figura 10), é possível ver ainda a estrutura do exemplo de rotas de inserção, atualização e exclusão de dados, na qual todas as outras seguem este padrão, diferenciando-se essencialmente pelo seu nome e os atributos que serão necessários para passar para o banco de dados.
Figura 11 – Classe config_db.php
 
Figura 12 – Classe Cliente.php
Classes auxiliares
Todas as classes vão seguir essencialmente essa mesma estrutura, o que fundamentalmente vai diferenciá-las são os seus atributos. Afim de diminuir a repetição de códigos, alguns métodos que seriam de utilização comum entre varias classes ou mesmo outras partes do sistema, como formatação para apresentação de datas, RG, CPF, CNPJ, CEP, dentre outras coisas que são utilizadas em mais de uma parte do sistema, foram centralizada em uma classe com métodos estáticos chamada Funcoes_auxiliares.php(Figura 13), os métodos foram nomeados de forma que seja fácil identificar suas funcionalidades e responsabilidades.
Figura 13 – Classe Funções_auxiliares.php
Códigos das seções do sistema
Novamente, visando a diminuição da repetição de código, centralização e o reaproveitamento, a pagina principal, assim como todas as outras chamadas a seções do sistema através das rotas, é executado a chamada a um arquivo que faz a requisição do cabeçalho, da barra de navegação, do rodapé e da seção principal da pagina em questão, ficando os três primeiros em arquivos únicos de separados, o que facilita a edição e manutenção dos mesmos, já que estes estarão presentes em todas as seções do sistema, evitando que o código tenha que ser repetido em cada seção, sendo necessário apenas um require dos mesmos, e deixando cada seção com sua responsabilidade especifica. Ainda neste arquivo principal, quando necessários, dependendo da seção chamada, o CSS e JavaScrip daquele seção em especifico são chamados apenas nela, evitando que as seções tenham que carregar códigos desnecessários e que podem impactar em perda de performance.
Figura 14 – Código do create-pedido.php
Figura 15 – Código do header.php
Figura 16 – Código do navbar.php
 
Figura 17 – Código do footer.php
Controle de Pedidos
Nesta seção, algumas particularidades na implementação, por questões didáticas, foram feitas com o JavaScrip somado as possibilidades que o jQuery oferece para a linguagem, os cálculos de troco, subtotal, total, foram feitos utilizando esses recursos, assim como sugestão do nome de clientes que auto completa ao digitar um numero ou nome que já tenha sido previamente cadastrado no banco de dados, os itens adicionados a lista de pedidos e o envio para gravação dos dados no banco, que nesta seção, são feitos através das funções de requisições Ájax presentes na biblioteca do jQuery e jQuery UI.
Figura 18 – Código do create-pedidos.php
Autocompletar de Clientes da seção Pedidos
O script cliente-pedido(figura 19), mostra o código de uma requisição Ájax que faz uma busca no banco de dados e de acordo com um nome ou numero digitado, onde o arquivo busca_cliente.php efetua esta busca no banco e retorna as ocorrências em um formato JSON para o JavaScriptm, que com a utilização da função autocomplete do jQuery UI, envia as sugestões para o campo de busca, tornando fácil a localização do cliente caso o mesmo já esteja cadastrado.
Figura 19 – Código cliente-pedido.js
Figura 20 – Código busca_cliente.php
Lista de pedidos com Ajax
O principio da lista de pedidos é o mesmo, com a diferença de que a cada item que o usuário adiciona a lista, um bloco de código HTML é processado no PHP e retornado para o escopo HMTL com id list-produtos, tornando a lista dinâmica e sem a necessidade de refresh após cada item adicionado ou excluído durante o cadastro.
No script funções-pedido(Figura 21) e o item.php(Figura 22), são feito todos os tratamentos de mascaras, inclusão e exclusão de itens da lista e do pedido, cálculos com base nos dados retornados do PHP através das requisições Ájax.
Figura 21 – Código funções-pedido.js
Figura 22 – item.php
Controle de Entregadores
Na seção Entregadores, também foi utilizada a abordagem das requisições Ájax, já que atualizar apenas uma parte do sistema é mais performático. O recurso é utilizado no cadastro de entregadores, onde, no momento do cadastro de um novo entregador, é necessário verificar se uma determinada empresa já esta cadastrada no sistema, e fazendo uso do mesmo recurso do nome do cliente no cadastro de pedidos, ao digitar o nome da empresa ou o CNPJ, é verificado e retornado o nome da mesma.
Figura 23 – Código create-entregador.php
Figura 24 – Código busca-empresa.js
Figura 25 – Código busca_empresa.php
Relatório de entregas
Figura 26 – Código relatório-geral.php
Figura 27 – Código relatório-individual.php
Figura 28 – Código funções-entregas.js
Controle de Clientes
Nesta seção, assim como nas outras, a chamada ao arquivo que gera a seção requisitada do sistema é feita através da rota e da seção em questão.
Figura 29 – Código novo-cliente.php
Figura 30 – Código create-cliente.php
Controle de Empresas
Nesta seção, algumas particularidades na implementação, por questões didáticas, foram feitas com o JavaScrip somado as possibilidades que o jQuery oferece para a
Figura 31 – Código nova-empresa.php
Figura 31 – Código create-empresa
Controle de ProdutosFigura 32 – Código novo-produto.php
Figura 33 – Código create-produto.php
modelagem de banco de dados
Modelo Lógico
Após a modelagem, para a implementação do banco de dados, o banco escolhido foi o MySQL, e os gerenciadores PhpMyAdmin e MySQL Workbench, ambas com versões gratuitas, podendo atender tranquilamente uma demanda de pequeno a médio porte.
 Figura 34 – Diagrama Lógico
Script SQL das tabelas do banco de dados
Figura 35 – Script Sql parte 1
Figura 36 – Script Sql parte 2
MANUAL DO USUÁRIO
TELA PRINCIPAL DO SISTEMA
Figura 37 – Tela inicial
Ao iniciar o sistema, ao lado esquerdo do usuário fica o menu principal de navegação do sistema, que poderá ser visto e acessado de qualquer outra parte do sistema. O mesmo foi projetado com ênfase em um ambiente claro, intuitivo e objetivo.
Cada uma das seções tem as subseções correspondentes as suas funcionalidades e cada uma delas será descrita nos próximos tópicos deste manual. 
HOME
Esta opção levará o usuário a tela inicial do sistema.
CLIENTES
A seção CLIENTES possui duas subseções, na qual a “Novo cliente” direciona o usuário a tela de cadastro de clientes(Figura X), onde alguns campos como nome, nascimento, telefone, endereço, serão obrigatórios para que seja possível confirmar o cadastro. Após o correto preenchimento, será ainda exibida uma mensagem de confirmação de cadastro(Figura X). Os dados só serão gravados no banco caso seja clicado em “sim”.
Figura 38 – cadastro de clientes
Figura 39 – mensagem de confirmação
A opção “Listar clientes” direciona o usuário para um tabela de listagem(figura X), onde não parte superior tem um campo para pesquisa de clientes já cadastrados. Logo abaixo da busca, a listagem, onde são exibidos alguns dados básicos de cada cliente e em cada linha, na coluna “Ações”, tem o botão de detalhes, o qual leva o usuário a uma tela idêntica a de cadastro, porem, já preenchidos com os dados do cliente selecionado. Nesta tela terá três opções, que são: salvar, cancelar e deletar(figura X).
Figura 40 – Listagem de Clientes
Nos botões de ações, o salvar serve para salvar qualquer dado modificado no cadastro, cancelar, fecha a tela de detalhes e retorna a tela anterior, e o deletar, apaga o registro no banco de dados. As ações de salvar e deletar, são precedidas de uma mensagem de confirmação e as ações só serão realizas caso o usuário confirme a ação.
Figura 41 – botões de ações
PEDIDOS
O cadastro de pedidos, o nome do cliente e o valor pago são obrigatórios, para que seja possível realizar todos os cálculos e depois gravados no sistema.
O campo “Cliente” conta com um recurso de busca dinâmico, que ao digitar um nome ou numero de telefone, o sistema verifica se já existe registro no banco de dados, caso sim, o autocompletar(figura x) ira auxiliar o usuário a localizar o cliente de forma mais rápida.
Figura 42 – Autocompletar do campo cliente
Para adicionar um item a lista de pedidos, o usuário devera clicar em “ADD ITEM”(figura X). A cada item adicionado, o usuário terá ainda que especificar qual o produto e a quantidade deste, pois por padrão, a quantidade é zero. O botão “remover”, retira um item especifico da lista. Os cálculos são feitos automaticamente conforma o usuário adiciona ou retira itens da lista. Após clicar em “Finalizar pedido”, será exibida uma mensagem de confirmação, e os registro só será feito se confirmado.
Figura 43 – Adicionando itens e calculando
A subseção “Listar pedidos”(figura X) direciona o usuário a uma listagem de todos os pedidos registrados no sistema, onde é possível fazer buscas pelo campo de busca na parte superior, verificar alguns dados como nome do cliente, valor, status, e ainda conta com o botão “Detalhes”, onde o usuário será direcionado a todas as informações do pedido selecionado(figura X).
Figura 44 – Listagem de pedidos
Figura 45 – Detalhes de pedido
PRODUTOS
O cadastro de produtos é onde são cadastrado os detalhes de cada produto disponível para venda no sistema. Todos os campos são obrigatórios. Quando clicado em “Salvar”, o sistema mostrara uma mensagem de confirmação, se confirmado, o produto será registrado no sistema e estará apto para a venda.
Figura 46 – Cadastro de produto
Figura 47 – listagem de produtos
A listagem de produtos(figura x), contem um campo de busca para localização dos produtos, uma breve descrição destes e na opção detalhes, o usuário será direcionado aos detalhes do produto cadastro(figura X onde será possível fazer alguma alteração ou até mesmo excluir.
EMPRESAS
O cadastro de empresas(Figura X), os campos deveram ser devidamente preenchidos para que seja possível cadastrar a empresa no sistema. Após o devido preenchimento e clicado em “Salvar”, será exibida uma mensagem de confirmação para que os dados possam ser gravados.
Na listagem, terá o campo busca para localização de uma empresa, a tabela com as empresas cadastras e em cada uma das empresas, a opções detalhes, onde o usuário será direcionado a todos os dados da empresa cadastra, tendo as opções de salvar para as alterações, cancelar para retornar, e excluir.
Figura 48 – detalhes da empresa
ENTREGADORES
Na seção “Entregadores”, temos três opções, a de cadastrar um entregador(Figura X), Listar entregadores(Figura X) e Relatório de entregas.
Figura 49 – cadastro de entregador
No cadastro de entregadores, no campo “Empresa”, quando digitado o nome de uma empresa ou o numero do CNPJ, é exibido o autocomplete com as sugestões dos nomes que mais se aproximam do que esta sendo digitado, caso a empresa já esteja cadastra, será mostrada para que o usuário possa selecioná-la.
Figura 50 – Auto complete do campo empresa
A listagem de entregadores(figura X), apresenta o campo de busca para pesquisar os entregadores e logo abaixo, a tabela com a exibição de alguns dados básicos. Em cada item da lista, na coluna “Ações”, terá a presença de dois botões, um é o “Detalhes”, que direciona o usuário a pagina onde é exibido todos os dados do entregador(Figura X), inclusive as opções de salvar para as alterações, cancelar e o de excluir, e outro botão chamado “Relatório”, o qual irá direcionar o usuário a pagina de relatório individual, a qual será descrita com mais detalhes a seguir.
Figura 51 – Listagem de entregadores
Relatórios
Ao clicar na opção relatório da listagem de entregadores(figura X), o usuário será direcionado a opção de relatório individual, onde será exibido somente os registros de entregas relacionado ao entregador selecionado. Nesta seção, é possível filtrar as entregas realizadas por uma data especifica ou por um intervalo de datas(figura x e x). Para realizar a filtragem dos dados, basta selecionar as datas que deseja e clique em “Listar”, na parte superior da seção. Nesta seção será possível ainda, imprimir o relatório.
Figura 52 – Filtro data especifica
Figura 53 – filtro intervalo de datas
Em cada listagem, será mostrado os números dos pedidos e suas datas de entrega, o total de entregas e o total da comissão referente as entregas.
Figura 54 – Impressão de relatório
A seção “Relatório de entregas”(figura x) exibe um relatório geral de todos os entregadores que concluirão entregas, podendo ser filtrados por uma data especifica ou um intervalo de datas, bastando, para tanto, selecionar a data especifica ou o intervalo de datas e clicar em “Listar”. Nele, o usuário pode ter um panorama geral das entregas realizadas por todos os entregadores, tanto em numero de entregas como o somatório da comissão de todos os entregadores de acordo com as datas especificadas. Nesta seção, ainda é possível acessar o relatório detalhado e individual de cada entregador da lista e também imprimir.
Figura 55 – Relatório geral de entregas
Figura 56 – relatório impresso
Requisitos do Sistema
Sistema Operacional - Windows® 7 / Windows® 8/ Windows® 10 64 bits / Linux Ubuntu ou qualquer distribuição baseada do Debian / Android / IOS
RAM - 2 GB de RAM no mínimo
Espaço em disco - 300 MB de espaço livre no mínimo
Versão do PHP - 7.1.x com Apache 2.x
CONCLUSÃO
A aplicação dos conceitos aprendidos nas diversas disciplinas no decorrer do cursos e os estudos de aprofundamento das mesmas, a cada projeto, a cada novo estudo, fica clara a necessidade de se fazer uma boa documentação antes da implementação de cada um. Ter um bom conhecimento em determinada linguagem ajuda, mas esses conceitos que podem e devem ser fortemente agregados, facilita muito o desenvolvimento e a organização do projeto
No decorrer do projeto, a oportunidade de aprofundar competências nos diversos campos que se ligam, vale destacar os recursos que o PHP, o Bootstrap, jQuery e o Slim Framework. Estas tecnologias proporcionam uma produtividade incrível, padronização, recursos dinâmicos e performáticos, com uma documentação rica, clara e objetiva, que facilitam muito na hora em que é necessário implementar algum recurso. Por serem tecnologias web, garantem uma compatibilidade multiplataforma tanto no que diz respeito a sistemas operacionais quanto a visualização nos mais variados tamanhos de dispositivos. Vale muito a pena o aprofundamento nessas tecnologias, pois são ferramentas que oferecem uma infinidade de possibilidades.
Por fim, a realização das atividades propostas contribuíram para um melhor entendimento das disciplinas abordadas não apenas no semestre, mas por varias que foram vistas no decorrer do curso, dando a oportunidade de aprofundar muitos conceitos aprendidos em outros semestres e agregando ao que esta sendo estudado.
REFERÊNCIAS
Foram utilizados os livros impressos e as web-aulas das disciplinas abordadas
DALL’OGLIO, PABLO. PHP PROGRAMANDO COM ORIENTAÇAO A OBJETOS; ed: 3º, NOVATEC (2015)
Manual do PHP(Documentação oficial)
http://php.net/manual/pt_BR/index.php
Documentação do Slim Framework
https://www.slimframework.com/docs/
Métodos CRUD com PHP e MySql
http://www.devmedia.com.br/crud-com-php-pdo/28873
Principal organização de padronização da World Wide Web, guia de consulta
https://www.w3schools.com
Plataforma de curso com diversos materiais gratuitos
https://www.caelum.com.br/apostila-html-css-javascript/
Comandos Sql em geral
https://pt.khanacademy.org/computing/computer-programming/sql-documentation
Documentação do Bootstrap
https://getbootstrap.com/docs/3.3/
Documentação do jQuery
http://api.jquery.com/
Documentação do jQuery UI
http://api.jqueryui.com/
Sistema de Ensino Presencial Conectado
ANALISE E DESENVOLVIMENTO DE SISTEMAS
NOME DO ALUNO
portifÓlio individual - 5º semestre
Gestão do Processo de Desenvolvimento II
CIDADE-ESTADO
2017
NOME DO ALUNO
portifÓlio individual - 5º semestre
Gestão do Processo de Desenvolvimento II
Atividade Interdisciplinar Individual apresentado à Universidade Norte do Paraná - UNOPAR, como requisito parcial para a obtenção de média bimestral nas disciplinas de Gestão do Conhecimento, Fundamentos de Redes de Computadores, Tópicos Especiais em Desenvolvimento de Sistemas e Seminário VI.
Orientador: Iolanda Profª. Merris Mozer, Prof. Paulo K. Nishitani, Prof. Anderson E. M. Gonçalves e Profª. Cristiane R. Y. Mashuda.
CIDADE-ESTADO
2017

Outros materiais