Skip to content

glmsilva/storage-td6

 
 

Repository files navigation

Estoque

Projeto final da turma 6 do TreinaDev, realizado pela Campus Code, com apoio das empresas Rebase, Konduto, Vindi, Portal Solar e SmartFit. O projeto consiste na criação de uma plataforma de estoque vinculada ao ecommerce. Tem como objetivo registrar a quantidade de itens cadastrados pelo ecommerce, os fornecedores, os galpões onde são armazenados os produtos e todo o processo de entrada e saída de produto.

Tecnologias Utilizadas

Backend

  • Ruby 3.0.1

  • Rails 6.1.4

  • Gems

    • Rspec
    • Capybara
    • Shoulda Matchers
    • FactoryBot
    • Devise
    • Geocoder
    • Rubocop
    • Cpf_Cnpj

Frontend

  • Html 5
  • Css 3
  • Bootstrap

Instalação

Primeiramente, clone o projeto:

  $ git clone https://github.com/TreinaDev/storage-td6.git

Em seguida instale as dependências:

$ cd storage-td6 
$ bin/setup 

Popule o banco de dados:

$ rails db:seed

Inicie o servidor localmente:

$ rails server

Em seguida, clique no link para acessar a aplicação:

http://127.0.0.1:3000/

API

Consulta de galpões que possuem um produto (frete)

  GET '/api/v1/freightage/warehouses/:sku'
Parametro Tipo Descrição
sku string Obrigatório. SKU do produto

Resposta:

{
   "warehouses":[
      {
         "warehouse_code":"0000",
         "number":4,
         "district":"Leão",
         "city":"Papagolândia",
         "state":"AM",
         "latitude":"-23.5672582",
         "longitude":"-46.651529",
         "address":"Rua Jaguar"
      },
      {
         "warehouse_code":"0001",
         "number":4,
         "district":"Leão",
         "city":"Papagolândia",
         "state":"AM",
         "latitude":"-23.5672582",
         "longitude":"-46.651529",
         "address":"Rua Jaguar"
      },
      {
         "warehouse_code":"0002",
         "number":4,
         "district":"Leão",
         "city":"Papagolândia",
         "state":"AM",
         "latitude":"-23.5672582",
         "longitude":"-46.651529",
         "address":"Rua Jaguar"
      }
   ]
}

Consulta de galpões que possuem um produto e suas quantidades disponíveis em cada galpão (e-commerce)

GET '/api/v1/ecommerce/warehouses/:sku'
Parametro Tipo Descrição
sku string Obrigatório. SKU do produto

Resposta:

{
   "warehouses":[
      {
         "warehouse_code":"ROB2",
         "quantity":9
      },
      {
         "warehouse_code":"AMZ1",
         "quantity":3
      }
   ]
}

Consulta do endereço de um galpão

GET '/api/v1/ecommerce/warehouse/:code'
Parametro Tipo Descrição
code string Obrigatório. Código do galpão

Resposta:

{
  "warehouse": {
    "code": "0002",
    "full_address": {
      "number": 1293,
      "district": "Jardim Paulista",
      "city": "São Paulo",
      "state": "SP",
      "latitude": "-23.5569296",
      "longitude": "-46.6635382",
      "address": "Alameda Santos"
    }
  }
}

Criar uma reserva de produto

POST '/api/v1/reserve'
  • Cria uma reserva de produto em um determinado galpão, com os seguintes parametros:
{
  "reserve": {
        "sku": "abcd0000001" ,
        "shipping_company:" "XYZ8",
        "request_number": "125",
        "warehouse": "abcd"
      }
}
Parametro Tipo Descrição
sku string Obrigatório. SKU do produto
shipping_company int Obrigatório. Identificador da empresa de entrega
request_number string Obrigatório. Número do pedido
warehouse string Obrigatório. Código do Galpão

Resposta:

  • HTTP Status: 201
{
   "status":"reserved",
   "code":"abcd000001",
   "supplier_id":"1",
   "product_entry_id":"1",
   "warehouse_id":"1",
   "sku":"AIXRP128"
}

Criar uma devolução de item

POST '/api/v1/freightage/return_entries'
  • Cria uma devolução de item em um determinado galpão, com os seguintes parametros:
{
  "return_entry": {
        "request_number": "123456"
      }
}
Parametro Tipo Descrição
request_number integer Obrigatório. Código da venda

Resposta:

  • HTTP Status: 201
{
   "message":"Ordem de retorno criada com sucesso!",
}

Entrada de produtos por csv

Um arquivo csv válido deve ser parecer com:

	sku,invoice,quantity,supplier_id
	abc123,1034,7,1

Autores

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Ruby 77.0%
  • HTML 20.7%
  • JavaScript 1.7%
  • Other 0.6%