Implementação E-Commerce

Pequeno projeto de um site de e-commerce para iniciar conhecimento na linguagem PHP. Projeto realizado pela hcodebr pela plataforma udemy 'curso completo de php7'. Curso destinado ao treinamento do time de estágiarios da WebJump!

Site da empresa:

http://www.webjump.com.br/

Pré Requisitos

  • Conhecimentos básicos de HTML e CSS
  • Lógica de Programação
  • Php 7
  • Banco MySQL
  • Virtual host (Nginx ou Apache)

Link de acesso ao curso

https://www.udemy.com/curso-php-7-online/

Linkedin

https://www.linkedin.com/in/isabella-veronezi/

Classes

Este projeto utiliza a forma DAO para organização das classes e seus respectivos métodos. As classes são:

  • Vendor -> Hcodebr -> php-classes -> src -> DB -> Sql.php

A classe SQL é responsável pela comunicação com o banco de dados, e, fazer o bind params de forma dinâmica. A diferença entre os métodos "query" e "select" está no retorno de dados, visto que o método "query" é um método void

  • Vendor -> Hcodebr -> php-classes -> src -> Model.php

Essa é uma classe abstrata, responsável por conter os métodos setData que carrega seus filhos com um array de valores. Também é responsável por fazer os métodos set e get de forma dinâmica.

  • Vendor -> Hcodebr -> php-classes -> src -> Mailer.php

Classe responsável pelo envio de e-mail da rota forgot

  • Vendor -> Hcodebr -> php-classes -> src -> Page.php

Classe responsável por fazer o merge entre o views e views cache atráves da classe pai raintpl

  • Vendor -> Hcodebr -> php-classes -> src -> PageAdmin.php

Mesma função da page, mudando apenas o tipo de template a ser carregado. Extende da classe pai Page.php

  • Vendor -> Hcodebr -> php-classes -> src -> Model -> Address.php

Essa classe é responsável por se comunicar com o webservice "Via CEP", fazer o carregamento do cep informado aplicando o frete com o webservice da Sedex (a comunicação com o webservice da sedex é feita pela classe Cart.php)

  • Vendor -> Hcodebr -> php-classes -> src -> Model -> Category.php

Classe responsável por gerenciar os CRUD da categoria, e, atribuir n produtos a mesma. Possui métodos para paginação.

  • Vendor -> Hcodebr -> php-classes -> src -> Model -> Order.php

Classe responsável por gerenciar o carrinho e pedidos dos usuários cadastrados. Possui métodos para paginação.

  • Vendor -> Hcodebr -> php-classes -> src -> Model -> OrderStatus.php

Possui apenas um método, é uma classe final que serve apenas para gerenciar os status dos pedidos (EM ABERTO, AGUARDANDO PAGAMENTO, PAGO, ENTREGUE)

  • Vendor -> Hcodebr -> php-classes -> src -> Model -> Product.php

Classe responsável pelo CRUD de produtos, categoria e o carrinho. Possui métodos para paginação. OBSERVAÇÃO: Essa classe necessita de uma tabela contendo as relações entre REVIEW n-1 PRODUTOS.

  • Vendor -> Hcodebr -> php-classes -> src -> Model -> User.php

Classe responsável pelo CRUD de usuários e validação de login (admin ou não). Possui método para paginação, forgot password via classe Mailer.php, get Orders.

  • Vendor -> Hcodebr -> php-classes -> src -> Model -> Cart.php

É a classe responsável por manipular o cart do usuário, seja um usuário cadastrado ou não (via $_SESSION) e por se comunicar com o webservice da sedex através do

"http_build_query"

E

"simplexml_load_file"

Telas Admin:


Login Admin

la

Home Admin

la

Usuários Admin

la

Cadastro usuários Admin

la

Editar usuários Admin

la

Alterar senha usuários Admin

la

Categorias Admin

la

Editar categorias Admin

la

Relação produto e categorias Admin

la

Relação produto e categorias Admin

la

Produtos Admin

la

Editar produtos Admin

la

Cadastrar produtos Admin

la

Cadastrar produtos Admin

la

Pedidos Admin

la

Status de pedidos Admin

la

Detalhes do pedidos Admin

la

Recuperar senha Admin

la


Telas Site:


Home

la

la

la

Produtos

la

Detalhes do produto

Categorias

la

Carrinho de compra

la

Checkout

la

la

la

Login

la

Minha conta

la

Alterar senha

la

Meus pedidos

la

Detalhes do pedido

la