Code Monkey home page Code Monkey logo

360's People

Contributors

evgeniakuzina avatar funkhero avatar lo2s avatar mgs640 avatar mr3jane avatar polyakov713 avatar valsaven avatar

Watchers

 avatar  avatar

360's Issues

Обновить документацию

Текущая документация не учитывает начальную настройку окружения разработчика (сиды и т.д.)

(F): Создать компонент Timeline

Можно, для начала, взять просто базовый дэйтпикер, например, а потом ближе к делу понять как его затюнить

(B): Создать End-point'ы для списка ревью

Подгрузка данных отдельно для каждого экрана: список ревью, список пользователей в ревью, сами отзывы внутри пользователя.

Это поможет решить проблему просмотра отзывов по одному человеку с переключением даты в таймлайне (типа ретроспективно посмотреть тренд)

Драфт схемы данных, которую обсуждали на первых встречах:

review-erm

Отображение отправленного ревью

После того как отправлено ревью на пользователя, второй раз его отправить нельзя. Вместо формы-анкеты должна отображаться отправленная (заполненная) анкета read-only

(F): Создать laylout

image

Скетч лэйаута. Договорились сделать "гармошку", которая начинается с сущности ревью, которая отображается во весь экран. После клика по конкретному ревью, оно сжимается до краткого списка ревью (например, название + картинка или типа того) и справа от него появляется в оставшийся размер экрана появляется такой же прямоугольник с сущностью юзеры, по аналогии потом появляется сущность фидбэк.

При этом сжатые элементы остаются активными (можно быстро сменить выбранного юзера или ревью), а по клику заголовка сжатого элемента, все элементы справа от него пропадают и он раскрывается на оставшуюся ширину экрана.

@polyakov713 отмечал, что удобно это сделать вложенными роутами и завязать на это такую схему маршрутизации:

/reviews/:review_id/users/:user_id/feedbacks/:feedback_id

(B): хранение шаблонов (анкет)

Шаблон - список вопросов разного типа. Грубо говоря:

{  
   "name": "template #1",
   "items": [  
      {  
         "type": "radio",
         "items": [...]
      },
      {  
         "type": "text"
      },
      ...
   ]
}

Соответственно, нужно сделать API (CRUD)

(F): отображение анкеты

Для ввода ревью по человеку, генерится по данным с бэка. С бэка приходит JSON, формата примерно как в #46

jQuery!

К сожалению, к нам в кодовую базу прокрался jQuery и ругается, что ему чего-то не хватает. Ой :(

Возможность создать ревью

На скрине красным цветом нарисованы "плюсик" и "корзина" для функции добавления нового ревью и удаления ненужных ревью.

image

Была идея подрубить сюда карточки из vuetify вместо текстовых ссылок.

(B): Сиды-фикстуры

Сейчас довольно геморройно собирать рабочий инстанс, т.к. нет генерации начальных данных, чтоб интерфейсы не были совсем пустые.

Надо создать сиды для этого дела.

(F): страница профиля пользователя

Страница с информацией о пользователе. Инициально выводим:

  • Аватар
  • Имя и фамилию
  • Кнопка "похвалить", которая ведет на страницу создания похвалы

(B): хранение ответов

Поля (review_results):

  • review_id (id)
  • answers (array)
  • respondent (user id)
  • interviewer (user id)

Грубо говоря:

[  
   {  
      "review_id": ...,
      "answers": [  
         {  
            "question_id": ...,
            "answer": ...
         },
         {  
            "question_id": ...,
            "answer": ...
         }
      ],
      "respondent_id": ...,
      "interviewer_id": ...
   }
]

(B): Похвала (kudos)

Сущность "похвалы". Решили разделить их на предсозданные категории, типа "Технические навыки", "Личные качества", "Социальные" и т.п.

Опционально можно добавить к похвале тэг(и) и написать текстовый комментарий.

В будущем можно выводить историю всех аналогичных событий для пользователя или всех пользователей в системе.

(F): Создать компонент Wrapper

Состав:

  • Заголовок (есть/нет - в зависимости от типа открытого окна)
  • Список карточек
  • Кнопка (есть/нет - в зависимости от типа открытого окна)

(F): Создать окно восстановления пароля

Интерфейс + роут.

По сути, одна и та же форма будет использоваться в двух случаях:

  1. Восстановление пароля
  2. Установка пароля для нового юзера (тот самый экран по ссылке из приглашения)

Роуты при этом должны быть разные

Не работает страница авторизации

Кейс №1:

При переходе на главную страницу приложения без токена, не перекидывает на авторизацию.

Кейс №2:

Роут auth/sign-in не работает? Непонятно почему не открывается страница авторизации по прямому пути

(DevOps): сделать CI

Сейчас уже настроен мирроринг репозитория. Нужно поднять там человеческий CI, чтоб уже вживую смотреть на наш проект

(B): сущность тэги похвалы

CRUD + эндпоинт для предложки с автозаполнением.

Не связано с категориями.

Пока что эти тэги относятся только к сущности kudos.

(B): стандартизация ошибок

Привести к единому виду тело ответа при ошибке. Вероятно, переиспользовать библиотеку, которую делаем в рамках LMS

(F): Создать карточки Ревью, Юзер, Отзыв

  • Ревью
  • Юзер
  • Отзыв

Отзыв:

  1. Ревьюер (имя, например)
  2. Объект тела отзыва с подобной структурой: {type: 'text', body: 'lol kiek otziv'} (для начала просто текст, засчет хранения объектом получим возможность без геморроя расширить)

Юзер:

  1. Аватарка
  2. Имя
  3. Комментарий (для начала просто текст; можно указать должность, например)

Ревью:

  1. Название
  2. Описание

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.