Git Product home page Git Product logo

beacademy-devstart-esmeralda's Introduction

Projeto EstanteDev - Squad Esmeralda

EstanteDev - Capa

Descrição

Projeto de caráter educacional, feito no programa DevStart - Paylivre, de um E-commerce de livros sobre programação, feito com Laravel 9, TailwindCSS e MySQL, com upload de imagens na Cloudinary

Instalação

Dentro da pasta Projeto-Empresarial, crie um arquivo .env igual ao .env.example, ajustando as configurações conforme o seu ambiente e banco de dados MySQL, após isso instale as dependências com os seguintes comandos:

# Instale as dependências do composer e npm
composer install
npm install

# Crie um link simbolico para o storage/app/public
php artisan storage:link

# Instale os estilos para a paginação
php artisan vendor:publish --tag=laravel-pagination

# Rode as migrations e seeders (pode demorar um pouco)
php artisan migrate --seed

Observação: Você deve ter uma conta e um upload preset na Cloudinary para configurar as variáveis de ambiente no arquivo .env e poder fazer upload de imagens

Execução

# Sirva o projeto na porta 8000
php artisan serve

# Execute o vite
npm run dev
# ou
yarn dev

Tech

Membros da Squad

Giuliano García
Giuliano García
Luís V. Capelletto
Luís V. Capelletto
Mateus Figueredo
Mateus Figueredo

Diagrama Entidade Relacionamento

Devstart - Esmeralda - EstanteDev - DER

Especificações

Criar um CHECKOUT para uma PLATAFORMA de VENDAS ONLINE

Este checkout será criado em PHP, utilizando o Framework Laravel.

O contexto deste projeto é mínimo no que diz respeito a operações de e-commerce e foca na efetivação do pagamento, portanto questões como logística, descontos e afins não serão levados em consideração na descrição e execução do projeto.

Requisitos

  • Banco de dados Mysql
  • Autenticação e Cadastro de Usuários
  • Cadastro de Produtos
  • Cadastro de Pedidos
  • Checkout
  • Api de Paylivre para efetivação dos pagamentos (anexar documentação)
  • Criação de testes unitários para todas as regras de negócio

Regras de negocio

Cadastro de Usuários

Deverá possuir 2 tipos de cadastro.

Um “Administrador” que será responsável por

  • Realizar o cadastro de produtos na plataforma,
  • Visualizar e gerenciar os pedidos de todos os usuários.

Para o usuário “Padrão” este poderá apenas escolher os produtos desejados e realizar a compra na plataforma, em sua área restrita poderá ver os próprios pedidos.

Os dados básicos de cadastro de usuários são:

  • Nome
  • E-mail
  • Telefone
  • Endereço
  • Data de nascimento
  • CPF

Cadastro de Produtos

Para o cadastro de produtos, deverá ser possível cadastrar as seguintes informações

  • Nome do produto
  • Descrição do produto
  • Quantidade
  • Preço de custo
  • Preço de venda
  • Foto principal

Cadastro de Pedidos

O cadastro de pedidos ocorrerá durante o processo de checkout, uma vez que o cliente selecionar os produtos que deseja adquirir e realizar o pagamento.

Será importante registrar para o Cadastro de Pedidos os produtos que foram adquiridos, o cliente que comprou assim como o status do pagamento.

Status do pedido

  • Processando → processing
  • Aprovado → approved
  • Recusado → refused

Checkout

Durante o checkout, o cliente deverá selecionar os produtos que deseja adquirir e definir a forma de pagamento - para efetivação de pagamento utilizaremos a solução da Paylivre. Após realizar o pagamento, o cliente deverá ser informado sobre o status do seu pagamento: sendo Aprovado, Recusado ou Processando.

Atualização de status do pagamento

O sistema deverá possuir uma rotina para monitorar os pagamentos que estiverem sendo processados.

Utilizaremos o serviço de webhook da Paylivre.

Notificações

  • O cliente recebe um e-mail toda vez que um novo pedido é realizado
  • O cliente recebe um e-mail toda vez que algum pedido sofre alteração de status

beacademy-devstart-esmeralda's People

Contributors

capelaum avatar figmateus avatar gdg89 avatar ftz997 avatar gersondevpro avatar vinic-alves avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

tatmorenno

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.