8000 GitHub - gpsanches/scuptel-api: Backend - PHP, Silex, Composer and PHPUnit.
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

gpsanches/scuptel-api

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ScupTel - Fale Mais (Backend)

Sistema web para simular o custo da ligação telefônica dos clientes da empresa ScupTel.

Como funciona?

Os clientes da ScupTel deverão informar o tempo de duração da ligação, o DDD de origem e de destino da ligação. O resultado será um comparativo entre os planos do produto "Fale Mais".

Documentação

A documentação do desafio pode ser encontrada em ShowMeTheCode-Backend.pdf.

Endpoints (Produção)

Backend: http://45.55.67.91

Frontend: http://104.131.182.79

Tecnologias e Requisitos

  • PHP 5.5.9
  • Silex 2
  • Composer
  • PHPUnit
  • Apache 2

Instalação

$ composer install
$ php app/console project:setup www-data

OBS: www-data é o usuário do apache na distribuição ubuntu linux, use outro usuário caso necessário.

Suíte de testes

$ phpunit

36 tests, 87 assertions.

Code Coverage

Após a execução da suíte de testes (phpunit), um relatório em HTML será gerado em: "build/coverage/index.html"

API

Simular Preço

Exemplo de requisição:

    {
        "fromAreaCode": 11,
        "toAreaCode": 17,
        "timeInMinutes": 200
    }

Exemplo de resposta:

  • 200 OK
    {
      "falemais-30": 317.9,
      "falemais-60": 261.8,
      "falemais-120": 149.6,
      "no-plan": 340
    }

Planos

Exemplo de requisição:

Exemplo de resposta:

  • 200 OK
    {
      "data": [
        {
          "id": "falemais-30",
          "name": "FaleMais 30",
          "timeInMinutes": 30,
          "additionalMinuteRate": 0.1
        },
        {
          "id": "falemais-60",
          "name": "FaleMais 60",
          "timeInMinutes": 60,
          "additionalMinuteRate": 0.1
        },
        {
          "id": "falemais-120",
          "name": "FaleMais 120",
          "timeInMinutes": 120,
          "additionalMinuteRate": 0.1
        }
      ],
      "total": 3
    }

Códigos de Área

Exemplo de requisição:

Exemplo de resposta:

  • 200 OK
    {
      "data": [
        {
          "code": 11,
          "name": "São Paulo"
        },
        {
          "code": 16,
          "name": "Ribeirão Preto"
        },
        {
          "code": 17,
          "name": "Mirassol"
        },
        {
          "code": 18,
          "name": "Tupi Paulista"
        }
      ],
      "total": 4
    }

Preços

Exemplo de requisição:

Exemplo de resposta:

  • 200 OK
    {
      "data": [
        {
          "origin": {
            "code": 11,
            "name": "São Paulo"
          },
          "destiny": {
            "code": 16,
            "name": "Ribeirão Preto"
          },
          "price": 1.9
        },
        {
          "origin": {
            "code": 16,
            "name": "Ribeirão Preto"
          },
          "destiny": {
            "code": 11,
            "name": "São Paulo"
          },
          "price": 2.9
        },
        {
          "origin": {
            "code": 11,
            "name": "São Paulo"
          },
          "destiny": {
            "code": 17,
            "name": "Mirassol"
          },
          "price": 1.7
        },
        {
          "origin": {
            "code": 17,
            "name": "Mirassol"
          },
          "destiny": {
            "code": 11,
            "name": "São Paulo"
          },
          "price": 2.7
        },
        {
          "origin": {
            "code": 11,
            "name": "São Paulo"
          },
          "destiny": {
            "code": 18,
            "name": "Tupi Paulista"
          },
          "price": 0.9
        },
        {
          "origin": {
            "code": 18,
            "name": "Tupi Paulista"
          },
          "destiny": {
            "code": 11,
            "name": "São Paulo"
          },
          "price": 1.9
        }
      ],
      "total": 6
    }

About

Backend - PHP, Silex, Composer and PHPUnit.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 99.7%
  • ApacheConf 0.3%
0