Ми створюємо сервіс замовлення послуг, реалізований на 90%. Шукаємо бекенд розробника (не агентство) на вирішення правок, який виправить помилки, перенесе на інший сервер)
Categories
- /public/categories/get/all . виправити картинки категорій
7. Sub-categories
- public/sub-categories/get/by/category/id невідповідність id підкатегорій з /public/specializations/get/all (тут є notSelected підкатегорія, під id 1, а в public/sub-categories/get/by/category/id немає).
8. Specializations
- Потрібен ендпоінт щоб можна було отримати всі підкатегорії згруповані за категоріями, до яких вони відносяться. Бажано з кількість спеціалістів у всій категорії та у кожній з підкатегорій окремо. (для all-category page) Приклад:
9. Find specialist by id
- /public/specialist/find/all чи реалізований пошук за id категорії, просто коли передаю id категорії при відправці запиту завжди вертається один спеціаліст, а також можна передати неіснуюче id і помилки немає. В принципі, можна перевірити цей ендпоінт? Чи реалізований пошук по всім параметрам разом і окремо.
10. Get adverts
- public/adverts/find/all потрібно добавити у відповідь ще підкатегорії, в яких спеціаліст працює, а також його місто та додаткові умови (Договорная цена, Завершающая уборка, Хорошее настроение тощо).
- public/adverts/get/by/id повертає “Advert not-found “, хоча за id 2 має бути оголошення, оскільки public/adverts/find/all повертає оголошення з цим id.
- public/adverts/get/by/id потрібно також додати у відповідь рейтинг спеціаліста (ratingPunctuality, ratingPrice, ratingWorkQuality, ratingCommon, ratingAverage).
- public/adverts/get/by/id, потрібно додати у відповідь особливі відмітки. Приклад з дизайну:
- public/adverts/get/by/id, потрібно додати у відповідь ціну за послуги.
- public/adverts/get/by/id, потрібно додати у відповідь дату створення свого акаунту спеціалістом.
- public/adverts/get/by/id, потрібно додати у відповідь чи оголошення в обраних, чи ні.
- public/adverts/find/all, потрібно додати у відповідь чи оголошення знаходиться в обраному, чи ні.
- public/adverts/find/all, необхідне сортування за ratingPunctuality, ratingPrice, ratingWorkQuality, ratingCommon, ratingAverage.
- Потрібен ендпоінт для отримання відгуків спеціаліста за його Advert id, з можливістю пагінації та сортуванням за датою додавання цього відгуку на платформу. Бажано отримувати такого плану response: {
Specialist: { "isVerified": true, "ratingPunctuality": 0, "ratingPrice": 0, "ratingWorkQuality": 0, "ratingCommon": 20, "ratingAverage": 0, "User": { "image": "https://aws-s3.dev-rating-pro.ru/main", "id": 2, "firstName": "Slavik", "lastName": "Timoschenko", "createdAt": "2021-12-25T20:24:16.000Z" }},reviews: }Приклад відгуку з дизайну:
- Потрібен ендпоінт для отримання всіх виконаних робіт спеціаліста за його Advert id, з можливістю пагінації та сортуванням за датою додавання цієї роботи на платформу.
Приклад з дизайну (може бути до 3 фото):
Бажано відповідь такого типу структури:
11) public/advert-facility-types/get
- У ендпоінтах з отримання advert-facility-types у відповідь необхідно додати іконки для кожного facility-type
12. Client advert
- private/client/instruments/adverts/create має приймати також параметр фото. Клієнт під час створення оголошення має можливість додати максимум 3 фото.
- private/client/instruments/adverts/update/by/id/:id має приймати також наступні параметри: specializationId, price, visits та фото.
12. Create specialist advert
- /specialist/instruments/adverts/create має приймати ще параметр “Ціни за послуги” (масив об’єктів з назвою послуги та її ціною)
- /specialist/instruments/adverts/create. При створенні оголошення спеціаліст може додати роботи, які він вже виконав в секції “Виконані роботи”. Необхідно реалізувати додавання цих виконаних робіт на бекенді.
Після кліку на кнопку випливає модальне вікно, де спеціаліст заповнює інформацію про свій виконаний проект:Спеціаліст може додати декілька виконаних робіт собі в оголошення.
13. Get specialist advert
- /specialist/instruments/adverts/get/by/id необхідно додати у відповідь “Ціни за послуги” та “Виконані роботи”. Бажано з такою структурою:
14. Update specialist advert
- specialist/instruments/adverts/update/by/id відповідно потрібно в респонсі оновлення також приймати “Ціни за послуги” та “Виконані роботи”
15. Favorite-adverts
- client/favorite-adverts/lists/get/by/id, при передачі id FavoriteAdvertList, викидує помилку "FavoriteAdvertList not-found", хоча FavoriteAdvertList з таким id існує (client-adverts/find/all його видає).
- client/favorite-adverts/lists/delete/by/id, викидає помилку при видаленні ("failed to delete FavoriteAdvertList"), при цьому список видаляє.
16. switch-to specialist or client
19. Get category and subCategories where specialist work
- потрібна можливість отримувати категорію та підкатегорії спеціальностей в яких спеціаліст працює. Наприклад, добавити у відповідь цього ендпоінта: /private/specialist/profile/data/get
20. private/specialist/projects/create
- Спеціаліст, перед створенням нового проекту, має підтвердити номер замовника з яким він хоче створити проект. Це є підтвердженням того, що вони справді зв'язувались і оговорили замовлення. Потрібен ендпоінт, щоб відправляти на підтвердження номер замовника і якщо замовник з таким номером існує в базі даних приходить true та id замовника. А спеціаліст проходить далі до створення проекту.
- Можна уточнити по параметрам які передають в цей ендпоінт private/specialist/projects/create? clientId - це id замовника? categoryId, subCategoryId - це спеціаліста?
- Також потрібно додати в ендпоінт параметр візити (<array>: <string>: ISO-8601: eg: 2021-11-21T16:00:00") на вхід в private/specialist/projects/create.
- Необхідно додати в ендпоінт параметр startAt (дата початку проекту).
- Необхідно додати в ендпоінт параметри city та district.
21. /client/projects/get/all
- Поле Specialist у відповіді має вітдавати масив з об'єктами спеціалістів, оскільки на оголошення клієнта можуть подати заявку декілька спеціалістів. В залежності скільки спеціалістів подали заявку, на стільки і буде заповнено масив.
- В об'єкті спеціаліста має також бути advertId спеціаліста, за яким він подався на оголошення клієнта.
22. /client/projects/get/by/id/:id
- /client/projects/get/by/id/:id потрібно у відповідь добавити місто проекту.
- Також у відповідь потрібно добавити об'єкт наявного коментарю до завершеного проекту з його відповідним id.
23. client/projects/review
- /client/projects/review/create. Поле reviewFiles в боді запиту приймає <array>: . Upload.id - це з відповіді /common/upload/image ???
25) Notifications
- private/specialist/notifications/get/all?offset=0&limit=2&order=desc&by=id викидає 500 помилку ("Your request could not be processed at the moment")
- client/notifications/settings/get or client/notifications/settings/set. Настройки сповіщень мають бути і для спеціаліста також, на даний момент тільки для клієнта.
- Потрібен окремий ендпоiнт для сповіщень про перегляди контакту спеціаліста, або можливість отримувати сповіщення за окремим типом з specialist/notifications/get/all.
- Потрібен функціонал прочитування сповіщень, тобто переводити з isRead: false в isRead: true.
- Потрібно отримувати загальну кількість непрочитаних повідомлень.
26) Показники
- Реалізувати ендпоінт для отримання показників спеціаліста
27) agreementWithSpecialist
- потрібні два ендпоінти (get та post) для реалізації модального вікна: “Чи зв'язались із спеціалістом?”.
За функціоналом типу reminder. Це модальне вікно відкривається в клієнта через 5хв після кліку на кнопку “Показати контакт спеціаліста”. Я думаю, що мають бути такі параметри в реквесті: параметр time в форматі timestamp;