Node.js Express Исправить запросы API

8 000 руб. за проект
06 февраля 2023, 12:30 • 2 отклика • 31 просмотр
В методе /api/v1/order/createOrder:

  • В specification передавать массив id
  • Параметр specification_subtype - убрать
  • Параметры giveInstruments - принимать enum из списка [full, power, hand, none, negotiable]
  • Параметр typeInstruments убрать
правки в методе /api/v1/order/updateOrder:

  • В specification передавать массив id
  • Параметр specification_subtype - убрать
  • Параметры giveInstruments - принимать enum из списка [full, power, hand, none, negotiable]
  • Параметр typeInstruments убрать
Правки по методу /api/v1/rating/getTop:
  1. Разделить метод на /api/v1/team/getTop и /api/v1/company/getTop
  2. Убрать параметр user_type
  3. Методы должны возвращать не user_id, а поля для отображения карточки в ленте:
  • рейтинг float
  • количество отзывов int
  • тип(-ы) работ list
  • стоимость работы float (только для компании)
  • город string
  • подтвержденный аккаунт bool
  • системнообразующая bool (только для компании)
! Рейтинг берем из таблицы users- колонка stars где userId = toId, количество отзывов - stars_count где userId = toId

! Типы работ для компании берем из таблицы specifications_for_order

Для команды берем из таблицы team_specifications

! Стоимость работы для компании получаем из таблицы works_for_order , где берем первое значение по данному заказу

! Для компании значение полей подтвержденный аккаунт и системнообразующая берем из таблицы companies , столбцы isVerifed и isSystem

Доработки метода /api/v1/order/getOrders:

  1. Метод /api/v1/order/getOrders (details=0) должен возвращать:
  • orderId int
  • город string
  • рейтинг float
  • количество отзывов int
  • тип(-ы) работ list of int
  • стоимость работы float
  • подтвержденный аккаунт bool
  • системнообразующее bool
2. Добавить пагинацию, принимать параметры:

  • count
  • offset
Заказы должны возвращаться от наиболее свежесозданных, к старым (creationDate Desc)

3. Не должно возвращать заказ, если его status не open

! orderId, город из таблицы orders - колонки id, city

! Рейтинг берем из таблицы users - колонка stars где userId = toId, количество отзывов - stars_count где userId = toId

! Типы работ для компании берем из таблицы specifications_for_order

Для команды берем из таблицы team_specifications

! Стоимость работы для компании получаем из таблицы works_for_order , где берем первое значение по данному заказу

! Для компании значение полей подтвержденный аккаунт и системнообразующая берем из таблицы companies , столбцы isVerifed и isSystem

Доработки по методу /api/v1/team:
  1. Метод /api/v1/team не должен возвращать все компании, убрать эту возможность
  2. Добавить пагинацию. Принимать параметры:
  • count
  • offset
3. Бригады должны возвращаться от наиболее свежесозданных, к старым (creationDate Desc)

Доработки по методу /api/v1/company/{{company_id}}:
Метод должен возвращать:

  • название компании string
  • userId int
  • онлайн bool
  • проверенная компания bool
  • системнообразующая компания bool
  • рейтинг float
  • количество отзывов int
  • адрес string
  • сайт string
  • о компании string
  • заявки компании list (список id заявок компании)


! Название компании, userId из companies, столбцов company_name, id

! online из users

! Подтвержденный аккаунт и системнообразующая берем из таблицы companies , столбцы isVerifed и isSystem

! Рейтинг берем из таблицы users - колонка stars где userId = toId, количество отзывов - stars_count где userId = toId

! Адрес, сайт, о компании из таблицы companies, столбцов address, site, about

! Список заявок компании получаем из таблицы orders, по userId

Доработки по методу /api/v1/team/{{team_id}}:
Метод должен возвращать:

  • ID аватара int
  • Имя string
  • Фамилия string
  • онлайн bool
  • типы работ list
  • рейтинг float
  • число отзывов int
  • гражданство string
  • текущая численность int
  • потенциальная численность int
  • текущее местоположение string
  • регион для работы string
  • границы работы string
  • условия проживание string
  • наличие инструментов string
  • способ оплаты string
  • о бригаде (опыт работы) string
  • изображения list
  • файлы list
  • видео list
жирным - то, что не возвращает сейчас

! Типы работ для компании берем из таблицы specifications_for_order

Для команды берем из таблицы team_specifications

! Рейтинг берем из таблицы users- колонка stars где userId = toId, количество отзывов - stars_count где userId = toId

! Списки файлов, видео и изображений формируем согласно таблицам

  • team_images
  • team_videos
  • team_files

Просьба сразу присылать профиль habr/git/портфолио релевантных работ.
Безопасная сделка (комиссия 50/50) или постоплата. Рассматриваем долгосрочное сотрудничество на постоянной основе.
Отзывы
R50 ab1c1782571a6a5b3ece7540768ef6aa
Фрилансер
Хорошие, адекватные ребята. Активно отвечают на вопросы. Уточняют ТЗ в случае необходимости. После заверешния заказа получена обговоренная оплата.
5 баллов
~ 1 год назад