Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
vendor/
9 changes: 9 additions & 0 deletions .htaccess
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<IfModule mod_rewrite.c>
Options -MultiViews

RewriteEngine On
#RewriteBase /path/to/app
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [QSA,L]
</IfModule>
54 changes: 28 additions & 26 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,34 +1,36 @@
# A tarefa
Sua tarefa consiste em desenvolver uma API RESTful para manipular um determinado recurso. Deverá ser utilizado o framework Silex.
#README

# Requisitos
A escolha do recurso deverá ser feita pelo desenvolvedor, atendendo apenas os requisitos mínimos abaixo:
-Necessario dar um composer install em todas dependencias

* Deverá conter um ID
* Deverá conter pelo menos quatro propriedades (exemplos: nome, email, etc.)
* Deverá conter campos que armazenem as datas de criação e alteração do recurso
-Configurar banco de dados conforme seu ambiente. Utilieza o .sql que está na pasta BD.

A API deverá atender às seguintes exigências:
Modo de teste:

* Listagem de todos os recursos
* Busca de um recurso pelo ID
* Criação de um novo recurso
* Alteração de um recurso existente
* Exclusão de um recurso
* Aceitar e retornar apenas JSON
* Deverá possuir algum método de autenticação para utilização de seus endpoints
-Feito apenas o back-end. Necessario usar o postman para testar.

# Ferramentas
* PHP
* Banco de dados MySQL
* Framework Silex
-Usuario Natan já criado. Use o mesmo para testar. Vá na aba Body, utileze "raw" -> JSON(application/json)
Cole o seguinte json no campo abaixo: (Que é um usuario já existente no bd).

# Fluxo de desenvolvimento
1. Faça um fork deste repositório
2. Crie uma nova branch e nomeie-a com seu usuário do Github
3. Quando o desenvolvimento estiver concluído, faça um pull request
{

# Padrões de nomenclatura
1. Código fonte, nome do banco de dados, tabelas e campos devem estar em inglês
"id" : 1,

**Inclua no seu commit todos os arquivos necessários para que possamos testar o código.**
"name" : "Natan",

"username" : "souzanatan",

"password" : "natanpassword",

"address" : "Rua Schnaider"

}

-Com ele, será obrigado gerar um token indo para:

METHOD POST -> http://localhost/teste/generate-token (necessario configurar conforme seu ambiente)

-Ele verificará se existe o mesmo existe no banco de dados para gerar token. (Sistema de login).

-Gerado o token, vá até a aba HEADERS, acrescendo uma nova key chamada "AuthorizationKey", e o value você coloca "Bearer TokenQueVocêGerouVemAqui". Deixe ele habilitado. (Como se você tivesse logado e entrasse no sistema).

-Agora você está autenticado para utilizar os endpoints.
39 changes: 39 additions & 0 deletions bd/bd.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
/*
SQLyog Community v12.2.4 (64 bit)
MySQL - 5.6.35-81.0-log : Database - xavico
*********************************************************************
*/


/*!40101 SET NAMES utf8 */;

/*!40101 SET SQL_MODE=''*/;

/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;

/*Table structure for table `users` */

DROP TABLE IF EXISTS `users`;

CREATE TABLE `users` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) COLLATE latin1_general_ci NOT NULL,
`username` varchar(255) COLLATE latin1_general_ci NOT NULL,
`password` varchar(255) COLLATE latin1_general_ci NOT NULL,
`address` varchar(255) COLLATE latin1_general_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;

/*Data for the table `users` */

insert into `users`(`id`,`name`,`username`,`password`,`address`) values

(1,'Natan','souzanatan','$2y$10$r97vqslfCT/D8TN6Eed8QuwuqeXuzF63oHQlvEVJRistobx1T8QN6','Rua Schnaider');

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
22 changes: 22 additions & 0 deletions composer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"repositories": [
{
"type": "composer",
"url": "https://packagist.org"
},
{ "packagist": false }
],
"name": "cod4b/teste-esc",
"description": "Teste",
"require": {
"silex/silex": "^2.2",
"twig/twig": "^1.34",
"lcobucci/jwt": "^3.2"
},
"authors": [
{
"name": "Natan",
"email": "natanevandro@gmail.com"
}
]
}
Loading