Coder Social home page Coder Social logo

companyandhero's Introduction

Company and Hero

API

companyandhero

Problema

Eu como Dev Frontend na Company Hero, gostaria criar empresas com um formulário simples. Preciso saber quais dados enviar em JSON e para qual URL. A ideia é criar um diretório de empresas e seus funcionários, estes funcionários seriam os usuários da plataforma porem precisamos considerar que um usuário pode pertencer a mais de uma empresa.

O que falta

  • Exibir funcionários na listagem das empresas
  • A busca por um funcionário utiliza o filters do Django Rest o que retornar usernames similares.

Testes

  • Foi feito um simples teste de criação de funcionario e de empresa

Deploy

Dependendo de como for utilizar é necessario modificar as configurações para o banco de dados.

Via CLI

  • Crie o ambiente para instalação das dependências
python -m venv env
  • Ative o ambiente
source env/bin/activate
  • Instale os pacotes necessarios para executar o projeto
pip install -r requirements.txt
  • Execute a criação das tabelas do banco de dados
python manage.py makemigrations
python manage.py migrate
  • Criando um super usuário para acessar o Django Admin (opcional)
python manage.py createsuperuser
  • Execute o projeto
python manage.py runserver

Se todos os passos ocorreram sem apresentar nenhum erro. O projeto vai estar executando no endereço:

127.0.0.1:8000

Docker

Em breve!


Endpoints

Endpoint Método Ação
/api/v1/empresa/ GET Listar todas as empresas cadastradas
/api/v1/empresa/ GET Cadastrar uma empresa
/api/v1/empresa/:id GET Informação de uma empresa
/api/v1/empresa/:id PUT Editar informações de uma empresa
/api/v1/empresa/:id DELETE Detelar informações uma empresa
/api/v1/funcionario/ GET Listar todos os funcionários cadastrados
/api/v1/funcionario/ GET Cadastrar um funcionário
/api/v1/funcionario/:id GET Informação de um funcionário
/api/v1/funcionario/:id PUT Editar informações de um funcionário
/api/v1/funcionario/:id DELETE Deletar um funcionário
  • Buscar funcionário pelo username

Para realizar a buscar por um usuário deve ser inserido o paramento search e o valor (username) a ser pesquisado no enpoint api/v1/funcionario/


Modelo de JSON

Cadastrar empresa

{
"nome": "nome da empresa",
"cnpj": "cnpj da empresa"
}

Cadastrar funcionário

{
"nome": "Nome do Funcionário",
"username": "funcionariousername",
    "empresas": [
        {
            "nome": "nome da empresa já cadastrada"
        }
    ]
}

Exemplo de Modelo JSON

Cadastrar empresa

endpoint: /api/v1/empresa/

{
"nome": "Google",
"cnpj": "12345"
}
{
"nome": "Company Hero",
"cnpj": "54321"
}

Cadastrar funcionário

endpoint: /api/v1/funcionario/

Cadastrando em uma única empresa

{
"nome": "Mark Down",
"username": "md",
    "empresas": [
        {
            "nome": "Google"
        }
    ]
}

Cadastrando em mais de uma empresa

{
"nome": "Java Script",
"username": "js",
    "empresas": [
        {
            "nome": "Google"
        },
        {
            "nome": "Company Hero"
        }
    ]
}

companyandhero's People

Contributors

nandomaciel avatar

Watchers

James Cloos avatar  avatar

Forkers

carlosads1998

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.