Skip to content

Instantly share code, notes, and snippets.

@bellatrix988
Last active December 5, 2017 09:53
Show Gist options
  • Save bellatrix988/4e57cc875be45d3e5f15b4e1f4833640 to your computer and use it in GitHub Desktop.
Save bellatrix988/4e57cc875be45d3e5f15b4e1f4833640 to your computer and use it in GitHub Desktop.
Description of "Worker's reports"

Description of "Worker's reports"

Реализовать веб-приложение для отчетов работников о проделанной и планируемой работе.

Описание интерфейса Кнопка добалвения, форма добавления, список записей.

  • Кнопка 'Show more' показывает записи следующего промежутка.

Функционал

  • Просмотр всех отчетов
  • Просмотр записей по фильтрам(по автору, по дате)
  • Добавление нового отчета

Реализация Для реализации заданного функционала определены сервис взаимодействия с данными и компоненты, позволяющие связать действия пользователя и сервиса.

Report api/updates

  • JSON

    {
        "updates": [
        {
            "id": 3,
            "owner":
            {
                "id": 555,
                "name": "Alisa"
            },
            "created_at": "",
            "have_done": [
            {
                "id": 4,
                "title": "Add methods update to database",
                "is_active": "false"
            },
            {
                "id": 6,
                "title": "Add methods delete to database",
                "is_active": "true"
            }],
            "todo": [
            {
                "id": 6,
                "title": "Add methods delete to database",
                "is_active": "true"
            },
            {
                "id": 10,
                "title": "Add methods create to database",
                "is_active": "true"
            }],
            "problems": "",
            "deadline": true,
            "reason": ""
        },
        {
            "id": 4,
            "owner":
            {
                "id": 2,
                "name": "Bob"
            },
            "created_at": "",
            "have_done": [
            {
                "id": 9,
                "title": "Update methods update to database",
                "is_active": "false"
            }],
            "todo": [
            {
                "id": 666,
                "title": "Relax at weekand :)",
                "is_active": "true"
            }],
            "problems": "",
            "deadline": true,
            "reason": ""
        }],
        "users":
        {
            "data": [
            {
                "id": 2,
                "name": "Bob"
            },
            {
                "id": 555,
                "name": "Alisa"
            }],
            "me":
            {
                "id": 2,
                "name": "Bob"
            }
        }
    }
    

Create

  • URL 'api/updates
  • Method: POST

Parametrs

Name Type Required
id integer required
have_done array of Task required
todo array of Task required
problem string optinonal
reason string optinonal
deadline boolean required

Read

  • URL 'api/updates'
  • Method: GET

Parametrs

Name Type Required
from date required
to date required
user_ids number optinonal

Update

  • URL 'api/updates/:id'
  • Method: PUT/PATCH

Parametrs

Name Type Required
id integer required
have_done array of Task required
todo array of Task required
problem string optinonal
reason string optinonal
deadline boolean required

Destroy

  • URL 'api/updates/:id'

  • Method: DELETE

    Name Type Required
    id integer required

User api/users/me

  • JSON

    {
      "id": 2,
      "name": "Bob"
    }
    

Create

  • URL 'api/users/me'
  • Method: POST

Parametrs

Name Type Required
id integer required
name string required

Read

  • URL 'api/users/me'
  • Method: GET

Update

  • URL 'api/updates/:id'
  • Method: PUT/PATCH

Parametrs

Name Type Required
id integer required
name string required

Destroy

  • URL 'api/users/me/:id'
  • Method: DELETE
Name Type Required
id integer required

Task

Parameters

   id: number,
   title: string,
   is_active: boolean
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment